/*header – Figma event hero */
.wapi-products-page-form {
    background-color: transparent;
    margin-bottom: 60px;
}

/* Remove any gap between hero and pack-type section */
.event-pack {
    margin: 0;
    padding: 0;
}
.pack-type {
    margin: 0;
    padding: 0;
}
.event-header {
    background-color: #1a1a1a;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    min-height: 420px;
    color: #FFF;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
}
.event-header:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(
        to top,
        rgba(0, 0, 0, 0.75) 0%,
        rgba(0, 0, 0, 0.4) 40%,
        rgba(0, 0, 0, 0.15) 100%
    );
    z-index: 1;
}

/* Row inside hero – use same container alignment as pack-info-block */
.event-header > .row {
    position: relative;
    z-index: 2;
    width: 100%;
    padding: 0;
    align-items: flex-end;
    max-width: 1320px;
    margin: 0 auto;
}

.event-header .content {
    padding: 24px 0;
    position: relative;
    z-index: 2;
}

/* Date row – MDS style in hero */
.event-header .event-date-row {
    display: flex;
    align-items: flex-start;
    gap: 6px;
    margin-bottom: 16px;
}

.event-header .event-date-col {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
}

.event-header .event-date-dm {
    font-family: 'Bounded', var(--font-primary);
    font-size: 24px;
    font-weight: 700;
    line-height: 1.1;
    color: #fff;
}

.event-header .event-date-year {
    font-family: 'Special Gothic Expanded One', var(--font-display);
    font-size: 24px;
    font-weight: 400;
    line-height: 1;
    color: transparent;
    -webkit-text-stroke: 1.5px rgba(255, 255, 255, 0.6);
    text-transform: uppercase;
}

.event-header .event-date-arrow {
    font-size: 24px;
    font-weight: 500;
    line-height: 1.1;
    padding: 0 4px;
    opacity: 0.6;
    margin-top: 4px;
    color: #fff;
}

/* Title */
.event-header .content .title {
    text-transform: none;
    font-family: 'Bounded', var(--font-primary);
    font-weight: 700;
    font-size: 28px;
    line-height: 1.1;
    margin-bottom: 8px;
}

/* Old date (hidden, replaced by date-row) */
.event-header .content .event-date {
    display: none;
}

/* Date fallback if old template still renders */
.event-header .content .event-date p {
    font-family: var(--font-mono);
    font-size: 18px;
    font-weight: 300;
    opacity: 0.85;
}
.event-header .content .event-date p {
    margin: 0;
}

/* Price */
.event-header .content .event-price,
.event-header .content .title.separate:only-child,
.event-header .item-top .text-right .title {
    font-family: var(--font-mono);
    font-size: 28px;
    font-weight: 500;
}

/* Top items */
.event-header .item-top {
    min-height: auto;
    position: relative;
    z-index: 2;
}

/* Bottom items – flex to align icons left, button right */
.event-header .item-bottom {
    min-height: auto;
    position: relative;
    z-index: 2;
    padding-bottom: 16px;
}

/* BUY NOW column in hero – align right */
.event-header .item-bottom .text-right,
.event-header .item-bottom .event-buy {
    text-align: right;
}

/* Make hero row align bottom items properly */
.event-header > .row {
    align-items: flex-end;
}

.item-bottom .content {
    margin-top: 16px;
    position: relative;
    z-index: 2;
}

/* Icons – bigger, white */
.item-bottom .event-icons span {
    display: inline-block;
    font-size: 36px;
    margin-right: 16px;
    color: rgba(255, 255, 255, 0.4);
}
.item-bottom .event-icons span:last-of-type {
    margin-right: 0;
}
.item-bottom .event-icons {
    color: rgba(255, 255, 255, 0.4);
}
.item-bottom .event-icons .icon-opacity:not(.active) {
    opacity: 0.4;
}
.event-icon-bus,
.event-icon-bed,
.item-bottom .event-icons span.active {
    color: #FFF;
    opacity: 1;
}

