body {
    /* We need to assaign this CSS Custom property to the body instead of :root, because of CSS Specificity and codepen stylesheet placement before loaded CKE5 content. */
    --ck-z-default: 100;
    --ck-z-modal: calc( var(--ck-z-default) + 999 );
}

.text-danger {
    color: #b02a37 !important;
}
.text-success {
    color:#007549 !important
}

.badge-soft-success {
    color: #00663b !important;
}

.wcag-soft-primary-text {
    color: #55657a !important;
}

.wcag-invalid-feedback {
    color: #b42318 !important;
}

.wcag-touch-target {
    min-width: 24px !important;
    min-height: 24px !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
}

.wcag-primary-text {
    color: #1f5ea8 !important;
}

.wcag-link-color {
    color: #1b5fc1 !important;
}

.wcag-heading-accent {
    color: #8a3b00 !important;
}

.wcag-outline-primary-btn {
    color: #1f5ea8 !important;
}

.wcag-outline-primary-btn:hover {
    color: #ffffff !important;
}

.wcag-outline-link-btn,
.wcag-outline-link-btn span {
    color: #1b5fc1 !important;
    border-color: #1b5fc1 !important;
}
.wcag-outline-link-btn:hover{
    color:#ffffff !important;
}

.wcag-session-free {
    color: #007549 !important;
}

.wcag-session-seat {
    color: #1f5ea8 !important;
}

.wcag-secondary-btn.btn-secondary,
.wcag-secondary-btn.btn-secondary:disabled {
    background-color: #5d6878 !important;
    border-color: #5d6878 !important;
    color: #ffffff !important;
}

.scrollbar::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}


@media (min-width: 1400px) {
    .layout-navbar .container {
        max-width: 1440px;
    }
    .container, .container-lg, .container-md, .container-sm, .container-xl {
        max-width: 1140px;
        /*max-width: 1400px;*/
    }

}

.z-index-5{
    z-index:5 !important;
}

@media (max-width: 991.98px) {
    .h-sm-100,
    .h-md-100 {
        height: 100% !important;
    }
}

@media (min-width: 992px) {
    .h-lg-auto {
        height: auto !important;
    }
}

@media (min-width: 1200px) {
    .navbar-vertical-collapsed .navbar-vertical.navbar-expand-xl .navbar-collapse {
        width: 3.8rem !important;
    }
}

nav.layout-navbar {
    backdrop-filter: unset !important;
    height: auto !important;
    z-index: 20 !important;
    background-color: rgba(0, 0, 0, 0) !important;
}

.layout-navbar .navbar.landing-navbar {
    border-color: rgba(255, 255, 255, .50);
    background: #ffffff;
}

.navbar.landing-navbar {
    box-shadow: none;
    transition: all .2s ease-in-out;
    transform: unset !important;
    margin-top: 1rem;
    border-width: 1px;
    border-style: solid;
    border-radius: .5rem;
}

.form-control:focus {
    box-shadow: none;
}

.form-select:focus {
    box-shadow: none;
}

.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus {
    border-color: #e63757;
    box-shadow: none;
}

.form-select.is-invalid:focus,.was-validated .form-select:invalid:focus {

    box-shadow: none;
}

.form-floating>.form-control, .form-floating>.form-control-plaintext, .form-floating>.form-select {
    height: calc(2.8rem + 2px);
    line-height: 0.2;
}


.form-floating>.form-control-plaintext:focus, .form-floating>.form-control-plaintext:not(:placeholder-shown), .form-floating>.form-control:focus, .form-floating>.form-control:not(:placeholder-shown) {
    padding-top: 1.625rem;
    padding-bottom: 0.625rem;
}

.form-floating>.form-control, .form-floating>.form-control-plaintext, .form-floating>.form-select {
    height: calc(2.8rem + 2px);
    line-height: 0.2;
}

.form-floating>label {
    line-height: 0.625rem;
}

.floatinglabel-control {
    display: block;
    width: 100%;
    height: calc(1.5em + 0.75rem + 1.2rem);
    /*padding: 1.2rem 0.75rem;*/
    padding: 0.5rem 1.2rem 0.5rem 0.75rem;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.5;
    color: #4a4d50;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    border-radius: 0.50rem;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    box-shadow:none;
}

.floatinglabel > input:not([placeholder]):not([value]) + label, .floatinglabel > input:not([placeholder]):not([value]) + label.label-sm, .floatinglabel > textarea:not([placeholder]):empty + label, .floatinglabel > textarea:not([placeholder]):empty + label.label-sm {
    position: absolute;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    background-color: #fff;
    padding: 0 0.3rem 0 0.3rem;
    left: 0.5rem;
    border-radius: 0.25rem;
    font-size: 0.875rem;
    top: -0.7875rem;
    z-index: 5;
}
.floatinglabel > label{
    position: absolute;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    background-color: #fff;
    padding: 0 0.3rem 0 0.3rem;
    left: 0.8rem;
    border-radius: 0.25rem;
    font-size: 13px;
    top: -0.1875rem;
    z-index: 5;

}
.floatinglabel > .react-select-label {
    font-weight: 400 !important;
    z-index: 0 !important;
    top: -0.58rem;
}
.form-control {
    font-size: 14px;
    box-shadow: none;
}
.form-select {
    font-size: 14px;
}

.opacity-05{
    opacity:0.5
}

.form-group {
    margin-bottom: 1rem;
}
.floatinglabel {
    position: relative;
}


.floatinglabel .valid {
    color: var(--falcon-input-color);
    background-color: var(--falcon-input-bg);
    border-color: var(--falcon-input-focus-border-color);
    outline: 0;
    box-shadow: none;
}



.role-menu-list {
    border-left-style: solid;
    border-width: 1px;
    margin-left: 5px;
    border-color: aliceblue;
}

.floatinglabel .react-select.__control{
    height: calc(1.5em + 0.75rem + 1.2rem);
}

.react-datepicker-popper {
    z-index: 6 !important;
}

.react-datepicker .react-datepicker__day {
    color: #5d6166!important;
}
.react-datepicker .react-datepicker__day--selected, .react-datepicker .react-datepicker__day--selecting-range-start {
    color: #fff!important;
}

.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item {

    color: #5d6166!important;
}
.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected {
    color: white!important;

}
.react-datepicker-wrapper{
    width: 100%;
}

.react-datepicker__input-container{
    display: block;
    width: 100%;
}

.react-datepicker__view-calendar-icon{
    display: block;
}

.react-datepicker__view-calendar-icon .react-datepicker__calendar-icon{
    top: 50%;
    left: 0.75rem;
    transform: translateY(-50%);
    padding: 0;
    width: 1rem;
    height: 1rem;
    color: var(--falcon-gray-600);
    pointer-events: none;
}

.react-datepicker__view-calendar-icon input{
    padding-left: 2.5rem;
}

.react-datepicker{
    background-color: var(--falcon-white) !important;
    border: 1px solid var(--falcon-gray-300) !important;
    border-radius: 0.5rem !important;
    box-shadow: 0 0.75rem 1.75rem rgba(15, 23, 42, 0.12);
    overflow: hidden;
}

.react-datepicker__header,
.react-datepicker__month,
.react-datepicker__time,
.react-datepicker__time-box,
.react-datepicker__month-container,
.react-datepicker__time-container{
    background-color: var(--falcon-white) !important;
}

.react-datepicker__header{
    border-bottom: 1px solid var(--falcon-gray-200) !important;
}

.react-datepicker__triangle{
    display: none;
}

.react-datepicker--inline{
    display: inline-block;
    width: auto;
    max-width: 100%;
}

.email-notification-date-field{
    position: relative;
    width: 100%;
}

.email-notification-date-icon{
    position: absolute;
    top: 50%;
    left: 0.85rem;
    transform: translateY(-50%);
    color: var(--falcon-gray-600);
    z-index: 2;
    pointer-events: none;
}

.email-notification-date-input{
    width: 100%;
    min-height: calc(1.5em + 0.75rem + 2px);
    padding-left: 2.5rem;
    padding-right: 0.75rem;
}

.email-notification-row{
    cursor: pointer;
}

.delivery-type-toggle{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
}

.delivery-type-toggle__option{
    min-width: 0;
}

