.elementor-36527 .elementor-element.elementor-element-260b820{--display:flex;--min-height:100vh;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;}#elementor-popup-modal-36527{background-color:rgba(0,0,0,.8);justify-content:center;align-items:center;pointer-events:all;}#elementor-popup-modal-36527 .dialog-message{width:100vw;height:100vh;align-items:flex-start;}#elementor-popup-modal-36527 .dialog-close-button{display:flex;}#elementor-popup-modal-36527 .dialog-widget-content{border-radius:20px 20px 20px 20px;box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}/* Start custom CSS for html, class: .elementor-element-1e3bbeb */:root {
    --green:    #406D63;
    --green-dk: #335A51;
    --green-lt: #EDF3F1;
    --black:    #000000;
    --grey-bg:  #F5F5F5;
    --grey-bd:  #E2E2E2;
    --grey-tx:  #666666;
    --white:    #FFFFFF;
  }
  * { box-sizing: border-box; margin: 0; padding: 0; }
  body {
    font-family: "Mulish", sans-serif;}
  .card {
    background: var(--white); border-radius: 20px;
    padding: 40px 36px; max-width: 640px; width: 100%;
    box-shadow: 0 4px 24px rgba(0,0,0,.08);
  }
  .yoi-logo { display: flex; align-items: center; gap: 10px; margin-bottom: 24px; }
  .yoi-logo-mark {
    width: 36px; height: 36px; background: var(--black);
    border-radius: 8px; display: flex; align-items: center; justify-content: center; flex-shrink: 0;
  }
  .yoi-logo-mark span { color: #fff; font-weight: 900; font-size: 14px; }
  .yoi-logo-text { font-size: 13px; font-weight: 700; color: var(--black); }
  .yoi-logo-sub  { font-size: 10px; font-weight: 500; color: var(--grey-tx); text-transform: uppercase; letter-spacing: 0.5px; }

  h1 {font-family:"Montserrat"; font-size: 40px; font-weight: 800; color: var(--black); margin-bottom: 6px; line-height: 1.25; }
  .subtitle { color: var(--grey-tx); font-size: 14px; margin-bottom: 28px; line-height: 1.5; }

  .progress-wrap { background: var(--grey-bd); border-radius: 99px; height: 5px; margin-bottom: 8px; overflow: hidden; }
  .progress-bar  { height: 5px; background: var(--green); border-radius: 99px; transition: width .35s ease; }
  .step-label    { font-size: 12px; font-weight: 600; color: var(--grey-tx); margin-bottom: 28px; }

  .question     {font-family:"Montserrat"; font-size: 30px; font-weight: 800; color: var(--black); margin-bottom: 6px; line-height: 1.4; }
  .question-sub { font-size: 17px; color: var(--grey-tx); margin-bottom: 18px; }

  .options { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-bottom: 28px; }
  .options.single { grid-template-columns: 1fr; }
  .option {
    border: 2px solid var(--grey-bd); border-radius: 14px;
    padding: 16px 14px; cursor: pointer;
    transition: border-color .15s, background .15s;
    display: flex; align-items: flex-start; gap: 12px;
    background: var(--white); user-select: none;
  }
  .option:hover    { border-color: var(--green); background: var(--green-lt); }
  .option.selected { border-color: var(--green); background: var(--green-lt); }
  .option .icon  { font-size: 22px; flex-shrink: 0; margin-top: 1px; }
  .option .lbl   { font-size: 17px; font-weight: 700; color: var(--black); line-height: 1.3; }
  .option .slbl  { font-size: 14px; color: var(--grey-tx); margin-top: 3px; }
  .option.selected .lbl { color: var(--green-dk); }

  .nav { display: flex; justify-content: space-between; align-items: center; }
  .btn {
    padding: 13px 28px; border-radius: 10px; border: none;
    font-family: 'Inter', sans-serif; font-size: 14px; font-weight: 700;
    cursor: pointer; transition: background .15s;
  }
  .btn-primary { background: var(--green); color: #fff; }
  .btn-primary:hover { background: var(--green-dk); }
  .btn-primary:disabled { background: var(--grey-bd); color: #b0b0b0; cursor: not-allowed; }
  .btn-ghost { background: none; color: var(--grey-tx); font-size: 13px; font-weight: 600; padding: 0; }
  .btn-ghost:hover { color: var(--black); }

  /* Result */
  .result { display: none;  gap: 24px; }
  .result-hero {
    background: var(--black); border-radius: 16px; padding: 24px; margin-bottom: 20px;
    position: relative; overflow: hidden;
  }
  .result-hero::after {
    content:''; position:absolute; top:-40px; right:-40px;
    width:160px; height:160px; border-radius:50%;
    background: rgba(64,109,99,.25);
  }
  .result-hero h2 { font-size: 20px; font-weight: 800; color: #fff; margin-bottom: 4px; position:relative; z-index:1; }
  .result-hero p  { font-size: 13px; color: rgba(255,255,255,.5); position:relative; z-index:1; }

  .badge { display:inline-block; background:var(--green); color:#fff; font-size:10px; font-weight:800; padding:4px 10px; border-radius:99px; letter-spacing:.8px; text-transform:uppercase; margin-bottom:14px; }

  .summary-box { background:var(--grey-bg); border-radius:12px; padding:16px 18px; margin-bottom:20px; }
  .summary-label { font-size:10px; font-weight:700; color:var(--grey-tx); text-transform:uppercase; letter-spacing:.8px; margin-bottom:10px; }
  .summary-row { display:flex; justify-content:space-between; padding:5px 0; border-bottom:1px solid var(--grey-bd); font-size:13px; color:var(--grey-tx); }
  .summary-row:last-child { border-bottom:none; }
  .summary-val { font-weight:700; color:var(--black); text-align:right; max-width:60%; }

  .advice-text { font-size:13px; color:var(--grey-tx); margin-bottom:14px; line-height:1.6; }

  .product-cards { display:flex; flex-direction:column; gap:10px; margin-bottom:10px; }
  .product-card { border:2px solid var(--grey-bd); border-radius:14px; padding:16px; display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom: 10px;}
  .product-card.top { border-color:var(--green); margin-bottom:0 }
.product-left {
  flex-shrink: 0;
}

.product-img {
  width: 72px;
  height: 72px;
  object-fit: cover;
  border-radius: 8px;
}

.product-middle {
  flex: 1;
}

.product-right {
  text-align: right;
}
  .top-pill { display:inline-block; background:var(--green); color:#fff; font-size:10px; font-weight:700; padding:2px 8px; border-radius:99px; margin-bottom:5px; }
  .product-brand { font-size:11px; font-weight:600; color:var(--grey-tx); text-transform:uppercase; letter-spacing:.5px; margin-bottom:2px; }
  .product-name  { font-size:15px; font-weight:800; color:var(--black); }
  .product-desc  { font-size:12px; color:var(--grey-tx); margin-top:4px; line-height:1.4; }
  .product-price { font-size:15px; font-weight:800; color:var(--green); white-space:nowrap; text-align:right; }
  .product-lease { font-size:11px; color:var(--grey-tx); text-align:right; margin-top:2px; }

  .alert { border-radius:12px; padding:14px 16px; font-size:13px; line-height:1.5; margin-bottom:16px; display:flex; gap:10px; align-items:flex-start; }
  .alert.yellow { background:#FFFBEA; border:1px solid #F5D84E; color:#5C4A00; }
  .alert.blue   { background:#EFF6FF; border:1px solid #BFDBFE; color:#1E3A5F; }

  .voorraad-block { border:2px solid var(--black); border-radius:16px; padding:22px; margin-bottom:20px; }
  .voorraad-header { display:flex; align-items:center; gap:10px; margin-bottom:6px; }
  .voorraad-header strong { font-size:15px; font-weight:800; color:var(--black); }
  .voorraad-intro { font-size:13px; color:var(--grey-tx); margin-bottom:16px; line-height:1.5; }
  .v-card { background:var(--grey-bg); border-radius:12px; padding:14px 16px; display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:8px; }
  .v-brand { font-size:10px; font-weight:700; color:var(--grey-tx); text-transform:uppercase; letter-spacing:.5px; }
  .v-name  { font-size:14px; font-weight:800; color:var(--black); }
  .v-sub   { font-size:11px; color:var(--grey-tx); margin-top:2px; }
  .v-price { font-size:14px; font-weight:800; color:var(--green); white-space:nowrap; text-align:right; }
  .v-lease { font-size:11px; color:var(--grey-tx); text-align:right; }

  .cta-block { background:var(--green-lt); border-radius:16px; padding:24px; text-align:center; }
  .cta-block p { font-size:13px; color:var(--grey-tx); margin-bottom:16px; line-height:1.6; }
  .btn-cta {
    display:block; width:100%; padding:15px 24px; border-radius:12px;
    font-family:'Inter',sans-serif; font-size:15px; font-weight:700;
    text-decoration:none; text-align:center; border:none; cursor:pointer;
    transition:background .15s; margin-bottom:10px;
  }
  .btn-cta.green { background:var(--green); color:#fff; }
  .btn-cta.green:hover { background:var(--green-dk); }
  .btn-cta.black { background:var(--black); color:#fff; }
  .btn-cta.black:hover { background:#222; }
  .btn-restart { font-family:'Inter',sans-serif; font-size:12px; color:var(--grey-tx); background:none; border:none; cursor:pointer; text-decoration:underline; margin-top:4px; }/* End custom CSS */