:root{--ink:#151718;--muted:#6d706f;--paper:#f4f1eb;--card:#fff;--line:#ded9cf;--orange:#ed4b16;--orange2:#b92f09;--dark:#101718;--green:#1d7554;--radius:18px;--shadow:0 18px 50px rgba(20,25,24,.09);font-family:Satoshi,system-ui,sans-serif;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 85% 5%,rgba(237,75,22,.09),transparent 28%),var(--paper)}button,input,select,textarea{font:inherit}button{cursor:pointer}.topbar{height:78px;padding:0 max(24px,calc((100vw - 1340px)/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(244,241,235,.92);backdrop-filter:blur(14px);position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit}.brand img{width:58px;height:58px;object-fit:contain}.brand span{display:grid}.brand strong{font-family:'Clash Display',sans-serif;font-size:20px}.brand small{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.top-actions{display:flex;align-items:center;gap:12px}.save-state{font-size:12px;color:var(--green)}main{max-width:1340px;margin:auto;padding:0 24px 80px}.hero{min-height:360px;display:grid;grid-template-columns:1fr 260px;align-items:center;gap:50px;border-bottom:1px solid var(--line)}.eyebrow{text-transform:uppercase;letter-spacing:.15em;color:var(--orange);font-size:12px;font-weight:800}.hero h1{font:600 clamp(42px,6vw,78px)/.97 'Clash Display',sans-serif;letter-spacing:-.045em;margin:14px 0 22px}.hero h1 em{font-style:normal;color:var(--orange)}.hero p:not(.eyebrow){font-size:18px;line-height:1.65;color:var(--muted);max-width:760px}.hero-card{background:var(--dark);color:#fff;border-radius:30px;padding:32px;display:grid;gap:12px;box-shadow:var(--shadow);transform:rotate(2deg)}.hero-card span,.hero-card small{color:#aeb7b6;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.hero-card strong{font:600 25px 'Clash Display',sans-serif;color:#ff6330}.app-layout{display:grid;grid-template-columns:210px minmax(0,1fr) 330px;gap:24px;align-items:start;padding-top:34px}.steps{position:sticky;top:105px;display:grid;gap:8px}.step{border:0;background:transparent;text-align:left;display:flex;gap:12px;align-items:center;padding:12px;border-radius:14px;color:var(--muted)}.step>span{width:32px;height:32px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:12px;background:var(--card)}.step div{display:grid}.step strong{font-size:14px}.step small{font-size:11px}.step.active{color:var(--ink);background:#fff}.step.active>span,.step.done>span{background:var(--orange);border-color:var(--orange);color:#fff}form{background:var(--card);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);overflow:hidden}.form-step{display:none;padding:34px}.form-step.active{display:block;animation:fade .25s ease}@keyframes fade{from{opacity:.2;transform:translateY(5px)}}.section-title{display:flex;gap:18px;margin-bottom:28px}.section-title>span{color:var(--orange);font:700 13px 'Clash Display',sans-serif;padding-top:6px}.section-title h2{font:600 30px 'Clash Display',sans-serif;margin:0 0 6px;letter-spacing:-.025em}.section-title p{margin:0;color:var(--muted);font-size:14px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{display:grid;gap:8px;min-width:0;border:0;padding:0;margin:0;position:relative}.field.wide,.wide{grid-column:1/-1}.field>span,.field legend{font-size:12px;font-weight:700;color:#444947}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:12px;background:#fbfaf7;padding:13px 14px;color:var(--ink);outline:0}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(237,75,22,.1)}.field input.invalid,.field select.invalid{border-color:#bd2828}.chips,.check-grid{display:flex;flex-wrap:wrap;gap:9px}.chips input,.check-grid input{position:absolute;opacity:0}.chips label span,.check-grid label span{display:block;border:1px solid var(--line);padding:10px 13px;border-radius:999px;font-size:12px;background:#fbfaf7}.chips input:checked+span,.check-grid input:checked+span{color:#fff;background:var(--dark);border-color:var(--dark)}.check-grid{display:grid;grid-template-columns:repeat(4,1fr)}.check-grid label span{text-align:center;border-radius:12px}.suggestions{position:absolute;left:0;right:0;top:70px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);z-index:10;display:none;overflow:hidden}.suggestions.open{display:grid}.suggestions button{padding:11px 14px;border:0;background:#fff;text-align:left}.suggestions button:hover{background:#fff2ed}.budget-head{display:grid;grid-template-columns:200px 1fr;gap:20px;margin-bottom:24px}.costs{display:grid;gap:10px}.cost-row{display:grid;grid-template-columns:1fr 150px 34px;gap:10px}.cost-row input,.cost-row select{border:1px solid var(--line);border-radius:10px;padding:11px;background:#fbfaf7}.cost-row button{border:0;background:transparent;color:#a33;font-size:20px}.add-cost{margin:14px 0 22px;border:1px dashed var(--orange);background:#fff8f5;color:var(--orange2);border-radius:12px;padding:11px 14px;font-weight:700}.budget-summary{display:grid;grid-template-columns:1fr 1fr;background:var(--dark);color:#fff;border-radius:16px;padding:20px;gap:20px}.budget-summary div{display:grid;gap:6px}.budget-summary span{font-size:11px;color:#aeb7b6;text-transform:uppercase}.budget-summary strong{font:600 24px 'Clash Display',sans-serif}.budget-summary div:last-child strong{color:#ff6330}.notice{font-size:12px;color:var(--muted);line-height:1.5}.consent{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--muted)}.form-nav{border-top:1px solid var(--line);padding:20px 34px;display:flex;justify-content:space-between;align-items:center}.form-nav span{font-size:12px;color:var(--muted)}.primary,.secondary,.ghost{border-radius:11px;padding:11px 17px;font-weight:700;border:1px solid transparent}.primary{background:var(--orange);color:#fff}.primary:hover{background:var(--orange2)}.secondary{background:#fff;border-color:var(--line);color:var(--ink)}.ghost{background:transparent;border-color:var(--line);color:var(--muted)}button:disabled{opacity:.4;cursor:not-allowed}.summary{position:sticky;top:105px;background:var(--dark);color:#fff;border-radius:22px;padding:24px;box-shadow:var(--shadow)}.summary-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:18px;border-bottom:1px solid #30393a}.summary-head span{font:600 18px 'Clash Display',sans-serif}.summary-head strong{font-size:10px;text-transform:uppercase;color:#ff7950}.summary-body{display:grid;gap:15px;padding:20px 0}.summary-item{display:grid;gap:4px}.summary-item span{font-size:10px;color:#8f9a99;text-transform:uppercase;letter-spacing:.07em}.summary-item strong{font-size:13px;line-height:1.4}.summary-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.summary-actions button{font-size:12px;padding:10px}.summary-actions .full{grid-column:1/-1}.summary>p{font-size:10px;color:#8f9a99;margin:16px 0 0}.summary>p strong{color:#d5dcdb}footer{max-width:1340px;margin:auto;border-top:1px solid var(--line);padding:36px 24px 50px;display:flex;gap:18px;align-items:center}footer img{width:70px;height:70px;object-fit:contain}footer p{margin:4px 0;color:var(--muted);font-size:12px}.toast{position:fixed;bottom:22px;left:50%;transform:translate(-50%,20px);background:var(--dark);color:#fff;padding:12px 18px;border-radius:12px;opacity:0;pointer-events:none;transition:.2s;z-index:50}.toast.show{opacity:1;transform:translate(-50%,0)}@media(max-width:1100px){.app-layout{grid-template-columns:180px 1fr}.summary{grid-column:2;position:static}.check-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.topbar{height:70px}.brand img{width:48px;height:48px}.save-state{display:none}.hero{grid-template-columns:1fr;min-height:auto;padding:70px 0}.hero-card{display:none}.app-layout{display:block}.steps{position:static;grid-template-columns:repeat(5,1fr);margin-bottom:14px}.step{justify-content:center;padding:8px}.step div{display:none}.form-step{padding:24px 18px}.field-grid,.budget-head,.budget-summary{grid-template-columns:1fr}.summary{margin-top:18px}.form-nav{padding:18px}.cost-row{grid-template-columns:1fr 120px 28px}.section-title h2{font-size:25px}.hero h1{font-size:48px}}@media print{.topbar,.hero,.steps,.form-nav,.summary-actions,.add-cost,.cost-row button,footer{display:none!important}body{background:#fff}.app-layout{display:block;padding:0}.form-step{display:block!important;page-break-inside:avoid}form{box-shadow:none;border:0}.summary{display:block;position:static;background:#fff;color:#000;box-shadow:none;border:1px solid #ccc;margin-top:20px}.summary-head{border-color:#ccc}}
