.dream{max-width:none;margin:0 auto}.dream__header{max-width:40rem;margin-bottom:1.5rem}.dream__title{letter-spacing:-.03em;color:#111;margin:0;font-size:clamp(1.75rem,3vw,2.25rem);font-weight:400;line-height:1.2}.dream__lede,.dream__muted{color:#444;max-width:36rem;margin:.75rem 0 0;font-size:1rem;line-height:1.55}.dream__steps{flex-wrap:wrap;gap:.4rem;margin:0 0 1.25rem;padding:0;list-style:none;display:flex}.dream__step{color:#666;background:#f5f5f5;border-radius:999px;padding:.25rem .6rem;font-size:.75rem}.dream__step--active{color:#fff;background:#111}.dream__panel,.dream__summary,.dream__save{background:#fff;border:1px solid #eee;border-radius:1rem;padding:1.25rem}.dream__question{letter-spacing:-.02em;margin:0 0 .85rem;font-size:1.25rem;font-weight:500}.dream__choices{flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem;display:flex}.dream__chip{font:inherit;cursor:pointer;background:#fff;border:1px solid #e5e5e5;border-radius:999px;padding:.55rem .85rem;font-size:.875rem}.dream__chip--active{color:#fff;background:#111;border-color:#111}.dream__chip--no.dream__chip--active{background:#9a3412;border-color:#9a3412}.dream__pair{gap:1rem;margin-bottom:1rem;display:flex}.dream__pair label{color:#555;flex-direction:column;gap:.35rem;font-size:.8125rem;display:flex}.dream__pair select{min-width:6rem;height:2.5rem;font:inherit;border:1px solid #e5e5e5;border-radius:.5rem;padding:0 .5rem}.dream__visual{margin-bottom:1.25rem}.dream__visual-label,.dream__kicker{letter-spacing:.04em;text-transform:uppercase;color:#737373;margin:0 0 .5rem;font-size:.75rem;font-weight:600}.dream__visual-row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.dream__visual-card{text-align:left;font:inherit;cursor:pointer;background:#fff;border:1px solid #eee;border-radius:.75rem;flex-direction:column;align-items:flex-start;gap:.25rem;padding:.65rem;display:flex}.dream__visual-card--active{border-color:#111;box-shadow:0 0 0 1px #111}.dream__swatch{border-radius:.5rem;width:100%;height:5.5rem;display:block}.dream__swatch--modern{background:linear-gradient(135deg,#e7e5e4,#a8a29e)}.dream__swatch--warm{background:linear-gradient(135deg,#f5e6d3,#c4a484)}.dream__swatch--clean{background:linear-gradient(160deg,#f8fafc,#cbd5e1)}.dream__swatch--coastal{background:linear-gradient(160deg,#e0f2fe,#7dd3fc)}.dream__swatch--large{background:linear-gradient(160deg,#dcfce7,#86efac)}.dream__swatch--intimate{background:linear-gradient(160deg,#fef3c7,#fcd34d)}.dream__visual-title{color:#111;font-size:.875rem;font-weight:600}.dream__visual-hint{color:#666;font-size:.75rem}.dream__slider{color:#444;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;margin-bottom:1rem;font-size:.8125rem;display:grid}.dream__nav{justify-content:space-between;gap:.75rem;display:flex}.dream__primary,.dream__secondary,.dream__save-form button{height:2.75rem;font:inherit;cursor:pointer;border-radius:.5rem;padding:0 1.1rem}.dream__primary,.dream__save-form button{color:#fff;background:#111;border:none}.dream__secondary{background:#fff;border:1px solid #e5e5e5}.dream__secondary:disabled{opacity:.4;cursor:default}.dream__summary{margin-bottom:2rem}.dream__summary-title{letter-spacing:-.03em;margin:0 0 .75rem;font-size:1.5rem;font-weight:500}.dream__summary-lines{color:#333;margin:0 0 .75rem;padding:0;line-height:1.6;list-style:none}.dream__counts{color:#444;margin:0 0 .75rem;font-size:.9375rem}.dream__text-btn,.dream__link{font:inherit;color:#111;cursor:pointer;background:0 0;border:none;padding:0;font-size:.875rem;text-decoration:underline}.dream__section-title{margin:0 0 .75rem;font-size:1.125rem;font-weight:600}.dream__grid{margin:0;padding:0;list-style:none}.dream__match{min-width:0}.dream__score{color:#166534;margin:0 0 .4rem;font-size:.8125rem;font-weight:600}.dream__save{margin-top:2rem}.dream__save-form{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.dream__save-form input{min-width:14rem;height:2.75rem;font:inherit;border:1px solid #e5e5e5;border-radius:.5rem;flex:1;padding:0 .75rem}.dream__saved{color:#166534;margin:.75rem 0 0;font-size:.875rem}@media (width>=1024px){.dream__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=700px){.dream__visual-row,.dream__slider{grid-template-columns:1fr}}
