/* A luminous blue finish, with edge-to-edge page banners. */
body:not(.admin-body) {
    background: #fbfdff;
}
header {
    box-shadow: 0 4px 24px #126ba70d;
    position: relative;
    z-index: 5;
}
.button {
    background: linear-gradient(115deg, #126daf, #1595d6);
    box-shadow:
        0 7px 24px #1585ca35,
        inset 0 1px 0 #ffffff24;
    transition:
        box-shadow 0.25s,
        background 0.25s,
        transform 0.25s;
}
.button:hover,
.button:focus-visible {
    background: linear-gradient(115deg, #106aa9, #19a5e8);
    box-shadow: 0 10px 32px #1596db50;
    transform: translateY(-2px);
}
.hero .button {
    background: linear-gradient(110deg, #137fca, #2bb7f2);
    box-shadow:
        0 0 0 1px #90d9ff30,
        0 10px 40px #16a5eb60;
}
.hero .button:hover {
    box-shadow:
        0 0 0 1px #b4e8ff50,
        0 12px 44px #25b9ff85;
}
.hero-shade {
    background:
        radial-gradient(ellipse at 88% 20%, #29aeef26, transparent 55%),
        linear-gradient(90deg, #061e38ed, #12395896 57%, #07325b33);
}
.hero h1 em {
    color: #9bdfff;
    text-shadow: 0 0 30px #32baff40;
}
.hero-kicker span {
    box-shadow:
        0 0 0 6px #49bfff20,
        0 0 22px #60caffb0;
}
.hero-place {
    border-color: #83d8ff45;
    box-shadow: 0 8px 30px #061e3833;
}
.search-bar {
    border: 1px solid #b9ddf5;
    box-shadow:
        0 14px 42px #126eaa1a,
        0 0 30px #37b7ff10;
}
.tour-card {
    border-color: #d0e5f4;
    box-shadow: 0 7px 25px #1665a00b;
    transition:
        border-color 0.25s,
        box-shadow 0.25s,
        transform 0.25s;
}
.tour-card:hover {
    border-color: #8fccf3;
    box-shadow:
        0 16px 36px #1675ba20,
        0 0 25px #48baff13;
    transform: translateY(-4px);
}
.stat-icon {
    background: linear-gradient(140deg, #f0f9ff, #dff0ff);
    box-shadow: 0 4px 17px #1694d817;
}
.destination-section {
    background:
        radial-gradient(ellipse at 8% 10%, #cfeaff88, transparent 52%),
        radial-gradient(ellipse at 95% 90%, #d8f2ff88, transparent 50%), #f3faff;
}
.destination {
    box-shadow: 0 9px 30px #126aa728;
    border: 1px solid #ffffffb0;
}
.story-image {
    box-shadow:
        12px 12px 0 #e0f2ff,
        0 10px 35px #187fba15;
}
.cta {
    background:
        radial-gradient(ellipse at 90% 5%, #37b8ec70, transparent 55%),
        linear-gradient(115deg, #0a315b, #167dbd);
    border: 1px solid #319ed340;
    box-shadow: 0 16px 40px #1675ba2b;
}
.cta .button {
    background: #fff;
    color: #145c92;
    box-shadow: 0 8px 25px #07264030;
}
.cta .button:hover {
    background: #eaf8ff;
}
.booking-panel {
    border-color: #c8e1f3;
    box-shadow: 0 10px 35px #1575b316;
}
.page-hero {
    width: 100%;
    max-width: none;
    margin: 0;
    border-radius: 0;
    padding: 64px 0 68px;
    position: relative;
    isolation: isolate;
    overflow: hidden;
    border: 0;
    border-bottom: 1px solid #79caff50;
    color: #fff;
    background:
        radial-gradient(ellipse at 86% 25%, #21a1e45c, transparent 57%),
        linear-gradient(100deg, #0b2b4af7, #105584e3),
        url('ai-taj.jpg') center 48% / cover no-repeat;
    box-shadow: inset 0 -1px 0 #ffffff10;
}
.page-hero:after {
    content: '';
    position: absolute;
    right: -100px;
    top: -150px;
    width: 540px;
    height: 540px;
    border: 1px solid #8cd7ff26;
    border-radius: 50%;
    box-shadow:
        0 0 0 75px #7ccfff06,
        0 0 0 150px #7ccfff04;
    z-index: -1;
    pointer-events: none;
}
.page-hero > .container {
    position: relative;
    z-index: 1;
}
.page-hero h1 {
    color: #fff;
    max-width: 1000px;
    font-weight: 650;
    line-height: 1.3;
    text-shadow: 0 2px 18px #05233c25;
}
.page-hero p {
    color: #e0effb;
    max-width: 850px;
    line-height: 1.85;
}
.page-hero .eyebrow {
    color: #96d9ff;
    margin-bottom: 16px;
}
.breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 11px;
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 30px;
    color: #e1effb;
    max-width: 1000px;
}
.breadcrumbs a {
    color: #b6e5ff;
    text-decoration: none;
    border-bottom: 1px solid transparent;
    font-size: inherit;
}
.breadcrumbs a:hover {
    color: #fff;
    border-bottom-color: #b6e5ff;
}
.breadcrumbs > span[aria-hidden] {
    color: #88c3e5;
}
.breadcrumbs > span[aria-current] {
    color: #eaf5ff;
    overflow-wrap: anywhere;
}
.tour-hero {
    width: 100%;
    background: radial-gradient(ellipse at 90% 20%, #1c8ccc50, transparent 60%), #0b3256;
    box-shadow: inset 0 -1px 0 #89d5ff40;
}
.tour-hero > .container {
    padding-top: 40px;
    padding-bottom: 45px;
}
.tour-hero .breadcrumbs {
    margin-bottom: 24px;
}
.tour-hero .eyebrow {
    margin-top: 0;
}
.tour-hero > img {
    opacity: 0.32;
}
.newsletter {
    background: linear-gradient(120deg, #eef8ff, #e5f4ff);
}
.whatsapp {
    box-shadow:
        0 0 0 5px #51c2ff15,
        0 7px 25px #1675ba50;
}
@media (max-width: 800px) {
    .page-hero {
        padding: 45px 0 50px;
    }
    .page-hero h1 {
        font-size: 39px;
    }
    .breadcrumbs {
        font-size: 14px;
        gap: 9px;
        margin-bottom: 24px;
    }
}
@media (max-width: 500px) {
    .page-hero {
        padding: 35px 0 42px;
    }
    .page-hero h1 {
        font-size: 33px;
    }
    .page-hero p {
        font-size: 17px;
    }
    .page-hero:after {
        right: -280px;
    }
    .breadcrumbs {
        font-size: 13px;
        gap: 8px;
        margin-bottom: 22px;
    }
    .tour-hero > .container {
        padding: 30px 0 35px;
    }
    .tour-hero .breadcrumbs {
        margin-bottom: 20px;
    }
    .story-image {
        box-shadow:
            7px 7px 0 #e0f2ff,
            0 8px 24px #187fba15;
    }
}
@media (prefers-reduced-motion: reduce) {
    .button,
    .tour-card {
        transition: none;
    }
    .button:hover,
    .tour-card:hover {
        transform: none;
    }
}