.delivery-type-toggle__input{
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.delivery-type-toggle__label{
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    width: 100%;
    min-height: 100%;
    padding: 0.9rem 1rem;
    border: 1px solid var(--falcon-gray-300);
    border-radius: 0.5rem;
    background-color: var(--falcon-white);
    cursor: pointer;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

.delivery-type-toggle__label:hover{
    border-color: var(--falcon-primary);
    box-shadow: 0 0.35rem 1rem rgba(44, 123, 229, 0.12);
}

.delivery-type-toggle__label.is-active{
    border-color: var(--falcon-primary);
    background-color: var(--falcon-soft-primary);
    box-shadow: 0 0 0 1px rgba(44, 123, 229, 0.18);
}

.delivery-type-toggle__label.is-disabled{
    opacity: 0.7;
    cursor: not-allowed;
}

.delivery-type-toggle__icon{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border-radius: 999px;
    background-color: rgba(44, 123, 229, 0.12);
    color: var(--falcon-primary);
    flex-shrink: 0;
}

.delivery-type-toggle__copy{
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.delivery-type-toggle__title{
    color: var(--falcon-gray-900);
    font-weight: 600;
    line-height: 1.2;
}

.delivery-type-toggle__description{
    color: var(--falcon-gray-600);
    font-size: 0.8333333333rem;
    line-height: 1.35;
    margin-top: 0.2rem;
}

@media (max-width: 767.98px){
    .delivery-type-toggle{
        grid-template-columns: 1fr;
    }
}
.radio-select .form-check-input:checked+.form-check-label .radio-select-content {
    border: 1px solid #007bd2;
    color: var(--falcon-dark);
}

.form-check-label-fix-width{
    width: 250px;
    line-height: 0.9rem;
}

.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled {
    color: #ccc !important;
}

.react-select-container .__menu {
    z-index: 8 !important;
}
.react-select-container{
    padding-left: 0px;
    padding-right: 0px;
}

.react-datepicker__day-name, .react-datepicker__day, .react-datepicker__time-name{
    margin:0.066rem !important;
}

.registrationQuestionaire  .icon-circle {
    width: 2rem;
    height: 2rem;
    margin: 0 auto 0rem;
}

.choice-input{
    border-bottom: 1px solid #e3e3e3;
    padding-right: 2px !important;
    border-top: none;
    border-right: none;
    border-left: none;
    box-shadow:none;
    font-size: 14px;
}


.ck-editor-placeholder {
    background: white;
    padding: 4px 2px;
    outline-offset: -2px;
    line-height: 1em;
    margin: 0 1px;
    opacity: 1;
    cursor: pointer;
    border: 1px dotted;
}

.ck-rounded-corners .ck.ck-editor__main>.ck-editor__editable, .ck.ck-editor__main>.ck-editor__editable.ck-rounded-corners{
    border-color: #ccced1 !important;
    box-shadow: none !important;
    padding: 10px !important;
}

.tag-container {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
}

.tag-container input {
    width: 100%;
    min-width: 50%;
    border: none;
    border-radius: 5px;
    padding-left: 14px;
}

.tag {
    display: flex;
    align-items: center;
    margin: 5px 3px;
    padding: 0 10px;
    padding-right: 5px;
    border-radius: 5px;
    background-color: orange;
    white-space: nowrap;
    color: white;
}

.tag button {
    display: flex;
    border: none;
    background-color: unset;
    cursor: pointer;
    color: white;
}

.ck-tags-dropdown .ck-dropdown__panel {
    max-height: 20rem;
    overflow: auto;
    min-width: 14rem;
}

.modal .ck.ck-toolbar {
    flex-wrap: wrap;
    overflow: visible !important;
}

.modal .ck.ck-toolbar .ck-dropdown,
.modal .ck.ck-toolbar .ck-dropdown__panel,
.modal .ck.ck-editor__top,
.modal .ck.ck-sticky-panel,
.modal .ck.ck-sticky-panel__content {
    overflow: visible !important;
}

/* The browser window */
.preview-container {
    border: 3px solid currentColor;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

/* Container for columns and the top "toolbar" */
.preview-container .toolbar {
    padding: 5px;
    background: currentColor;
    border-top-left-radius: 0px;
    border-top-right-radius: 0px;
}

/* Create three unequal columns that floats next to each other */
.preview-container .column {
    float: left;
}

.preview-container .left {
    width: 20%;
}

.preview-container .right {
    width: 10%;
}

.preview-container .middle {
    width: 70%;
}

/* Clear floats after the columns */
.preview-container .toolbar:after {
    content: "";
    display: table;
    clear: both;
}

/* Three dots */
.preview-container .dot {
    margin-top: 4px;
    height: 12px;
    width: 12px;
    background-color: #bbb;
    border-radius: 50%;
    display: inline-block;
}

/* Style the input field */
.preview-container input[type=text] {
    width: 100%;
    border-radius: 3px;
    border: none;
    background-color: white;
    margin-top: -2px;
    height: 24px;
    color: #666;
    padding: 5px;
    font-size:12px;
}

/* Three bars (hamburger menu) */
.preview-container .bar {
    width: 17px;
    height: 3px;
    background-color: #aaa;
    margin: 3px 0;
    display: block;
}

/* Page content */
.preview-container .web-content {
    padding: 0px;
    min-height: 400px;
}


.ipad-wrapper {
    max-width: 700px;
    margin: 0 auto;
}

.ipad-wrapper .toolbar {
    padding: 5px;
    background: #f1f1f1;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
}

.ipad-wrapper .preview-container {
    border: 3px solid #f1f1f1;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
}
.ipad-wrapper .ipad {
    position: relative;
    background: #202020;
    width: 100%;
    height: 0;
    padding-top: 110%;
    margin: 0 auto 4em auto;
    border-radius: 1.5em;
}

.ipad-wrapper .camera {
    position: absolute;
    top: 4%;
    left: 49.25%;
    background: #3f3f3f;
    width: 1.5%;
    height: 0;
    padding-top: 1.5%;
    border-radius: 50%;
}

.ipad-wrapper .appleicon {
    padding-top: 25%;
    opacity: 0;

}

.ipad-wrapper .appleicon img{
    width: 100%;
    height: 100%;
}

.ipad-wrapper .text {
    opacity: 0;
    font-size: 1.25rem;
    text-align: center;

}

.ipad-wrapper .screen {
    background: #ffffff;
    width: 93%;
    height: 82.5%;
    position: absolute;
    top: 8.75%;
    left: 3.75%;
}

.ipad-wrapper .button {
    position: absolute;
    bottom: 1.5%;
    left: 46%;
    background: #3f3f3f;
    /* border: 1px solid #3f3f3f; */
    width: 7%;
    height: 0;
    padding-top: 7%;
    border-radius: 50%;
}

.ipad-wrapper .square {
    position: absolute;
    top: 27.5%;
    left: 27.5%;
    border: 2px solid #d7d7d7;
    border-radius: .3em;
    width: 45%;
    height: 45%;
}

.dotted-grid-background {
    background-image: radial-gradient(circle, #1e151599 1px, rgba(0, 0, 0, 0) 1px);
    background-size: 1em 1em;
}

@media screen and (min-width: 28em ) {

}

@media screen and (min-width: 34em ) {

}

@media screen and (min-width: 48em ) {

}

.preview-wrapIframe {
    width: 100%;
    height: 600px;
    overflow: hidden;
}

.preview-iframe {
    width: 100% !important;
    height: 900px !important;
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
}

.mobile-iframe {
    width: 150% !important;
    height: 700px !important;
    -webkit-transform: scale(0.70);
    transform: scale(0.70);
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
}

.imgwidth-50{
    width:50px;
    height: 50px;
}

.ck-powered-by{
    display: none !important;
}



.inlineCkEditor .ck.ck-editor__editable_inline{
    overflow:hidden !important;
    padding:0 !important;
}

.rst__rowContents{
    box-shadow:none !important;
    -webkit-box-shadow:none !important;
    border-radius:0px 5px 5px 0px !important;
}
.rst__moveHandle, .rst__loadingHandle{
    box-shadow:none !important;
    -webkit-box-shadow:none !important;
    border-radius:5px 0px 0px 5px !important;
}
.rst__rowTitle {
    font-weight: bold !important;
    font-size: 13px !important;
}

.rst__lineChildren::after{
    background-color:rgb(0,119,181) !important;
}

.rst__lineHalfHorizontalRight::before, .rst__lineFullVertical::after, .rst__lineHalfVerticalTop::after, .rst__lineHalfVerticalBottom::after{
    background-color:rgb(0,119,181) !important;
}
.rst__collapseButton, .rst__expandButton{
    box-shadow:0 0 0 1px rgb(0,119,181) !important;
}

.rst__row{
    box-shadow:var(--falcon-box-shadow) ;
}
.rst__moveHandle, .rst__loadingHandle{
    border:none !important;
}

.rst__rowContents{
    border:none !important;
}

.backdropCanvas{
    background-color: #32232340;

}

.inlineCkEditor .ck.ck-editor__editable_inline>:last-child{
    margin-bottom:0 !important;
}

.inlineCkEditor .ck.ck-editor__editable_inline>:first-child{
    margin-top:0 !important;
}
.ck.ck-balloon-panel{
    z-index: 1060 !important;
}



.ShowInCKeditor{ z-index: 1300 !important;}

.countdown {
    display: flex;
    justify-content: space-around;
    text-align: center;
}

div.sticky-footer {
    position: sticky;
    bottom: 0;
    width:100%;
    z-index: 1053 !important;
    padding: 10px
}
div.sticky-bg-color{
    background-image: linear-gradient(233deg, rgb(4 38 56 / 73%), rgb(2 27 48 / 67%));
}

.notification-indicator:before {
    top:0rem;

}

.attendee-table-column-100 {
    width: 100px !important;
    min-width: 100px !important;
}

.theme-control-toggle-label{
    background-color: var(--falcon-gray-300);
    border-radius: 50%;
}

.nav-rounded-corner{
    border-radius: 0px 40px 40px 0px ;
}

.btn-back-to-top{
    top: -3rem;
}

.registration-wizard .nav-link .nav-item-circle {
    height: 2rem;
    width: 2rem;

}

.registration-header{
    font-size: 25px;
    color: #453e79;
    text-transform: uppercase;
    letter-spacing: 7px;
    padding: 5px 15px;
    display: inline-block;
    margin-bottom: 5px;
    font-weight: bold;
    background: -webkit-linear-gradient(#da2c4d,#f8ab37);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.chk-show-labal{
    margin-left:-24px;
}


.password-count {
    bottom: 16px;
    right: 10px;
    font-size: 1rem;
}

.strength-meter {
    position: relative;
    height: 3px;
    background: #ddd;
    margin: 7px 0;
    border-radius: 2px;
}
.strength-meter:before,
.strength-meter:after {
    content: "";
    height: inherit;
    background: transparent;
    display: block;
    border-color: #fff;
    border-style: solid;
    border-width: 0 6px 0;
    position: absolute;
    width: calc(25% + 6px);
    z-index: 10;
}
.strength-meter:before {
    left: calc(25% - 3px);
}
.strength-meter:after {
    right: calc(25% - 3px);
}

.strength-meter-fill {
    background: transparent;
    height: inherit;
    position: absolute;
    width: 0;
    border-radius: inherit;
    transition: width 0.5s ease-in-out, background 0.25s;
}
.strength-meter-fill[data-strength="1"] {
    width: 25%;
    background: orangered;
}
.strength-meter-fill[data-strength="2"] {
    width: 50%;
    background: orange;
}
.strength-meter-fill[data-strength="3"] {
    width: 75%;
    background: yellowgreen;
}
.strength-meter-fill[data-strength="4"] {
    width: 100%;
    background: green;
}
.strength-meter-fill[data-strength="4"] {
    width: 100%;
    background: green;
}


.strength-meter-message[data-strength="0"] {
    color: darkred;
}
.strength-meter-message[data-strength="1"] {
    color: orangered;
}
.strength-meter-message[data-strength="2"] {
    color: orange;
}
.strength-meter-message[data-strength="3"] {
    color: yellowgreen;
}
.strength-meter-message[data-strength="4"] {
    color: green;
}

.react-datepicker-popper {
    z-index: 16 !important;
}

.registration-wizard .floatinglabel-control{
    padding: 1rem 0.75rem;
    color:var(--falcon-input-color);
    /*border-color:var(--falcon-input-focus-border-color);*/
}

.registration-wizard .floatinglabel .form-label{
    --falcon-text-opacity: 1;
    color: rgba(var(--falcon-facebook-rgb),var(--falcon-text-opacity));
}

.registration-wizard .floatinglabel-control.is-invalid, .was-validated .floatinglabel-control:invalid{
    border-color: #e63757;
}

.registration-wizard .invalid-feedback {
    color: #b42318 !important;
}


.registration-wizard .floatinglabel:has(input:focus) > .form-label {
    top: -0.875rem;
}

:root {
    --white: #ffffff;
    --light: #f0eff3;
    --black: #000000;
    --dark-blue: #1f2029;
    --dark-light: #353746;
    --red: #da2c4d;
    --yellow: #f8ab37;
    --grey: #ecedf3;
}
.checkbox-booking:checked,
.checkbox-booking:not(:checked){
    position: absolute;
    left: -9999px;
    width: 0;
    height: 0;
    visibility: hidden;
}

.checkbox-booking:checked + label,
.checkbox-booking:not(:checked) + label{
    position: relative;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    justify-content: center;
    -ms-flex-pack: center;
    text-align: center;
    padding: 0;
    padding: 2px 25px;
    font-size: 12px;
    line-height: 26px;
    letter-spacing: 1px;
    margin: 6px;
    text-align: center;
    border-radius: 4px;
    cursor: pointer;
    color: var(--dark-blue);
    background-color: var(--white);
    -webkit-transition: all 300ms linear;
    transition: all 300ms linear;
}
.checkbox-booking:not(:checked) + label::before{
    box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.2)
}
.checkbox-booking:checked + label::before{
    /*background-image: linear-gradient(138deg, var(--red), var(--yellow));*/
    border: 1px solid #0E6EB8;
    /*background-color: #126eb5f7;*/
    background-color:#e6effc;
}
/*box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.2);*/

.checkbox-booking:not(:checked) + label:hover::before{
    box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.2);
    /*background-image: linear-gradient(138deg, var(--red), var(--yellow));*/
}
.checkbox-booking:checked + label::before,
.checkbox-booking:not(:checked) + label::before{
    position: absolute;
    content: '';
    top: -2px;
    left: -2px;
    width: calc(100% + 4px);
    height: calc(100% + 4px);
    border-radius: 4px;

}
.checkbox-booking:not(:checked) + label::before{
    top: -1px;
    left: -1px;
    width: calc(100% + 2px);
    height: calc(100% + 2px);
}
.checkbox-booking:checked + label::after,
.checkbox-booking:not(:checked) + label::after{
    position: absolute;
    content: '';
    top: -2px;
    left: -2px;
    width: calc(100% + 4px);
    height: calc(100% + 4px);
    border-radius: 4px;
    z-index: -2;
    background-color: var(--dark-light);
}
.checkbox-booking:checked + label::after{
    opacity: 0;

}
.checkbox-booking:checked + label .uil,
.checkbox-booking:not(:checked) + label .uil{
    font-size: 20px;
}
.checkbox-booking:checked + label .text,
.checkbox-booking:not(:checked) + label .text{
    position: relative;
    display: inline-block;
    opacity: 0.6;
}
.checkbox-booking:checked + label .text{
    opacity: 1;
}

.checkbox:not(:checked) ~ .section .container .row .col-12 .checkbox-booking:not(:checked) + label,
.checkbox:not(:checked) ~ .section .container .row .col-12 .checkbox-booking:checked + label{
    background-color: var(--light);
    color: var(--dark-blue);
}
.checkbox:not(:checked) ~ .section .container .row .col-12 .checkbox-booking:checked + label::after,
.checkbox:not(:checked) ~ .section .container .row .col-12 .checkbox-booking:not(:checked) + label::after{
    background-color: var(--light);
}

.checkbox-booking + label.login-option-checkbox {
    justify-content: flex-start;
    gap: 8px;
    min-width: 140px;
    padding-left: 10px;
    padding-right: 12px;
}

.checkbox-booking + label.login-option-checkbox .login-option-checkbox-icon {
    position: relative;
    z-index: 2;
    width: 14px;
    height: 14px;
    min-width: 14px;
    border: 1px solid #8da2b8;
    border-radius: 2px;
    background: #fff;
}

.checkbox-booking + label.login-option-checkbox .text {
    position: relative;
    z-index: 2;
}

.checkbox-booking + label.login-option-checkbox .login-option-checkbox-icon::after {
    content: '';
    position: absolute;
    top: 0;
    left: 3px;
    width: 5px;
    height: 9px;
    border-right: 2px solid #0E6EB8;
    border-bottom: 2px solid #0E6EB8;
    transform: rotate(40deg);
    opacity: 0;
}

.checkbox-booking:checked + label.login-option-checkbox .login-option-checkbox-icon {
    border-color: #0E6EB8;
    background: #e6effc;
}

.checkbox-booking:checked + label.login-option-checkbox .login-option-checkbox-icon::after {
    opacity: 1;
}

.z-index-0 {
    z-index:0 !important;
}
.btn-reg-button{
    background-image: linear-gradient(138deg, #da2c4d,#f8ab37) !important;
    border: transparent;
}
.btn-reg-button:hover{
    background-image: linear-gradient(65deg, #da2c4d,#f8ab37) !important;
    border: transparent;
}

.registration-wizard .nav-link .nav-item-circle {
    height: 2.5rem;
    width: 2.5rem;
}

.registration-wizard .nav-link.active .nav-item-circle {
    color: #da2c4d;
    border-color: #f8ab37;
    /*background-image: linear-gradient(65deg, #da2c4d,#f8ab37);*/
    background-color: white !important;
    height: 2.5rem;
    width: 2.5rem;
}
.registration-wizard .nav-link.done .nav-item-circle {
    color: #fff;
    border-color: #f8ab37;
    background-image: linear-gradient(65deg, #da2c4d,#f8ab37);
}
.registration-wizard .nav-link.done .nav-item-circle-parent:before {
    background-color: #f8ab37;
}
.registration-wizard .nav-item:not(:first-child) .active .nav-item-circle-parent:after {
    background-color: #f8ab37;
}
.registration-wizard .section-header {
    overflow: hidden;
    text-align: center;
}

.registration-wizard .section-header::before,
.registration-wizard .section-header::after {
    background-image: linear-gradient(65deg, var(--dark-light),var(--light));
    content: "";
    display: inline-block;
    height: 2px;
    position: relative;
    vertical-align: middle;
    width: 50%;
}

.registration-wizard .section-header::before {
    right: 0.5em;
    margin-left: -50%;
}

.registration-wizard .section-header::after {
    left: 0.5em;
    margin-right: -50%;
    background-image: linear-gradient(65deg, var(--light),var(--dark-light));
}

.section-header-color{
    color: #0f3357 !important
}
.registration-wizard .lead{
    font-size: 1em !important;
}

.formStyle {
    padding: 8px;
    margin-bottom: 15px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #c7d4d7;
    border-top-style: none;
    border-right-style: none;
    border-left-style: none;
    font-size: 1em;
    color: #121212;
    border-radius: 0.25rem;
}

.formStyle:focus {
    outline: none;
    border-bottom-color: #2c7be5;
}

.formStyle.is-invalid, .was-validated .formStyle:invalid {
    border-color: #e63757;
    padding-right: calc(1.5em + 0.625rem);
    background-image: url(data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23e63757'%3E%3Ccircle cx='6' cy='6' r='4.5'/%3E%3Cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3E%3Ccircle cx='6' cy='8.2' r='.6' fill='%23e63757' stroke='none'/%3E%3C/svg%3E);
    background-repeat: no-repeat;
    background-position: right calc(0.375em + 0.15625rem) center;
    background-size: calc(0.75em + 0.3125rem) calc(0.75em + 0.3125rem);
}

.switch {
    position: relative;
    display: inline-block;
    width: 75px;
    height: 28px;
}

.switch input {
    display: none;
}

.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #5c6268;
    -webkit-transition: .4s;
    transition: .4s;
    border-radius: 34px;
}

.slider:before {
    position: absolute;
    content: "";
    height: 20px;
    width: 20px;
    left: 4px;
    bottom: 4px;
    background-color: white;
    -webkit-transition: .4s;
    transition: .4s;
    border-radius: 50%;
}

input:checked + .slider {
    background-color: #0E6EB8;
}

input:focus + .slider {
    box-shadow: 0 0 1px #2196F3;
}

input:checked + .slider:before {
    -webkit-transform: translateX(26px);
    -ms-transform: translateX(26px);
    transform: translateX(45px);
}

/*------ ADDED CSS ---------*/
.slider:after {
    content: 'No';
    color: white;
    display: block;
    position: absolute;
    transform: translate(-50%,-50%);
    top: 50%;
    left: 50%;
    font-size: 10px;
    font-family: Verdana, sans-serif;
}

input:checked + .slider:after {
    content: 'Yes';
}

/*--------- END --------*/


.creditcard-text {
    font-size: 15px;
    color: #453e79;
    text-transform: uppercase;
    padding: 3px 10px;
    display: inline-block;
    margin-bottom: 0px;
    font-weight: bold;
    background: linear-gradient(#2F535A,#308895);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.bg-banktransfer{
    background: linear-gradient(#7F6529, #FFC306);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.bg-bankcheck{
    background: linear-gradient(#669E4F,#78B75B);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

@media (min-width: 768px) {
    .navbar-card-app {
        min-width: 20rem;
    }
}

.hover-underline-animation {
    display: inline-block;
    position: relative;
}
.hover-underline-animation:before {
    content: '';
    position: absolute;
    width: 100%;
    transform: scaleX(0);
    height: 2px;
    bottom: 0;
    left: 0;
    --falcon-text-opacity: 1;
    background-color: rgba(var(--falcon-linkedin-rgb),var(--falcon-text-opacity))!important;
    transform-origin: center bottom ;
    transition: transform 0.3s ease-out;
}

.hover-underline-animation:hover:before {
    transform: scaleX(1);
    transform-origin: center bottom ;
}



.hover-underline-color:hover{
    --falcon-text-opacity: 1;
    color: rgba(var(--falcon-linkedin-rgb),var(--falcon-text-opacity))!important;
}
.dropdown-menu-card.show{
    content: '';
    position: absolute;
    transform: scaleY(1) !important;
    transform-origin: top center ;
    transition: transform 0.3s ease-out;
}
.dropdown-menu-card{
    position: absolute;
    transform: scaleY(0);
    transform-origin: top center;
    transition: transform 0.3s ease-out;
}

.notification-indicator-number {
    right: 0.325rem;
    top: 0.325rem;
}

.landing-navbar .notification-indicator:before {
    height: 1.5rem;
    width: 1.5rem;

}
.notification-indicator:before{
    height: 1.5rem;
    width: 1.5rem;
}




.flip-clock__piece {
    display: inline-block;
    margin: 0 0.2vw;

@media (min-width: 1000px) {
    margin: 0 5px;
}
}

.flip-clock__slot {
    font-size: 1rem;
    line-height: 1.5;
    display: block;
    /*
      //position: relative;
      //top: -1.6em;
      z-index: 10;
      //color: #FFF;
    */
}

:root {
    --halfHeight: 0.72em;
    --borderRadius: 0.15em;
    --minusHalfHeight:-0.72em;
}

.flip-card {
    display: block;
    position: relative;
    padding-bottom: var(--halfHeight);
    font-size: 2.25rem;
    line-height: 0.95;
}

@media (min-width: 1000px) {
    .flip-clock__slot { font-size: 1.2rem; }
    .flip-card { font-size: 3rem; }
}


/*////////////////////////////////////////*/


.flip-card__top,
.flip-card__bottom,
.flip-card__back-bottom,
.flip-card__back::before,
.flip-card__back::after {
    display: block;
    height: var(--halfHeight);
    color: #ccc;
    background: #222;
    padding: 0.23em 0.25em 0.4em;
    border-radius: var(--borderRadius) var(--borderRadius) 0 0;
    backface-visiblity: hidden;
    transform-style: preserve-3d;
    width: 2.2em;
}

.flip-card__bottom,
.flip-card__back-bottom {
    color: #FFF;
    position: absolute;
    top: 50%;
    left: 0;
    border-top: solid 1px #000;
    background: #393939;
    border-radius: 0 0 var(--borderRadius) var(--borderRadius);
    pointer-events: none;
    overflow: hidden;
    z-index: 2;
}

.flip-card__back-bottom {
    z-index: 1;
}

.flip-card__bottom::after,
.flip-card__back-bottom::after {
    display: block;
    margin-top: var(--minusHalfHeight);
}

.flip-card__back::before,
.flip-card__bottom::after,
.flip-card__back-bottom::after {
    content: attr(data-value);
}

.flip-card__back {
    position: absolute;
    top: 0;
    height: 100%;
    left: 0%;
    pointer-events: none;
}

.flip-card__back::before {
    position: relative;
    overflow: hidden;
    z-index: -1;
}

.flip .flip-card__back::before {
    z-index: 1;
    animation: flipTop 0.3s cubic-bezier(.37,.01,.94,.35);
    animation-fill-mode: both;
    transform-origin: center bottom;
}

.flip .flip-card__bottom {
    transform-origin: center top;
    animation-fill-mode: both;
    animation: flipBottom 0.6s cubic-bezier(.15,.45,.28,1);// 0.3s;
}

@keyframes flipTop {
    0% {
        transform: rotateX(0deg);
        z-index: 2;
    }
    0%, 99% {
        opacity: 1;
    }
    100% {
        transform: rotateX(-90deg);
        opacity: 0;
    }
}

@keyframes flipBottom {
    0%, 50% {
        z-index: -1;
        transform: rotateX(90deg);
        opacity: 0;
    }
    51% {
        opacity: 1;
    }
    100% {
        opacity: 1;
        transform: rotateX(0deg);
        z-index: 5;
    }
}


.grey-linear-background{
    background-image: linear-gradient(to top, #e6e9f0 0%, #eef1f5 100%);
    background-image: -webkit-linear-gradient(to top, #e6e9f0 0%, #eef1f5 100%);
}


.switch-field {
    display: flex;
}

.switch-field input {
    position: absolute !important;
    clip: rect(0, 0, 0, 0);
    height: 1px;
    width: 1px;
    border: 0;
    overflow: hidden;
}

.switch-field label {
    color: rgba(0, 0, 0, 0.6);
    font-size: 14px;
    line-height: 1;
    text-align: center;
    padding: 8px 16px;
    margin-right: -1px;
    border: 1px solid rgba(0, 0, 0, 0.2);

}

.switch-field label:hover {
    cursor: pointer;
    box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.2);
}

.switch-field input:checked + label {
    /*background-color: #2c7be5;*/
    box-shadow: none;
    --falcon-border-opacity: 1;
    border-color: rgba(var(--falcon-primary-rgb), var(--falcon-border-opacity)) !important;
    background-color: var(--falcon-soft-primary);
}

.switch-field label:first-of-type {
    border-radius: 4px 0 0 4px;
}

.switch-field label:last-of-type {
    border-radius: 0 4px 4px 0;
}

.bg-gradient-grey{
    background-image: linear-gradient( 110.3deg,  rgba(73,93,109,1) 4.3%, rgba(49,55,82,1) 96.7% );
    color:#ffffff;
}
.bg-gradient-color{
    background-image:linear-gradient(135deg, #fce7f3 0%, #cffafe 100%);
}
.dark .bg-gradient-color{
    background-image: linear-gradient(135deg, #1f2937 0%, #0f172a 100%);
    color: #ffffff;
}


.start-40{
    left: 40%!important;
}

.h-80{
    height: 80px;
}
.event-grid .calendar{
    width: 4.125rem;
}

.bg-gradient-publish{
    background-image: radial-gradient( circle farthest-corner at 10% 20%,  rgba(0,152,155,1) 0.1%, rgba(0,94,120,1) 94.2% ) !important;
    color:#ffffff;
}

.bg-gradient-unpublish{
    background-image: linear-gradient(to right, #b9784f, #af4864) !important;
    color:#ffffff;
}

.offcanvas-footer{
    flex-shrink: 0;
    border-top: 1px solid rgb(235, 235, 235);
    transition: opacity 0.367s cubic-bezier(0.1, 0.25, 0.75, 0.9) 0s;
    background: white;
    z-index: 9;

}
@media (min-height: 480px){
    .offcanvas-footer {
        position: sticky;
        bottom: 0px;
    }
}


.filter::before{
    height: 0.5rem;
    width: 0.5rem;
    border-radius: 50%;
    border: 1px solid red;
    background: red;
}

.compose-email-box{
    position: fixed;
    bottom: 0;
    right: 0;
    min-width: 35rem;
    z-index: 1060;
}

.email-copy-trigger {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
}

.email-copy-icon {
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.15s ease-in-out;
}

.email-copy-trigger:hover .email-copy-icon,
.email-copy-trigger:focus-within .email-copy-icon {
    opacity: 1;
    pointer-events: auto;
}

.modal-95w {
    max-width: none!important;
    width: 95%;
}
.modal-90w {
    max-width: none!important;
    width: 90%;
}
.modal-80w {
    max-width: none!important;
    width: 80%;
}
.modal-85w {
    max-width: none!important;
    width: 85%;
}

.fixedtable
tfoot tr {
    position: sticky;
}


.fixedtable tfoot tr {
    bottom: 0
}

.fixedtable
thead tr {
    position: sticky;
}

.fixedtable thead tr {
    top: 0;
    z-index: 2;

}


.max-20-h{
    max-height: 22rem;
}
.max-10-h{
    max-height: 10rem;
}
.max-8-h{
    max-height: 8rem;
}

.max-5-h{
    max-height: 5rem;
}
.min-10-h{
    min-height: 10rem;
}
.min-20-h{
    min-height: 22rem;
}
.min-15-h{
    min-height: 15rem;
}

.max-30-h{
    max-height: 30rem;
}

.modal-backdrop.show {
    z-index: 1055;
}



.webdesign-canvas {
    position: fixed;
    bottom: 52px;
    z-index: var(--falcon-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--falcon-offcanvas-color);
    visibility: hidden;
    background-color: var(--falcon-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    box-shadow: var(--falcon-offcanvas-box-shadow);
    transition: transform .3s ease-in-out;
}

.webdesign-canvas.webdesign-canvas-end {
    top: 0;
    right: 0;
    width: var(--falcon-offcanvas-width);
    border-left: var(--falcon-offcanvas-border-width) solid var(--falcon-offcanvas-border-color);
    transform: translateX(100%);
}

.webdesign-canvas.hiding, .webdesign-canvas.show, .webdesign-canvas.showing {
    visibility: visible;
}

.webdesign-canvas, .offcanvas-lg, .offcanvas-md, .offcanvas-sm, .offcanvas-xl, .offcanvas-xxl {
    --falcon-offcanvas-zindex: 1045;
    --falcon-offcanvas-width: 400px;
    --falcon-offcanvas-height: 30vh;
    --falcon-offcanvas-padding-x: 1rem;
    --falcon-offcanvas-padding-y: 1rem;
    --falcon-offcanvas-bg: #fff;
    --falcon-offcanvas-border-width: 1px;
    --falcon-offcanvas-border-color: var(--falcon-border-color-translucent);
    --falcon-offcanvas-box-shadow: var(--falcon-box-shadow-sm);
}

.webdesign-canvas.show:not(.hiding), .webdesign-canvas.showing {
    transform: none;
}

.webdesign-canvas-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1040;
    width: 100vw;
    height: 100vh;
    background-color: #000;
}
.webdesign-canvas-backdrop.fade {
    opacity: 0;
}
.webdesign-canvas-backdrop.show {
    opacity: 0.5;
}



.clock-loader-wrapper{
    display: block;
    text-align: -webkit-center;
    text-align: -moz-center;
    padding-bottom: 20px;
}
.clock-loader {
    position: relative;
    transform: scale(2);
    border-radius: 50%;
    border: 1px solid;
    width: 30px;
    height: 30px;
    color: #ff4702;
}

.clock-loader::after {
    position: absolute;
    width: 0px;
    height: 10px;
    display: block;
    border-left: 1px solid #ff4702;
    content: '';
    left: 14px;
    border-radius: 1px;
    top: 4px;
    animation-duration: 1s;
}

.clock-loader::before {
    position: absolute;
    width: 0px;
    height: 10px;
    display: block;
    border-left: 1px solid #ff4702;
    content: '';
    left: 14px;
    border-radius: 1px;
    top: 4px;
    animation-duration: 40s;
}

.clock-loader::before,.clock-loader::after {
    transform-origin: bottom;
    animation-name: dial;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
}

@keyframes dial {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}



.web-designer {
    display: flex;
}
.web-designer .icon-content {
    margin: 0 00px;
    position: relative;
    cursor: pointer;
    color: #fff;
    border-radius: 0.375rem;
}
.web-designer .icon-content .tooltip {
    position: absolute;
    top: -30px;
    transform: translateX(-50%);
    color: #fff;
    padding: 6px 10px;
    border-radius: 15px;
    opacity: 0;
    visibility: hidden;
    font-size: 14px;
    transition: all 0.3s ease;
}
.web-designer .icon-content:hover .tooltip {
    opacity: 1;
    visibility: visible;
    top: -70px;
}
.web-designer .icon-content a {
    position: relative;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 25px;
    height: 25px;
    border-radius: 20%;
    color: white;
    background-color: #ffff;
    transition: all 0.3s ease-in-out;
}
.web-designer .icon-content a:hover {
    box-shadow: 3px 2px 45px 0px rgb(0 0 0 / 50%);
}
.web-designer .icon-content a svg {
    position: relative;
    z-index: 1;
}
.web-designer .icon-content a:hover {
    color: white;
}
.web-designer .icon-content a .filled {
    position: absolute;
    top: auto;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 0;
    background-color: #000;
    transition: all 0.3s ease-in-out;
}
.web-designer .icon-content a:hover .filled {
    height: 100%;
}
.web-designer .icon-content a[data-social="copy"] ,
.web-designer .icon-content a[data-social="copy"] ~ .tooltip {
    background-color: #1db954;
}
.web-designer .icon-content a[data-social="delete"] ,
.web-designer .icon-content a[data-social="delete"] ~ .tooltip {
    background-color: #bd081c;
}
.web-designer .icon-content a[data-social="edit"] ,
.web-designer .icon-content a[data-social="edit"] ~ .tooltip {
    background-color: #0088cc;
}


.plan {
    border-radius: 16px;
    box-shadow: 0 30px 30px -25px rgba(0, 38, 255, 0.205);
    padding: 10px;
    background-color: #fff;
    color: #697e91;

}

.plan strong {
    font-weight: 600;
    color: #425275;
}

.plan .inner {
    align-items: center;
    padding: 20px;
    padding-top: 40px;
    background-color: #ecf0ff;
    border-radius: 12px;
    position: relative;
}

.plan .pricing {
    position: absolute;
    top: 0;
    right: -12px;
    background-color: #bed6fb;
    border-radius: 99em 0 0 99em;
    display: flex;
    align-items: center;
    padding: 0.625em 0.75em;
    font-size: 1.25rem;
    font-weight: 600;
    color: #425475;
}

.plan .pricing small {
    color: #707a91;
    font-size: 0.75em;
    margin-left: 0.25em;
}


.plan .pricing div {
    position: absolute;
    bottom: -23px;
    right: 0px;
    width: 0;
    height: 0;
    border-top: 13px solid #66a0c3;
    border-bottom: 10px solid transparent;
    border-right: 13px solid transparent;
}

.plan .title {
    font-weight: 600;
    font-size: 1.25rem;
    color: #425675;
}

.plan .title + * {
    margin-top: 0.75rem;
}

.plan .info + * {
    margin-top: 1rem;
}

.plan .features {
    display: flex;
    flex-direction: column;
}

.plan .features li {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.plan .features li + * {
    margin-top: 0.75rem;
}

.plan .features .icon {
    background-color: #1FCAC5;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    border-radius: 50%;
    width: 20px;
    height: 20px;
}

.plan .features .icon svg {
    width: 14px;
    height: 14px;
}

.plan .features + * {
    margin-top: 1.25rem;
}

.plan .action {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: end;
}

.plan .button {
    background-color: #6558d3;
    border-radius: 6px;
    color: #fff;
    font-weight: 500;
    font-size: 1.125rem;
    text-align: center;
    border: 0;
    outline: 0;
    width: 100%;
    padding: 0.625em 0.75em;
    text-decoration: none;
}

.plan .button:hover, .plan .button:focus {
    background-color: #4133B7;
}


.plan .button-outline {
    background-color: transparent;
    color: #6558d3;
    border: 1px solid #6558d3;
}

.plan .button-outline:hover, .plan .button-outline:focus {
    color: #fff;
}




.social-links {
    display: flex;
    justify-content: center;
    align-items: center;
    list-style: none;
}
.social-links .icon-content {
    margin: 0 10px;
    position: relative;
}
.social-links .icon-content .tooltip {
    position: absolute;
    top: -30px;
    left: 50%;
    transform: translateX(-50%);
    color: #fff;
    padding: 6px 10px;
    border-radius: 15px;
    opacity: 0;
    visibility: hidden;
    font-size: 14px;
    transition: all 0.3s ease;
}
.social-links .icon-content:hover .tooltip {
    opacity: 1;
    visibility: visible;
    top: -50px;
}
.social-links .icon-content a {
    position: relative;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 50px;
    height: 50px;
    border-radius: 20%;
    color: #4d4d4d;
    background-color: #ffff;
    transition: all 0.3s ease-in-out;
}
.social-links .icon-content a:hover {
    box-shadow: 3px 2px 45px 0px rgb(0 0 0 / 50%);
}
.social-links .icon-content a svg {
    position: relative;
    z-index: 1;
    width: 30px;
    height: 30px;
}
.social-links .icon-content a:hover {
    color: white !important;
}
.social-links .icon-content a .filled {
    position: absolute;
    top: auto;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 0;
    background-color: #000;
    transition: all 0.3s ease-in-out;
}
.social-links .icon-content a:hover .filled {
    height: 100%;
}

.social-links .icon-content a[data-social="facebook"]{
    color:#3c5a99;
}
.social-links .icon-content a[data-social="linkedin"]{
    color:#0077b5;
}
.social-links .icon-content a[data-social="instagram"]{
    color:#E1306C;
}
.social-links .icon-content a[data-social="twitter"]{
    color:#000000;
}
.social-links .icon-content a[data-social="youtube"]{
    color:#ff0001;
}

.social-links .icon-content a[data-social="facebook"] .filled,
.social-links .icon-content a[data-social="facebook"] ~ .tooltip {
    background-color: #3c5a99;

}
.social-links .icon-content a[data-social="instagram"] .filled,
.social-links .icon-content a[data-social="instagram"] ~ .tooltip {
    background-color: #E1306C;

}
.social-links .icon-content a[data-social="linkedin"] .filled,
.social-links .icon-content a[data-social="linkedin"] ~ .tooltip {
    background-color: #0077b5;

}
.social-links .icon-content a[data-social="twitter"] .filled,
.social-links .icon-content a[data-social="twitter"] ~ .tooltip {
    background-color: #000000;

}
.social-links .icon-content a[data-social="youtube"] .filled,
.social-links .icon-content a[data-social="youtube"] ~ .tooltip {
    background-color: #ff0001;

}



.etiquet-price {
    position: relative;
    background: #fdbd4a;
    width: 14.46rem;
    margin-left: -0.65rem;
    padding: .2rem 1.2rem;
    border-radius: 5px 0 0 5px;
}

.etiquet-price p {
    margin: 0;
    padding-top: .4rem;
    display: flex;
    font-size: 1.9rem;
    font-weight: 500;
}

.etiquet-price p:before {
    content: "$";
    margin-right: 5px;
    font-size: 15px;
    font-weight: 300;
}

.etiquet-price p:after {
    content: "/ handle";
    margin-left: 5px;
    font-size: 15px;
    font-weight: 300;
}

.etiquet-price div {
    position: absolute;
    bottom: -23px;
    right: 0px;
    width: 0;
    height: 0;
    border-top: 13px solid #c58102;
    border-bottom: 10px solid transparent;
    border-right: 13px solid transparent;
    z-index: -6;
}

.bg-counter{
    background: linear-gradient(138.18deg, #eae8fd 0%, #fce5e6 94.44%);

}


.event_card {
    --main-color: #000;
    --bg-color: #fff;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
    Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;
    padding: 25px;
    background: linear-gradient(to bottom, rgb(241 246 249), rgba(181, 181, 181, -0.20));
    border-radius: 20px;
}
.card__wrapper {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
}

.card___wrapper-acounts {
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
    z-index: 1;
    cursor: pointer;
}

.card___wrapper-acounts > div:nth-child(2) {
    position: absolute;
    left: 25px;
    z-index: -1;
}

.card___wrapper-acounts > div:nth-child(3) {
    position: absolute;
    left: 50px;
    z-index: -2;
}

.card__score {
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: 500;
    font-size: 16px;
    color: #fff;
    width: 40px;
    height: 40px;
    border-radius: 100%;
    background: var(--main-color);
}

.card__acounts {
    width: 42px;
    height: 42px;
}

.card__acounts svg {
    width: 100%;
    height: 100%;
}

.card__menu {
    width: 40px;
    height: 40px;
    background: #dafffb;
    border-radius: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.card__title {
    margin-top: 30px;
    font-weight: 700;
    font-size: 18px;
    color: #0f344e !important;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    word-wrap: break-word;
    max-height: 64px;
    min-height:50px;
}

.card__subtitle {
    margin-top: 15px;
    font-weight: 400;
    font-size: 15px;
    color: var(--main-color);
}

.card__indicator {
    margin-top: 50px;
    font-weight: 500;
    font-size: 14px;
    color: var(--main-color);
}

.card__progress progress {
    width: 100%;
    height: 4px;
    border-radius: 100px;
}

.card__progress progress::-webkit-progress-bar {
    background-color: #00000030;
    border-radius: 100px;
}

.card__progress progress::-webkit-progress-value {
    background-color: var(--main-color);
    border-radius: 100px;
}

.radio-inputs {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    border-radius: 0.5rem;
    background-color: #EEE;
    box-sizing: border-box;
    box-shadow: 0 0 0px 1px rgba(0, 0, 0, 0.06);
    padding: 0.25rem;
    width: 300px;
    font-size: 14px;
}

.radio-inputs .radio {
    flex: 1 1 auto;
    text-align: center;
}

.radio-inputs .radio input {
    display: none;
}

.radio-inputs .radio .name {
    display: flex;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    border-radius: 0.5rem;
    border: none;
    padding: .5rem 0;
    color: rgba(51, 65, 85, 1);
    transition: all .15s ease-in-out;
    height:30px;
}

.radio-inputs .radio input:checked + .name {
    background-color: #fff;
    font-weight: 600;
    box-shadow: var(--falcon-box-shadow) !important;
}

.transport-assign-card-header {
    background: linear-gradient(135deg, #ffffff 0%, #f3f4f6 55%, #e5e7eb 100%);
}

.transport-assign-card-header--destinations {
    background: linear-gradient(135deg, #ffffff 0%, #f7f8fa 48%, #e4e8ee 100%);
}

.transport-assign-card-header--transports {
    background: linear-gradient(135deg, #ffffff 0%, #f4f5f7 45%, #d9dee6 100%);
}

.transport-assign-card-header--employees {
    background: linear-gradient(135deg, #ffffff 0%, #f8f8f8 42%, #e1e4e8 100%);
}

.segment-toggle {
    display: inline-flex;
    width: 100%;
    gap: 0.35rem;
    border-radius: 0.85rem;
    background: rgba(255, 255, 255, 0.82);
    border: 1px solid rgba(148, 163, 184, 0.22);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.segment-toggle.is-disabled {
    opacity: 0.65;
}

.segment-toggle__item {
    flex: 1 1 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.55rem;
    padding: 0.75rem 0.9rem;
    border: 0;
    border-radius: 0.7rem;
    background: transparent;
    color: #425466;
    font-weight: 600;
    transition: all 0.18s ease-in-out;
}

.segment-toggle__item:hover:not(:disabled) {
    background: rgba(255, 255, 255, 0.72);
    color: #1f3f68;
}

.segment-toggle__item.is-active {
    background: linear-gradient(135deg, #fefefe 0%, #e8edf3 100%);
    color: #17324d;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
    border: 1px solid #13287291;
}

.segment-toggle__item:disabled {
    cursor: not-allowed;
}

.segment-toggle__icon {
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(148, 163, 184, 0.16);
}

.transport-assign-flow-indicator,
.transport-assign-check-indicator {
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: linear-gradient(135deg, #244a79 0%, #6f879f 100%);
    flex-shrink: 0;
}

.transport-assign-sticky-footer {
    position: sticky;
    bottom: 0;
    z-index: 3;
    border-top: 1px solid rgba(148, 163, 184, 0.25) !important;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.96) 0%, #f8fafc 100%) !important;
    box-shadow: 0 -10px 24px rgba(15, 23, 42, 0.06);
}
/*
.btn-primary {
    color: #fff;
    background-color: #696cff;
    border-color: #696cff;
    box-shadow: 0 .125rem .25rem 0 rgba(105,108,255,.4)
}*/

.btn-primary {
    background: linear-gradient(90deg, #7391ba, #234a7d);
    box-shadow: 0 3px 1px -2px rgba(0, 0, 0, .2), 0 2px 2px 0 rgba(0, 0, 0, .14), 0 1px 5px 0 rgba(0, 0, 0, .12);
    transform: translate3d(0, 0, 0);
    transition: background 400ms cubic-bezier(0.25, 0.8, 0.25, 1), box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);
    box-sizing: border-box;
    border: none;
}

.btn-primary:hover {
    color: #fff !important;
    background-color: #5f61e6 !important;
    border-color: #5f61e6 !important;
    transform: translateY(-1px) !important
}



.bg-light-grey{
    background-color:#d2dbe742 !important;
}



.eye-toggle label {
    background-color: white;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 10px 15px 10px 10px;
    cursor: pointer;
    user-select: none;
    border-radius: 10px;
    box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
    color: black;
}

.eye-toggle input {
    display: none;
}

.eye-toggle input:checked + label svg {
    fill: hsl(0deg 100% 50%);
    stroke: hsl(0deg 100% 50%);
    animation: heartButton 1s;
}

@keyframes heartButton {
    0% {
        transform: scale(1);
    }

    25% {
        transform: scale(1.3);
    }

    50% {
        transform: scale(1);
    }

    75% {
        transform: scale(1.3);
    }

    100% {
        transform: scale(1);
    }
}

.eye-toggle input + label .action {
    position: relative;
    overflow: hidden;
    display: grid;
}

.eye-toggle input + label .action span {
    grid-column-start: 1;
    grid-column-end: 1;
    grid-row-start: 1;
    grid-row-end: 1;
    transition: all .5s;
}

.eye-toggle input + label .action span.option-1 {
    transform: translate(0px,0%);
    opacity: 1;
}

.eye-toggle input:checked + label .action span.option-1 {
    transform: translate(0px,-100%);
    opacity: 0;
}

.eye-toggle input + label .action span.option-2 {
    transform: translate(0px,100%);
    opacity: 0;
}

.eye-toggle input:checked + label .action span.option-2 {
    transform: translate(0px,0%);
    opacity: 1;
}

.navbar-vertical .navbar-nav .nav .nav-item .nav-link  {
    padding: .625rem 1rem;
    display: flex;
    position: relative;
}


@media (min-width: 1200px){
    .navbar-vertical.navbar-expand-xl .nav-link {
        padding: .625rem 1rem;
    }
    .navbar-vertical.navbar-expand-xl.navbar-card .navbar-vertical-content, .navbar-vertical.navbar-expand-xl.navbar-inverted .navbar-vertical-content, .navbar-vertical.navbar-expand-xl.navbar-vibrant .navbar-vertical-content {
        padding: .5rem !important;
    }
}



.navbar-vertical-content .navbar-nav .nav-item .nav-link {
    border-radius: .375rem;
}

.navbar-vertical.navbar-card .navbar-nav .nav-item .nav-link.active,.nav-item .nav-link.menu-toggle{
    /*color: #696cff !important;*/
    color: #215cac !important;
    /*background-color: rgba(105, 108, 255, .16) !important;*/
    background-color: #d9e7fa !important;
}


.navbar-vertical.navbar-card .navbar-nav  .menu-sub > .nav-item .nav-link.active {
    background-color: transparent !important;
}
.navbar-vertical.navbar-card .navbar-nav  .menu-sub > .nav-item .nav-link.active:before {
    /*background-color: #696cff !important;*/
    background-color: #215cac !important;
    /*border: 3px solid #e7e7ff !important;*/
    border: 3px solid #d9e7fa !important;
}
.navbar-vertical.navbar-card .navbar-nav  .menu-sub > .nav-item .nav-link.active:before {
    left: 0.1875rem;
    width: .875rem;
    height: .875rem;
    top: 0.79rem;
}
.navbar-vertical.navbar-card .navbar-nav  .menu-sub > .nav-item .nav-link:before {
    content: "";
    position: absolute;
    left: 0.4375rem;
    width: .375rem;
    height: .375rem;
    border-radius: 50%;
    top: 1.1rem;
}
.navbar-vertical.navbar-card .navbar-nav  .menu-sub > .nav-item .nav-link:before {
    background-color: #b4bdc6 !important;
}


.navbar-vertical .menu-sub .nav-link {
    padding-left: 3rem;
}

.navbar-vertical .menu-sub .nav-link {
    padding-top: .625rem;
    padding-bottom: .625rem;
}
.navbar-vertical .nav-item .nav-link {
    font-size: .9375rem;
}

.navbar-vertical .menu-sub {
    padding-left: 1rem;
}

.navbar-vertical .nav-link .nav-link-text{
    padding-left:0rem;
}
.navbar-vertical .menu-sub > .nav-link .nav-link-text{
    padding-left:1rem;
}
.navbar-vertical .nav-item .dropdown-indicator::after {
    right: 1rem;
}

.navbar-vertical .nav-item>.nav-link:not(.active):hover {
    background-color: rgba(67,89,113,.04)
}

.bg-ecwcolor-radiant{
    background-image:radial-gradient(circle at 50.54% 65.86%, rgb(55 89 131) 14%, #0f344e 50%, #0f344e 106%);
}

.bg-dashboard-sidebar-nest{
    background: #f7f9fc !important;
}
.bg-nav-vertical{
    background:rgb(15, 23, 42);
}
.background-none{
    mix-blend-mode: multiply;
}
.registration-event-sticky{
    position: sticky;
    top: 8.3125rem;
}


.picture-display{
    display: grid;
    align-items: center;
    justify-content: center;
}

.event-card-bg{
    background: linear-gradient(to bottom, rgb(241 246 249), rgba(181, 181, 181, -0.20));
}

.pt-8_5{
    padding-top: 8rem !important;
}

.timeline-simple .timeline-item:not(:last-child):before{
    left: 5.5rem;
}
.timeline-simple .timeline-item .timeline-item-date {
    width: 4rem;
}

.letter-space-3{
    letter-spacing: 0.3rem;
}

.dashboard-card{
    border-radius: 15px;
    box-shadow: 0 3px 20px #1d26260d;
    padding: 15px;
}

@media (min-width: 1025px) {
    .registration-event-sticky {
        height: calc(100vh - 9.3125rem);
    }

    .registration-event-sticky > .dashboard-card {
        height: 100%;
    }

    .dashboard-card {
        display: flex;
        flex-direction: column;
        min-height: 0;
        overflow: hidden;
    }

    .dashboard-card .dashboard-sidebar--modern {
        flex: 1 1 auto;
        min-height: 0;
    }
}

.dashboard-left-col-collapsed .dashboard-card {
    padding: 10px 6px;
}

@media (max-width: 1024px) {
    .dashboard-responsive-wrap .card {
        height: 100%;
    }
}

.bg-dashboard{
    background: #f1f3f6 !important;
}

.dashboard-blue-gradient
{
    background-image: linear-gradient(-45deg, #014ba7, #2b2d7c);
}

.dashboard-welcome-card{
    border: 1px solid #d7dfed !important;
    border-radius: 1rem !important;
    background: linear-gradient(135deg, #ffffff 0%, #f3f4f6 52%, #e5e7eb 100%) !important;
    box-shadow: 0 18px 40px rgba(148, 163, 184, 0.18);
    overflow: hidden;
    position: relative;
}

.dashboard-welcome-card::before{
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at top right, rgba(255, 255, 255, 0.18), transparent 32%),
        radial-gradient(circle at bottom left, rgba(255, 255, 255, 0.08), transparent 28%);
    pointer-events: none;
}

.dashboard-welcome-card .card-body{
    position: relative;
    z-index: 1;
}

.dashboard-welcome-card__icon{
    background: rgba(255, 255, 255, 0.96) !important;
    border: 1px solid rgba(148, 163, 184, 0.22);
    backdrop-filter: blur(6px);
}

.dashboard-welcome-card__icon-symbol{
    color: #475569 !important;
}

.dashboard-welcome-card h6,
.dashboard-welcome-card p{
    color: #334155 !important;
}

.dashboard-welcome-card__invoice-trigger{
    display: inline-flex;
    align-items: center;
    gap: 0.75rem;
    margin-top: 0.15rem;
    padding: 0;
    border: 0;
    background: transparent;
    color: #334155;
    cursor: pointer;
    text-align: left;
}

.dashboard-welcome-card__invoice-trigger:focus-visible{
    outline: 2px solid rgba(71, 85, 105, 0.6);
    outline-offset: 4px;
    border-radius: 0.5rem;
}

.dashboard-welcome-card__invoice-trigger:hover .dashboard-welcome-card__invoice-link,
.dashboard-welcome-card__invoice-trigger:focus .dashboard-welcome-card__invoice-link{
    background: rgba(226, 232, 240, 0.9);
}

.dashboard-welcome-card__invoice-value{
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.2;
}

.dashboard-welcome-card__invoice-link{
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.7rem;
    border-radius: 999px;
    background: rgba(226, 232, 240, 0.72);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #475569;
    transition: background-color 0.2s ease;
}

.dashboard-activity-card,
.dashboard-members-card{
    border: 1px solid #dbe4f0 !important;
    border-radius: 1rem !important;
    background: #ffffff;
    box-shadow: 0 14px 36px rgba(15, 23, 42, 0.06);
}

.dashboard-card-section__header{
    padding: 1.35rem 1.5rem 0.5rem;
}

.dashboard-card-section__title{
    color: #0f172a;
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: -0.01em;
}

.dashboard-card-section__empty{
    min-height: 12rem;
    padding: 1.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #8a97ab;
    font-size: 0.96rem;
    text-align: center;
}

.dashboard-card-section__scroll .simplebar-content{
    display: block;
}

.dashboard-activity-list,
.dashboard-members-card__list{
    padding: 0 1.5rem 0.35rem;
}

.dashboard-activity-row,
.dashboard-members-card__row{
    padding: 1rem 0;
}

.dashboard-activity-row--bordered,
.dashboard-members-card__row--bordered{
    border-bottom: 1px solid #edf2f9;
}

.dashboard-activity-row__main{
    width: 100%;
}

.dashboard-activity-row__top{
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.dashboard-activity-row__text{
    color: #0f172a;
    font-size: 0.85rem;
    line-height: 1.55;
    padding-top: 0.85rem;
}

.dashboard-activity-row__meta{
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
    margin-top: 0.55rem;
    color: #94a3b8;
    font-size: 0.7rem;
}

.dashboard-activity-row__meta span + span::before{
    content: "·";
    margin-right: 0.65rem;
    color: #c0cad8;
}

.dashboard-activity-row__pill{
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 6.25rem;
    padding: 0.35rem 0.8rem;
    border-radius: 999px;
    font-size: 0.78rem;
    line-height: 1;
    border: 1px solid transparent;
}

.dashboard-activity-row__pill--admin{
    color: #3b5ccc;
    background: #eef3ff;
    border-color: #dfebff;
}

.dashboard-activity-row__pill--registration{
    color: #198754;
    background: #edf9f1;
    border-color: #daf2e3;
}

.dashboard-activity-row__pill--website{
    color: #607187;
    background: #f5f7fa;
    border-color: #e8edf3;
}

.dashboard-activity-row__pill--neutral{
    color: #475569;
    background: #f8fafc;
    border-color: #e2e8f0;
}

.dashboard-members-card__row{
    display: flex;
    align-items: center;
    gap: 0.9rem;
}

.dashboard-members-card__avatar{
    flex-shrink: 0;
}

.dashboard-members-card__avatar .avatar-name{
    border: 1px solid #e4e9f2;
    font-size: 0.75rem;
    font-weight: 700;
}

.dashboard-members-card__row:nth-child(4n + 1) .dashboard-members-card__avatar .avatar-name{
    color: #7c3aed;
    background: #f3e8ff;
}

.dashboard-members-card__row:nth-child(4n + 2) .dashboard-members-card__avatar .avatar-name{
    color: #2563eb;
    background: #dbeafe;
}

.dashboard-members-card__row:nth-child(4n + 3) .dashboard-members-card__avatar .avatar-name{
    color: #0f766e;
    background: #ccfbf1;
}

.dashboard-members-card__row:nth-child(4n + 4) .dashboard-members-card__avatar .avatar-name{
    color: #c2410c;
    background: #ffedd5;
}

.dashboard-members-card__content{
    min-width: 0;
}

.dashboard-members-card__name{
    color: #0f172a;
    font-size: 0.85rem;
    font-weight: 700;
    line-height: 1.35;
}

.dashboard-members-card__role{
    margin-top: 0.15rem;
    color: #94a3b8;
    font-size: 0.75rem;
}

.dashboard-activity-row__meta span + span::before{
    content: "";
    display: inline-block;
    width: 0.24rem;
    height: 0.24rem;
    border-radius: 50%;
    background: #c0cad8;
    margin-right: 0.65rem;
    vertical-align: middle;
}

@media (max-width: 767.98px) {
    .dashboard-card-section__header{
        padding: 1.15rem 1rem 0.35rem;
    }

    .dashboard-activity-list,
    .dashboard-members-card__list{
        padding: 0 1rem 0.25rem;
    }

    .dashboard-activity-row__top{
        flex-direction: column;
        align-items: flex-start;
    }

    .dashboard-activity-row__pill{
        min-width: 0;
    }
}

.header-image-landing{
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    width: 100% !important;

}
.header-image-landing-content{
    position: relative;
    top: 0;
    padding-top: 5%;
    padding-bottom: 10%;
    width: 100%;
}
.hero-full{
    padding: 5rem 0 5rem;
    min-height: 95vh;
    display: flex;
    align-items: center;
}
.hero-contained {
    padding: 5rem 0 5rem;
    height:65vh !important;
}
.classic-hero-illustration img {
    width: 100%;
    filter: drop-shadow(0 20px 40px rgba(15, 23, 42, 0.25));
}
.condition-tree::before{
    height: 1px;
    top: 60%;
    right: 50%;
    width: 50%;
    position: absolute;
    content: '';
    border: 1px #d8e2ef dashed;
    white-space: nowrap;
    text-align: left;
}
.condition-tree::after{
    width: 1px;
    left: 0;
    top: 0;
    height: 60%;
    position: absolute;
    content: '';
    border: 1px #d8e2ef dashed;
}



@media (min-width: 1200px) {
    .navbar-vertical{
        margin-top: 5.3125rem !important;
    }
    .navbar-vertical.navbar-expand-xl.navbar-card+.content, .navbar-vertical.navbar-expand-xl.navbar-inverted+.content, .navbar-vertical.navbar-expand-xl.navbar-vibrant+.content {
        margin-left: 15.5rem;
    }
}

@media (min-width: 1200px) {
    .navbar-vertical-collapsed .navbar-vertical.navbar-expand-xl.navbar-card+.content, .navbar-vertical-collapsed .navbar-vertical.navbar-expand-xl.navbar-inverted+.content, .navbar-vertical-collapsed .navbar-vertical.navbar-expand-xl.navbar-vibrant+.content {
        margin-left: 4.125rem;
    }
}


@media (min-width: 768px) and (max-width: 1199px) {
    .navbar-top .navbar-vertical-toggle {
        display: none !important;
    }
    .navbar-top .navbar-brand {
        display: none !important;
    }
    .navbar-top .navbar-toggler {
        display: flex !important;
    }

    .navbar-vertical .navbar-collapse{
        padding-top:1rem !important;
    }
}


.navbar-vertical.navbar-card .navbar-collapse {
    background-color: transparent !important;
    box-shadow: none !important;
}

.cursor-move{
    cursor: move !important;
}


.navbar-vertical-collapsed-hover .navbar-vertical-content{
    --falcon-bg-opacity: 1;
    background-color: rgba(var(--falcon-gray-white-rgb),var(--falcon-bg-opacity))!important;
}

.text-brown{
        --falcon-text-opacity: 1;
        color: rgb(104 18 18 / 72%) !important;
}


#event-calendar thead th {
    position: sticky;
    top: 0;
    z-index: 1;
}
#event-calendar tbody tr {
    height: 1px;
}
#event-calendar tbody tr td {
    height: inherit;
}
#event-calendar tbody tr td div {
    height: 100%;
    padding-left: 5px;
}
#event-calendar tbody tr th {
    position: sticky;
    left: 0;
}
#event-calendar tbody tr td div {
    cursor: pointer;
}
.hz-scroll {
    position: absolute;
    font-size: 20px;
    z-index: 3;
    top:0px;
}
.resize-handle {
    cursor: ns-resize;
    position: relative;
    right: 0;
    top: 0;
}

.resize-handle:before {
    background-color: #ffff;
    border: 2px solid;
    border-radius: 100%;
    content: "";
    height: 10px;
    opacity: 1;
    position: absolute;
    width: 10px;
    left: 10px;
    top: -5px;
}
/*.hover-bg-200:hover{
    border: 1px solid #d5d0d0 !important;
}*/

.hover-border-200:hover{
    border: 3px dashed #0c0b0b17 !important;
}


.bg-light-blue{
    background: #ecf0ff !important;
}

.cursor-nodrop {cursor: no-drop !important;}


.linear-background-blue{
    background: linear-gradient(135deg, rgb(0, 122, 255), rgb(0, 196, 255));
}

.linear-background-purple{
    background: linear-gradient(135deg, #5856d6, #8a84ff);
}

.linear-background-green{
    background: linear-gradient(135deg, #34c759, #5ce883);
}

.linear-background-teal{
    background: linear-gradient(135deg, #00ddeb, #00b8d4);
}

.linear-background-yellow{
    background: linear-gradient(135deg, #ff9500, #ffcc00);
}
.linear-background-pink{
    background: linear-gradient(135deg, #ff2d55, #ff6b88);
}
.linear-background-red{
    background: linear-gradient(135deg, #ff3b30, #ff7964);
}

.event-cal-height{
    max-height: calc(100vh - 250px);
}

.border-published{
    border-color: rgb(0 94 120) !important;

}
.border-unpublished{
    border-color: #b9784f !important;
}



.timeline-item-start-height{
    min-height: 9rem;
}

.timeline-item-end-height{
    min-height: 11rem;
}

.ai-border{
    margin-bottom: 5px;
    text-align: left;
    font-size: 13px;
    line-height: 1.8;
    border-radius: 8px;
    padding: 12px 25px;
    background: linear-gradient(canvas, canvas) padding-box padding-box, linear-gradient(120deg, rgb(194, 156, 216), rgb(242, 195, 130)) border-box border-box;
    border-width: 2px;
    border-style: solid;
    border-color: transparent;
    border-image: initial;
}
.ai-btn-border{
    color:#000801;
    text-align: left;
    font-size: 13px;
    /* line-height: 1.8; */
    border-radius: 0.75rem;
    /* padding: 12px 25px; */
    background: linear-gradient(canvas, canvas) padding-box padding-box, linear-gradient(120deg, rgb(194, 156, 216), rgb(242, 195, 130)) border-box border-box;
    border-width: 2px;
    border-style: solid;
    border-color: transparent;
    border-image: initial;
}
.ai-btn-border:hover{
    color:#000801 !important;
}
.ai-btn-border.show{
    color:#000801 !important;
}

.ai-bg-soft{
    background: rgb(251 246 239 / 35%) !important;
 /*   border: 1px solid rgb(242, 195, 130) !important;*/
}


.z-max{
    z-index: 9999 !important;
}


.generative-loader {
    display: block;
    --height-of-loader: 4px;
    --loader-color: #0071e2;
    width: 130px;
    height: var(--height-of-loader);
    border-radius: 30px;
    background-color: rgba(0,0,0,0.2);
    position: relative;
}

.generative-loader::before {
    content: "";
    position: absolute;
    background: var(--loader-color);
    top: 0;
    left: 0;
    width: 0%;
    height: 100%;
    border-radius: 30px;
    animation: moving 1s ease-in-out infinite;
;
}

@keyframes moving {
    50% {
        width: 100%;
    }

    100% {
        width: 0;
        right: 0;
        left: unset;
    }
}
.content-line-limit-6 {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 6;
    -webkit-box-orient: vertical;
    line-clamp: 6;
}
.animate-charcter
{
    background-image: linear-gradient(-225deg, #231557 0%, #44107a 29%, #ff1361 67%, #fff800 100%);
    background-size: auto auto;
    background-clip: border-box;
    background-size: 200% auto;
    color: #fff;
    background-clip: text;
    text-fill-color: transparent;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: textclip 5s linear infinite;
    display: inline-block;
    font-size: 17px;
}

@keyframes textclip {
    to {
        background-position: 200% center;
    }
}

.text-focus-none:focus{
    border:none !important;
}

.reminder-card-list {
    max-height: 145px;
}
.search-box {
    width: 30rem;
}
.top-logo{
    width: 15.5rem;
    height: 60px;
}
.ecw-top-navbar{
    padding: 0.75rem 1.5rem !important;
    min-height: 72px;
    gap: 1rem;
}
.event-switcher-trigger{
    min-width: 16rem;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    border: 1px solid #d8e2ef;
    border-radius: 0.75rem;
    background: #fff;
    color: #344050;
    box-shadow: 0 0.125rem 0.5rem rgba(15, 23, 42, 0.06);
}
.event-switcher-trigger:hover,
.event-switcher-trigger:focus{
    color: #344050;
    border-color: #9da9bb;
    background: #fff;
}
.event-switcher-trigger-active{
    border-color: rgba(44, 123, 229, 0.35);
    background: linear-gradient(180deg, rgba(44, 123, 229, 0.08), rgba(44, 123, 229, 0.03));
}
.event-switcher-trigger-copy{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    min-width: 0;
    text-align: left;
}
.event-switcher-trigger-label{
    font-size: 0.6875rem;
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #748194;
}
.event-switcher-trigger-name{
    display: block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 0.875rem;
    font-weight: 600;
    color: #1f2937;
}
.event-switcher-trigger-icon{
    flex-shrink: 0;
    color: #748194;
}
@media (max-width: 767px) {
    .ecw-top-navbar{
        padding: 0.75rem 1rem !important;
    }
    .event-switcher-trigger{
        min-width: 0;
        width: 100%;
    }
}
.gmap{
    border-radius: 10px;
    line-height: 30px;
    position: relative;
    z-index: 1;
    min-height: 200px;
    background: #fff;
    margin-top: 15px;
    color: black;
    border: 2px solid rgba(249, 25, 66, 0.4);
    position: absolute;
}


.section-strong {
    background: linear-gradient(180deg, rgba(109, 40, 217, .05), rgba(16, 185, 129, .05));
}
.section-testimonial{
    background: radial-gradient(300px 140px at 30% 35%, rgba(20, 184, 166, .2), transparent 70%), radial-gradient(300px 140px at 70% 65%, rgba(99, 102, 241, .2), transparent 70%), linear-gradient(180deg, #e2f4f1, #ffffff);
}
.section-radial{
    background: radial-gradient(1200px 600px at -10% 120%, #ffffff 20%, #f6f8fb 60%, #eef2ff 100%), linear-gradient(135deg, #6d28d9, #10b981);

}
.speaker-img{
    width:130px;
    height:130px;
    margin:0 auto 12px;
    border-radius:50%;
    background: linear-gradient(135deg, #6d28d9, #10b981);
    position:relative;
    overflow:hidden;
    box-shadow:0 10px 25px rgba(15, 23, 42, .08);

}
.speaker {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.speaker-description{
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 11;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    word-wrap: break-word;
    max-height: 312px;
    min-height: 312px;
}

:root {
    --nav-bg: rgba(19,22,26,.7);
    --nav-bg-fallback: #13161a;
    --nav-blur: 14px;
    --nav-border: rgba(255,255,255,.12);
    --accent: #7C4DFF;
    --accent-2: #00E5FF;
    --text: #e6ecf3;
    --text-muted: #b8c1cc;
}



/* Layout spacing */
.navbar .navbar-nav { gap: .25rem; }

/* Links */
.navbar .nav-link {
    color: var(--bs-navbar-color);
    border-radius: 12px;
    padding: .5rem .75rem;
    position: relative;
    transition: color .2s ease, background .2s ease, transform .15s ease;
}

/*.navbar .nav-link.active,
.navbar .nav-link.show {
    color: var(--bs-navbar-active-color);
    background: rgba(124,77,255,.12);
    box-shadow: 0 10px 24px rgba(124,77,255,.24);
}*/
.navbar .nav-link:focus-visible {
    outline: none;
    box-shadow: 0 0 0 .2rem rgba(124,77,255,.35);
    border-radius: 12px;
}

/* Gradient underline on hover/active */
.navbar .dropdown-menu-card .nav-link::after {
    content: "";
    position: absolute;
    left: .75rem; right: .75rem; bottom: .35rem;
    height: 2px;
    background: linear-gradient(90deg, var(--accent), var(--accent-2));
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .25s ease;
    opacity: .9;
}
.navbar .nav-link:hover::after,
.navbar .nav-link.active::after { transform: scaleX(1); }

.btn-radient-primary{
    background: linear-gradient(135deg, rgb(67, 97, 238), rgb(114, 9, 183));
    color: rgb(255, 255, 255);
}
.lead span {
    background-color: transparent !important;
}


.theme-classic table{
    width: 100%;
    margin-bottom: 1rem;
    color: #5e6e82;
    vertical-align: top;
    border-color: #edf2f9;
}

.theme-classic table tfoot>tr>th:first-child, .theme-classic table thead>tr>th:first-child,
.theme-classic table tr td:first-child, .theme-classic table tr th:first-child {
    padding: 1rem;
}

.bg-itenary{
background-image:linear-gradient(135deg, #C9D6FF 0%, #E2E2E2 100%);
}
.bg-white-grey{
    background-image: linear-gradient(135deg, #ECE9E6 0%, #FFFFFF 100%);
}

.table-action-header,
.table-action-cell {
    position: sticky;
    right: 0;
    background-color: var(--bs-card-bg, var(--bs-body-bg));
   /* z-index: 2;*/
}

.table-action-header {
    z-index: 3;
    box-shadow: -1px 0 0 rgba(0, 0, 0, 0.08);
}

.table-action-cell {
    box-shadow: -1px 0 0 rgba(0, 0, 0, 0.08);
    padding-right: $card-spacer-x;
}

/*tr[class*='bg-'] {
    .table-action-header,
    .table-action-cell {
        background-color: inherit;
    }
}*/

/* --- Modern table refresh for Table.js output --- */
/*.table-responsive.scrollbar {
    !* Palette variables make it easy to retheme or revert *!
    --table-surface: #ffffff;
    --table-border: rgba(88, 116, 155, 0.18);
    --table-shadow: 0 12px 28px rgba(15, 23, 42, 0.06);
    --table-header: #f6f8fc;
    --table-header-active: #ebf2ff;
    --table-header-text: #2b3a4f;
    --table-header-muted: rgba(91, 104, 123, 0.55);
    --table-body-text: #1f2937;
    --table-row-divider: #e6ebf3;
    --table-row-hover: #f4f7fc;
    --table-row-selected: #e5efff;
    --table-row-selected-border: rgba(33, 92, 172, 0.24);
    background-color: var(--table-surface);
    border: 1px solid var(--table-border);
    border-radius: 14px;
    box-shadow: var(--table-shadow);
   !* padding: 0.75rem;*!
    overflow: auto;
    transition: border-color 0.25s ease, box-shadow 0.25s ease;
}

.table-responsive.scrollbar:hover {
    border-color: rgba(45, 75, 120, 0.24);
    box-shadow: 0 16px 35px rgba(15, 23, 42, 0.08);
}

!* Tighten table typography and spacing without touching markup *!
.table-responsive.scrollbar table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    background-color: var(--table-surface);
    color: var(--table-body-text);
    font-size: 0.92rem;
}

!* Header row *!
.table-responsive.scrollbar table thead th {
    background: var(--table-header);
    color: var(--table-header-text);
    font-weight: 600;
    letter-spacing: 0.015em;
    border-bottom: 1px solid var(--table-row-divider);
    padding: 0.8rem 1.1rem;
    position: sticky;
    top: 0;
   !* z-index: 2;*!
    white-space: nowrap;
}

.table-responsive.scrollbar table thead th:first-child {
    border-top-left-radius: 10px;
}

.table-responsive.scrollbar table thead th:last-child {
    border-top-right-radius: 10px;
}

!* Sort affordance piggybacking on react-table .sort classes *!
.table-responsive.scrollbar table thead th.sort {
    cursor: pointer;
    position: relative;
    padding-right: 1.6rem;
}

.table-responsive.scrollbar table thead th.sort::after {
    content: "";
    position: absolute;
    right: 0.75rem;
    top: 50%;
    margin-top: -0.15rem;
    border: 4px solid transparent;
    border-top-color: var(--table-header-muted);
    opacity: 0.5;
    transition: transform 0.2s ease, opacity 0.2s ease, border-top-color 0.2s ease;
}

.table-responsive.scrollbar table thead th.sort:hover::after {
    opacity: 0.75;
}

.table-responsive.scrollbar table thead th.sort.asc::after {
    transform: translateY(-50%) rotate(180deg);
}

.table-responsive.scrollbar table thead th.sort.desc::after {
    transform: translateY(-50%);
}

.table-responsive.scrollbar table thead th.sort.asc,
.table-responsive.scrollbar table thead th.sort.desc {
    background: var(--table-header-active);
    color: #1c3f72;
    box-shadow: inset 0 -1px 0 rgba(33, 92, 172, 0.16);
}

.table-responsive.scrollbar table tbody tr {
    transition: background-color 0.2s ease;
}

.table-responsive.scrollbar table tbody td {
    padding: 0.85rem 1.1rem;
    border-bottom: 1px solid var(--table-row-divider);
    vertical-align: middle;
}

.table-responsive.scrollbar table tbody tr:hover td {
    background-color: var(--table-row-hover);
}

.table-responsive.scrollbar table tbody tr:last-child td {
    border-bottom: none;
}

!* Respect existing .bg-100 highlight but soften it *!
.table-responsive.scrollbar table tbody tr.bg-100 td {
    background-color: var(--table-row-selected);
    box-shadow: inset 0 0 0 1px var(--table-row-selected-border);
}

.table-responsive.scrollbar table tbody td:first-child,
.table-responsive.scrollbar table thead th:first-child {
    width: 3rem;
    padding-left: 0.85rem;
    padding-right: 0.85rem;
}

!* Keep buttons and checkboxes aligned inside cells *!
.table-responsive.scrollbar table td .btn,
.table-responsive.scrollbar table td .form-check {
    margin-bottom: 0;
}

.table-responsive.scrollbar table caption {
    caption-side: bottom;
    padding: 0.75rem 1.1rem 0;
    color: #556272;
    font-size: 0.85rem;
}

@media (max-width: 576px) {
    .table-responsive.scrollbar {
        border-radius: 12px;
        padding: 0.6rem;
    }

    .table-responsive.scrollbar table thead th,
    .table-responsive.scrollbar table tbody td {
        padding: 0.75rem 0.85rem;
    }

    .table-responsive.scrollbar table thead th.sort {
        padding-right: 1.4rem;
    }
}*/

/* Classic hero counter redesign */
.classic-hero-counter {
    --counter-surface: transparent;
    --counter-shadow: 0 20px 38px rgba(13, 32, 60, 0.35);
    --counter-glow: rgba(64, 152, 255, 0.22);
    color: #f1f5ff;
    background: var(--counter-surface);
    border-radius: 18px;
    padding: 1.75rem 1.5rem;
    border: 1px solid var(--counter-border);
    position: relative;
    overflow: hidden;
}

.classic-hero-counter::after {
    content: "";
    position: absolute;
    inset: -40% -30% auto auto;
    height: 220px;
    width: 220px;
    background: radial-gradient(circle, var(--counter-glow), transparent 65%);
    opacity: 0.8;
}

.classic-hero-counter__label {
    position: relative;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-size: 0.78rem;
    font-weight: 600;
    margin-bottom: 1.4rem;
    color: rgba(226, 234, 255, 0.85);
}

.classic-hero-counter__grid {
    position: relative;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
}

.classic-hero-counter__item {
    background: rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    padding: 0.95rem 0.75rem;
    text-align: center;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.12);
    backdrop-filter: blur(4px);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.35rem;
}

.classic-hero-counter__value {
    font-weight: 700;
    font-size: clamp(1.85rem, 4vw, 2.75rem);
    letter-spacing: 0.08em;
    color: #ffffff;
}

.classic-hero-counter__hint {
    text-transform: uppercase;
    font-size: 0.7rem;
    font-weight: 500;
    letter-spacing: 0.3em;
    color: rgba(226, 234, 255, 0.7);
}

.classic-hero-counter__fallback {
    position: relative;
    font-size: 1rem;
    font-weight: 600;
    color: rgba(236, 241, 255, 0.95);
}

@media (max-width: 768px) {
    .classic-hero-counter {
        border-radius: 16px;
    }

    .classic-hero-counter__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 420px) {
    .classic-hero-counter {
        padding: 1.35rem 1rem;
    }

    .classic-hero-counter__grid {
        grid-template-columns: 1fr;
    }
}

.static-content .table table {
    border: 1px double #b3b3b3;
    border-collapse: collapse;
    border-spacing: 0;
    height: 100%;
    width: 100%;
}
.static-content .table table td, .static-content .table table th {
    border: 1px solid #bfbfbf;
    min-width: 2em;
    padding: .4em;
}
.static-content .table table th {
    background: rgba(0, 0, 0, .05);
    font-weight: 700;
}
.sticky-sidebar {
    top: 5.3125rem;
}


.wcag-info{
    background: #21a0d7 !important;
}

.attendee-table-sticky-footer {
    position: sticky;
    bottom: 0;
    z-index: 15;
    background: #ffffff;
}

.table-sticky-footer {
    position: sticky;
    bottom: 0;
    z-index: 15;
    background: #ffffff;
}

.table-bulk-action-sticky {
    position: sticky;
    top: 5.3125rem;
    z-index: 16;
    background: #ffffff;
    border-bottom: 1px solid #edf2f9;
    box-shadow: 0 0.5rem 1rem rgba(15, 23, 42, 0.06);
}

.table-bulk-action-toolbar {
    row-gap: 0.75rem;
}

.modal .table-bulk-action-sticky {
    top: 0;
}

@media (max-width: 991.98px) {
    .table-bulk-action-sticky {
        top: 0;
    }
}

.classic-ticket-card {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    border: 1px solid #dde8f0;
    border-radius: 10px;
    background: #ffffff;
    margin-bottom: 1rem;
    transition: border-color .2s ease, box-shadow .2s ease, transform .15s ease;
    cursor: pointer;
}

.classic-ticket-card:hover {
    border-color: #c8d8e4;
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.06);
}

.classic-ticket-card:focus-visible {
    outline: 0;
    border-color: #0d6efd;
    box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.2);
}



.classic-ticket-card__left {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 1rem;
    flex: 1;
}

.classic-ticket-card__icon {
    width: 32px;
    height: 32px;
    border-radius: 11px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #fff2eb;
    color: #e65c2b;
    font-size: 1.3rem;
    flex: 0 0 auto;
}

.classic-ticket-card__icon--selected {
    background: #e65c2b;
    color: #fff;
}

.classic-ticket-card__content {
    min-width: 0;
}

.classic-ticket-card__title-wrap {
    display: flex;
    align-items: center;
    gap: .55rem;
    flex-wrap: wrap;
}

.classic-ticket-card__title {
    line-height: 1.25;
    font-weight: 700;
    color: #0b2942;
}

.classic-ticket-card__badge {
    background: #fff0e8;
    color: #8f2d04;
    border-radius: 999px;
    padding: .18rem .65rem;  ;
    line-height: 1.2;
    font-weight: 700;
}

.classic-ticket-card__subtitle {
    line-height: 1.35;
    margin-top: .2rem;
    white-space: normal;
    word-break: break-word;
}

.classic-ticket-card__right {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex: 0 0 auto;
}

.classic-ticket-card__amount {
    font-size: 1rem;
    line-height: 1;
    font-weight: 600;
    color: #041f3a;
    min-width: 120px;
    text-align: right;
}

.classic-ticket-card__cta {
    border: 1px solid #d7e3ed;
    background: #fff;
    color: #001f3a;
    border-radius: 14px;
    min-width: 110px;
    padding: .72rem 1rem;
    font-size: 1.7rem;
    line-height: 1;
    font-weight: 600;
}

.classic-ticket-card__cta--selected {
    background: #e65c2b;
    color: #fff;
    border-color: #e65c2b;
}

.registration-wizard {
    background: transparent !important;
}

.registration-wizard > .card-header.wizard-stepper {
    border: 1px solid #ece5db;
    border-radius: 1.7rem;
    background: linear-gradient(180deg, #ffffff 0%, #fffdfa 100%);
    box-shadow: 0 18px 40px rgba(24, 40, 59, 0.08);
    padding: 0.8rem 0.8rem !important;
    margin-top: 0 !important;
    margin-bottom: 1.15rem;
}

.registration-wizard > .card-body {
    padding: 0 !important;
    background: transparent;
}

.registration-entry-shell {
    margin: 0;
}

.registration-entry-stack {
    display: flex;
    flex-direction: column;
    gap: 1.35rem;
}

.registration-entry-login-card {
    border: 1px solid #ede3d7 !important;
    border-radius: 1.25rem !important;
    background: #ffffff !important;
    box-shadow: none !important;
}

.registration-entry-card {
    border: 1px solid #ede3d7 !important;
    border-radius: 1rem !important;
    background: #ffffff !important;
    box-shadow: none !important;
    overflow: hidden;
}

.registration-entry-card__body {
    padding: 1.45rem 1.5rem 1.55rem !important;
}

.registration-entry-card__intro {
    margin-bottom: 1.2rem;
}

.registration-entry-card__title {
    margin-bottom: 0.45rem;
    color: #0f3357;
    font-size: 1rem;
    font-weight: 600;
}

.registration-entry-card__helper {
    color: #5d7288;
    font-size: 1rem;
    line-height: 1.65;
}

.registration-entry-card--fees .classic-ticket-card {
    border-radius: 0.75rem;
    border-color: #e6d9c9;
    padding: 1rem 1.1rem !important;
    margin-bottom: 1rem;
}

.registration-entry-card--fees .classic-ticket-card--selected {
    background: linear-gradient(180deg, #fff4ec 0%, #fff9f6 100%);
    box-shadow: 0 0 0 1px rgba(230, 92, 43, 0.18);
}

.registration-entry-card--fees .classic-ticket-card__amount {
    font-size: 1.2rem;
    font-weight: 700;
}

.registration-entry-account-grid {
    row-gap: 0.15rem;
}

.registration-entry-card--account .floatinglabel-control,
.registration-entry-card--account .formStyle {
    min-height: 3.45rem;
    border-radius: 0.5rem;
    border-color: #e7d9c6;
    background: #ffffff;
}

.registration-entry-card--account .floatinglabel .form-label {
    color: #0f3357;
}


.registration-field-actions,
.registration-password-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    margin-top: 0.45rem;
}

.registration-password-actions {
    margin-bottom: 0.25rem;
}

.registration-password-actions .btn-link[disabled] {
    opacity: 0.55;
    pointer-events: none;
}

.registration-entry-card--cfp .card-header {
    background: transparent !important;
}

.registration-entry-footer {
    display: flex;
    justify-content: flex-end;
    padding-top: 0.15rem;
}

.registration-entry-footer__button {
    min-width: 16rem;
    border-radius: 1rem !important;
    padding: 1rem 1.5rem !important;
}

.registration-payment-shell {
    margin: 0;
}

.registration-payment-review-card,
.registration-payment-method-card {
    border: 1px solid #ede3d7 !important;
    border-radius: 1rem !important;
    background: #fff;
    box-shadow: 0 20px 42px rgba(24, 40, 59, 0.08);
    overflow: hidden;
}

.registration-payment-review-card__header,
.registration-payment-method-card__header {
    padding: 1.45rem 1.6rem !important;
    background: transparent !important;
    border-bottom: 0;
}

.registration-payment-review-card__title,
.registration-payment-method-card__title {
    color: #0f3357;
    font-size: 1rem;
    font-weight: 600;
}

.registration-payment-review-card__action {
    border-radius: 0.9rem !important;
    padding: 0.55rem 1rem !important;
}

.registration-payment-review-card__body {
    padding-bottom: 0 !important;
}

.registration-payment-review-card .table {
    margin-bottom: 0;
}

.registration-payment-review-card .table tbody tr th,
.registration-payment-review-card .table tbody tr td {
    padding-top: 0.95rem;
    padding-bottom: 0.95rem;
}

.registration-payment-review-card__footer {
    padding: 1.35rem 1.5rem 1.55rem !important;
    background: transparent !important;
    border-top: 0 !important;
}

.registration-payment-review-card__payable {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    border-radius: 1.15rem;
    background: #dbe8f8;
    color: #1f5ea8;
    padding: 1rem 1.2rem;
}

.registration-payment-review-card__payable-label {
    font-weight: 700;
}

.registration-payment-review-card__payable-value {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1;
}

.registration-payment-method-card__body {
    padding: 0 1.4rem 1.5rem !important;
}

.registration-payment-method-card__error {
    white-space: normal;
}

.registration-payment-method-card__option {
    border-radius: 1.3rem !important;
    border-color: #eadbc9 !important;
    background: linear-gradient(180deg, #ffffff 0%, #fffdfa 100%) !important;
    padding: 1rem 1.1rem !important;
    box-shadow: none;
}



.registration-payment-method-card__option-header {
    min-height: 2.4rem;
}

.registration-payment-method-card__footer {
    padding-top: 0.5rem;
}

.registration-payment-method-card__total {
    color: #0f3357;
    margin-bottom: 1rem;
}

@media (max-width: 991.98px) {
    .registration-wizard > .card-header.wizard-stepper {
        border-radius: 1.35rem;
        padding: 0.8rem 0.8rem !important;
    }

    .registration-entry-card,
    .registration-payment-review-card,
    .registration-payment-method-card {
        border-radius: 1.45rem !important;
    }

    .registration-entry-card__body,
    .registration-payment-review-card__header,
    .registration-payment-method-card__header,
    .registration-payment-method-card__body {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }

    .registration-payment-review-card__footer {
        padding: 1rem !important;
    }
}

@media (max-width: 575.98px) {
    .registration-entry-card__title,
    .registration-payment-review-card__title,
    .registration-payment-method-card__title {
        font-size: 1.55rem;
    }

    .registration-entry-footer__button {
        width: 100%;
        min-width: 0;
    }

    .registration-payment-review-card__payable {
        flex-direction: column;
        align-items: flex-start;
    }

    .registration-payment-review-card__payable-value {
        font-size: 1.2rem;
    }
}

.addon-ticket-card {
    margin-bottom: 0rem;
    align-items: stretch;
}

.addon-ticket-card__body {
    flex-wrap: nowrap;
}

.addon-ticket-card .classic-ticket-card__left {
    gap: 0.75rem;
    align-items: flex-start;
}

.addon-ticket-card .classic-ticket-card__icon {
    width: 32px;
    height: 32px;
    border-radius: 11px;
    font-size: .75rem;
}

.addon-ticket-card .classic-ticket-card__title-wrap {
    gap: .4rem;
}

.addon-ticket-card .classic-ticket-card__title {
    font-size: 1rem;
    line-height: 1.2;
}

.addon-ticket-card .classic-ticket-card__badge {
    padding: .14rem .5rem;
    font-size: .72rem;
}

.addon-ticket-card__right {
    align-self: center;
}

.addon-ticket-card__controls {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    flex-wrap: nowrap;
}

.addon-ticket-card__amount {
    color: #e65c2b;
    min-width: auto;
    font-size: 1.1rem;
    white-space: nowrap;
}

.addon-ticket-card__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1rem;
    margin-top: 0.35rem;
    color: #35516d;
    font-size: 0.8rem;
}

.addon-ticket-card__existing-note {
    margin-top: 0.4rem;
    color: #5d7288;
    font-size: 0.82rem;
}

.addon-ticket-card__inline-button {
    font-size: 0.88rem;
    min-width: 82px;
    padding: .48rem .72rem;
    border-radius: 10px;
}

.addon-quantity-stepper {
    display: inline-flex;
    align-items: center;
    border: 1px solid #d7e3ed;
    border-radius: 10px;
    overflow: hidden;
    background: #fff;
    min-width: 108px;
}

.addon-quantity-stepper__btn {
    width: 32px;
    height: 36px;
    border: 0;
    background: #fff7f2;
    color: #8f2d04;
    font-size: 1rem;
    font-weight: 700;
}

.addon-quantity-stepper__btn:disabled {
    opacity: 0.45;
    cursor: not-allowed;
}

.addon-quantity-stepper__value {
    min-width: 42px;
    text-align: center;
    font-weight: 700;
    color: #0b2942;
    font-size: 0.92rem;
}

.addon-ticket-card__remove {
    font-size: 0.82rem;
    white-space: nowrap;
}

.addon-ticket-card__details {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid #dde8f0;
    width: 100%;
}

.group-registration-layout {
    margin: 0;
}

.group-registration-shell {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 1.75rem;
    padding-bottom: 1rem;
}

.group-registration-success {
    border: 1px solid #efe7dc;
    border-radius: 1.8rem;
    background:#ffff;
    padding: 1rem 1rem 1rem;
    text-align: center;
}

.group-registration-success__animation {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 106px;
    height: 106px;
    border-radius: 999px;
    background: rgba(225, 243, 232, 0.9);
    margin-bottom: 0.5rem;
}

.group-registration-success__title {
    font-size: 1.2rem;
    font-weight: 600;
    color: #0f3357;
    margin-bottom: 0.55rem;
}

.group-registration-success__text {
    max-width: 44rem;
    margin: 0 auto;
    color: #5d7288;
    font-size: 1rem;
    line-height: 1.65;
}

.group-registration-board {
    width: 100%;
}

.group-registration-board__intro {
    padding: 0.25rem 0 1rem !important;
    display: flex;
    flex-direction: column;
    gap: 0.9rem;
}

.group-registration-board__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.group-registration-board__heading {
    margin-bottom: 0;
    color: #0f3357;
    font-size: 1.2rem;

}

.group-registration-board__helper {
    max-width: 58rem;
    color: #5d7288 !important;
    font-size: 1rem !important;
    line-height: 1.65;
}

.group-registration-card__list {
    padding-bottom: 1rem;
}

.group-registration-add-attendee-btn {
    width: auto;
    min-width: 14.75rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px dashed #d7c4a7;
    border-radius: 1.35rem;
    background: linear-gradient(180deg, #fffdf8 0%, #fff9f0 100%);
    color: #123b60;
    font-weight: 700;
    padding: 0.5rem 1rem;
    transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
    white-space: nowrap;
}

.group-registration-add-attendee-btn:hover,
.group-registration-add-attendee-btn:focus {
    border-color: #caa57d;
    box-shadow: 0 14px 28px rgba(18, 59, 96, 0.08);
    transform: translateY(-1px);
}

.group-registration-card__invite {
    margin-top: 1rem;
    border: 1px solid #e7ded1;
    border-radius: 1.65rem;
    background: linear-gradient(180deg, #ffffff 0%, #fffcf7 100%);
    box-shadow: 0 16px 30px rgba(18, 36, 59, 0.06);
    padding: 1.5rem !important;
}

.group-registration-invite-modal .modal-dialog {
    max-width: 56rem;
}

.group-registration-invite-modal .modal-content {
    border: 1px solid #e7ded1;
    border-radius: 1.65rem;
    overflow: hidden;
    box-shadow: 0 24px 48px rgba(18, 36, 59, 0.14);
}

.group-registration-invite-modal .modal-header {
    border-bottom: 1px solid #ece3d8;
    padding: 1rem 1.5rem;
}

.group-registration-invite-modal .modal-title {
    color: #0f3357;
    font-size: 1.15rem;
    font-weight: 700;
}

.group-registration-invite-modal .modal-body.group-registration-card__invite {
    margin-top: 0;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    background: linear-gradient(180deg, #ffffff 0%, #fffcf7 100%);
    padding: 1.5rem !important;
}

.payment-confirmation-page {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.payment-confirmation-hero,
.payment-confirmation-attendees {
    border: 1px solid #eadfce !important;
    border-radius: 1.8rem !important;
    background: #ffffff;
    box-shadow: 0 18px 42px rgba(24, 43, 69, 0.08);
}

.payment-confirmation-hero__body {
    padding: 2rem 2rem 1.5rem !important;
    text-align: center;
}

.payment-confirmation-hero__animation {
    width: 8rem;
    height: 8rem;
    margin: 0 auto 1rem;
    border-radius: 999px;
    background: #e5f3e6;
    display: flex;
    align-items: center;
    justify-content: center;
}

.payment-confirmation-hero__animation--pending {
    background: #fff2df;
}

.payment-confirmation-hero__status-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: #e6f4ea;
    color: #1f8a44;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 0.45rem 0.85rem;
    margin-bottom: 1rem;
}

.payment-confirmation-hero__status-pill--pending {
    background: #fff1de;
    color: #c46a1d;
}

.payment-confirmation-hero__title {
    color: #0f3357;
    font-size: 1.2rem;
    font-weight: 700;
    margin-bottom: 0.75rem;
}

.payment-confirmation-hero__subtitle {
    max-width: 50rem;
    margin: 0 auto;
    color: #5f7187;
    font-size: 1.05rem;
    line-height: 1.7;
}

.payment-confirmation-hero__divider {
    position: relative;
    margin: 1.8rem 0 1.35rem;
    border-top: 2px dashed #e4d8c6;
}

.payment-confirmation-hero__divider::before,
.payment-confirmation-hero__divider::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 1.7rem;
    height: 1.7rem;
    border-radius: 999px;
    background: #f4efe7;
    transform: translateY(-50%);
    box-shadow: inset 0 0 0 1px rgba(228, 216, 198, 0.9);
}

.payment-confirmation-hero__divider::before {
    left: -2.9rem;
}

.payment-confirmation-hero__divider::after {
    right: -2.9rem;
}

.payment-confirmation-hero__meta {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
    text-align: left;
}

.payment-confirmation-hero__meta-item {
    min-width: 0;
}

.payment-confirmation-hero__meta-item--amount {
    text-align: right;
}

.payment-confirmation-hero__meta-label {
    color: #5f7187;
    font-size: 0.88rem;
    margin-bottom: 0.3rem;
}

.payment-confirmation-hero__meta-value {
    color: #0f3357;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.3;
    word-break: break-word;
}

.payment-confirmation-attendees__body {
    padding: 1.9rem 2rem !important;
}

.payment-confirmation-attendees__header {
    margin-bottom: 1rem;
}

.payment-confirmation-attendees__title {
    color: #0f3357;
    font-size: 1rem;
    font-weight: 700;
    margin-bottom: 0.2rem;
}

.payment-confirmation-attendees__subtitle {
    color: #6a7c91;
    font-size: 0.95rem;
}

.payment-confirmation-attendees__list {
    display: flex;
    flex-direction: column;
    gap: 0.95rem;
}

.payment-confirmation-attendee-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    border: 1px solid #eadfce;
    border-radius: 1.15rem;
    background: #fffdfa;
    padding: 1rem 1.1rem;
}

.payment-confirmation-attendee-row__identity {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 0.85rem;
}

.payment-confirmation-attendee-row__avatar {
    width: 42px;
    height: 42px;
    border-radius: 999px;
    background: linear-gradient(135deg, #173c63 0%, #0b2b4a 100%);
    color: #ffffff;
    font-size: 1rem;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}

.payment-confirmation-attendee-row__content {
    min-width: 0;
}

.payment-confirmation-attendee-row__name-line {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
    margin-bottom: 0.2rem;
}

.payment-confirmation-attendee-row__name {
    color: #0f3357;
    font-size: 1rem;
    font-weight: 700;
}

.payment-confirmation-attendee-row__badge {
    border-radius: 999px;
    background: #e8f5df;
    color: #31a24c;
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 0.2rem 0.55rem;
}

.payment-confirmation-attendee-row__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1rem;
    color: #65778d;
    font-size: 0.94rem;
}

.payment-confirmation-attendee-row__amount {
    color: #0f3357;
    font-size: 1.6rem;
    font-weight: 700;
    white-space: nowrap;
}

.payment-confirmation-attendees__empty {
    border: 1px dashed #e4d8c6;
    border-radius: 1rem;
    padding: 1rem 1.1rem;
    color: #65778d;
    background: #fffdfa;
}

.payment-confirmation-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.9rem;
    align-items: center;
}

.payment-confirmation-actions__secondary,
.payment-confirmation-actions__primary {
    min-height: 48px;
    border-radius: 1rem;
    padding: 0.85rem 1.5rem;
    font-weight: 700;
}

.payment-confirmation-actions__secondary {
    border-color: #eadfce;
    color: #173c63;
    background: #fffdfa;
}

.payment-confirmation-actions__secondary:hover,
.payment-confirmation-actions__secondary:focus {
    border-color: #d8c6ab;
    color: #0f3357;
    background: #fff8ef;
}

.payment-confirmation-actions__primary {
    min-width: 15rem;
}

.payment-confirmation-note {
    color: #5f7187;
    font-size: 0.95rem;
    line-height: 1.6;
}

.group-registration-summary-bar {
    position: sticky;
    bottom: 1rem;
    z-index: 4;
    display: flex;
    align-items: center;
    gap: 1.25rem;
    border-radius: 1rem;
    background: linear-gradient(135deg, #0b2b4a 0%, #153c63 100%);
    color: #ffffff;
    padding: 1.2rem 1.35rem;
    box-shadow: 0 20px 44px rgba(11, 43, 74, 0.24);
}

.group-registration-summary-bar__meta {
    flex: 1 1 auto;
    min-width: 0;
}

.group-registration-summary-bar__label {
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.7);
    margin-bottom: 0.2rem;
}

.group-registration-summary-bar__caption {
    font-size: 1rem;
    color: rgba(255, 255, 255, 0.82);
}

.group-registration-summary-bar__amount {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
}

.group-registration-summary-bar__button {
    border: 0;
    border-radius: 1rem;
    background: linear-gradient(135deg, #d96834 0%, #c85f2e 100%);
    color: #ffffff;
    font-weight: 600;
    padding: 0.5rem 0.5rem;
    min-width: 12.5rem;
    white-space: nowrap;
    box-shadow: 0 12px 22px rgba(217, 104, 52, 0.24);
    transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.group-registration-summary-bar__button:hover,
.group-registration-summary-bar__button:focus {
    transform: translateY(-1px);
    box-shadow: 0 16px 28px rgba(217, 104, 52, 0.3);
}

.group-attendee-list {
    padding-bottom: 0.5rem;
}

.group-attendee-card {
    border: 1px solid #ece3d8 !important;
    border-radius: 1rem !important;
    background: #ffffff;
    overflow: hidden;
}

.group-attendee-card__children {
    min-width: 0;
    padding-bottom: 0.7rem;
}

.group-attendee-card__section-divider {
    height: 1px;
    background: #ece3d8;
    margin: 0 0 0.85rem;
}

.group-attendee-card__identity {
    display: flex;
    align-items: flex-start;
    gap: 0.95rem;
}

.group-attendee-card__avatar-wrap {
    flex: 0 0 auto;
}

.group-attendee-card__avatar-image,
.group-attendee-card__avatar-fallback {
    width: 56px;
    height: 56px;
    border-radius: 999px;
}

.group-attendee-card__avatar-image {
    object-fit: cover;
    display: block;
}

.group-attendee-card__avatar-fallback {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #173c63 0%, #0b2b4a 100%);
    color: #ffffff;
    font-size: 1.18rem;
    font-weight: 800;
    letter-spacing: 0.04em;
}

.group-attendee-card__details {
    min-width: 0;
    flex: 1 1 auto;
}

.group-attendee-card__name-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.45rem;
    margin-bottom: 0.2rem;
}

.group-attendee-card__name {
    color: #0f3357;
    font-size: 1rem;
    line-height: 1.2;
}

.group-attendee-card__email {

    font-size: 0.8rem;
    line-height: 1.45;
    word-break: break-word;
}

.group-attendee-card__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.85rem;
    margin-top: 0.7rem;
}

.group-attendee-card__action-link {
    border: 0;
    background: transparent;
    padding: 0;
    font-size: 0.95rem;
    font-weight: 700;
    color: #173c63;
}

.group-attendee-card__action-link:hover,
.group-attendee-card__action-link:focus {
    color: #0b2b4a;
}

.group-attendee-card__action-link--danger,
.group-attendee-card__action-link--danger:hover,
.group-attendee-card__action-link--danger:focus {
    color: #c95029;
}

.group-attendee-card__price-block {
    text-align: right;
    padding-left: 1rem;
}

.group-attendee-card__price {
    color: #0f3357;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 0.35rem;
}

.group-attendee-card__type {
    display: inline-block;
    font-size: 0.95rem;
    color: #6e7e92;
}

.group-attendee-card__addon-link {
    color: #1b5fc1;
    font-weight: 600;
    text-decoration: none;
}

.group-attendee-card__addon-link:hover,
.group-attendee-card__addon-link:focus {
    color: #0d4da8;
    text-decoration: none;
}

.group-attendee-card__addon-scroll {
    overflow-y: auto;
    overflow-x: hidden;
    overscroll-behavior: auto;
}

.group-addon-panel {
    border-radius: 1.25rem;
}


.group-addon-panel__trigger {
    margin-bottom: 0 !important;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none !important;
    padding: 1rem 1.1rem;
}

.group-addon-panel__body {
    padding: 0.5rem;
    min-height: 0;

}



.group-addon-summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    border: 0;
    border-radius: 0;
    background: transparent;
    padding: 13px;
    transition: color .2s ease, transform .15s ease;
    cursor: pointer;
}

.group-addon-summary:hover {
    box-shadow: none;
}

.group-addon-summary:focus-visible {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.14);
}

.group-addon-summary__left {
    display: flex;
    align-items: center;
    gap: 0.85rem;
    min-width: 0;
    flex: 1;
}

.group-addon-summary__icon {
    width: 32px;
    height: 32px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #fff2eb;
    color: #e65c2b;
    font-size: 1rem;
    flex: 0 0 auto;
}

.group-addon-summary__content {
    min-width: 0;
}

.group-addon-summary__title {
    font-size: 0.98rem;

    color: #0f3357;
    line-height: 1.2;
}

.group-addon-summary__subtitle,
.group-addon-summary__count {
    font-size: 0.84rem;
    line-height: 1.35;
    color: #6a7d92;
}

.group-addon-summary__right {
    text-align: right;
    flex: 0 0 auto;
}

.group-addon-summary__amount {
    font-size: 1.2rem;
    font-weight: 700;
    color: #0f3357;
    line-height: 1.1;
}

.registration-addon-selector .card-body {
    min-width: 0;
}

@media (max-width: 768px) {
    .payment-confirmation-hero__body,
    .payment-confirmation-attendees__body {
        padding: 1.35rem 1.1rem !important;
    }

    .payment-confirmation-hero__title,
    .payment-confirmation-attendees__title {
        font-size: 1.7rem;
    }

    .payment-confirmation-hero__meta {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 1rem 0.85rem;
    }

    .payment-confirmation-hero__meta-item--amount {
        text-align: left;
    }

    .payment-confirmation-hero__divider::before {
        left: -2rem;
    }

    .payment-confirmation-hero__divider::after {
        right: -2rem;
    }

    .payment-confirmation-attendee-row {
        flex-direction: column;
        align-items: flex-start;
    }

    .payment-confirmation-attendee-row__amount {
        font-size: 1.3rem;
    }

    .payment-confirmation-actions {
        flex-direction: column;
        align-items: stretch;
    }

    .payment-confirmation-actions__primary,
    .payment-confirmation-actions__secondary {
        width: 100%;
    }

    .classic-ticket-card {
        align-items: flex-start;
        flex-direction: column;
    }

    .classic-ticket-card__right {
        width: 100%;
        justify-content: space-between;
    }

    .classic-ticket-card__amount {
        min-width: 0;
        text-align: left;
        font-size: 2.2rem;
    }

    .classic-ticket-card__title {
        font-size: 1.4rem;
    }

    .classic-ticket-card__subtitle {
        font-size: 1.05rem;
    }

    .classic-ticket-card__cta {
        font-size: 1.1rem;
    }

    .addon-ticket-card__body {
        flex-wrap: wrap;
    }

    .addon-ticket-card__controls {
        width: 100%;
        justify-content: space-between;
    }

    .addon-quantity-stepper {
        min-width: 118px;
    }

    .addon-quantity-stepper__btn {
        width: 38px;
        height: 44px;
    }

    .group-addon-summary {
        align-items: flex-start;
        flex-direction: column;
    }

    .group-addon-summary__right {
        width: 100%;
        text-align: left;
    }

    .group-attendee-card__addon-scroll {
        max-height: clamp(12rem, calc(100vh - 28rem), 16rem);
    }

    .group-addon-panel__body {
        padding: 0 0.85rem 0.85rem;
    }

    .group-registration-success {
        padding: 1.35rem 1rem 1.55rem;
        border-radius: 1.45rem;
    }

    .group-registration-success__title,
    .group-registration-board__heading {
        font-size: 1.7rem;
    }

    .group-registration-board__header {
        flex-direction: column;
        align-items: stretch;
    }

    .group-registration-add-attendee-btn {
        width: 100%;
        min-width: 0;
    }

    .group-registration-summary-bar {
        flex-direction: column;
        align-items: stretch;
        border-radius: 1.2rem;
        padding: 1.15rem 1rem;
    }

    .group-registration-summary-bar__amount {
        text-align: left;
    }

    .group-registration-summary-bar__button {
        width: 100%;
        min-width: 0;
    }

    .group-attendee-card__identity {
        flex-direction: row;
    }

    .group-attendee-card__price-block {
        text-align: left;
        padding-left: 0;
        padding-top: 1rem;
    }

    .group-attendee-card__actions {
        gap: 0.55rem 0.9rem;
    }

    .group-attendee-list {
        padding-bottom: 2rem;
    }
}

@media (max-width: 576px) {
    .payment-confirmation-hero__meta {
        grid-template-columns: minmax(0, 1fr);
    }

    .payment-confirmation-hero__divider::before,
    .payment-confirmation-hero__divider::after {
        display: none;
    }

    .group-registration-board__helper {
        font-size: 0.95rem !important;
    }

    .group-registration-card__invite {
        padding: 1rem !important;
        border-radius: 1.2rem;
    }

    .group-attendee-card {
        border-radius: 1.4rem !important;
    }

    .group-attendee-card__name {
        font-size: 1.15rem;
    }

    .group-attendee-card__price {
        font-size: 2.1rem;
    }
}

.invoice-detail-board{
    border: 1px solid #e6edf6;
    background: linear-gradient(180deg, #ffffff 0%, #fbfcff 100%);
    box-shadow: 0 18px 42px rgba(35, 46, 60, 0.08);
    overflow: hidden;
}

.invoice-detail-board__header{
    display: grid;
    grid-template-columns: minmax(180px, 2.2fr) repeat(4, minmax(50px, 0.72fr)) 44px;
    gap: 1rem;
    align-items: center;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid #edf2f9;
    background: rgba(246, 249, 252, 0.9);
}

.invoice-detail-board--partial .invoice-detail-board__header{
    grid-template-columns: 40px minmax(180px, 2.2fr) repeat(4, minmax(50px, 0.72fr)) 44px;
}

.invoice-detail-board__header-cell{
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #8ea0bb;
}

.invoice-detail-board__header-cell--actions{
    text-align: right;
}

.invoice-detail-board__list{
    background: transparent;
}

.invoice-detail-row{
    display: grid;
    grid-template-columns: 1fr;
    border-bottom: 1px solid rgb(219 226 237);
    background: rgba(255, 255, 255, 0.92);
    transition: background-color 0.2s ease, box-shadow 0.2s ease;
}

.invoice-detail-row--partial{
    grid-template-columns: 40px 1fr;
}

.invoice-detail-row:last-child{
    border-bottom: 0;
}

.invoice-detail-row:hover{
    background: #ffffff;
}

.invoice-detail-row--selected{
    background: #f7fbff;
    box-shadow: inset 3px 0 0 #3b82f6;
}

.invoice-detail-row__selector{
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.5rem 0 1.5rem 1rem;
}

.invoice-detail-row__main{
    display: grid;
    grid-template-columns: minmax(180px, 2.2fr) repeat(4, minmax(50px, 0.72fr)) 44px;
    gap: 1rem;
    align-items: center;
    padding: 1rem 1rem;
}

.invoice-detail-row__attendee{
    display: flex;
    align-items: center;
    min-width: 0;
}

.invoice-detail-row__avatar{
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.82rem;
    font-weight: 700;
    background: linear-gradient(135deg, #f1f5f9 0%, #dce6f2 100%);
    color: #27445f;
    border: 1px solid #d5e0eb;
    overflow: hidden;
    flex-shrink: 0;
}

.invoice-detail-row__avatar--photo{
    object-fit: cover;
    background: #ffffff;
}

.invoice-detail-row__identity{
    min-width: 0;
}

.invoice-detail-row__title-wrap{
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.invoice-detail-row__title{
    margin: 0;
    font-size: 0.85rem;
    font-weight: 700;
    line-height: 1.15;
    color: #233047;
}

.invoice-detail-row__subtitle{
    margin: 0.2rem 0 0;
    font-size: 0.75rem;
    color: #8ea0bb;
}

.invoice-detail-row__status{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.2rem 0.6rem;
    border-radius: 999px;
    font-size: 0.65rem;
}

.invoice-detail-row__status--active{
    background: #e9fbf1;
    color: #059669;
}

.invoice-detail-row__status--cancelled{
    background: #ffe7ec;
    color: #ef4444;
}

.invoice-detail-row__metrics{
    display: contents;
}

.invoice-detail-row__metric{
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    min-width: 0;
}

.invoice-detail-row__metric-label{
    display: none;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: #8ea0bb;
}

.invoice-detail-row__metric-value{
    font-size: 1rem;
    font-weight: 700;
    color: #3e4b63;
}

.invoice-detail-row__metric-subtext{
    font-size: 0.65rem;
    color: #8ea0bb;
}

.invoice-detail-row__paid-wrap{
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
}

.invoice-detail-row__info-toggle{
    padding: 0 !important;
    color: #94a3ff !important;
    line-height: 1;
}

.invoice-detail-row__info-toggle::after{
    display: none !important;
}

.invoice-detail-row__info-menu{
    border: 1px solid #edf2f9;
    border-radius: 1rem;
    box-shadow: 0 16px 36px rgba(35, 46, 60, 0.14);
    min-width: 14rem;
}

.invoice-detail-row__info-item{
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.6rem 0.8rem;
    border-radius: 0.85rem;
    margin-bottom: 0.5rem;
    font-size: 0.92rem;
}

.invoice-detail-row__info-item:last-child{
    margin-bottom: 0;
}

.invoice-detail-row__info-item--payment{
    background: #eef6ff;
    color: #285ea8;
}

.invoice-detail-row__info-item--coupon{
    background: #effaf5;
    color: #0f766e;
}

.invoice-detail-row__info-item--discount{
    background: #fff4e5;
    color: #b45309;
}

.invoice-detail-row__balance-pill,
.invoice-detail-row__settled-pill,
.invoice-detail-row__negative-pill{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.3rem;
    padding: 0.45rem 0.45rem;
    border-radius: 0.45rem;
    font-size: 0.85rem;
    white-space: nowrap;
}

.invoice-detail-row__balance-pill{
    background: #fff1f2;
    color: #e63757;
}

.invoice-detail-row__settled-pill{
    background: #e9fbf1;
    color: #059669;
}

.invoice-detail-row__negative-pill{
    background: #fff4e5;
    color: #b45309;
}

.invoice-detail-row__balance-editor{
    display: inline-flex;
    align-items: center;
    gap: 0.2rem;
    min-height: 2.65rem;
    padding: 0 0.55rem;
    border: 1px solid #c9d8ea;
    border-radius: 0.85rem;
    background: #ffffff;
    max-width: 8rem;
}

.invoice-detail-row__balance-prefix{
    font-size: 1rem;
    font-weight: 700;
    color: #3e4b63;
}

.invoice-detail-row__balance-input{
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    background: transparent !important;
    font-size: .75rem;
    color: #233047;
}

.invoice-detail-row__actions{
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
    width: 3.5rem;
}

.invoice-detail-row__actions .dropdown-toggle{
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 999px;
    color: #8ea0bb !important;
}

.invoice-detail-row__actions .dropdown-toggle:hover{
    background: #f4f7fb;
}

.invoice-detail-row__action-btn{
    width: 2.25rem;
    height: 2.25rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    padding: 0;
}

.invoice-detail-row__action-btn--danger{
    color: #e63757;
}

.invoice-detail-board__empty{
    padding: 2rem 1.25rem;
    text-align: center;
    color: #8ea0bb;
    font-size: 0.95rem;
}

.invoice-detail-board__footer{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.25rem;
    background: linear-gradient(90deg, rgba(237, 242, 249, 0.92) 0%, rgba(248, 238, 248, 0.92) 100%);
    border-top: 1px solid #edf2f9;
}

.invoice-detail-board__summary{
    display: flex;
    flex-wrap: wrap;
    gap: 1.5rem;
}

.invoice-detail-board__summary-item{
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    min-width: 6.5rem;
}

.invoice-detail-board__summary-label{
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    color: #5e6e82;
}

.invoice-detail-board__summary-value{
    font-size: 1rem;
    font-weight: 800;
    line-height: 1;
    color: #344050;
}

.invoice-detail-board__summary-value--paid{
    color: #059669;
}

.invoice-detail-board__summary-value--refund{
    color: #0284c7;
}

.invoice-detail-board__summary-value--outstanding{
    color: #e63757;
}

.invoice-detail-board__footer-actions{
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    min-width: 12rem;
}

.invoice-detail-board__footer-note{
    max-width: 22rem;
    text-align: right;
    font-size: 0.86rem;
    color: #6b7280;
}

.invoice-detail-board__pay-btn{
    padding: 0.55rem 1rem !important;
    border: 0 !important;
    border-radius: 0.95rem !important;
    background: linear-gradient(135deg, #ff4f87 0%, #d81b8c 100%) !important;
    color: #ffffff !important;
    box-shadow: 0 14px 28px rgba(216, 27, 140, 0.28);
    font-size: 1rem !important;
    font-weight: 700 !important;
}

.invoice-detail-board__pay-btn span{
    color: inherit !important;
}

.invoice-detail-board__pay-btn--settled,
.invoice-detail-board__pay-btn--settled:disabled{
    background: linear-gradient(135deg, #dff7ea 0%, #c5f2da 100%) !important;
    color: #059669 !important;
    box-shadow: none;
    opacity: 1 !important;
}

.invoice-detail-board__pay-btn--select,
.invoice-detail-board__pay-btn--select:disabled{
    background: linear-gradient(135deg, #eef2ff 0%, #dbeafe 100%) !important;
    color: #4f46e5 !important;
    box-shadow: none;
    opacity: 1 !important;
}

.invoice-detail-board__pay-btn--refund,
.invoice-detail-board__pay-btn--refund:disabled{
    background: linear-gradient(135deg, #fff4e5 0%, #ffe3bf 100%) !important;
    color: #b45309 !important;
    box-shadow: 0 12px 24px rgba(180, 83, 9, 0.18);
    opacity: 1 !important;
}

@media (max-width: 1199.98px){
    .invoice-detail-row__main{
        grid-template-columns: minmax(240px, 1.5fr) repeat(4, minmax(86px, 0.6fr)) 40px;
    }

    .invoice-detail-row__title{
        font-size: 0.85rem;
    }

    .invoice-detail-row__subtitle,
    .invoice-detail-row__metric-subtext{
        font-size: 0.88rem;
    }

    .invoice-detail-row__metric-value{
        font-size: 1.1rem;
    }
}

@media (max-width: 991.98px){
    .invoice-detail-board__header{
        display: none;
    }

    .invoice-detail-row,
    .invoice-detail-row--partial{
        grid-template-columns: 1fr;
    }

    .invoice-detail-row__selector{
        justify-content: flex-start;
        padding: 1rem 1.25rem 0;
    }

    .invoice-detail-row__main{
        grid-template-columns: 1fr;
        gap: 1rem;
        padding-top: 1rem;
    }

    .invoice-detail-row__metrics{
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 1rem;
    }

    .invoice-detail-row__metric-label{
        display: inline-flex;
    }

    .invoice-detail-row__actions{
        justify-content: flex-start;
    }

    .invoice-detail-board__footer{
        flex-direction: column;
        align-items: stretch;
    }

    .invoice-detail-board__summary{
        width: 100%;
        justify-content: space-between;
    }

    .invoice-detail-board__footer-actions{
        align-items: stretch;
        min-width: 0;
    }

    .invoice-detail-board__footer-note{
        max-width: none;
        text-align: left;
    }

    .invoice-detail-board__pay-btn{
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 575.98px){
    .invoice-detail-row__title{
        font-size: 0.85rem;
    }

    .invoice-detail-row__metrics{
        grid-template-columns: 1fr;
    }

    .invoice-detail-board__summary{
        gap: 1rem;
    }

    .invoice-detail-board__summary-value{
        font-size: 1.6rem;
    }
}

.hotel-management-modal .modal-content {
    border: 0;
    overflow: hidden;
    display: flex;
    max-height: calc(100vh - 2rem);
}

.hotel-management-modal .modal-dialog {
    height: calc(100vh - 2rem);
}

.hotel-management-form {
    display: flex;
    flex: 1 1 auto;
    min-height: 0;
    flex-direction: column;
}

.hotel-management-modal__body {
    background: linear-gradient(180deg, #f8fbff 0%, #ffffff 100%);
    flex: 1 1 auto;
    overflow-y: auto;
    min-height: 0;
}

.hotel-management-modal .modal-header,
.hotel-management-modal .modal-footer {
    flex: 0 0 auto;
    background: #ffffff;
}

.hotel-management-modal .modal-footer {
    position: sticky;
    bottom: 0;
    z-index: 3;
    border-top: 1px solid #dbe7f3;
    box-shadow: 0 -8px 20px rgba(15, 47, 87, 0.06);
}

.hotel-management-modal__panel {
    background: #ffffff;
    border: 1px solid #dbe7f3 !important;
    border-radius: 1rem;
}

.hotel-management-modal__panel--divider {
    position: relative;
}

.hotel-management-dropzone {
    border: 1px dashed #b9cbe0;
    border-radius: 1rem;
    min-height: 0;
    background: #f8fbff;
    max-height:250px;
}

.hotel-management-image-upload {
    min-height: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.hotel-management-image-upload__preview {
    width: 100%;
    max-height: 200px;
    object-fit: cover;
    border-radius: 0.85rem;
}

.hotel-image-requirements {
    margin-top: 0.75rem;
    padding: 0.85rem 1rem;
    border: 1px solid #dbe7f3;
    border-radius: 0.85rem;
    background: #ffffff;
    margin-bottom:1rem;
}

.hotel-image-requirements__header {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.35rem 1rem;
    margin-bottom: 0.85rem;
}

.hotel-image-requirements__title {
    font-weight: 600;
    color: #0f2f57;
}

.hotel-image-requirements__subtitle {
    font-size: 0.85rem;
    color: #748194;
}

.hotel-image-requirements__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 0.75rem;
}

.hotel-image-requirements__item {
    padding: 0.8rem 0.9rem;
    border: 1px solid #dbe7f3;
    border-radius: 0.75rem;
    background: #f8fbff;
}

.hotel-image-requirements__label {
    display: block;
    margin-bottom: 0.3rem;
    font-size: 0.72rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #748194;
}

.hotel-image-requirements__value {
    display: block;
    font-weight: 600;
    line-height: 1.4;
    color: #0b1727;
}

.hotel-image-requirements__empty {
    padding: 0.85rem 0.95rem;
    border: 1px dashed #dbe7f3;
    border-radius: 0.75rem;
    background: #f8fbff;
    color: #748194;
    font-size: 0.85rem;
}

.hotel-ai-trigger {
    white-space: nowrap;
}

.hotel-switch-stack .form-check {
    min-height: 2rem;
    display: flex;
    align-items: center;
}

.hotel-status-toggle,
.hotel-availability-toggle {
    margin-top: 0.25rem;
}

.hotel-flag-checkbox-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 0.25rem;
}

.hotel-editor-shell {
    border: 1px solid #dbe7f3;
    border-radius: 0.85rem;
    overflow: hidden;
    background: #fff;
}

.hotel-amenity-list {
    min-height: 320px;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.hotel-amenity-item {
    display: grid;
    grid-template-columns: 28px 1fr auto;
    gap: 0.75rem;
    align-items: center;
    padding: 0.75rem;
    border: 1px solid #dbe7f3;
    border-radius: 0.85rem;
    background: #f8fbff;
}

.hotel-amenity-item__drag {
    color: #1c4f93;
    cursor: grab;
    text-align: center;
}

.hotel-amenity-empty {
    min-height: 160px;
    border: 1px dashed #dbe7f3;
    border-radius: 0.85rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #748194;
    background: #f8fbff;
}

.hotel-admin-card {
    border-radius: 1rem;
}

.hotel-admin-card__image {
    background: #eff5fb;
    border-radius: 1rem;
    overflow: hidden;
}

.hotel-admin-card__toggle-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
    padding: 1rem;
    border: 1px solid #dbe7f3;
    border-radius: 1rem;
    background: #f8fbff;
}

.hotel-admin-card__toggle-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    min-height: 2rem;
}

.hotel-admin-card__action {
    min-width: 124px;
}

.sponsor-management-scope {
    max-width: 480px;
}

.sponsor-admin-card__level-row {
    grid-column: 1 / -1;
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.hotel-public-shell {
    background: linear-gradient(180deg, #f7fbff 0%, #ffffff 100%);
}

.hotel-public-empty {
    padding: 3rem 1.5rem;
    text-align: center;
    color: #6c7a89;
    background: #fff;
    border: 1px solid #dbe7f3;
    border-radius: 1rem;
}

.hotel-public-card {
    border: 1px solid #dbe7f3;
    border-radius: 1rem;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 18px 45px rgba(15, 47, 87, 0.06);
}

.hotel-public-card__header {
    background: #fff;
    height: 385px;
}

.hotel-public-card__media {
    height: 100%;
    max-height: 385px;
    background: #edf4fb;
}

.hotel-public-card__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hotel-public-card__content {
    padding: 2rem;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.hotel-public-card__title {
    font-size: 1.5rem;
    line-height: 1.2;
    margin-bottom: 1.25rem;
    color: #091f3d;
}

.hotel-public-card__meta {
    display: flex;
    flex-direction: column;
    gap: 0.9rem;
}

.hotel-public-card__meta-row {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    color: #6f7a89;
    font-size: 1.08rem;
}

.hotel-public-card__meta-row svg {
    margin-top: 0.2rem;
    color: #0b4a6f;
    min-width: 16px;
}

.hotel-public-card__meta-row--cutoff {
    color: #8a7a62;
    font-weight: 600;
}

.hotel-public-card__actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-top: 1rem;
    padding-top: 0.6rem;
    border-top: 1px solid #e6edf5;
    flex-wrap: wrap;
}

.hotel-public-card__book-btn {
    min-width: 140px;
    border-radius: 999px;
    padding: 0.8rem 1.75rem;
    background: #0b4a6f;
    border-color: #0b4a6f;
}

.hotel-public-card__details-toggle {
    color: #091f3d;
    font-size: 1.5rem;
    text-decoration: none;
    padding: 0;
}

.hotel-public-card__details-toggle:hover,
.hotel-public-card__details-toggle:focus {
    color: #0b4a6f;
    text-decoration: none;
}

.hotel-public-card__details {
    border-top: 1px solid #e6edf5;
    background: #fff;
}

.hotel-public-card__tabs {
    display: flex;
    gap: 2rem;
    align-items: center;
    padding: 1.25rem 1.5rem 0;
    overflow-x: auto;
}

.hotel-public-card__tab {
    border: 0;
    background: transparent;
    padding: 0 0 0.9rem;
    border-bottom: 2px solid transparent;
    font-size: 1.15rem;
    color: #091f3d;
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    white-space: nowrap;
}

.hotel-public-card__tab-icon {
    font-size: 0.95rem;
    flex: 0 0 auto;
}

.hotel-public-card__tab.active {
    border-bottom-color: #0b4a6f;
    color: #0b4a6f;
}

.hotel-public-card__panel {
    padding: 1.5rem;
}

.hotel-public-card__richtext {
    color: #4f5d6b;
    line-height: 1.7;
}

.hotel-public-card__subsection {
    margin-top: 1.5rem;
}

.hotel-public-card__subsection h4,
.hotel-public-card__section-title {
    font-size: 1.85rem;
    color: #091f3d;
    margin-bottom: 1rem;
}

.hotel-public-card__link-row {
    margin-top: 1.25rem;
}

.hotel-public-card__amenities {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem 2rem;
}

.hotel-public-card__amenity {
    display: flex;
    align-items: flex-start;
    gap: 0.85rem;
    color: #6f7a89;
    font-size: 1.05rem;
}

.hotel-public-card__amenity svg {
    color: #0b4a6f;
}

.hotel-public-card__amenity-icon {
    width: 1.05rem;
    min-width: 1.05rem;
    height: 1.05rem;
    margin-top: 0.1rem;
    flex: 0 0 1.05rem;
}

.hotel-public-card__map-panel {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.hotel-public-card__map-frame {
    width: 100%;
    min-height: 340px;
    border: 1px solid #dbe7f3;
    border-radius: 1rem;
    overflow: hidden;
    background: #f8fbff;
}

.hotel-public-card__map-frame iframe {
    width: 100%;
    min-height: 700px;
    border: 0;
}

.sponsor-public-shell {
    background: linear-gradient(180deg, #f7fbff 0%, #ffffff 100%);
}

.sponsor-public-empty {
    padding: 3rem 1.5rem;
    text-align: center;
    color: #6c7a89;
    background: #fff;
    border: 1px solid #dbe7f3;
    border-radius: 1rem;
}

.sponsor-public-list {
    display: flex;
    flex-direction: column;
    gap: 2.5rem;
}

.sponsor-public-level {
    padding: 2rem;
}

.sponsor-public-level__header {
    margin-bottom: 1.5rem;
    text-align: center;
}

.sponsor-public-level__eyebrow,
.sponsor-public-modal__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.35rem 0.85rem;
    border-radius: 999px;
    background: #eef6ff;
    color: #0b4a6f;
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.sponsor-public-level__title,
.sponsor-public-modal__title {
    margin: 0.85rem 0 0;
    color: #091f3d;
}

.sponsor-public-level__title {
    font-size: 2rem;
}

.sponsor-public-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
}

.sponsor-public-card {
    width: 100%;
    border: 1px solid #dbe7f3;
    border-radius: 1rem;
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
    padding: 1.1rem;
    text-align: left;
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.sponsor-public-card:hover,
.sponsor-public-card:focus {
    border-color: #bfd7ea;
    box-shadow: 0 16px 32px rgba(11, 74, 111, 0.12);
    transform: translateY(-2px);
}

.sponsor-public-card__image-wrap {
    height: 140px;
    border-radius: 0.9rem;
    background: #fff;
    border: 1px solid #edf3f8;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
}

.sponsor-public-card__image {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.sponsor-public-card__content {
    padding-top: 1rem;
}

.sponsor-public-card__name {
    color: #091f3d;
    font-size: 1rem;
    font-weight: 700;
    min-height: 2.6rem;
}

.sponsor-public-card__cta {
    margin-top: 0.75rem;
    color: #0b4a6f;
    font-size: 0.92rem;
    font-weight: 600;
}

.sponsor-public-modal .modal-content {
    border: 0;
    border-radius: 1.2rem;
    overflow: hidden;
}

.sponsor-public-modal__body {
    padding: 2rem;
    background: linear-gradient(180deg, #ffffff 0%, #f9fbff 100%);
}

.sponsor-public-modal__header {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
    gap: 2rem;
    align-items: start;
}

.sponsor-public-modal__brand {
    display: flex;
    flex-direction: column;
    gap: 1.1rem;
}

.sponsor-public-modal__logo-wrap {
    min-height: 220px;
    border-radius: 1rem;
    padding: 1.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sponsor-public-modal__logo {
    width: 100%;
    max-height: 180px;
    object-fit: contain;
}

.sponsor-public-modal__meta {
    display: flex;
    flex-direction: column;
    gap: 0.9rem;
    padding: 1.35rem;
    border-radius: 1rem;
    background: #fff;
    border: 1px solid #dbe7f3;
}

.sponsor-public-modal__meta-row {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.sponsor-public-modal__meta-label {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    color: #0b4a6f;
    font-size: 0.88rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.sponsor-public-modal__meta-value,
.sponsor-public-modal__meta-value a {
    color: #4f5d6b;
    word-break: break-word;
}

.sponsor-public-modal__content {
    margin-top: 1.75rem;
    padding-top: 1.5rem;
    border-top: 1px solid #e6edf5;
    color: #4f5d6b;
    line-height: 1.7;
}

.sponsor-public-modal__content h4 {
    margin-bottom: 1rem;
    color: #091f3d;
    font-size: 1.3rem;
}

.registration-layout__sticky-col {
    align-self: flex-start;
}

.registration-layout__body {
    margin: 0;
}

.registration-layout__content-col {
    background: transparent !important;
    box-shadow: none !important;
}

.registration-event-sticky {
    position: sticky;
    top: 7rem;
    height: auto !important;
}

.registration-sticky-card {
    border-radius: 1.7rem !important;
    border: 1px solid #e6ddd2 !important;
    background: linear-gradient(180deg, #ffffff 0%, #fffdf9 100%);
    box-shadow: 0 22px 48px rgba(35, 46, 60, 0.12);
    overflow: hidden;
}

.registration-sticky-card__body {
    padding: 1.5rem 1.45rem 1.55rem !important;
    text-align: left;
}

.registration-sticky-card__eyebrow {
    color: #d55a2d;
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    margin-bottom: 0.7rem;
}

.registration-sticky-card__title {
    color: #16395c;
    font-size: 1.1rem;
    line-height: 1.18;
    margin-bottom: 0.45rem;
    font-weight: 700;
}

.registration-sticky-card__organizer {
    color: #6a7688;
    font-size: 1rem;
    margin-bottom: 0;
}

.registration-sticky-card__organizer span {
    color: #d55a2d;
    font-weight: 700;
}

.registration-sticky-card__divider {
    border-top: 1px dashed #e8ddd2;
    margin: 1.15rem 0;
}

.registration-sticky-card__divider--spaced {
    margin-top: 1.35rem;
    margin-bottom: 1rem;
}

.registration-sticky-card__meta {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.registration-sticky-card__meta-row {
    display: flex;
    align-items: flex-start;
    gap: 0.8rem;
}

.registration-sticky-card__meta-icon {
    color: #d55a2d;
    font-size: 0.95rem;
    padding-top: 0.15rem;
}

.registration-sticky-card__meta-text {
    color: #607187;
    font-size: 1rem;
    line-height: 1.65;
}

.registration-sticky-card__date-pill {
    text-align: center;
    border-radius: 0.8rem;
    color: #16395c;
    font-size: 0.8rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    padding: 0.5rem 0.9rem;
}

.registration-sticky-card__calendar-btn {
    width: 100%;
    border: 0;
    border-radius: 0.95rem;
    background: #12365a;
    color: #ffffff;
    font-size: 1rem;
    padding: 0.75rem 0.75rem;
    margin-top: 0.35rem;
    transition: transform 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease;
    box-shadow: 0 14px 30px rgba(18, 54, 90, 0.18);
}

.registration-sticky-card__calendar-btn:hover,
.registration-sticky-card__calendar-btn:focus {
    background: #0f2f4f;
    transform: translateY(-1px);
    box-shadow: 0 18px 32px rgba(18, 54, 90, 0.22);
}

.registration-sticky-card__summary {
    display: flex;
    flex-direction: column;
    gap: 0.7rem;
}

.registration-sticky-card__summary-row,
.registration-sticky-card__summary-total {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.registration-sticky-card__summary-row {
    color: #5f6f84;
    font-size: 1rem;
}

.registration-sticky-card__summary-row span:last-child,
.registration-sticky-card__summary-total span:last-child {
    text-align: right;
    white-space: nowrap;
}

.registration-sticky-card__summary-row--positive {
    color: #0f7b58;
}

.registration-sticky-card__summary-total {
    margin-top: 0.15rem;
    color: #16395c;
    font-size: 1.25rem;
    font-weight: 700;
}

@media (max-width: 1199.98px) {
    .registration-event-sticky {
        position: static;
        top: auto;
        margin-bottom: 1rem;
    }
}

@media (max-width: 575.98px) {
    .registration-sticky-card__body {
        padding: 1.2rem 1rem 1.25rem !important;
    }

    .registration-sticky-card__title {
        font-size: 1.15rem;
    }

    .registration-sticky-card__summary-total {
        font-size: 1.2rem;
    }
}

@media (max-width: 991.98px) {
    .hotel-management-modal__panel--divider {
        border-top: 1px solid #dbe7f3 !important;
    }

    .hotel-public-card__title {
        font-size: 1.6rem;
    }

    .hotel-public-card__amenities {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sponsor-public-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sponsor-public-modal__header {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767.98px) {
    .hotel-admin-card__toggle-grid {
        grid-template-columns: 1fr;
    }

    .hotel-public-card__content {
        padding: 1.5rem;
    }

    .hotel-public-card__actions {
        align-items: stretch;
    }

    .hotel-public-card__book-btn,
    .hotel-public-card__details-toggle {
        width: 100%;
        text-align: center;
        justify-content: center;
    }

    .hotel-public-card__amenities {
        grid-template-columns: 1fr;
    }

    .sponsor-public-level {
        padding: 1.25rem;
    }

    .sponsor-public-grid {
        grid-template-columns: 1fr;
    }
}

.sponsor-public-modal__body {
    padding: 1.25rem;
}

.myecw-repair-page {
    min-height: 100vh;
}

.myecw-repair-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 0.9rem;
}

.myecw-repair-field {
    padding: 1rem;
    border: 1px solid #dbe7f3;
    border-radius: 0.85rem;
    background: #f8fbff;
    min-width: 0;
}

.myecw-repair-field--wide {
    grid-column: 1 / -1;
}

.myecw-repair-field__label {
    display: block;
    margin-bottom: 0.45rem;
    color: #6f7a89;
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.myecw-repair-field__value {
    display: block;
    color: #0b1727;
    font-size: 0.98rem;
    font-weight: 600;
    line-height: 1.45;
    word-break: break-word;
}

.myecw-repair-pre {
    min-height: 240px;
    margin-bottom: 0;
    padding: 1rem;
    border: 1px solid #dbe7f3;
    border-radius: 0.85rem;
    background: #0f172a;
    color: #dbeafe;
    font-size: 0.82rem;
    line-height: 1.55;
    white-space: pre-wrap;
    word-break: break-word;
}

@media (max-width: 575.98px) {
    .myecw-repair-field {
        padding: 0.85rem;
    }
}
