/* INSPIRE STUDIOS – 04-attendees.css */
.csb-page .csb-attendee-controls{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.csb-page .csb-counter{border:1px solid #dac5a9;border-radius:10px;background:#fffdfa;padding:16px}
.csb-page .csb-counter h3{font-size:25px;margin-bottom:3px}
.csb-page .csb-count-ui{display:flex;align-items:center;gap:12px;margin-top:13px}
.csb-page .csb-count-ui button{border:1px solid #dcc8ac;background:#fbf4ec;border-radius:6px;width:39px;height:39px;color:#812b38;font-size:24px;line-height:1}
.csb-page .csb-count-ui strong{min-width:30px;font-size:19px;text-align:center}



/* =========================================
   STEP 3 - ATTENDEES
   TYPOGRAPHY AND SPACING
   ========================================= */

/* INTRO DESCRIPTION */

.csb-page .csb-content:has(.csb-attendee-controls) .csb-panel > p.csb-small {
  font-family: 'Montserrat', Arial, sans-serif;
  font-size: 13.5px;
  font-weight: 500;
  line-height: 1.75;
  margin-top: 9px;
  margin-bottom: 22px;
}

/* ADULTS AND CHILDREN DESCRIPTIONS */

.csb-page .csb-counter .csb-small {
  font-family: 'Montserrat', Arial, sans-serif;
  font-size: 13.5px;
  font-weight: 500;
  line-height: 1.75;
  margin-top: 7px;
  color: #796f68;
}

/* ADULT AND CHILD COUNTER NUMBERS */

.csb-page .csb-count-ui strong {
  font-family: 'Bodoni Moda', Georgia, serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.2;
  min-width: 35px;
  text-align: center;
  color: #681220;
}

/* MORE SPACING IN COUNTER CONTROLS */

.csb-page .csb-count-ui {
  gap: 15px;
  margin-top: 19px;
}

/* CHILDREN INFORMATION NOTICE */

.csb-page .csb-content:has(.csb-attendee-controls) .csb-alert {
  font-family: 'Montserrat', Arial, sans-serif;
  font-size: 13.5px;
  font-weight: 500;
  line-height: 1.75;
  padding: 17px 19px;
  margin-top: 24px;
  gap: 13px;
}

/* INFORMATION ICON */

.csb-page .csb-content:has(.csb-attendee-controls) .csb-alert-icon {
  font-size: 24px;
  line-height: 1;
}

/* CHILD AGE FIELD LABELS */

.csb-page .csb-content:has(.csb-attendee-controls) .csb-field label {
  font-family: 'Montserrat', Arial, sans-serif;
  font-size: 13.5px;
  font-weight: 600;
}

/* =========================================
   STEP 3 - RIGHT BOOKING SUMMARY
   ========================================= */

/* KEEP YOUR BOOKING TITLE UNCHANGED */

/* BOOKING SUMMARY ROWS */

.csb-page .csb-content:has(.csb-attendee-controls) .csb-summary .csb-row {
  font-family: 'Montserrat', Arial, sans-serif;
  font-size: 13.5px;
  font-weight: 500;
  line-height: 1.65;
  padding: 13px 0;
  gap: 15px;
}

/* VALUES ON THE RIGHT */

.csb-page .csb-content:has(.csb-attendee-controls) .csb-summary .csb-row strong {
  font-family: 'Montserrat', Arial, sans-serif;
  font-size: 13.5px;
  font-weight: 600;
  line-height: 1.65;
  text-align: right;
  color: #453936;
}

/* DEPOSIT AND BALANCE PRICES */

.csb-page .csb-content:has(.csb-attendee-controls) .csb-summary .csb-row strong.csb-money {
  font-family: 'Bodoni Moda', Georgia, serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.3;
  font-variant-numeric: lining-nums;
  color: #681220;
}

/* PACKAGE TOTAL LABEL */

.csb-page .csb-content:has(.csb-attendee-controls) .csb-total > span {
  font-family: 'Montserrat', Arial, sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
}

/* PACKAGE TOTAL PRICE */

.csb-page .csb-content:has(.csb-attendee-controls) .csb-total b {
  font-family: 'Bodoni Moda', Georgia, serif;
  font-size: 33px;
  font-weight: 600;
  line-height: 1.2;
  font-variant-numeric: lining-nums;
  color: #681220;
}

/* =========================================
   STEP 3 - NAVIGATION BUTTONS
   ========================================= */

/* BACK BUTTON */

.csb-page .csb-content:has(.csb-attendee-controls) .csb-ghost {
  font-family: 'Montserrat', Arial, sans-serif;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.2px;
}

/* CONTINUE TO YOUR DETAILS BUTTON */

.csb-page .csb-content:has(.csb-attendee-controls) .csb-btn {
  font-family: 'Montserrat', Arial, sans-serif;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.2px;
  padding: 15px 25px;
}

/* =========================================
   STEP 3 - MOBILE
   ========================================= */

@media (max-width: 660px) {

  .csb-page .csb-counter .csb-small {
    font-size: 13.5px;
  }

  .csb-page .csb-count-ui strong {
    font-size: 23px;
  }

  .csb-page .csb-content:has(.csb-attendee-controls) .csb-summary .csb-row {
    font-size: 13px;
  }

  .csb-page .csb-content:has(.csb-attendee-controls) .csb-summary .csb-row strong {
    font-size: 13px;
  }

  .csb-page .csb-content:has(.csb-attendee-controls) .csb-summary .csb-row strong.csb-money {
    font-size: 19px;
  }

  .csb-page .csb-content:has(.csb-attendee-controls) .csb-total b {
    font-size: 30px;
  }
}




/* =========================================
   STEP 3 - CHILDREN AGES
   ========================================= */

/* CHILDREN'S AGES TITLE */

.csb-page #csb-content .csb-subheading {
  font-family: 'Cinzel', Georgia, serif;
  font-size: 21px;
  font-weight: 600;
  line-height: 1.4;
  margin-top: 25px;
  margin-bottom: 12px;
}

/* AGE DESCRIPTION */

.csb-page #csb-content .csb-subheading + .csb-small {
  font-family: 'Montserrat', Arial, sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.75;
  margin-bottom: 18px;
}

/* CHILD 1 AGE, CHILD 2 AGE LABELS */

.csb-page #csb-content .csb-attendee-controls ~ .csb-fieldrow .csb-field label {
  font-family: 'Montserrat', Arial, sans-serif;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.5;
  margin-bottom: 10px;
}

/* CHILD AGE DROPDOWN */

.csb-page #csb-content .csb-attendee-controls ~ .csb-fieldrow .csb-field select {
  width: 100%;
  min-height: 49px;
  padding: 12px 15px;
  font-family: 'Montserrat', Arial, sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  color: #453936;
}

/* DROPDOWN OPTIONS */

.csb-page #csb-content .csb-attendee-controls ~ .csb-fieldrow .csb-field select option {
  font-family: 'Montserrat', Arial, sans-serif;
  font-size: 16px;
  font-weight: 500;
}