/* BUY NOW button on event hero */
.event-buy input,
.event-buy .btn {
    background-color: #fff;
    color: #000;
    border: 1px solid #fff;
    font-family: 'Bounded', var(--font-primary);
    font-size: 14px;
    font-weight: 400;
    text-transform: uppercase;
    padding: 12px 32px;
    border-radius: var(--radius-pill, 50px);
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
    z-index: 2;
    height: 43px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.event-buy input:hover,
.event-buy .btn:hover {
    background-color: transparent;
    color: #fff;
    border-color: #fff;
}

@media all and (max-width: 767px) {
    /* Hero – stack vertically */
    .event-header {
        min-height: 280px;
    }
    .event-header .item {
        min-height: inherit;
    }
    .event-header .item .text-right {
        text-align: right !important;
    }
    /* Keep BUY NOW right on mobile */
    .event-header .item-bottom .event-buy,
    .event-header .item-bottom .text-right {
        text-align: right !important;
    }
    .event-header .content {
        padding: 16px 0 !important;
    }
    .event-header .content .title {
        font-size: 20px;
    }
    .event-header .event-date-dm,
    .event-header .event-date-year {
        font-size: 20px;
    }
    .event-header .event-date-arrow {
        font-size: 20px;
    }
    .event-header .content .event-price,
    .event-header .item-top .text-right .title {
        font-size: 18px;
    }
    .event-header .content .event-date {
        font-size: 14px;
    }
    .item-bottom .content {
        margin-top: 0;
    }
    .event-buy input,
    .event-buy .btn {
        margin-top: 12px;
        padding: 10px 24px !important;
        height: 38px !important;
        font-size: 12px !important;
    }
    .event-buy {
        text-align: right !important;
    }

    /* Pack info block – title full width, price+button row right-aligned below */
    .pack-info-block {
        padding: 25px 0 !important;
    }
    .pack-info-block .row {
        flex-wrap: wrap !important;
    }
    .pack-info-block .item.col-md-6 {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
        margin-left: 0 !important;
        padding-left: 15px !important;
        padding-right: 15px !important;
        margin-bottom: 8px !important;
    }
    .pack-info-block .item.col-md-6 .title {
        font-size: 18px !important;
    }
    /* Price + button stacked on right */
    .pack-info-block .item.col-md-4 {
        flex: none !important;
        width: auto !important;
        max-width: none !important;
        margin-left: 0 !important;
        padding-left: 15px !important;
        padding-right: 15px !important;
        text-align: right !important;
    }
    .pack-info-block .item.col-md-4 .content {
        justify-content: flex-end !important;
    }
    .pack-info-block .item.col-md-2 {
        flex: none !important;
        width: auto !important;
        max-width: none !important;
        padding-left: 0 !important;
        padding-right: 15px !important;
        text-align: right !important;
        margin-left: auto !important;
    }
    /* Same size as hero BUY NOW on mobile */
    .pack-info-block .btn,
    .pack-info-block input[type="submit"] {
        padding: 10px 24px !important;
        height: 38px !important;
        font-size: 12px !important;
    }
    .pack-info-block .content .content-item .event-price p,
    .pack-info-block .content .content-item .price {
        font-size: 16px !important;
    }

    /* Tabs – wrap and smaller on mobile */
    .event-tabs .nav-tabs {
        gap: 6px !important;
    }
    .event-tabs .nav-tabs .nav-link {
        font-size: 11px !important;
        padding: 8px 14px !important;
    }

    /* Select your offer radios – stack */
    .event-pack .content .form-radios .js-form-item {
        display: block !important;
        margin-right: 0 !important;
        margin-bottom: 8px;
    }

    /* Choose your distance – less padding */
    #edit-pack-type--wrapper legend {
        font-size: 16px !important;
        padding: 14px 16px 6px !important;
    }
    #edit-pack-type--wrapper .fieldset-wrapper {
        padding: 0 16px 14px !important;
    }

    /* Paragraph sections */
    .paragraph .paragraph-padding-content {
        padding-top: 24px !important;
    }
}

/*what you are – beige bg, flush to hero, no border-radius */
#edit-pack-type--wrapper {
    background-color: #f5f3f1 !important;
    margin: 0 !important;
    border-radius: 0 !important;
    padding: 0 !important;
    border: none !important;
    max-width: 100%;
    text-align: center;
}
#edit-pack-type--wrapper legend {
    padding: 20px 32px 8px !important;
    margin: 0 !important;
    font-family: var(--font-primary);
    font-size: 20px;
    font-weight: 700;
    border: none !important;
    text-align: center;
    width: 100% !important;
    float: none !important;
    background: #f5f3f1 !important;
    display: block !important;
    box-sizing: border-box !important;
}
#edit-pack-type--wrapper .fieldset-wrapper {
    padding: 0 32px 20px !important;
}
#edit-pack-type--wrapper .form-radios {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 12px;
}
#edit-pack-type--wrapper .form-radios .js-form-type-radio {
    display: inline-flex;
    align-items: center;
    margin-right: 0;
}

