/* Booking pages (book.html, book-confirmed.html).
   Ours, not the client's. It uses the site's own palette and Satoshi faces so
   the pages sit inside the existing design rather than beside it:
     #003C82 navy, #002F6B deep navy, #01E8FF cyan, #DFECFC pale blue,
     #4B4B4B body grey.
   Everything is scoped under .una-book so nothing here can reach the mirrored
   markup. The site's own .form-control is styled white-on-transparent for a
   dark modal, so the inputs here are restyled for a light page. */

.una-book {
    padding: 48px 0 70px;
}

.una-book .una-lede {
    max-width: 62ch;
}

.una-book .una-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
    gap: 28px;
    align-items: start;
}

@media (max-width: 991.98px) {
    .una-book .una-grid {
        grid-template-columns: minmax(0, 1fr);
    }
}

.una-book .una-step {
    border: 1px solid #D9E4F2;
    border-radius: 14px;
    padding: 20px;
    margin-bottom: 18px;
    background: #fff;
}

.una-book .una-step > legend,
.una-book .una-step-title {
    font-family: "SatoshiBold", sans-serif;
    color: #003C82;
    font-size: 17px;
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
    float: none;
    width: auto;
}

.una-book .una-num {
    flex: 0 0 26px;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: #003C82;
    color: #fff;
    font-size: 13px;
    display: grid;
    place-items: center;
}

.una-book label.una-label {
    font-family: "SatoshiMedium", sans-serif;
    color: #003C82;
    font-size: 14px;
    margin-bottom: 5px;
    display: block;
}

.una-book .form-control,
.una-book .form-select {
    background-color: #fff !important;
    border: 1px solid #B9CCE4;
    border-radius: 8px;
    color: #14293F !important;
    padding: 10px 14px;
    font-size: 15px;
    width: 100%;
}

.una-book .form-control::placeholder {
    color: #9AA9BA;
}

.una-book .form-control:focus,
.una-book .form-select:focus {
    border-color: #003C82;
    outline: 2px solid rgba(0, 60, 130, .18);
    outline-offset: 0;
}

.una-book .una-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

@media (max-width: 575.98px) {
    .una-book .una-fields {
        grid-template-columns: minmax(0, 1fr);
    }
}

.una-book .una-fields .una-wide {
    grid-column: 1 / -1;
}

.una-book .una-phone {
    display: flex;
    gap: 8px;
}

.una-book .una-phone select {
    flex: 0 0 104px;
    width: 104px;
}

/* tier cards */
.una-book .una-tiers {
    display: grid;
    gap: 10px;
}

.una-book .una-tier {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    border: 1px solid #D9E4F2;
    border-radius: 12px;
    padding: 12px 14px;
    cursor: pointer;
    transition: border-color .2s ease, background-color .2s ease;
}

.una-book .una-tier:hover {
    border-color: #003C82;
}

.una-book .una-tier input {
    margin-top: 4px;
    accent-color: #003C82;
    flex: 0 0 auto;
}

.una-book .una-tier.is-on {
    border-color: #003C82;
    background: #F2F7FD;
}

.una-book .una-tier-body {
    flex: 1 1 auto;
    min-width: 0;
}

.una-book .una-tier-name {
    font-family: "SatoshiBold", sans-serif;
    color: #003C82;
    font-size: 15px;
}

.una-book .una-tier-note {
    color: #4B4B4B;
    font-size: 13px;
    margin: 2px 0 0;
}

.una-book .una-tier-price {
    font-family: "SatoshiBold", sans-serif;
    color: #003C82;
    white-space: nowrap;
    font-size: 15px;
    text-align: right;
}

.una-book .una-tier-price small {
    display: block;
    font-family: "SatoshiRegular", sans-serif;
    color: #4B4B4B;
    font-size: 11px;
    font-weight: 400;
}

/* divers stepper */
.una-book .una-stepper {
    display: inline-flex;
    align-items: center;
    gap: 0;
    border: 1px solid #B9CCE4;
    border-radius: 8px;
    overflow: hidden;
}

.una-book .una-stepper button {
    border: 0;
    background: #F2F7FD;
    color: #003C82;
    width: 42px;
    height: 42px;
    font-size: 20px;
    line-height: 1;
}

.una-book .una-stepper button:disabled {
    color: #B9CCE4;
}

