.product-planner{max-width:1180px;margin:3rem auto;padding:clamp(18px,3vw,40px);border:1px solid currentColor;border-radius:8px;line-height:1.6}
.product-planner h2{font-size:clamp(1.4rem,3vw,2rem);margin:0 0 .6rem}
.product-planner>p{max-width:75ch}
.product-planner form{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:16px;align-items:end;margin:1.5rem 0}
.product-planner label{display:grid;gap:6px;font-size:.95rem;min-width:0}
.product-planner input,.product-planner select{width:100%;min-width:0;box-sizing:border-box;padding:12px;font:inherit;color:inherit;background:Canvas;border:1px solid currentColor;border-radius:4px}
.product-planner button{padding:13px 18px;min-height:48px;background:#202625;color:white;border:0;border-radius:4px;font:inherit;cursor:pointer}
.product-planner button:disabled{opacity:.6}
.product-planner dl>div{display:flex;gap:20px;justify-content:space-between;border-bottom:1px solid #999;padding:8px 0;flex-wrap:wrap}
.product-planner dd{font-weight:700;margin:0}
.product-planner ul{padding-left:1.3em}
.planner-notes{font-size:.9rem}
.product-planner [data-planner-result]{overflow-wrap:anywhere}
.product-planner a{text-decoration:underline}
.product-planner input:focus-visible,.product-planner select:focus-visible,.product-planner button:focus-visible{outline:3px solid #927140;outline-offset:3px}
@media (max-width:600px){.product-planner{margin:2rem 12px}
.product-planner form{grid-template-columns:1fr}}