/* Remove borders and fieldset styling globally */
/* Scoped to layout-container to avoid affecting Drupal toolbar */
.layout-container fieldset {
    border: none !important;
    margin: 0;
    padding: 0;
    min-inline-size: auto;
}
.layout-container fieldset legend {
    border: none !important;
    float: none !important;
    width: auto !important;
    padding: 0;
    margin-bottom: 12px;
    display: block;
}
#edit-pack-type--wrapper .form-radios .js-form-type-radio{
    display: inline-block;
    margin-right: 20px;
}

#edit-pack-type--wrapper--description p.description-choose{
    border: 1px solid #000;
    display: inline-block;
    padding: 16px 24px;
    margin-top: 10px;
    border-radius: var(--radius-card, 17px);
    font-family: var(--font-body);
    font-size: 14px;
}
.code-message {
    font-size: 16px;
}
/*#edit-pack-type--wrapper .form-radios .js-form-type-radio:last-of-type{*/
/*    margin-right: 0;*/
/*}*/


/*choose event pack*/

/*sold out message*/
.sold-out-message {
    background-size: 30px;
    background-position-y: 50%;
    padding-left: 60px;
    position: relative;
}
.pack-type-column .sold-out-message .pack-offer-description {
    max-width: 70%;
    font-size: 20px;
    margin-bottom: 0;
}
.sold-out-message .newsletter-subscription-form {
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
}

@media all and (max-width: 1319px) {
    .pack-type-column .sold-out-message .pack-offer-description {
        max-width: 60%;
    }
}
@media all and (max-width: 576px) {
    .pack-type-column .sold-out-message .pack-offer-description {
        max-width: 100%;
    }

    .sold-out-message .newsletter-subscription-form {
        position: static;
        transform: none;
        margin-top: 16px;
    }
}

.event-pack .content ul{
  padding: 0;
  list-style-type: none;
}
.event-pack .content .form-radios .js-form-item {
  padding-right: 10px;
    font-size: 18px;
}

.event-pack .content label .discount-old-price {
    display: block;
    text-decoration: line-through;
    color: #339928;
    margin-top: 2px;
    font-size: 16px;
}
.event-pack .content label .sold-out-label {
    display: block;
    color: #fc0000;
    margin-top: 2px;
    font-size: 16px;
    text-transform: uppercase;
}

@media all and (min-width: 787px) {
    .event-pack .content label span.info{
        position: relative;
    }
}

.event-pack .content label span.info{
    /*position: relative;*/
    margin-left: 5px;
    display: inline-block;
    top: 0;
    left: 5px;
}

.event-pack .content .info-content {
    position: absolute;
    top: 24px;
    left: -100px;
    width: 280px;
    display: none;
    background-color: #fff;
    border: none;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.12);
    z-index: 10;
    padding: 20px;
    margin-top: 8px;
    overflow-wrap: break-word;
    font-family: var(--font-body);
    font-size: 14px;
}
.event-pack .content .info-content p:last-of-type{
    margin-bottom: 0;
}
.event-pack .content label span.info {
    color: #7f7f7f;
}
@media all and (max-width: 786px) {
    /*.event-pack .content label span.info {*/
    /*  position: static;*/
    /*  display: inline;*/
    /*}*/
    .event-pack .content .info-content {
        top: 100%;
        left: 50%;
        transform: translateX(-50%);
    }
    /*.event-pack .content .product-description-left .info-content {*/
    /*    left: 50%;*/
    /*    transform: translateX(-50%);*/
    /*}*/
    /*.event-pack .content .product-description-right .info-content {*/
    /*    left: 50%;*/
    /*    transform: translateX(-50%);*/
    /*}*/

}
.event-pack .content .info-content img {
  width: 100%;
  margin-bottom: 10px;
}

