  :root{
    --text:#505050; --dark:#353432; --dark-2:#4E4D4A;
    --line:#dedede; --line-soft:#eee; --panel:#f7f7f7;
    --red:#E35D53; --red-hover:#E0493E;
    --steel:#7c8b94; --steel-dim:#c7ced2;
    --white:#fff;
  }
  *{box-sizing:border-box;}
  body{margin:0;font-family:'Roboto',sans-serif;color:var(--text);font-size:16px;line-height:1.5;background:var(--white);}
  h1,h2,h3{font-family:'Oswald',sans-serif;color:var(--dark);margin:0;}
  .eyebrow{font-family:'Fira Sans',sans-serif;font-style:italic;text-transform:uppercase;font-size:13px;letter-spacing:1px;color:var(--red);margin:0 0 8px;}
  .wrap{max-width:1000px;margin:0 auto;padding:10px 15px 40px;}

  h1.title{font-size:29px;font-weight:600;line-height:1.15;margin-bottom:12px;}
  h1.title span{color:var(--red);}
  .lede{color:#777;font-size:15px;max-width:600px;margin:0 0 28px;}

  .pane-shell{border:1px solid var(--line);border-radius:3px;background:var(--panel);padding:18px 18px 14px;margin-bottom:32px;}
  .pane-caption{display:flex;justify-content:space-between;align-items:baseline;font-family:'Fira Sans',sans-serif;font-style:italic;font-size:11.5px;text-transform:uppercase;letter-spacing:.5px;color:#999;margin-bottom:10px;}
  .pane-caption b{color:var(--dark);font-style:normal;font-weight:700;}
  svg#door{display:block;width:100%;height:auto;}

  .grid{display:grid;grid-template-columns:1.15fr 1fr;gap:20px;align-items:start;}
  @media (max-width:800px){.grid{grid-template-columns:1fr;}}

  .card{background:var(--white);border:1px solid var(--line);border-radius:3px;padding:22px 22px 24px;}
  .card h2{font-size:17px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;margin:0 0 18px;padding-bottom:10px;border-bottom:1px solid var(--line-soft);}

  .field{margin-bottom:20px;}
  .field:last-child{margin-bottom:0;}
  .field label{display:flex;justify-content:space-between;font-size:13px;color:#777;margin-bottom:9px;}
  .field label b{font-family:'Oswald',sans-serif;color:var(--red);font-weight:600;}
  .field .hint{font-size:11.5px;color:#999;margin-top:6px;}

  input[type=range]{-webkit-appearance:none;width:100%;height:3px;border-radius:2px;background:var(--line);outline:none;}
  input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:var(--red);border:2px solid #fff;box-shadow:0 0 0 1px var(--line);cursor:pointer;margin-top:-6px;}
  input[type=range]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--red);border:2px solid #fff;box-shadow:0 0 0 1px var(--line);cursor:pointer;}
  input[type=range]::-moz-range-track{background:var(--line);height:3px;border-radius:2px;}

  .opts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
  .opts.two{grid-template-columns:repeat(2,1fr);}
  .opt{border:1px solid var(--line);background:var(--white);color:#777;border-radius:3px;padding:9px 6px;font-size:12.5px;text-align:center;cursor:pointer;transition:border-color .15s,color .15s,background .15s;user-select:none;}
  .opt:hover{border-color:#e8b3af;}
  .opt.active{background:var(--red);border-color:var(--red);color:#fff;}

  .solution-cards{display:flex;flex-direction:column;gap:8px;}
  .sol-opt{border:1px solid var(--line);background:var(--white);border-radius:3px;padding:11px 13px;cursor:pointer;transition:border-color .15s,background .15s;}
  .sol-opt:hover{border-color:#e8b3af;}
  .sol-opt.active{border-color:var(--red);background:#fbeeec;}
  .sol-opt .fname{font-family:'Oswald',sans-serif;font-size:13.5px;font-weight:600;color:var(--dark);}
  .sol-opt .fdesc{font-size:11.5px;color:#888;margin-top:2px;}

  .checks{display:flex;flex-direction:column;gap:10px;}
  .chk{display:flex;align-items:center;gap:10px;font-size:13px;color:#777;cursor:pointer;}
  .chk input{width:16px;height:16px;accent-color:var(--red);cursor:pointer;}
  .chk.checked{color:var(--dark);}

  .result-card{background:var(--panel);position:sticky;top:16px;}
  .big-number{font-family:'Oswald',sans-serif;font-weight:700;font-size:clamp(28px,4vw,36px);color:var(--dark);margin:2px 0 2px;}
  .range-label{font-size:12px;color:#888;margin-bottom:18px;}

  .breakdown{border-top:1px solid var(--line);padding-top:14px;margin-top:4px;}
  .bline{display:flex;justify-content:space-between;font-size:12.5px;color:#777;padding:5px 0;}
  .bline b{color:var(--dark);font-weight:500;}
  .bline.total{border-top:1px solid var(--line);margin-top:6px;padding-top:10px;color:var(--dark);font-size:14px;}
  .bline.total b{font-family:'Oswald',sans-serif;font-weight:700;color:var(--red);}

  .metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0 6px;}
  .metric{background:var(--white);border:1px solid var(--line);border-radius:3px;padding:13px 14px;}
  .metric .mval{font-family:'Oswald',sans-serif;font-weight:700;font-size:21px;color:var(--red);}
  .metric .mlab{font-size:11px;color:#888;margin-top:3px;line-height:1.35;}

  .cta{display:block;text-align:center;background:var(--red);color:#fff!important;font-family:'Roboto',sans-serif;font-weight:700;font-size:14px;letter-spacing:1px;text-transform:uppercase;text-decoration:none;border-radius:3px;padding:14px;margin-top:20px;box-shadow:0 1px 1px rgba(0,0,0,.2);transition:background .15s;}
  .cta:hover{background:var(--red-hover);}

  .disclaimer{font-size:11px;color:#999;margin-top:14px;line-height:1.5;}