@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600&family=Source+Sans+3:wght@400;600&display=swap";:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:"Source Sans 3",Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}#root{min-height:100vh}.page{--sls-cream:#faf8f5;--sls-white:#fff;--sls-text:#2f2b28;--sls-text-muted:#5c5651;--sls-sage:#5f7f66;--sls-sage-dark:#4a6550;--sls-blush:#d9b5a8;--sls-border:#e6ddd6;--sls-error:#b42318;background:var(--sls-cream);min-height:100vh;color:var(--sls-text);flex-direction:column;display:flex}.site-header{background:var(--sls-white);border-bottom:1px solid var(--sls-border);align-items:center;gap:1rem;padding:1.25rem 1.5rem;display:flex}.logo{object-fit:contain;flex-shrink:0;width:72px;height:72px}.brand-text{min-width:0}.eyebrow{letter-spacing:.02em;margin:0;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.5rem;font-weight:600;line-height:1.2}.tagline{color:var(--sls-text-muted);margin:.25rem 0 0;font-size:.9rem;font-style:italic}.main{flex:1;width:100%;max-width:40rem;margin:0 auto;padding:2rem 1.25rem 2.5rem}.hero{text-align:center;margin-bottom:1.75rem}.hero h1{letter-spacing:.03em;text-transform:uppercase;margin:0 0 .75rem;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:clamp(2rem,5vw,2.75rem);font-weight:600;line-height:1.1}.hero p{max-width:32rem;color:var(--sls-text-muted);margin:0 auto;font-size:1.05rem;line-height:1.6}.form-card{background:var(--sls-white);border:1px solid var(--sls-border);border-radius:.5rem;padding:1.5rem;box-shadow:0 8px 24px #2f2b280f}.field{margin-bottom:1.25rem}.field label{letter-spacing:.02em;margin-bottom:.4rem;font-size:.9rem;font-weight:600;display:block}.field input,.field textarea{border:1px solid var(--sls-border);background:var(--sls-white);width:100%;color:var(--sls-text);font:inherit;border-radius:.35rem;padding:.7rem .85rem;line-height:1.4;transition:border-color .15s,box-shadow .15s}.field input::placeholder,.field textarea::placeholder{color:#9a918a}.field input:focus,.field textarea:focus{border-color:var(--sls-sage);outline:none;box-shadow:0 0 0 3px #5f7f6633}.field input[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:var(--sls-error)}.field textarea{resize:vertical;min-height:5.5rem}.address-autocomplete{position:relative}.address-autocomplete input{border:1px solid var(--sls-border);background:var(--sls-white);width:100%;color:var(--sls-text);font:inherit;border-radius:.35rem;padding:.7rem .85rem;line-height:1.4;transition:border-color .15s,box-shadow .15s}.address-autocomplete input:focus{border-color:var(--sls-sage);outline:none;box-shadow:0 0 0 3px #5f7f6633}.address-autocomplete input[aria-invalid=true]{border-color:var(--sls-error)}.address-hint{color:var(--sls-text-muted);margin:.35rem 0 0;font-size:.8rem}.address-suggestions{z-index:20;background:var(--sls-white);border:1px solid var(--sls-border);border-radius:.35rem;max-height:14rem;margin:0;padding:.35rem 0;list-style:none;position:absolute;top:calc(100% + .25rem);left:0;right:0;overflow-y:auto;box-shadow:0 10px 24px #2f2b281f}.address-suggestion{cursor:pointer;padding:.65rem .85rem;font-size:.95rem;line-height:1.35}.address-suggestion:hover,.address-suggestion.is-active{background:#5f7f661f}.field-error{color:var(--sls-error);margin:.4rem 0 0;font-size:.85rem}.contact-preference{border:none;margin:0 0 1.25rem;padding:0}.contact-preference legend{letter-spacing:.02em;margin-bottom:.4rem;font-size:.9rem;font-weight:600;display:block}.radio-group{flex-direction:column;gap:.65rem;display:flex}.radio-option{cursor:pointer;align-items:center;gap:.5rem;font-size:.95rem;font-weight:400;display:flex}.radio-option input{width:auto;accent-color:var(--sls-sage);margin:0}.submit-btn{background:var(--sls-sage);width:100%;color:var(--sls-white);font:inherit;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;border:none;border-radius:.35rem;margin-top:.5rem;padding:.85rem 1rem;font-size:1rem;font-weight:600;transition:background-color .15s}.submit-btn:hover{background:var(--sls-sage-dark)}.success-message{color:var(--sls-sage-dark);text-align:center;background:#5f7f661f;border-radius:.35rem;margin:1rem 0 0;padding:.75rem 1rem;font-size:.95rem}.step-message{text-align:center;margin-bottom:1.25rem}.step-message p{color:var(--sls-text-muted);margin:0;font-size:1.05rem;line-height:1.6}.step-message.success p{color:var(--sls-sage-dark)}.countdown{color:var(--sls-text);margin-top:1rem;font-size:1.25rem;font-weight:600}.button-row{flex-direction:column;gap:.75rem;margin-top:.5rem;display:flex}.secondary-btn{border:1px solid var(--sls-border);background:var(--sls-white);width:100%;color:var(--sls-text);font:inherit;cursor:pointer;border-radius:.35rem;padding:.85rem 1rem;font-size:1rem;font-weight:600;transition:background-color .15s,border-color .15s}.secondary-btn:hover:not(:disabled){background:var(--sls-cream);border-color:var(--sls-sage)}.secondary-btn:disabled,.submit-btn:disabled{opacity:.7;cursor:wait}@media (width>=480px){.button-row{flex-direction:row}.button-row .submit-btn,.button-row .secondary-btn{flex:1}}.site-footer{text-align:center;background:var(--sls-white);border-top:1px solid var(--sls-border);color:var(--sls-text-muted);padding:1.25rem 1.5rem 1.75rem;font-size:.9rem;line-height:1.6}.site-footer p{margin:.25rem 0}.site-footer a{color:var(--sls-sage-dark);text-decoration:none}.site-footer a:hover{text-decoration:underline}@media (width>=640px){.site-header{padding:1.5rem 2rem}.main{padding:2.5rem 2rem 3rem}.form-card{padding:2rem}}