/*pack information block – beige bg, no border-radius */
.pack-info-block {
    margin-top: 48px;
    padding: 35px 0;
    background-color: var(--color-beige, #f5f3f1);
    border-radius: 0;
}

/* Override Bootstrap cols – title left, price+button right */
.pack-info-block .row {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
}

.pack-info-block .item.col-md-6 {
    flex: 1;
}

.pack-info-block .item.col-md-4 {
    flex: none;
    width: auto !important;
    max-width: none !important;
    margin-left: auto;
}

.pack-info-block .item.col-md-4 .content {
    justify-content: flex-end;
}

.pack-info-block .item.col-md-2 {
    flex: none;
    width: auto !important;
    max-width: none !important;
    padding-left: 16px;
}

.pack-info-block .content {
    display: flex;
    align-items: center;
    width: 100%;
}
.pack-info-block .content .content-item {
    display: flex;
    align-items: center;
}
.pack-info-block .content .content-item p {
    line-height: 1.2;
    margin: 0;
    font-family: var(--font-primary);
}
.pack-info-block .content .content-item .title {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 0;
}
.pack-info-block .content .content-item .event-price,
.pack-info-block .content .content-item .price {
    font-family: var(--font-mono);
    font-size: 24px;
    font-weight: 500;
    white-space: nowrap;
}

.paragraph .paragraph-padding-content{
    padding-top: 40px;
}
.paragraph .no-padding .section-container{
    padding-top: 0;
}

/* Paragraph section images – rounded */
.paragraph img,
.section-container img,
.content-image img {
    border-radius: var(--radius-card, 17px);
}

/* Paragraph section headings */
.paragraph h2,
.paragraph h3,
.section-container h2,
.section-container h3 {
    font-family: var(--font-primary);
    font-weight: 700;
    line-height: 1.1;
}

/* Paragraph body text */
.paragraph .content,
.section-container .content {
    font-family: var(--font-body);
    font-size: 16px;
    line-height: 1.6;
}

.paragraph .content a {
    color: #000;
    font-family: var(--font-primary);
    padding: 0;
    text-decoration: underline;
}
.paragraph .content a:hover {
    opacity: 0.7;
}
.field__item:nth-child(2) > .paragraph .paragraph-padding-content{
    padding-top: 0;
}


/*content tabs – Figma: pill-bordered tab triggers */
.event-tabs {
    margin-top: 48px;
}
.event-tabs .nav-tabs {
  border-bottom: 0;
  gap: 8px;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 24px;
}
.event-tabs .nav-tabs .nav-link {
  border: 1px solid #000;
  border-radius: var(--radius-pill, 50px);
  color: #000;
  font-family: 'Bounded', var(--font-primary);
  font-size: 14px;
  font-weight: 400;
  text-transform: uppercase;
  padding: 10px 24px;
  transition: all 0.3s ease;
  background: transparent;
}
.event-tabs .nav-tabs .nav-link:hover {
  background-color: #000;
  color: #fff;
  border-color: #000;
}
.event-tabs .nav-tabs .nav-link.active,
.event-tabs .nav-tabs .nav-item.show .nav-link {
  position: relative;
  background-color: #000;
  color: #fff;
  border-color: #000;
}
.event-tabs .nav-tabs .nav-link.active::before {
  display: none;
}

.tab-content {
  padding: 32px 0;
  border: none !important;
  border-top: 1px solid #000 !important;
}
.tab-content ul {
    padding-left: 20px;
}
.tab-content .content-image img {
  width: 100%;
  height: auto;
  border-radius: var(--radius-card, 17px);
}

@media all and (max-width: 767px) {
    .pack-type-column {
        margin-bottom: 30px;
    }
    .pack-type-column:last-of-type {
        margin-bottom: 0;
    }
}

.pack-type-column .pack-offer-description{
    margin-bottom: 15px;
    font-size: 15px;
    max-width: 50%;
}

@media all and (max-width: 991px) {
    .pack-type-column .pack-offer-description{
        max-width: 100%
    }
}

@media all and (max-width: 576px) {
    .event-tabs .nav-tabs .nav-link {
        width: auto;
        font-size: 12px;
        padding: 8px 16px;
    }
}



/* ---- Event page form headings ---- */
.wapi-products-page-form h3,
.wapi-products-page-form h2,
.event-pack h3 {
    font-family: var(--font-primary);
    font-weight: 700;
    font-size: 24px;
}

/* Pack info bar BUY NOW button */
.pack-info-block .btn,
.pack-info-block input[type="submit"] {
    background-color: #000;
    color: #fff;
    border: 1px solid #000;
    font-family: 'Bounded', var(--font-primary);
    font-size: 14px;
    font-weight: 400;
    text-transform: uppercase;
    padding: 12px 32px;
    border-radius: var(--radius-pill, 50px);
    height: 43px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.pack-info-block .btn:hover,
.pack-info-block input[type="submit"]:hover {
    background-color: transparent;
    color: #000;
    border-color: #000;
}

/* Event offer radio labels – bigger text */
.event-pack .content .form-radios .js-form-item label {
    font-family: var(--font-body);
    font-size: 16px;
}

/* Event offer price in radio */
.event-pack .content .form-radios .js-form-item label .price,
.event-pack .content .form-radios .js-form-item label strong:first-child {
    font-family: var(--font-mono);
    font-weight: 500;
}

/*checkout*/
.path-checkout main {
    margin: 40px 0;
}

.layout-region-checkout-first{
    padding-top: 16px;
}

#edit-payment-information > legend {
    margin-bottom: 30px;
}

#edit-payment-information .fieldgroup legend{
    font-size: 24px;
}

