.max-h-\[85vh\]{max-height:85vh}.max-h-\[calc\(85vh-6rem\)\]{max-height:calc(85vh - 6rem)}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12\.5px\]{font-size:12.5px}.text-\[14px\]{font-size:14px}.text-\[26px\]{font-size:26px}.text-\[9px\]{font-size:9px}.tracking-\[0\.10em\]{letter-spacing:.1em}.tracking-\[0\.12em\]{letter-spacing:.12em}.transition-\[background-color\2c color\2c transform\]{transition-property:background-color,color,transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[box-shadow\2c transform\]{transition-property:box-shadow,transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.\!delay-\[0ms\]{transition-delay:0ms!important}.\!duration-\[0ms\]{transition-duration:0ms!important}.hover\:z-\[40\]:hover{z-index:3}.hover\:z-\[30\]:hover{z-index:2}.hover\:z-\[20\]:hover{z-index:1}.active\:scale-\[0\.96\]:active,.group:active .group-active\:scale-\[0\.96\]{--tw-scale-x:0.96;--tw-scale-y:0.96;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}
.booking-package-overview {
            --bpo-ink: var(--foreground, #0d1b26);
            --bpo-ink-muted: var(--muted-foreground, #4b5b69);
            --bpo-ink-mute2: color-mix(in oklab, var(--muted-foreground, #4b5b69) 78%, transparent);
            --bpo-ink-border: var(--border, #e4e8ec);
            --bpo-primary: var(--primary, #40834d);
            --bpo-primary-700: color-mix(in oklab, var(--bpo-primary) 78%, black);
            --bpo-primary-100: color-mix(in oklab, var(--bpo-primary) 12%, transparent);
            text-wrap: pretty;
        }

        .booking-package-overview .font-heading {
            font-family: "Inter Tight", "Inter", system-ui, sans-serif;
            letter-spacing: -0.01em;
        }

        /* Neutralize host page heading and header element styles inside the widget
           (the site CSS gives bare `header` a top margin, max-width and centering). */
        .booking-package-overview :where(h2, h3, h4) { margin: 0; }
        .booking-package-overview header {
            margin: 0 0 1rem;
            max-width: none;
            width: auto;
        }

        .booking-package-overview .text-ink { color: var(--bpo-ink); }
        .booking-package-overview .text-ink-muted { color: var(--bpo-ink-muted); }
        .booking-package-overview .text-ink-mute2 { color: var(--bpo-ink-mute2); }
        .booking-package-overview .text-primary-700 { color: var(--bpo-primary-700); }
        .booking-package-overview .border-ink-border { border-color: var(--bpo-ink-border); }
        .booking-package-overview .bg-primary\/10 { background-color: var(--bpo-primary-100); }

        .booking-package-overview .shadow-mse-soft {
            box-shadow:
                0 1px 0 color-mix(in oklab, var(--bpo-ink) 2%, transparent),
                0 8px 24px color-mix(in oklab, var(--bpo-ink) 4%, transparent);
        }
.bp-tier {
            --bp-ink: var(--foreground, #0d1b26);
            --bp-ink-muted: var(--muted-foreground, #4b5b69);
            --bp-ink-mute2: color-mix(in oklab, var(--muted-foreground, #4b5b69) 78%, transparent);
            --bp-ink-border: var(--border, #e4e8ec);
            --bp-primary: var(--primary, #40834d);
            --bp-primary-700: color-mix(in oklab, var(--bp-primary) 78%, black);
            border: 1px solid color-mix(in oklab, var(--bp-primary) 20%, transparent);
            background:
                linear-gradient(135deg,
                    color-mix(in oklab, var(--bp-primary) 10%, transparent) 0%,
                    color-mix(in oklab, var(--bp-primary) 4%, transparent) 45%,
                    rgba(255, 255, 255, 0) 100%),
                #fff;
            box-shadow:
                0 1px 0 color-mix(in oklab, var(--bp-ink) 2%, transparent),
                0 8px 24px color-mix(in oklab, var(--bp-ink) 4%, transparent);
            transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease;
            text-wrap: pretty;
        }
        a.bp-tier:hover {
            border-color: color-mix(in oklab, var(--bp-primary) 40%, transparent);
            box-shadow:
                0 1px 0 color-mix(in oklab, var(--bp-ink) 2%, transparent),
                0 24px 48px color-mix(in oklab, var(--bp-ink) 7%, transparent);
        }

        .bp-tier .font-heading {
            font-family: "Inter Tight", "Inter", system-ui, sans-serif;
            letter-spacing: -0.01em;
        }
        .bp-tier .font-mono { font-family: ui-monospace, monospace; }

        .bp-tier .text-ink { color: var(--bp-ink); }
        .bp-tier .text-ink-muted { color: var(--bp-ink-muted); }
        .bp-tier .text-ink-mute2 { color: var(--bp-ink-mute2); }
        .bp-tier .text-primary-700 { color: var(--bp-primary-700); }

        .bp-tier .bp-divider { border-color: color-mix(in oklab, var(--bp-primary) 10%, transparent); }

        .bp-tier .bp-desc :where(p) { margin: 0 0 .45em; }
        .bp-tier .bp-desc :where(p:last-child) { margin-bottom: 0; }
        .bp-tier .bp-desc :where(ul, ol) { margin: 0 0 .45em; padding-left: 1.1em; }
        .bp-tier .bp-desc :where(a) {
            color: var(--bp-primary-700);
            text-decoration: underline;
            text-underline-offset: 2px;
        }

        .bp-tier .bp-book { transition: opacity .2s ease, transform .2s ease; }
        a.bp-tier:hover .bp-book { opacity: 1; transform: translateX(2px); }

        .bp-tier .bp-info:hover { background: color-mix(in oklab, var(--bp-primary) 10%, transparent); }
        .bp-tier .bp-info:hover i { color: var(--bp-primary-700); }

        @media (prefers-reduced-motion: reduce) {
            .bp-tier, .bp-tier .bp-book { transition: none !important; }
        }