/* Homepage identity: shared palette, surfaces and spacing, scoped to this page. */
.sakan-home {
    --home-navy: #17344d;
    --home-gold: #a07832;
    --home-gold-soft: #f4ecdc;
    --home-paper: #faf9f6;
    --home-line: #e5e2da;
    --home-muted: #627180;
    --home-radius: 20px;
    --home-shadow: 0 8px 28px #17344d08;
    --site-green: var(--home-gold);
    --site-ink: var(--home-navy);
    background: var(--home-paper);
    color: var(--home-navy);
}
.sakan-home :is(a, button, input[type="checkbox"], input[type="radio"], input[type="range"], input[type="file"], input[type="button"], input[type="submit"], input[type="reset"], select, summary):focus-visible {
    outline: 3px solid var(--home-gold);
    outline-offset: 4px;
}
.sakan-home .booking-hero {
    position: relative;
    padding-bottom: 80px;
}
.sakan-home .booking-hero::after {
    content: "";
    position: absolute;
    inset: auto 0 0;
    height: 110px;
    background: linear-gradient(transparent, var(--home-paper));
    pointer-events: none;
}
.sakan-home .booking-hero .booking-eyebrow {
    border-color: #a0783240;
    background: #fffdf5eb;
    box-shadow: none;
}
.sakan-home .booking-hero .booking-intro h1 { color: var(--home-navy); }
.sakan-home .booking-hero .booking-intro h1 span { color: #8a6426; }
.sakan-home .booking-hero form.flight-search {
    border: 1px solid #c7b38d;
    border-top: 3px solid var(--home-gold);
    padding: 24px;
    border-radius: var(--home-radius);
    box-shadow: 0 18px 48px #17344d20;
}
.sakan-home .booking-hero .search-fields {
    grid-template-columns: minmax(0, 1.4fr) repeat(4, minmax(0, 1fr)) 110px;
    gap: 14px;
}
.sakan-home .booking-hero .hero-stay-type {
    grid-column: 5;
    grid-row: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-width: 0;
    height: 80px;
    padding-inline: 6px;
    gap: 7px;
}
.sakan-home .booking-hero .flight-search .search-button {
    grid-column: 6;
    max-width: none;
    height: 50px;
    border-color: var(--home-navy);
    font-weight: 700;
}
.sakan-home .booking-hero .flight-search :is(.hero-stay-type .booking-list-trigger, .hero-stay-type select, .hero-guests .booking-list-trigger, .stay-date-trigger, .search-field input:not([type="date"])) {
    width: 100%;
    min-width: 0;
    height: 50px;
    min-height: 50px;
    padding: 10px 12px;
    border: 1px solid #c9cfd4;
    border-radius: 12px;
    background: #fff;
    color: var(--home-navy);
    font-size: 13px;
    font-weight: 600;
}
.sakan-home .booking-hero .flight-search .hero-stay-type .booking-list-trigger {
    display: flex;
    justify-content: space-between;
    flex-shrink: 0;
}
.sakan-home .booking-hero .flight-search :is(.booking-list-trigger, .stay-date-trigger, .search-field input):hover {
    border-color: var(--home-gold);
}
.sakan-home .booking-hero .flight-search :is(.search-field > span:first-child, .hero-field-caption) {
    font-weight: 700;
    color: var(--home-navy);
}
@media (max-width: 1100px) {
    .sakan-home .booking-hero .search-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .sakan-home .booking-hero .route-fields { grid-column: 1; grid-row: 1; }
    .sakan-home .booking-hero .hero-stay-type { grid-column: 2; grid-row: 1; }
    .sakan-home .booking-hero .departure-field { grid-column: 1; grid-row: 2; }
    .sakan-home .booking-hero .return-field { grid-column: 2; grid-row: 2; }
    .sakan-home .booking-hero .hero-guests { grid-column: 1; grid-row: 3; }
    .sakan-home .booking-hero .flight-search .search-button { grid-column: 2; grid-row: 3; }
}
@media (max-width: 760px) {
    .sakan-home .booking-hero form.flight-search { padding: 16px; }
    .sakan-home .booking-hero .search-fields { gap: 16px 8px; }
}
.sakan-home .booking-hero .flight-search .search-button,
.sakan-home .why-us-primary {
    background: var(--home-navy);
    color: #fff;
    border-radius: 12px;
}
.sakan-home .booking-hero .flight-search .search-button:hover,
.sakan-home .why-us-primary:hover { background: #264d6b; }
.sakan-home .hero-benefits > :is(div, a) {
    border-color: #ffffffa8;
    background: #fffdf5ed;
    color: var(--home-navy);
    box-shadow: var(--home-shadow);
}
.sakan-home .hero-benefits svg { color: var(--home-gold); }
.sakan-home .compact-stay-search {
    border-color: #ffffffa6;
    background: linear-gradient(135deg, #ffffffb3 0%, #fffdf573 48%, #ffffff4d 100%);
    backdrop-filter: blur(16px) saturate(145%);
    -webkit-backdrop-filter: blur(16px) saturate(145%);
    box-shadow: inset 0 1px 0 #ffffffe0, inset 0 -1px 0 #c5a46740, 0 8px 24px #17344d18;
}
.sakan-home .compact-stay-search:focus-within {
    border-color: #c6aa76;
    box-shadow: inset 0 1px 0 #ffffffe0, 0 0 0 3px #c6aa762b, 0 8px 24px #17344d18;
}
.sakan-home .compact-stay-filter {
    background: #ffffff66;
    border-color: #ffffff99;
}
.sakan-home .compact-stay-filter svg { fill: none; }
.sakan-home .compact-stay-query input::placeholder { color: #42596b; opacity: 1; }
/* Compact glass benefit badges across all screen sizes. */
    .sakan-home .booking-hero .hero-benefits {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 8px;
        margin-top: 18px;
    }
    .sakan-home .hero-benefits > :is(div, a) {
        position: relative;
        flex-direction: row;
        gap: 6px;
        min-height: 44px;
        min-width: 0;
        max-width: 100%;
        box-sizing: border-box;
        padding: 7px 12px;
        border: 1px solid #ffffffa6;
        border-radius: 999px;
        background: linear-gradient(135deg, #ffffffb3 0%, #fffdf573 48%, #ffffff4d 100%);
        backdrop-filter: blur(16px) saturate(145%);
        -webkit-backdrop-filter: blur(16px) saturate(145%);
        box-shadow: inset 0 1px 0 #ffffffe0, inset 0 -1px 0 #c5a46740, 0 4px 12px #17324b14;
        font-size: 11px;
        font-weight: 600;
        line-height: 1.5;
    }
    .sakan-home .hero-benefits > :is(div, a)::after {
        content: "";
        position: absolute;
        inset: 3px;
        border: 1px solid #c5a46730;
        border-radius: inherit;
        pointer-events: none;
    }
    .sakan-home .hero-benefits > a:hover {
        background: linear-gradient(135deg, #ffffffcc, #fffdf580);
        border-color: #e4cca0;
    }
    .sakan-home .hero-benefits svg {
        width: 18px;
        height: 18px;
        flex-shrink: 0;
    }
    .sakan-home .hero-benefits > a:focus-visible {
        outline: 2px solid var(--home-gold);
        outline-offset: 3px;
    }
.sakan-home :is(.site-partners, .city-deals, .popular-destinations, .information-section) {
    padding-block: 64px;
    background: var(--home-paper);
}
.sakan-home :is(.city-deals, .popular-destinations, .information-section) {
    border-top: 1px solid var(--home-line);
}
.sakan-home :is(.site-partners, .city-deals, .popular-destinations, .why-us) h2 {
    color: var(--home-navy);
    font-size: clamp(23px, 2.4vw, 32px);
    line-height: 1.65;
    font-weight: 800;
}
.sakan-home .home-section-label,
.sakan-home .why-us-eyebrow {
    display: block;
    margin-bottom: 12px;
    text-align: center;
    color: #876329;
    font-size: 13px;
    font-weight: 700;
}
.sakan-home .home-section-label-start { text-align: start; }
.sakan-home :is(.kuwait-stays-intro, .why-us-intro, .site-benefit p, .why-us-feature p) {
    color: var(--home-muted);
    line-height: 1.95;
    font-size: 14px;
}
.sakan-home .kuwait-stay-areas { gap: 12px; margin-block: 30px; }
.sakan-home .kuwait-stay-areas li {
    padding: 14px 18px;
    border: 1px solid var(--home-line);
    border-radius: 12px;
    background: #fff;
    color: var(--home-navy);
}
.sakan-home .kuwait-stay-areas svg { color: var(--home-gold); }
.sakan-home .site-benefits { gap: 22px; margin-top: 40px; }
.sakan-home .site-benefit {
    padding: 24px;
    background: #fff;
    border: 1px solid var(--home-line);
    border-radius: var(--home-radius);
    box-shadow: var(--home-shadow);
}
.sakan-home .site-benefit h3 { color: var(--home-navy); }
.sakan-home .booking-notice-section { padding-block: 0 40px; background: var(--home-paper); }
.sakan-home .booking-notice {
    padding: 24px;
    border: 1px solid #e6d9bf;
    border-radius: var(--home-radius);
    background: var(--home-gold-soft);
    color: var(--home-navy);
    box-shadow: none;
}
.sakan-home .booking-notice > svg { color: var(--home-gold); }
.sakan-home .city-deals-heading > a { color: #876329; }
.sakan-home :is(.city-deal-card, .why-us-feature) {
    border: 1px solid var(--home-line);
    border-radius: var(--home-radius);
    box-shadow: var(--home-shadow);
    background: #fff;
}
.sakan-home :is(.city-deal-body h3, .city-deal-price strong, .why-us-feature h3, .why-us-contact) { color: var(--home-navy); }
.sakan-home .city-deal-open {
    color: var(--home-navy);
    background: var(--home-gold-soft);
    border-color: #e6d9bf;
    border-radius: 12px;
}
.sakan-home .city-deal-open:hover { background: #eaddc3; }
.sakan-home .destination-track {
    max-width: 1200px;
    margin-inline: auto;
    padding-inline: 24px;
    scroll-padding-inline: 24px;
}
.sakan-home .destination-card { flex-basis: 270px; height: 360px; border-radius: var(--home-radius); }
.sakan-home .destination-card::after { background: linear-gradient(180deg, #17344d05, #17344d99 45%, #10283eef); }
.sakan-home .destination-card:nth-child(2) > img { object-position: 65% center; }
.sakan-home .destination-card:nth-child(3) > img { object-position: 35% center; }
.sakan-home .destination-explore { color: #f1d49d; }
.sakan-home .why-us-icon { background: var(--home-gold-soft); color: var(--home-gold); }
.sakan-home .site-footer-main {
    border-top: 3px solid var(--home-gold);
    background: linear-gradient(135deg, #17344d, #0e2436);
}
.sakan-home .site-footer { background: #0e2436; }
.sakan-home .site-footer::before { background: radial-gradient(circle, #a078321f, transparent 68%); }
.sakan-home .site-footer h3::after { background: #cfaa66; }
.sakan-home :is(.site-footer-column a span, .site-footer-trust > span, .site-footer-app-title > span) { color: #cfaa66; }
.sakan-home .site-footer-trust { background: #a0783214; border-color: #cfaa6640; }
.sakan-home .site-footer a:hover { color: #efd39d; }
.sakan-home .site-footer-social a:hover { background: #264d6b; border-color: #cfaa66; }
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
    .sakan-home :is(.site-benefit, .why-us-feature) { transition: transform 180ms ease, box-shadow 180ms ease; }
    .sakan-home :is(.site-benefit, .why-us-feature):hover { transform: translateY(-4px); box-shadow: 0 12px 30px #17344d12; }
}
@media (max-width: 760px) {
    .sakan-home :is(.site-partners, .city-deals, .popular-destinations, .information-section) { padding-block: 40px; }
    .sakan-home .booking-hero { padding-bottom: 48px; }
    .sakan-home .site-benefit { padding: 18px; }
    .sakan-home .booking-notice { width: calc(100% - 32px); padding: 20px; }
    .sakan-home .destination-card { flex-basis: min(78vw, 290px); height: 330px; }
    .sakan-home .city-deals-heading { align-items: start; gap: 12px; }
    .sakan-home .home-section-label { font-size: 12px; }
}
.city-deal-card { position: relative; }
.city-deal-open::after { content: ''; position: absolute; inset: 0; z-index: 1; }
.city-deal-card:focus-within { outline: 3px solid #a07832; outline-offset: 3px; }