.layout-checkout-form .js-form-wrapper label{
    display: block;
}
.layout-checkout-form .js-form-wrapper label{
    display: block;
}
.layout-checkout-form .js-form-wrapper .form-submit{
    margin-left: 0;
}
.layout-checkout-form .js-form-wrapper .form-item-payment-information-billing-information-select-address label {
    margin-top: 40px;
    margin-bottom: 10px;
    font-family: 'Manrope', sans-serif;
    font-size: 30px;
    font-weight: 500;
    line-height: 1.2;
}

#edit-payment-information .js-form-item {
    width: 100%;
    margin-top: 0;
}

#edit-payment-information .js-form-type-email input{
    width: 100%;
}

#edit-payment-information .mobile-number-field .js-form-item{
    display: inline-block;
}
#edit-payment-information .mobile-number-field > .js-form-item:first-of-type{
    width: 33%;
}
#edit-payment-information .mobile-number-field > .js-form-item:nth-last-of-type(2){
    width: 65%;
}

#edit-payment-information div[id*="edit-payment-information-payment-method"] > label:after{
    content: '';
    display: block;
    height: 20px;
    width: 100%;
    max-width: 320px;
    margin-top: 5px;
}
#edit-payment-information div[id*="edit-payment-information-payment-method"] > label.credit-card-payment-type,
#edit-payment-information div[id*="edit-payment-information-payment-method"] > label.sepa-payment-type{
    font-weight: bold;
}

#edit-payment-information div[id*="edit-payment-information-payment-method"] > label.credit-card-payment-type:after{
    background-image: url("../images/elements/cart_paiment.png");
    background-size: auto 100%;
    background-repeat: no-repeat;
}
#edit-payment-information div[id*="edit-payment-information-payment-method"] > label.sepa-payment-type:after{
    background-image: url("../images/elements/cart_sepa.png");
    background-size: auto 100%;
    background-repeat: no-repeat;
}
/*#edit-payment-information div[id*="edit-payment-information-payment-method"] > label:last-of-type {*/
/*    margin-top: 30px;*/
/*}*/
#edit-payment-information div[id*="edit-payment-information-payment-method"] .js-form-item label{
    position: relative;
    padding-left: 28px;
    line-height: 20px;
    display: inline-block;
    padding-top: 2px;
    margin-bottom: 0;
}
#edit-payment-information div[id*="edit-payment-information-payment-method"] .js-form-item label .info {
    margin-left: 10px;
    color: #7f7f7f;
}

#edit-payment-information div[id*="edit-payment-information-payment-method"] .payment-description{
    display: none;
    position: absolute;
    left: 42px;
    width: 250px;
    background-color: #fff;
    border: 1px solid #000;
    z-index: 10;
    padding: 20px;
    margin-top: 5px;
}
#edit-payment-information div[id*="edit-payment-information-payment-method"] .payment-description p:last-of-type {
    margin-bottom: 0;
}
#edit-payment-information div[id*="edit-payment-information-payment-method"] .payment-description.show{
    display: block;
}

/*.ajax-progress-throbber { display: none}*/

#edit-payment-information .js-form-item select{
    width: 100%;
    max-width: 350px;
}
#edit-payment-information .js-form-item input[type="text"]{
    width: 100%;
}

