.ths-golden-hour {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    z-index: 9998;
}

.ths-golden-hour *,
.ths-golden-hour *::before,
.ths-golden-hour *::after {
    box-sizing: border-box;
}

.ths-golden-hour__inner {
    width: 100%;
    display: flex;
    justify-content: center;
    padding: 0 14px;
}

.ths-golden-hour__content {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    width: auto;
    max-width: 100%;
    min-height: 44px;
    padding: 8px 14px;
    border-radius: 999px;
    background: rgba(255, 252, 245, 0.96);
    border: 1px solid rgba(201, 157, 43, 0.20);
    box-shadow: 0 8px 28px rgba(87, 58, 11, 0.12);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
}

.ths-golden-hour__badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    flex: 0 0 auto;
    min-height: 30px;
    padding: 7px 13px;
    border-radius: 999px;
    background: linear-gradient(135deg, #c89720 0%, #e6c76c 48%, #b07a0d 100%);
    color: #2f2207;
    font-size: 13px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.02em;
    white-space: nowrap;
    box-shadow:
        0 8px 20px rgba(180, 130, 15, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.35);
}

.ths-golden-hour__dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: currentColor;
    opacity: 0.92;
    flex: 0 0 8px;
}

.ths-golden-hour__badge-text {
    display: inline-block;
}

.ths-golden-hour__text {
    display: inline-block;
    color: #7a5a1d;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: 0.01em;
    white-space: nowrap;
}

.ths-golden-hour--align-left .ths-golden-hour__inner {
    justify-content: flex-start;
}

.ths-golden-hour--align-center .ths-golden-hour__inner {
    justify-content: center;
}

.ths-golden-hour--align-right .ths-golden-hour__inner {
    justify-content: flex-end;
}

.ths-golden-hour--size-compact .ths-golden-hour__content {
    min-height: 42px;
    padding: 7px 12px;
    gap: 10px;
}

.ths-golden-hour--size-compact .ths-golden-hour__badge {
    min-height: 29px;
    padding: 7px 12px;
    font-size: 12.5px;
}

.ths-golden-hour--size-compact .ths-golden-hour__text {
    font-size: 13.5px;
}

.ths-golden-hour--desktop-compact .ths-golden-hour__content {
    max-width: 700px;
}

.ths-golden-hour--tone-clear .ths-golden-hour__content {
    background: rgba(255, 252, 245, 0.96);
    border-color: rgba(201, 157, 43, 0.20);
}

.ths-golden-hour--floating-bottom {
    position: fixed;
    left: 0;
    right: 0;
    bottom: var(--ths-gh-bottom, 12px);
    pointer-events: none;
}

.ths-golden-hour--floating-bottom .ths-golden-hour__inner {
    pointer-events: none;
}

.ths-golden-hour--floating-bottom .ths-golden-hour__content {
    pointer-events: auto;
}

.ths-golden-hour--scroll-toggle {
    opacity: 0;
    visibility: hidden;
    transform: translateY(14px);
    transition:
        opacity 0.24s ease,
        transform 0.24s ease,
        visibility 0.24s ease;
}

.ths-golden-hour--scroll-toggle.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

@media (max-width: 1024px) {
    .ths-golden-hour__content {
        gap: 10px;
        padding: 8px 12px;
    }

    .ths-golden-hour__text {
        font-size: 13px;
    }
}

@media (max-width: 767px) {
    .ths-golden-hour--floating-bottom {
        left: 12px;
        right: var(--ths-gh-right, 86px);
        width: auto;
        bottom: var(--ths-gh-bottom, 74px);
    }

    .ths-golden-hour__inner {
        width: auto;
        display: block;
        padding: 0;
    }

    .ths-golden-hour__content {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        width: 100%;
        max-width: 100%;
        gap: 10px;
        padding: 10px 12px;
        border-radius: 18px;
    }

    .ths-golden-hour__badge {
        min-height: 30px;
        padding: 7px 11px;
        font-size: 12px;
        flex: 0 0 auto;
    }

    .ths-golden-hour__text {
        white-space: normal;
        font-size: 13px;
        line-height: 1.4;
        flex: 1 1 auto;
        min-width: 0;
    }
}

/* PHASE 1 MOBILE PATCH */
@media(max-width:768px){
  .booking-layout{display:flex!important;flex-direction:column!important;}
  .booking-right{position:relative!important;top:auto!important;}
  .summary-footer{position:fixed;bottom:0;left:0;right:0;background:#fff;z-index:999;padding:12px;}
  .service-chip{font-size:16px!important;padding:10px 14px!important;margin:4px;}
}

/* V11.00: Floating UI Compact System — lower + smaller Golden Hour bar. */
.ths-golden-hour--floating-bottom{
    bottom:8px!important;
    z-index:99970!important;
}
.ths-golden-hour--floating-bottom .ths-golden-hour__inner{
    padding:0 10px!important;
}
.ths-golden-hour--floating-bottom .ths-golden-hour__content{
    min-height:38px!important;
    padding:6px 12px!important;
    gap:10px!important;
    box-shadow:0 7px 22px rgba(87,58,11,.10)!important;
}
.ths-golden-hour--floating-bottom .ths-golden-hour__badge{
    min-height:26px!important;
    padding:6px 10px!important;
    font-size:12px!important;
}
.ths-golden-hour--floating-bottom .ths-golden-hour__text{
    font-size:13px!important;
    line-height:1.25!important;
}
@media(max-width:767px){
    .ths-golden-hour--floating-bottom{
        left:10px!important;
        right:10px!important;
        bottom:6px!important;
        width:auto!important;
    }
    .ths-golden-hour--floating-bottom .ths-golden-hour__content{
        min-height:36px!important;
        padding:6px 10px!important;
        border-radius:16px!important;
        gap:8px!important;
    }
    .ths-golden-hour--floating-bottom .ths-golden-hour__badge{
        min-height:24px!important;
        padding:5px 9px!important;
        font-size:11.5px!important;
    }
    .ths-golden-hour--floating-bottom .ths-golden-hour__text{
        font-size:12.3px!important;
        line-height:1.25!important;
        white-space:normal!important;
    }
}
