/* ms-inquiry.css */
.ms-form{max-width:1100px;margin:0px auto;color:#222;}
.ms-header{text-align:center;margin-bottom:18px;}
.ms-header h1{font-size:28px;margin:0 0 6px;}
.ms-header .ms-sub{color:#666;margin:0;}

.plans-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:18px;margin:30px 0;}
.plan-card:nth-child(4) {
  grid-column: 2;
}
.plan-card{background:#fff;border-radius:12px;padding:35px 20px;box-shadow:0 6px 18px rgba(16,24,40,0.06);position:relative;border:1px solid #eee;text-align:center;display:flex;flex-direction:column;align-items:center;}
.plan-card .plan-top{display:flex;align-items:flex-start;gap:8px;margin-bottom:8px;width: 100%;}
.plan-card .desde{font-size:12px;color:#888;}
.plan-card .price{font-weight:700;font-size:30px;    text-align: right;}
.plan-card .size{font-size:12px;color:#fff;background:#333;padding:4px 8px;border-radius:8px;}
.plan-title{    margin: 6px 0 4px;
    font-size: 24px;
    margin-top: 0;}
.plan-top h3 {
    width: 50%;
    text-align: left;
}   
.plan-desc-div {
    display: flex;
    width: 100%;
}
#pb-annual-row td {
    font-weight: bold;
}
.plan-desc-div .descpart {
    width: 50%;
    text-align: left;
}
.plan-desc-div .right {
    text-align: right;
}
.plan-frequency{font-size:13px;color:#666;margin-bottom:12px;}
.plan-card .btn {
    margin-top: 10px;
    padding: 0px 8px 6px 7px;
    border-radius: 50%;
    border: 0;
    background: #000;
    color: #fff;
    cursor: pointer;
    width: auto;
    font-weight: bold;
    font-size: 23px;
    height: 50px;
    width: 50px;
    text-align: center;
}
.plan-card .btn:hover {
    scale: 1.1;
}
.plan-desc {
    width: 100%;
}
.summary-box label {
  font-weight: bold;
}
.summary-box input {
  border: 1px solid #b9b5b5;
}
.plan-card.popular{border-color:#ffd8a8;box-shadow:0 12px 30px rgba(255,200,120,0.12);}
.plan-card .badge{position:absolute;top:12px;right:12px;background:#ffb84d;color:#fff;padding:6px 8px;border-radius:999px;font-weight:600;font-size:12px;}

.people-card{background:#fff;padding:16px;border-radius:12px;box-shadow:0 6px 18px rgba(16,24,40,0.06);margin:12px 0;text-align:center;}
.people-card label{display:block;margin-bottom:8px;font-weight:600;}
#people-range{width:80%;}
.people-value{margin-top:6px;font-weight:600;color:#333;}

.membership-grid{display:flex;gap:12px;margin:14px 0;}
.membership-card{flex:1;background:#fff;padding:12px;border-radius:10px;border:1px solid #eee;text-align:center;box-shadow:0 6px 18px rgba(16,24,40,0.04);}
.membership-card .member-price{font-size:18px;font-weight:700;margin:8px 0;}
.membership-card .member-discount{color:#ff7a59;font-weight:700;}

.benefits,.extras,.accessories,.summary-box{background:#fff;padding:20px;border-radius:12px;box-shadow:0 3px 9px #ddd;}
.extras {
    margin-bottom: 40px;
}
.plan-card {
  position: relative;
  border: 1px solid #ddd;
  border-radius: 20px;
  padding: 35px 20px;
  transition: 0.3s;
}
.plan-card.is-popular {
    border-color: #0198FF;
    box-shadow: 0 0 10px rgba(255, 111, 0, 0.3);
    border-width: 2px;
}
.popular-badge {
  position: absolute;
  top: -18px;
  background: #0198FF;
  color: #fff;
  font-size: 12px;
  padding: 4px 8px;
  border-radius: 6px;
  font-weight: bold;
  text-transform: uppercase;
}
/* Step 2 Modern Style */
.family-step {
  max-width: 620px;
  margin: 0 auto;
  text-align: center;
  background: #fff;
  border-radius: 16px;
  padding: 2rem;
  box-shadow: 0 6px 20px rgba(0,0,0,0.06);
  border: 1px solid #ddd;
}
.step-title {
  font-size: 1.4rem;
  font-weight: 600;
  margin-bottom: 1.2rem;
}
.family-size {
    display: flex;
    justify-content: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
    padding: 10px 10px;
    border-radius: 10px;
    border: 1px solid #ddd;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.06);
}
.family-btn {
  border-radius: 50%;
  border: 1px solid #ccc;
  background: #f8f8f8;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s;
}
.family-btn:hover {
  background: #eaeaea;
}
.family-btn.active {
  background: #000;
  color: #fff;
  border-color: #000;
}
.membership-box {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #fafafa;
  border-radius: 12px;
  padding: 1rem 1.5rem;
  margin-bottom: 1.5rem;
  border: 1px solid #ddd;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.06);
}
.membership-title {
  font-weight: 600;
  margin: 0;
}
.membership-sub {
  font-size: 0.9rem;
  color: #666;
  margin: 0;
}
.price-main {
  font-size: 1.6rem;
  font-weight: 700;
  display: block;
}
.price-note {
  font-size: 0.8rem;
  color: #666;
}
.ms-nav.center {
  text-align: center;
}
.ms-nav.center .btn.primary {
  background: #000;
  color: #fff;
  padding: 0.8rem 2.2rem;
  border-radius: 25px;
  font-weight: 600;
  border: none;
  cursor: pointer;
  transition: all 0.3s;
}
.ms-nav.center .btn.primary:hover {
  opacity: 0.85;
}
.billing-type, .family-size {
  display:flex;
  justify-content:center;
  gap:0.6rem;
  margin:1rem 0;
}
.bill-btn, .family-btn {
  border:1px solid #ccc;
  border-radius:25px;
  background:#f7f7f7;
  padding:0.4rem 1rem;
  font-weight:600;
  cursor:pointer;
}
.bill-btn.active, .family-btn.active {
  background:#000;
  color:#fff;
  border-color:#000;
}
.price-table {
  width:100%;
  border-collapse:collapse;
  margin:1rem auto;
}
.price-table td {
  padding:6px 8px;
}
.price-table .total-row td {
  border-top:2px solid #000;
  font-weight:700;
}
.text-right {
  text-align:right;
}
.plan-card .price .spanName {
    font-size: 14px;
    font-weight: normal;
    margin-top: 3px;
    display: block;
    line-height: 18px;
}
.family-size.choosePerson .family-btn {
    border-radius: 10px;
    margin: 0;
    padding-bottom: 5px;
    padding-top: 5px;
    padding-left: 10px;
    padding-right: 10px;
}
.all_benefits {
    display: flex;
    gap: 50px;
    margin: 50px auto;
    max-width: 620px;;
}
.all_benefits ul{
    margin-left:10px;
    margin-bottom:20px;
}
.all_benefits ul img {
    width: 25px;
}
.ms-nav.center .btn.secondary {
    background: #9b9a9a;
    color: #fff;
    padding: 0.8rem 2.2rem;
    border-radius: 25px;
    font-weight: 600;
    border: none;
    cursor: pointer;
    transition: all 0.3s;
}
.benefits {
    width: 100%;
}

#extras-boxes{
    display: flex;
    gap: 40px;
    align-items: flex-start;
}
#extras-boxes .extra-item-card {
    flex: 1;
}
#extras-boxes .extra-item-card.plan4-extra {
    flex: 2;
}
input.extra-iron-qty,input.plan4-extra-qty {
    padding: 0px 5px;
    text-align: center;
    border-radius: 5px;
    border: 1px solid gray;
    height: 30px;
}
select.plan4-extra-select {
    padding: 0px 5px;
    border-radius: 5px;
    border: 1px solid gray;
    height: 30px;
}
button.btn.add-plan4-extra {
    height: 30px;
    padding: 4px 16px;
    line-height: 21px;
    border: 1px solid gray;
    background: #9b9a9a;
    color: #fff;
}
div#person-help-text em {
    color: #000;
    font-weight: bold;
}


/* ===== EXTRAS ===== */

.extra-card {
  width: 320px;
  border: 1px solid #e1e1e1;
  border-radius: 8px;
  background: #fff;
  padding: 12px;
  box-shadow: 0 1px 3px rgba(0,0,0,0.05);
}
.extra-list {
  min-height: 40px;
  margin-bottom: 8px;
}
.extra-line {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 14px;
  margin-bottom: 4px;
}
.extra-line button.remove-extra {
  background: transparent;
  border: none;
  color: #d00;
  cursor: pointer;
}
.extra-select-row {
  display: flex;
  gap: 6px;
  align-items: center;
}
.extra-select {
  flex: 1;
}
.extra-preview {
  margin-top: 10px;
  background: #f8f8f8;
  padding: 10px 15px;
  border-radius: 8px;
}
.extra-preview ul {
  margin: 5px 0 10px 15px;
  padding: 0;
  list-style-type: disc;
}
.extra-preview li {
  font-size: 14px;
  margin-bottom: 3px;
}
.extra-card {
    box-shadow: 0 3px 9px #ddd;
    padding: 13px 20px 20px 20px !important;
}
input.extra-qty {
    max-width: 46px;
    text-align: center !important;
}
button.remove-extra {
    border: 1px solid gray;
}
.extra-item {
    margin-bottom: 10px;
}
.add-extra {
    border: 1px solid;
}
.extras-wrapper { margin-top: 18px; border-top: 1px solid #efefef; padding-top: 14px; }
.extras-wrapper h4 { margin-bottom:12px; font-size:1.2rem; }

.extra-card { box-shadow: none; }
.extra-card h4 { font-size:16px; margin:0 0 8px 0; }
.extra-card select {     padding: 9px 8px;
    border: 1px solid #ddd;
    border-radius: 5px;
    width: 54%;
    height: 40px; }
.extra-card input[type="number"] {
    padding: 9px 8px;
    border: 1px solid #ddd;
    border-radius: 6px;
    width: 54%;
    height: 40px;
}

.added-list { margin-bottom:8px; font-size:14px; color:#333; }

.added-item { display:flex; justify-content:space-between; align-items:center; padding:8px; background:#fafafa; border-radius:6px; border:1px solid #eee; margin-bottom:6px; }
.added-item button.remove-extra { margin-left:8px; border:none; background:transparent; color:#c00; cursor:pointer; }

/* Buttons */
.btn { padding:8px 12px; border-radius:6px; border:0; cursor:pointer; }
.btn.small { padding:6px 10px; font-size:13px; }
.btn.primary { background:#0073aa; color:#fff; }
.btn.secondary { background:#f1f1f1; color:#333; }

.summary-box p {
    margin-top: 5px;
}
#sum-extras-list ul {
    margin-left: 20px;
}
p.total {
    font-weight: bold;
    font-size: 19px;
    border-top: 1px solid;
    margin-top: 12px !important;
}
#ms-contact-form .contactBefore {
    display: flex;
    gap: 50px;
}
#ms-contact-form .contactBefore .sglBox {
    width: 48%;
}
#ms-contact-form .formBox label {
    display: block;
    margin-bottom: 0;
}
#ms-contact-form .formBox input,#ms-contact-form .formBox textarea {
    width: 95%;
    margin-bottom: 15px;
    padding: 5px 10px;
}
.thankyou-box {
  background: #f9f9f9;
  border-radius: 12px;
  padding: 40px 20px;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
  max-width: 600px;
  margin: 40px auto;
}

.thankyou-box h2 {
  color: #2a8a2a;
  margin-bottom: 10px;
  font-size: 24px;
}

.thankyou-box p {
  font-size: 16px;
  color: #444;
}



/* === PLAN 4 EXTRAS - CARD STYLE === */
.plan4-extra {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  background: transparent;
  border: none;
  padding: 0;
}

/* Hide the old select + button */
.plan4-extra select,
.plan4-extra button {
  display: none !important;
}

/* Individual option card */
.plan4-option-card {
  width: 180px;
  min-height: 110px;
  border: 2px solid #ddd;
  border-radius: 16px;
  padding: 14px;
  text-align: left;
  cursor: pointer;
  background: #fff;
  transition: all 0.2s ease;
  position: relative;
}

.plan4-option-card:hover {
  border-color: #000;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
}

/* Title */
.plan4-option-title {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 6px;
}

/* Price */
.plan4-option-price {
  font-size: 20px;
  font-weight: 700;
  color: #000;
}

/* Subtitle */
.plan4-option-sub {
  font-size: 13px;
  color: #777;
  margin-top: 4px;
}

/* Selected state */
.plan4-option-card.active {
  border-color: #000;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.12);
}

/* Check icon */
.plan4-option-card.active::after {
  content: "✓";
  position: absolute;
  right: 14px;
  top: 12px;
  font-size: 18px;
  font-weight: bold;
}

/* List below card */
.plan4-extra-list {
  width: 100%;
  margin-top: 10px;
  font-size: 14px;
  color: #333;
}

.plan4-extra-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}

.plan4-box-wrapper {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}
.plan4-option {
  border: 2px solid #ddd;
  padding: 12px;
  border-radius: 10px;
  text-align: center;
  cursor: pointer;
  background: #fff;
  transition: 0.2s ease;
}

.plan4-option:hover {
  border-color: #888;
}

.plan4-option.active {
  border-color: #000;
  background: #f0f8ff;
}
.plan4-box {
    position: relative;
    border: 1px solid #ddd;
    border-radius: 20px;
    padding: 20px 20px;
    transition: 0.3s;
}

.plan4-box:hover {
  border-color: #999;
  background: #fafafa;
}

.plan4-box.active {
  border-color: #1d4ed8;
  background: #eff6ff;
  box-shadow: 0 0 0 3px rgba(29,78,216,0.15);
}

.plan4-box.selected {
  border-color: #1e88e5;
  background: #f0f7ff;
  box-shadow: 0 6px 16px rgba(0,0,0,0.06);
}
.plan4box-top {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin-bottom: 8px;
    width: 100%;
    font-size: 14px;
}
.plan4box-top h3 {
    width: 70%;
    text-align: left;
}
.plan4box-desc-div {
    display: flex;
    width: 100%;
}
.plan4box-desc-div .right {
    text-align: right;
}
.plan4box-desc-div .descpart {
    width: 30%;
    text-align: right;
}
.plan4box-desc-div .plan4box-frequency{
    width: 70%;
    text-align:left;
}
.plan4box-top .plan4box-price {
    font-weight: 700;
    font-size: 20px;
    text-align: right;
    width:30%;
}
.plan4-box .btn {
    margin-top: 10px;
    padding: 0px 8px 6px 7px;
    border-radius: 50%;
    border: 0;
    background: #000;
    color: #fff;
    cursor: pointer;
    width: auto;
    font-weight: bold;
    font-size: 23px;
    height: 50px;
    width: 50px;
    display: block !important;
    float: right;
    text-align: center;
}
.plan4-box .plan4box-price .spanName {
    font-size: 14px;
    font-weight: normal;
    margin-top: 3px;
    display: block;
    line-height: 18px;
}
.plan4box-value{
    text-decoration: line-through;
    color: #999999;
}
.plan4box-value,.plan4box-dis-value{
    display: block;
}
.plan4box-select-plan:hover {
    scale: 1.1;
}
.plan4-extra {
    margin-top: -25px;
}
.forIronOnly {
    border-radius: 20px;
    margin-top: 50px;
}



/* Responsive */
@media (max-width:760px){
  .plans-grid{
    display: block;  
  }
  .plans-grid .plan-card {
    margin-bottom: 20px;  
  }
  #extras-boxes {
    display: block;
  }
  #extras-boxes .extra-item-card {
    width: 100% !important;
    margin-bottom: 20px !important;
 }
 .all_benefits {
    margin-top: 30px;
 }
 #ms-contact-form .contactBefore {
    display: block;
 }
 #ms-contact-form .contactBefore .sglBox {
    width: 100%;
 }
  #extras-boxes { flex-direction:column; }
  .extra-card { width:100% !important; }
  .forIronOnly {
    margin-top: 15px;
   }
  .plan4-extra {
    margin-top: 25px;
  }
  .plan4-box-wrapper {
    grid-template-columns: repeat(1, 1fr);
  }
}