.una-book .una-stepper input {
    border: 0;
    width: 64px;
    height: 42px;
    text-align: center;
    font-family: "SatoshiBold", sans-serif;
    color: #003C82;
    background: #fff;
}

.una-book .una-hint {
    color: #4B4B4B;
    font-size: 13px;
    margin: 8px 0 0;
}

.una-book .una-addon {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    font-size: 14px;
    color: #4B4B4B;
    margin-top: 8px;
}

.una-book .una-addon input {
    margin-top: 3px;
    accent-color: #003C82;
}

/* summary */
.una-book .una-summary {
    position: sticky;
    top: 110px;
    border-radius: 16px;
    border: 1px solid #D9E4F2;
    background: #DFECFC;
    padding: 22px;
}

@media (max-width: 991.98px) {
    .una-book .una-summary {
        position: static;
    }
}

.una-book .una-summary h3 {
    font-family: "SatoshiBold", sans-serif;
    color: #003C82;
    font-size: 18px;
    margin-bottom: 14px;
}

.una-book .una-line {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    font-size: 14px;
    color: #4B4B4B;
    padding: 6px 0;
}

.una-book .una-line span:last-child {
    white-space: nowrap;
    font-family: "SatoshiMedium", sans-serif;
    color: #14293F;
}

.una-book .una-line.una-total {
    border-top: 1px solid #B9CCE4;
    margin-top: 8px;
    padding-top: 12px;
    font-family: "SatoshiBold", sans-serif;
    color: #003C82;
    font-size: 16px;
}

.una-book .una-line.una-total span:last-child {
    font-family: "SatoshiBold", sans-serif;
    color: #003C82;
}

.una-book .una-deposit {
    margin-top: 14px;
    background: #fff;
    border-radius: 12px;
    padding: 14px 16px;
}

.una-book .una-deposit .una-line {
    padding: 4px 0;
}

.una-book .una-deposit .una-now {
    font-family: "SatoshiBold", sans-serif;
    color: #003C82;
    font-size: 20px;
}

.una-book .una-terms {
    font-size: 12.5px;
    color: #4B4B4B;
    margin: 14px 0 0;
    line-height: 1.55;
}

.una-book .una-terms a {
    color: #003C82;
    text-decoration: underline;
}

.una-book .una-pay {
    width: 100%;
    justify-content: center;
    margin-top: 14px;
    padding: 14px 20px;
    border-radius: 50px;
    border: 1px solid #003C82;
    background: #003C82;
    color: #fff;
    font-family: "SatoshiMedium", sans-serif;
    font-size: 16px;
}

.una-book .una-pay:disabled {
    opacity: .55;
}

.una-book .una-testnote {
    margin-top: 10px;
    font-size: 12.5px;
    color: #8A5A00;
    background: #FFF4DC;
    border: 1px solid #F0D79B;
    border-radius: 8px;
    padding: 8px 12px;
}

.una-book .una-error {
    margin-top: 12px;
    font-size: 14px;
    color: #8B1A1A;
    background: #FDECEC;
    border: 1px solid #F3C2C2;
    border-radius: 8px;
    padding: 10px 14px;
}

.una-book .una-fielderr {
    color: #8B1A1A;
    font-size: 12.5px;
    margin-top: 4px;
    display: block;
}

.una-book [hidden] {
    display: none !important;
}

/* confirmation page */
.una-confirm .una-ref {
    font-family: "SatoshiBold", sans-serif;
    color: #003C82;
    font-size: clamp(24px, 4vw, 34px);
    letter-spacing: .04em;
}

.una-confirm .una-card {
    border: 1px solid #D9E4F2;
    border-radius: 16px;
    padding: 22px;
    background: #fff;
    height: 100%;
}

.una-confirm .una-card.una-blue {
    background: #DFECFC;
}

.una-confirm .una-pending {
    border: 1px dashed #B9CCE4;
    border-radius: 12px;
    padding: 16px 18px;
    background: #F7FAFE;
}

.una-confirm .una-pending .una-tag {
    display: inline-block;
    font-family: "SatoshiBold", sans-serif;
    font-size: 11px;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #8A5A00;
    background: #FFF4DC;
    border: 1px solid #F0D79B;
    border-radius: 999px;
    padding: 2px 10px;
    margin-bottom: 8px;
}