@media all and (min-width: 992px) {
    #edit-payment-information div[id*="edit-payment-information-payment-method"] > label:after{
        content: '';
        display: inline-block;
        max-width: 260px;
        margin-left: 20px;
        margin-bottom: -3px;
        margin-top: 0;
    }

    #edit-payment-information div.address-container-inline div[class*="address-postal-code"]{
        width: 30%;
        margin-right: 0;
        padding-right: 15px;
    }
    #edit-payment-information .address-container-inline div[class*="address-0-address-locality"]{
        width: 48%;
        margin-right: 0;
        padding-right: 15px;
    }
    #edit-payment-information .address-container-inline div[class*="address-sorting-code"]{
        width: 20%;
        margin-right: 0;
    }
}

div[id*="payment-information-billing-information-ajax-form"] {
    margin-top: 40px;
}
#edit-payment-information legend {
    margin-bottom: 30px;
}

/*checkout address*/
.profile-address .address-item {
    overflow: hidden;
    min-height: 41px;
}
.profile-address .address-item:last-of-type {
    min-height: inherit;
}
.profile-address .address-item:last-of-type label,
.profile-address .address-item:last-of-type p{
    margin-bottom: 0;
}
.profile-address .address-item.hide-element {
    display: none;
}
.profile-address .address-item label{
    display: inline-block;
    width: 130px;
    float: left;
}
.profile-address .address-item .address-item-content{
    display: inline-block;
    font-family: 'Bounded', sans-serif;
    max-width: 59%;
}
.profile-address .address-item .address-item-content p:not(:last-of-type) {
    margin-bottom: 0;
}

.profile-address.current-profile-address {
    margin-bottom: 30px;
}

#edit-payment-information-billing-information legend {
    padding-top: 30px;
}

@media all and (max-width: 767px) {
    div[id*="edit-payment-information-billing-information"] {
        margin-bottom: 30px;
    }
    .profile-address.current-profile-address {
        display: none;
    }
}

@media all and (max-width: 991px) {
    .profile-address .address-item label {
        display: block;
        float: none;
        margin-bottom: 0;
        width: 100%;
    }
}

div[id*="block-checkoutmessage--"]{
    display: none;
}
.checkout-promo-message > div {
    font-size: 18px;
    text-transform: uppercase;
    font-family: 'Bounded', sans-serif;
    background-color: pink;
    padding: 10px 15px;
    text-align: center;
    margin: 0;
}
.checkout-promo-message p {
    margin: 0;
}

.promo-message {
    font-size: 18px;
    background-color: pink;
    padding: 10px 15px;
    margin: 0;
}
.promo-message p {
    margin: 0;
}

/*order summary – rounded corners, auto height (not stretching to left column) */
.layout-region-checkout-second {
    align-self: flex-start;
}
.layout-region-checkout-second .gray-container{
    padding: 24px 32px;
    background-color: var(--color-beige, #f5f3f1);
    height: auto;
    border-radius: var(--radius-card, 17px);
}
.checkout-order-summary table{
    width: 100%;
    border-bottom: 1px solid #000;
    margin-bottom: 10px;
    font-size: 20px;
}
.checkout-pane-order-summary table td {
    font-size: 20px;
    font-size: 20px;
    padding-bottom: 10px;
    line-height: 1.2;
    vertical-align: text-bottom;
}
.checkout-pane-order-summary table td:nth-child(2),
.checkout-pane-order-summary table td:nth-child(3){
    padding-left: 5px;
}
.checkout-pane-order-summary table td:last-of-type{
    text-align: right;
}
.checkout-pane-order-summary table tr:last-of-type td{
    padding-bottom: 15px;
}
.checkout-pane-order-summary > div .order-total-line{
   font-size: 20px;
    padding-right: 0;
}
.checkout-pane-order-summary > div .order-total-line .order-total-line-value {
    width: 100px;
}
.checkout-pane-order-summary > div .order-total-line span:first-of-type{
    margin-right: 15px;
}

.checkout-pane-order-summary table td  .product-icon {
    position: relative;
    padding-left: 22px;
}
.checkout-pane-order-summary table td  .product-icon:before {
    font-family: fontAwesome;
    color: #888;
    display: inline-block;
    width: 24px;
    height: 24px;
    position: absolute;
    left: 0;
}
.checkout-pane-order-summary table td .product-flight:before{
    content: "\f072";
}
.checkout-pane-order-summary table td .product-flight-choose:before{
    color: #10cfbd;
}

.checkout-pane-order-summary table td .product-insurance:before{
    content: "\f046";
}
.checkout-pane-order-summary table td .product-insurance-choose:before{
    color: #10cfbd;
}


.layout-region-checkout-second .title {
    margin-bottom: 30px;
}
.layout-region-checkout-second .checkout-pane .js-form-wrapper .js-form-item input {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-right: 0;
}
.layout-region-checkout-second .checkout-pane .js-form-wrapper .js-form-item input:focus {
    outline: 0;
}
.layout-region-checkout-second .checkout-pane .js-form-wrapper .js-form-item{
    display: inline-block;
    width: 66%;
    margin-bottom: 0;
}
.layout-region-checkout-second .checkout-pane .js-form-wrapper .form-submit{
    width: 34%;
    margin-bottom: 4px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    margin-left: -5px;
}



.layout-region-checkout-second .form-actions {
    margin-top: 50px;
}
.layout-region-checkout-second .form-actions input {
    height: 50px;
    width: 100%;
}

/*apply discount code*/
/* Coupon section */
.checkout-pane-coupon-redemption {
    margin-top: 1rem;
}
.checkout-pane-coupon-redemption h3 {
    font-family: 'Bounded', var(--font-primary);
    font-size: 16px;
    font-weight: 400;
}

/* Coupon row – flex, input + button same height */
#edit-sidebar-coupon-redemption-form {
    display: flex !important;
    align-items: flex-end;
    width: 100%;
}

