:root{
    --brand-green:#268226;        /* primary green */
    --brand-green-600:#1f5b23;
    --brand-green-100:#e7f3e9;
    --ink:#212529;
    --muted:#6c757d;
    --card-radius:1.5rem;
    --pill-radius:0.9375rem;
      --input-radius:1.5625rem;
      --button-color:#B5F433;
}

html,body{height:100%;}
body{
    font-family: "Poppins", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji", sans-serif;
    background:#fafafa;
    color:var(--ink);
}

/* Nav */
.navbar{
    background:#fff;
    border-bottom:1px solid rgba(0,0,0,.06);
}
.navbar .nav-link{font-weight:500;}
.navbar-brand img {
    max-height: 40px;
    width: auto;
    object-fit: contain;
}
.btn-pill{
    border-radius: var(--pill-radius);
    padding:.55rem 1.1rem;
    font-weight:600;
}
.header-button, .header-button:hover {
  font-weight: 500;color:#000000;background:var(--button-color); border-color:var(--button-color);
}

.onboard-card{
    background:#fff;border:1px solid rgba(180, 180, 180, 1);
    border-radius:calc(var(--card-radius) + .5rem);
    box-shadow:none;
  }
.mini-logo{
    width:56px;height:56px;border-radius:1rem;display:flex;align-items:center;justify-content:center;
    background:#ffffff;border:1px solid rgba(0,0,0,.08);box-shadow:0 6px 16px rgba(0,0,0,.06);
}

.headline{
    color:var(--brand-green);
    font-weight:600;
    line-height:1.25;
    margin-bottom: 50px;
}

/* Hero image */
.hero-img {
    width: 100%;
    height: auto;
    max-height: 300px;
    object-fit: cover;
    border-radius: 1rem;
}

/* Date input styling */
.form-control.rounded-pill, .form-select.rounded-pill, .crit{
    border-radius:2rem;
    padding:1.2rem 2.1rem !important;
    font-size: 16px;
    font-weight: 400;
    color:rgba(109, 109, 109, 1);
    border:1px solid rgba(180, 180, 180, 1);
    box-shadow:none !important;
    background:#ffffff;
    border-radius:var(--pill-radius) !important;
  }
  .help-text{color:var(--muted);font-size:.95rem;}
  .btn-link-muted{color:rgba(109, 109, 109, 1) !important;font-weight:600;font-size: 14px;
  text-decoration: none !important;}

.crit{
  border-radius:var(--input-radius) !important;
}

/* Continue button */
.btn-continue{
    background: var(--button-color);
    border: 0;
    color:#111111;
    font-weight:600;
    border-radius: var(--pill-radius);
    padding:.8rem 2.25rem;
    font-size: 14px;
    text-transform: uppercase;
  }
  .btn-continue .bi{margin-left:.4rem;}


.form-control.rounded-pill::placeholder {
    color:rgba(109, 109, 109, 1);
    font-size: 14px;
    font-weight: 400;
}
.section-subtitle{color:var(--brand-green);font-weight:700;}

/* Confirmation pills (shared) */
.confirm-pill{
    border:1px solid rgba(180, 180, 180, 1);
    background:#fff;border-radius:var(--input-radius);padding:1.2rem 2.1rem;
    display:flex;align-items:center;justify-content:space-between;
    box-shadow:none;
  }
  .confirm-pill .text{
    font-weight:500;
    color:rgba(109, 109, 109, 1);
  }
  label {
    color:rgba(109, 109, 109, 1);
    font-weight:500 !important; 
    font-size: 16px !important;
  }
  .confirm-pill .check, .crit .check, .ira-option .dot{
    width:20px;height:18px;border-radius:5px;
    display:flex;align-items:center;justify-content:center;
    background: var(--button-color);
    color:black;border:1px solid #bfe9b7;
    flex:0 0 18px;
  }
  .bi.bi-check-lg::before {
    color: black
  }

.check:checked{
  width:20px;height:18px;border-radius:5px;
    display:flex;align-items:center;justify-content:center;
    ;color:black;border:1px solid #bfe9b7;
    flex:0 0 18px;
}

  /* Option cards */
.option-card{
border:1px solid rgba(0,0,0,.08);
background:#F8F8F8;
border-radius:1rem;
padding:4.25rem 1.25rem;
height:100%;
transition: all .2s ease;
}
.option-card:hover{transform: translateY(-2px); box-shadow: 0 10px 24px rgba(0,0,0,.06);}
.option-card .icon-tile{
    width:85px;height:85px;border-radius:1rem;background-color:#ffffff;
    display:flex;align-items:center;justify-content:center;
    box-shadow: 0 10px 18px rgba(0,0,0,.08);
    margin-bottom:.9rem;
}

.option-card.active{
    background: var(--brand-green);

    box-shadow: 0 16px 28px rgba(46,125,50,.28);
}

.option-card.active .label{
    color:#ffffff;
    background-color:#056105;
    border:0.7px solid #ffffff;

}

.option-card .label{
    color:#4D4D4D;
    font-weight:500;
    margin-top:.25rem;
    background-color:#ffffff;
    padding:0.5rem 2rem;
    border-radius: 10px;
    border:1px solid rgba(0,0,0,.08);
    box-shadow:0 6px 14px rgba(0,0,0,.06);

}  

/* Bottom login pill */
.login-pill{
    background:#fff;
    border:1px solid rgba(0,0,0,.08);
    border-radius: var(--pill-radius);
    padding:1.9rem 1.1rem;
    text-align: center;
    width: 100%;

}
.login-pill .muted{color:var(--muted); font-size:.9rem;}
.btn-login{
    border-radius: var(--pill-radius);
    font-weight:600;
    padding:.55rem 2rem;
    border:1px solid var(--brand-green);
    color:#fff;
    background: var(--brand-green);
    text-transform: uppercase;
    font-size: 12px;
}
.btn-login:hover{background: var(--brand-green-600); border-color: var(--brand-green-600);color:#fff;}

.form-check-input[type=checkbox]{
    background-color: var(--button-color);
    position: relative;
    appearance: none;
    color:black;
  -webkit-appearance: none;
}
.form-check-input[type=checkbox]:checked:after {
  content: "✔";
  color: black;
  font-size: 8px;
  position: absolute;
  top: 2px;
  left: 2px;
  box-shadow: none;

}
.form-check-input:checked:focus{
  box-shadow: none;
  border-color: var(--button-color);
  color: black;
}
.btn-outline-muted, .btn-outline-muted:hover {
    font-size: 14px;
    border:1px solid rgba(0,0,0,1);
    padding: .8rem 2.25rem;
    border-radius: var(--pill-radius);
   
}