body {
            font-family: 'Manrope', sans-serif;
            color-scheme: dark;
            overflow-x: hidden;
        }

        .surface {
            background: #11110e;
            border: 1px solid #2c2c24;
        }

        [data-home-link] {
            min-width: max-content;
        }

        [data-auth-email] {
            max-width: 16rem;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

        .cal-shell {
            min-height: 620px;
            background: #0d0d0b;
            border: 1px solid #2c2c24;
            overflow: hidden;
            color-scheme: dark;
        }

        #cal-inline,
        #cal-inline>div,
        #cal-inline iframe {
            width: 100% !important;
            min-height: 620px !important;
            background: #0d0d0b !important;
            color-scheme: dark;
        }

        .loader-dot {
            animation: loader-pulse 1.4s ease-in-out infinite;
        }

        .loader-dot:nth-child(2) {
            animation-delay: 140ms;
        }

        .loader-dot:nth-child(3) {
            animation-delay: 280ms;
        }

        @keyframes loader-pulse {
            0%,
            100% {
                opacity: 0.25;
                transform: translateY(0);
            }

            50% {
                opacity: 1;
                transform: translateY(-3px);
            }
        }

        @media (max-width: 767px) {
            header {
                align-items: flex-start !important;
                flex-wrap: wrap;
                gap: 1rem;
                padding: 1rem !important;
            }

            header nav {
                order: 3;
                width: 100%;
                gap: 0.75rem !important;
                overflow-x: auto;
                padding: 0.125rem 0 0.45rem;
                scrollbar-width: none;
            }

            header nav::-webkit-scrollbar {
                display: none;
            }

            header nav a,
            header nav button {
                min-height: 44px;
                flex: 0 0 auto;
                display: inline-flex;
                align-items: center;
            }

            h1 {
                font-size: clamp(2.35rem, 10vw, 3.5rem) !important;
                line-height: 0.95 !important;
            }

            .surface {
                border-radius: 1rem !important;
            }

            #booking-intro {
                padding-top: 1.25rem;
                padding-bottom: 1.25rem;
            }

            #booking-intro-grid {
                gap: 1rem;
            }

            #page-eyebrow {
                margin-bottom: 0.75rem;
            }

            #page-title {
                margin-bottom: 0.75rem;
            }

            #credit-summary {
                margin-top: 1rem;
            }

            #credit-summary>div {
                padding-top: 0.75rem;
                padding-bottom: 0.75rem;
            }

            #booking-policy {
                padding: 1rem !important;
            }

            #availability-section {
                padding-top: 1.25rem;
            }

            #availability-heading {
                margin-bottom: 1rem;
            }

            .cal-shell,
            #cal-inline,
            #cal-inline>div,
            #cal-inline iframe {
                min-height: 720px !important;
            }
        }
