*{box-sizing:border-box}body{margin:0;background:#fbf8f3;color:#302a28;font:17px/1.55 system-ui,sans-serif}main{max-width:1000px;margin:auto;padding:26px 24px}header{border-bottom:1px solid #d9cdc0;padding:12px 0}h1{font:500 clamp(2.1rem,5vw,3.3rem)/1.15 Georgia,serif;margin:12px 0}h2{font-size:1.5rem;margin:16px 0 22px}.eyebrow{font-size:.8rem;letter-spacing:.13em;font-weight:700;color:#703747}.lead{max-width:730px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.step{padding:18px 0}label{display:block;font-weight:600}input,select,textarea{display:block;width:100%;font:inherit;color:#302a28;background:white;border:1px solid #aa9a8e;border-radius:8px;padding:11px;margin-top:6px;min-height:48px}textarea{resize:vertical}button{font:600 1rem/1.4 system-ui;cursor:pointer;background:#703747;color:white;border:2px solid #703747;border-radius:8px;padding:12px 18px;min-height:48px}button:disabled{opacity:.5;cursor:default}.secondary{background:transparent;color:#703747}a{color:#703747}:focus-visible{outline:3px solid #986034;outline-offset:3px}.controls{display:flex;justify-content:space-between;gap:15px;margin:20px 0}[hidden]{display:none!important}#steps{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0}#steps button{font-size:.8rem;padding:8px 11px;background:#ede5da;color:#453b33;border-color:transparent}#steps [aria-current=step]{background:#703747;color:white}.estimate{background:#eee5d9;padding:18px 22px;border-radius:12px;display:flex;flex-wrap:wrap;gap:4px 20px;align-items:center;margin:20px 0}.estimate strong{font-size:2rem;color:#703747;margin-left:auto}.estimate small{flex:0 0 100%}.small,footer,#progress{font-size:.85rem}footer{border-top:1px solid #d9cdc0;margin-top:28px;padding-top:20px}.notice{background:#eee5d9;padding:16px;border-radius:8px}dl{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px}dt{font-weight:650}dd{margin:0;overflow-wrap:anywhere}.consent{display:flex;gap:12px;font-weight:400;margin:22px 0}.consent input{flex:0 0 22px;width:22px;min-height:22px;height:22px}.trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}@media(max-width:600px){main{padding:16px}.grid{grid-template-columns:1fr}.estimate strong{width:100%;margin:0}dl{grid-template-columns:1fr;gap:3px}dd{margin-bottom:10px}button{max-width:100%}}
