/* Search landing section: scoped to preserve the rest of the homepage. */
.booking-hero {
    padding-bottom: 48px;
}
.booking-hero .hero-content {
    padding-top: 28px;
}
@media (min-width: 1024px) {
    .booking-hero .hero-content.site-container {
        max-width: 64rem;
    }
}
.booking-intro {
    position: relative;
    min-height: 210px;
    padding-inline-end: 260px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-bottom: 30px;
    color: #fff;
    text-shadow: 0 2px 18px #123e6155;
}
.booking-mascot {
    position: absolute;
    inset-inline-end: 28px;
    top: -180px;
    width: 220px;
    height: 220px;
    display: grid;
    place-items: center;
    pointer-events: none;
    z-index: 2;
}
.booking-mascot:before {
    content: "";
    position: absolute;
    inset: 24px;
    border-radius: 50%;
    background: radial-gradient(circle at 35% 30%, #fff4d552, #ffffff0a 70%);
    border: 1px solid #ffe2a54d;
    box-shadow: 0 0 45px #ffdb8520;
}
.booking-mascot img {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: drop-shadow(0 12px 16px #08365340);
}
.booking-eyebrow {
    display: inline-block;
    color: #ffdf99;
    font-size: 13px;
    margin-bottom: 12px;
}
.booking-intro h1 {
    margin: 0 0 14px;
    font-size: clamp(28px, 3.5vw, 46px);
    line-height: 1.5;
    font-weight: 700;
}
.booking-intro h1 span {
    color: #ffdf99;
}
.booking-intro p {
    margin: 0;
    font-size: 16px;
    line-height: 1.9;
}
.booking-hero form.flight-search {
    position: relative;
    overflow: visible;
    padding: 26px;
    background: linear-gradient(135deg, #ffffff80, #ffffff40);
    border: 1px solid #ffffff99;
    border-radius: 20px;
    box-shadow:
        0 18px 50px #092b4930,
        inset 0 1px 0 #ffffff80;
    color: #24374a;
    text-shadow: none;
    -webkit-backdrop-filter: blur(16px);
    backdrop-filter: blur(16px);
}
.booking-hero .trip-types {
    justify-content: flex-start;
    gap: 8px;
    margin-bottom: 22px;
}
.booking-hero .flight-search .trip-types span {
    display: block;
    padding: 9px 18px;
    border: 1px solid transparent;
    border-radius: 24px;
    background: #f4f6f8;
    color: #536373;
    font-size: 13px;
    box-shadow: none;
}
.booking-hero .flight-search .trip-types input:checked + span {
    background: #eaf4fb;
    border-color: #b9d9ef;
    color: #086da8;
    box-shadow: none;
}
.booking-hero .search-fields {
    gap: 16px;
}
.booking-hero .flight-search .route-fields .search-field,
.booking-hero .flight-search .extra-leg .search-field,
.booking-hero .flight-search .date-fields {
    background: #fff;
    border: 1px solid #d7dfe7;
    border-radius: 12px;
    box-shadow: none;
}
.booking-hero .flight-search .search-field > span:first-child {
    color: #697888;
    font-size: 12px;
}
.booking-hero .flight-search .search-field input,
.booking-hero .date-display {
    color: #20384e;
    font-size: 15px;
}
.booking-hero .flight-search .search-field input::placeholder {
    color: #86929f;
}
.booking-hero .flight-search .search-field:focus-within,
.booking-hero .flight-search .date-fields:focus-within {
    outline: 2px solid #1382bc;
    outline-offset: 2px;
}
.booking-hero .flight-search .date-fields .search-field:focus-within {
    outline: none;
}
.booking-hero .flight-search .swap-airports {
    background: #f0f6fa;
    color: #1478ad;
    border: 3px solid #fff;
    box-shadow: 0 0 0 1px #d7dfe7;
}
.booking-hero .flight-search .date-step button {
    color: #1478ad;
}
.booking-hero .search-options {
    padding-top: 20px;
    margin-top: 20px;
    border-top: 1px solid #edf0f3;
    gap: 20px;
}
.booking-hero .fare-options {
    gap: 12px;
}
.booking-hero .direct-option {
    color: #17344b;
    font-size: 13px;
    background: #ffffffd9;
    padding: 8px 12px;
    border-radius: 9px;
}
.booking-hero .flight-search .direct-option input {
    width: 20px;
    height: 20px;
    border: 1px solid #aebbc7;
    border-radius: 5px;
}
.booking-hero .flight-search .direct-option input:checked {
    background: #0878bc;
    border-color: #0878bc;
}
.booking-hero .direct-option input:checked:after {
    font-size: 16px;
}
.booking-hero .flight-search .booking-list-trigger,
.booking-hero .flight-search .payment-options summary,
.booking-hero .flight-search .select-option select {
    background: #f8fafc;
    color: #344b60;
    border: 1px solid #e0e6ec;
    box-shadow: none;
    border-radius: 10px;
    font-size: 13px;
}
.booking-hero .flight-search .search-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-width: 180px;
    height: 50px;
    padding-inline: 20px;
    background: #0878bc;
    border: 1px solid #0878bc;
    color: #fff;
    border-radius: 10px;
    box-shadow: 0 4px 12px #0878bc26;
    font-size: 15px;
}
.booking-hero .search-button svg {
    width: 20px;
    height: 20px;
}
.booking-hero .flight-search .search-button:hover {
    background: #056397;
}
.booking-hero .flight-search .booking-list-menu,
.booking-hero .flight-search .payment-menu {
    background: #fff;
    color: #24374a;
    border-color: #dce5ec;
    box-shadow: 0 14px 35px #153b5926;
    scrollbar-color: #b9cad7 #fff;
}
.booking-hero .flight-search .booking-list-menu [role="option"],
.booking-hero .flight-search .payment-menu label {
    color: #344b60;
}
.booking-hero .flight-search .booking-list-menu [role="option"]:hover,
.booking-hero .flight-search .booking-list-menu .is-active,
.booking-hero .flight-search .payment-menu label:hover {
    background: #f0f6fa;
    border-color: #d3e4ee;
}
.booking-hero .flight-search .booking-list-menu [aria-selected="true"],
.booking-hero .flight-search .payment-menu label:has(input:checked) {
    background: #eaf4fb;
    color: #086da8;
    border-color: #b9d9ef;
}
.booking-hero .booking-list-heading,
.booking-hero .flight-search .payment-menu:before,
.booking-hero .flight-search .booking-list-empty {
    color: #697888;
    border-color: #e5eaf0;
}
.booking-hero .booking-option-icon {
    background: #edf4f8;
    color: #0878bc;
}
.booking-hero
    .flight-search
    .booking-list-menu
    [aria-selected="true"]
    .booking-option-icon {
    background: #d9ebf7;
    color: #0878bc;
}
.booking-hero .flight-search .booking-list-menu [aria-selected="true"]:after {
    background: #0878bc;
    color: #fff;
}
.booking-hero .flight-search .payment-menu input {
    accent-color: #0878bc;
}
.booking-hero .extra-services {
    margin: 24px 0 0;
    background: #ffffffed;
    border: 1px solid #ffffff80;
    border-radius: 12px;
}
.booking-hero .extra-services a {
    color: #345269;
    font-weight: 400;
}
.booking-hero .extra-services svg {
    color: #0878bc;
    width: 20px;
    height: 20px;
}
@media (max-width: 1000px) {
    .booking-hero .search-options {
        align-items: stretch;
        flex-direction: column;
    }
    .booking-hero .fare-options {
        display: grid;
        grid-template-columns: repeat(3, 1fr) auto;
    }
}
@media (max-width: 760px) {
    .booking-hero .hero-content {
        padding-top: 18px;
    }
    .booking-intro {
        min-height: 0;
        padding-inline-end: 0;
        margin-bottom: 115px;
    }
    .booking-mascot {
        width: 140px;
        height: 140px;
        top: -110px;
        inset-inline-end: 16px;
    }
    .booking-mascot:before {
        inset: 22px 8px;
    }
    .booking-intro h1 {
        font-size: 25px;
    }
    .booking-intro p {
        font-size: 13px;
    }
    .booking-eyebrow {
        font-size: 11px;
    }
    .booking-hero form.flight-search {
        padding: 42px 16px 16px;
        border-radius: 16px;
    }
    .booking-hero .trip-types {
        gap: 5px;
    }
    .booking-hero .flight-search .trip-types span {
        font-size: 11px;
        padding: 7px 9px;
    }
    .booking-hero .fare-options {
        grid-template-columns: 1fr 1fr;
        gap: 10px;
    }
    .booking-hero .flight-search .search-button {
        min-width: 0;
        width: 100%;
        font-size: 13px;
        padding-inline: 8px;
    }
    .booking-hero .extra-services {
        width: 100%;
    }
    .booking-hero .extra-services a {
        flex: 1;
        padding-inline: 8px;
        gap: 7px;
        font-size: 11px;
    }
}
@media (prefers-reduced-motion: no-preference) {
    .booking-mascot img {
        animation: goldio-float 4s ease-in-out infinite;
    }
    @keyframes goldio-float {
        0%,
        100% {
            transform: translateY(0);
        }
        50% {
            transform: translateY(-7px);
        }
    }
}

/* Reference composition: Kuwait panorama, suite interior and horizontal search. */
body .booking-hero {
    background: #dce7eb url("../images/travel/kuwait-suite-hero.png") center
        center / cover no-repeat;
    min-height: 850px;
    padding-bottom: 58px;
}
.booking-hero:before {
    height: 160px;
    background: linear-gradient(#17324b88, transparent);
}
.booking-hero .hero-content {
    padding-top: 16px;
}
.booking-hero .booking-intro {
    min-height: 0;
    padding: 0;
    margin: 0 auto 32px;
    text-align: center;
    align-items: center;
    color: #102d50;
    text-shadow: none;
}
.booking-hero .booking-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 8px 22px;
    margin-bottom: 24px;
    border: 1px solid #c3d1de;
    border-radius: 30px;
    color: #102d50;
    background: #ffffffbc;
    box-shadow: inset 0 0 8px #66829c3b;
    font-weight: 700;
}
.booking-eyebrow > span {
    color: #c49222;
    font-size: 26px;
    line-height: 1;
}
.booking-hero .booking-intro h1 {
    font-size: clamp(30px, 3.5vw, 52px);
    line-height: 1.5;
    margin-bottom: 16px;
}
.booking-hero .booking-intro h1 span {
    color: #b58926;
}
.booking-highlights {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    list-style: none;
    margin: 0;
    padding: 0;
}
.booking-highlights li {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 16px;
    border: 1px solid #ffffffd9;
    border-radius: 30px;
    background: #ffffffc9;
    color: #183758;
    box-shadow: 0 3px 12px #1834490d;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    font-size: 14px;
    line-height: 1.6;
}
.booking-highlights svg {
    width: 21px;
    height: 21px;
    flex-shrink: 0;
    color: #ac7e1d;
}
.booking-hero form.flight-search {
    height: auto;
    min-height: 0;
    padding: 16px;
    border-radius: 24px;
    background: #fffffff5;
    border: 1px solid #fff;
    box-shadow: 0 18px 34px #18344930;
}
.booking-hero .booking-mascot {
    width: 150px;
    height: 150px;
    top: -132px;
    inset-inline-end: 16px;
}
.booking-hero .booking-mascot:before {
    display: none;
}
.booking-hero .trip-types,
.booking-hero .search-options,
.booking-hero .swap-airports,
.booking-hero .destination-field,
.booking-hero .date-step {
    display: none;
}
.booking-hero .search-fields {
    display: grid;
    grid-template-columns: minmax(0, 1.5fr) repeat(3, minmax(0, 1fr)) minmax(
            140px,
            0.95fr
        );
    gap: 12px;
    align-items: stretch;
}
.booking-hero .route-fields {
    grid-column: 1;
    grid-row: 1;
    display: block;
    min-width: 0;
}
.booking-hero .flight-search .date-fields {
    display: contents;
}
.booking-hero .departure-field {
    grid-column: 2;
    grid-row: 1;
}
.booking-hero .return-field {
    grid-column: 3;
    grid-row: 1;
}
.booking-hero .hero-guests {
    grid-column: 4;
    grid-row: 1;
    min-width: 0;
    height: 80px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 7px;
    padding: 0 6px;
}
.booking-hero .flight-search .search-button {
    grid-column: 5;
    grid-row: 1;
    min-width: 0;
    width: 100%;
    max-width: 160px;
    height: 49px;
    min-height: 49px;
    align-self: end;
    justify-self: center;
    padding-inline: 16px;
    border-radius: 14px;
    background: #b58a22;
    border-color: #b58a22;
    box-shadow: none;
    font-size: 16px;
}
.booking-hero .flight-search .search-button:hover {
    background: #97701a;
}
.booking-hero .flight-search .search-button svg {
    width: 20px;
    height: 20px;
}
.booking-hero .flight-search .route-fields .search-field,
.booking-hero .flight-search .date-fields .search-field {
    background: transparent;
    border: 0;
    border-radius: 0;
    height: 80px;
    padding: 0 6px;
    justify-content: space-between;
    gap: 7px;
    min-width: 0;
    box-shadow: none;
}
.booking-hero .flight-search .search-field > span:first-child,
.booking-hero .hero-field-caption {
    color: #284361;
    font-size: 13px;
    line-height: 23px;
}
.booking-hero .flight-search .search-field input:not([type="date"]),
.booking-hero .flight-search .date-display,
.booking-hero .flight-search .hero-guests .booking-list-trigger {
    display: block;
    width: 100%;
    height: 49px;
    min-height: 49px;
    border: 1px solid #e1e5ea;
    border-radius: 18px;
    padding: 12px;
    background: #fff;
    color: #183758;
    font-size: 13px;
    line-height: 24px;
}
.booking-hero .flight-search .hero-guests .booking-list-trigger {
    display: flex;
    flex-shrink: 0;
}
.booking-hero .flight-search .search-field > span:first-child,
.booking-hero .hero-field-caption {
    margin: 0;
    flex-shrink: 0;
}
.booking-hero .flight-search .search-field input:not([type="date"]),
.booking-hero .flight-search .date-display {
    flex-shrink: 0;
}
.booking-hero .flight-search .return-field:not(.has-date) {
    justify-content: space-between;
}
.booking-hero .flight-search .date-fields input[type="date"] {
    top: 30px;
    height: 49px;
}
.booking-hero .flight-search .date-display:empty:after {
    content: "اختر التاريخ";
    color: #89939e;
}
.booking-hero .flight-search .return-field:not(.has-date) .date-display {
    display: block;
}
.booking-hero .flight-search .return-field:not(.has-date) > span:first-child {
    font-size: 13px;
}
.booking-hero .flight-search .date-fields:focus-within {
    outline: none;
}
.booking-hero .hero-benefits {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
    max-width: 820px;
    margin: 44px auto 0;
}
.hero-benefits > div,
.hero-benefits > a {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 12px;
    min-height: 114px;
    padding: 16px 10px;
    border: 1px solid #ffffff7a;
    border-radius: 22px;
    background: #ffffffb3;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    color: #102d50;
    box-shadow: 0 8px 25px #17324b13;
    font-size: 13px;
    text-align: center;
}
.hero-benefits svg {
    width: 35px;
    height: 35px;
    color: #bd9029;
}
.hero-benefits > a:hover {
    background: #ffffffe6;
}
.hero-signature {
    width: max-content;
    margin: 26px 0 0;
    color: #fff;
    font-size: 26px;
    text-shadow: 0 2px 8px #102d5077;
    border-bottom: 4px solid #e3b344;
    padding-bottom: 7px;
    transform: rotate(-5deg);
}
@media (max-width: 1000px) {
    .booking-hero .search-fields {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .booking-hero .route-fields {
        grid-column: 1;
    }
    .booking-hero .hero-guests {
        grid-column: 2;
    }
    .booking-hero .departure-field {
        grid-column: 1;
        grid-row: 2;
    }
    .booking-hero .return-field {
        grid-column: 2;
        grid-row: 2;
    }
    .booking-hero .flight-search .search-button {
        grid-column: 1 / -1;
        grid-row: 3;
        min-height: 49px;
        border-radius: 14px;
    }
    .booking-hero .booking-intro {
        margin-bottom: 80px;
    }
    .booking-hero .booking-mascot {
        width: 90px;
        height: 90px;
        top: -78px;
    }
}
@media (max-width: 760px) {
    body .booking-hero {
        min-height: 0;
        background-position: 45% center;
    }
    .booking-hero .booking-intro h1 {
        font-size: 29px;
    }
    .booking-highlights {
        gap: 7px;
    }
    .booking-highlights li {
        padding: 7px 11px;
        gap: 6px;
        font-size: 12px;
    }
    .booking-highlights svg {
        width: 18px;
        height: 18px;
    }
    .booking-hero .booking-eyebrow {
        font-size: 12px;
        padding-inline: 14px;
    }
    .booking-hero form.flight-search {
        padding: 16px;
        border-radius: 22px;
    }
    .booking-hero .booking-mascot {
        width: 90px;
        height: 90px;
        top: -78px;
    }
    .booking-hero .hero-benefits {
        grid-template-columns: 1fr 1fr;
        gap: 12px;
        margin-top: 24px;
    }
    .hero-signature {
        margin-inline: auto;
        font-size: 23px;
    }
}

/* Dropdown cards follow the reference specialties filter. */
.booking-hero form.flight-search {
    z-index: 5;
}
.booking-hero .flight-search .search-field:focus-within {
    outline: none;
}
.booking-hero .flight-search input[role="combobox"]:focus-visible,
.booking-hero .flight-search .booking-list-trigger:focus-visible {
    outline: 2px solid #b78a25;
    outline-offset: 2px;
}
.booking-hero .flight-search .booking-list-menu {
    padding: 12px;
    max-height: 310px;
    border: 1px solid #dfe7ee;
    border-radius: 20px;
    background: linear-gradient(145deg, #fff, #f7fafc);
    box-shadow: 0 16px 35px #152b4930;
    scrollbar-color: #d7c28d #f4f1e9;
}
.booking-hero .flight-search .booking-list-heading {
    padding: 4px 4px 12px;
    margin-bottom: 10px;
    color: #263548;
    font-size: 12px;
    font-weight: 700;
    border-bottom: 1px solid #e5ebf0;
}
.booking-hero .flight-search .booking-list-menu [role="option"] {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr) 24px;
    gap: 9px;
    align-items: center;
    min-height: 56px;
    padding: 8px 9px;
    border: 1px solid #e5ebf0;
    border-radius: 15px;
    background: #fff;
    color: #263548;
}
.booking-hero
    .flight-search
    .booking-list-menu
    [role="option"]
    + [role="option"] {
    margin-top: 8px;
}
.booking-hero .flight-search .booking-list-menu [role="option"] > span {
    color: #263548;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.6;
    white-space: normal;
    overflow-wrap: anywhere;
}
.booking-hero .flight-search .booking-list-menu .booking-option-icon {
    width: 38px;
    height: 38px;
    padding: 9px;
    border-radius: 12px;
    background: #f7f1e2;
    color: #a77b20;
}
.booking-hero .flight-search .booking-list-menu [role="option"]:after {
    content: "";
    position: static;
    display: grid;
    place-items: center;
    width: 24px;
    height: 24px;
    border: 1px solid #dce5e9;
    border-radius: 50%;
    background: #f7fafb;
}
.booking-hero .flight-search .booking-list-menu [role="option"]:hover,
.booking-hero .flight-search .booking-list-menu [role="option"].is-active {
    background: #fffaf0;
    border-color: #d6ba76;
}
.booking-hero .flight-search .booking-list-menu [aria-selected="true"] {
    background: linear-gradient(135deg, #fffcf5, #f9efda);
    border-color: #c49b42;
    box-shadow: inset -3px 0 #b78a25;
}
.booking-hero .flight-search .booking-list-menu [aria-selected="true"]:after {
    content: "✓";
    color: #fff;
    background: #b78a25;
    border-color: #b78a25;
    font-size: 14px;
}
.booking-hero
    .flight-search
    .booking-list-menu
    [aria-selected="true"]
    .booking-option-icon {
    background: #f1e3bf;
    color: #956b16;
}

/* Fixed dropdown header with a separately scrolling results body. */
.booking-hero .flight-search .booking-list-menu {
    padding: 0;
    max-height: none;
    overflow: hidden;
}
.booking-hero .flight-search .booking-list-header {
    padding: 12px;
    border-bottom: 1px solid #e5ebf0;
    background: #fff;
}
.booking-hero .flight-search .booking-list-header .booking-list-heading {
    margin: 0 0 8px;
    padding: 0;
    border: 0;
}
.booking-hero .flight-search .booking-list-header .booking-list-search {
    display: block;
    width: 100%;
    height: 42px;
    min-height: 42px;
    margin: 0;
    padding: 9px 12px;
    border: 1px solid #dfe7ee;
    border-radius: 11px;
    background: #f7fafc;
    color: #263548;
    font-size: 13px;
    line-height: 22px;
}
.booking-hero .flight-search .booking-list-body {
    position: relative;
    max-height: min(260px, 40svh);
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 10px;
    scrollbar-width: thin;
    scrollbar-color: #cbb47d #f4f1e9;
}
.booking-list-body::-webkit-scrollbar {
    width: 6px;
}
.booking-list-body::-webkit-scrollbar-thumb {
    background: #cbb47d;
    border-radius: 8px;
}
@media (max-width: 760px) {
    body .site-hero {
        padding-top: 126px;
    }
    body #flight-search {
        scroll-margin-top: 110px;
    }
}

/* Branded arrival and departure calendar. */
.booking-hero .stay-date-trigger {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    height: 49px;
    min-height: 49px;
    padding: 10px 12px;
    border: 1px solid #e1e5ea;
    border-radius: 18px;
    background: #fff;
    color: #183758;
    text-align: start;
    font-size: 13px;
}
.stay-date-trigger svg {
    width: 21px;
    height: 21px;
    color: #b58a22;
    flex-shrink: 0;
}
.stay-date-trigger span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.stay-calendar-picker {
    width: min(390px, calc(100vw - 28px));
    max-height: calc(100dvh - 32px);
    overflow-y: auto;
    padding: 22px;
    border: 1px solid #e8dfca;
    border-radius: 24px;
    background: #fff;
    color: #183758;
    box-shadow: 0 24px 80px #102d5040;
}
.stay-calendar-picker::backdrop {
    background: #102d5077;
    backdrop-filter: blur(4px);
}
.stay-calendar-picker header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 18px;
    border-bottom: 1px solid #edf0f3;
}
.stay-calendar-picker small {
    color: #a47b21;
    font-size: 12px;
}
.stay-calendar-picker h2 {
    margin: 5px 0 0;
    font-size: 19px;
}
.stay-calendar-picker .calendar-close {
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 10px;
    background: #f5f6f8;
    color: #183758;
    font-size: 25px;
}
.calendar-month-nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 18px 0;
}
.calendar-month-nav button {
    width: 34px;
    height: 34px;
    border: 1px solid #e7ddc7;
    border-radius: 10px;
    background: #fffcf5;
    color: #99731f;
    font-size: 24px;
}
.calendar-month-nav strong {
    font-size: 15px;
}
.calendar-weekdays,
.calendar-days {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 4px;
    text-align: center;
}
.calendar-weekdays {
    padding-bottom: 10px;
    font-size: 10px;
    color: #788696;
}
.calendar-days button {
    height: 39px;
    border: 1px solid transparent;
    border-radius: 11px;
    background: #f7f9fb;
    color: #183758;
    font-size: 13px;
}
.calendar-days button:hover:not(:disabled) {
    background: #faf0d9;
    border-color: #d8bb77;
}
.calendar-days button[aria-current] {
    border-color: #c49b42;
}
.calendar-days button[aria-pressed="true"] {
    background: #b58a22;
    color: #fff;
}
.stay-calendar-picker button:disabled {
    opacity: 0.3;
    cursor: default;
}
.calendar-hint {
    margin: 16px 0 0;
    padding-top: 14px;
    border-top: 1px solid #edf0f3;
    font-size: 12px;
    color: #788696;
}
.stay-calendar-picker button:focus-visible,
.stay-date-trigger:focus-visible {
    outline: 2px solid #b58a22;
    outline-offset: 2px;
}

.kuwait-stays-intro {
    max-width: 680px;
    margin: 14px auto 24px;
    color: #697888;
    font-size: 15px;
    line-height: 1.9;
    text-align: center;
}
.kuwait-stay-areas {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
    list-style: none;
    margin: 0 0 32px;
    padding: 0;
}
.kuwait-stay-areas li {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 9px 15px;
    border: 1px solid #e8dfca;
    border-radius: 24px;
    background: #fffcf5;
    color: #284361;
    font-size: 13px;
}
.kuwait-stay-areas svg {
    width: 18px;
    height: 18px;
    color: #b58a22;
}
.kuwait-stays .kuwait-stay-icon {
    display: block;
    width: 72px;
    height: 72px;
    padding: 18px;
    margin: 0 auto 18px;
    border-radius: 22px;
    background: #f9f2e2;
    color: #b58a22;
}
.kuwait-stays .site-benefit p {
    max-width: 300px;
    margin: 10px auto 0;
    color: #697888;
    line-height: 1.9;
    font-size: 14px;
    text-align: center;
}

/* Compact mobile header. */
@media (max-width: 760px) {
    body .site-hero {
        padding-top: 94px;
    }
    body #flight-search {
        scroll-margin-top: 86px;
    }
}

.apartment-options .destination-card > img {
    object-position: 90% center;
}
.apartment-options .apartment-option-icon {
    width: 38px;
    height: 38px;
    padding: 7px;
    margin-bottom: 12px;
    color: #f0d18c;
    border: 1px solid #ffffff50;
    background: #12304d66;
    border-radius: 12px;
}
.apartment-options .destination-caption p {
    line-height: 1.8;
}