/* Input wrapper */
#edit-sidebar-coupon-redemption-form .form-item {
    flex: 1;
    margin-bottom: 0;
    border: none;
    background-color: transparent;
    padding: 0;
}

/* Input – 48px, left pill radius */
#edit-sidebar-coupon-redemption-form .form-item input.form-text {
    width: 100% !important;
    height: 48px !important;
    padding: 12px 20px !important;
    box-sizing: border-box !important;
    border: 1px solid #000 !important;
    border-radius: 50px 0 0 50px !important;
    border-right: none !important;
    font-size: 14px !important;
}

/* Button – 48px, right pill radius */
#edit-sidebar-coupon-redemption-form input.form-submit {
    margin: 0 !important;
    height: 48px !important;
    padding: 12px 20px !important;
    box-sizing: border-box !important;
    border-radius: 0 50px 50px 0 !important;
    width: auto !important;
    line-height: 1 !important;
    font-size: 12px !important;
    white-space: nowrap;
}

@media all and (max-width: 991px) {
    .layout-region-checkout-first {
        padding-top: 8px;
    }
    .layout-region-checkout-second .gray-container {
        padding: 16px;
    }
    .checkout-pane-order-summary table td {
        font-size: 18px;
    }

    /* Coupon stays flex row on tablet */
    #edit-sidebar-coupon-redemption-form input.form-submit {
        font-size: 11px !important;
        padding: 10px 14px !important;
    }
}

@media all and (max-width: 575px) {
    /* Coupon stacks on small mobile */
    #edit-sidebar-coupon-redemption-form {
        flex-direction: column !important;
    }
    #edit-sidebar-coupon-redemption-form .form-item {
        width: 100%;
    }
    #edit-sidebar-coupon-redemption-form .form-item input.form-text {
        border-radius: 50px !important;
        border-right: 1px solid #000 !important;
        margin-bottom: 8px !important;
    }
    #edit-sidebar-coupon-redemption-form input.form-submit {
        border-radius: 50px !important;
        width: 100% !important;
    }

    .profile-address .address-item .address-item-content {
        max-width: 50%;
    }
}

/*checkout information*/
.user-payment-information{
    margin-top: 30px;
}
.user-payment-information .user-payment-method span{
    font-family: 'Bounded', sans-serif;
}
.user-payment-information .user-billing-info {
    margin-top: 30px;
    border-radius: 5px;
    border: 1px solid #767676;
    background-color: #fff;
    padding: 10px 15px;
}
.user-payment-information .user-billing-info .title {
    margin-bottom: 20px;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.2;
}

.layout-region-checkout-second .user-required{
    margin-top: 30px;
}


/*paddings*/
.mt-92 {
    margin-top: 92px;
}
.mb-92 {
    margin-bottom: 92px;
}
.pt-92 {
    padding-top: 92px;
}
.pb-92 {
    padding-bottom: 92px;
}

@media all and (max-width: 767px) {
    .mt-92 {
        margin-top: 60px;
    }
    .mb-92 {
        margin-bottom: 60px;
    }
    .pt-92 {
        padding-top: 60px;
    }
    .pb-92 {
        padding-bottom: 60px;
    }
}

