.bd-day-tours-page {
    background: #fff;
    color: var(--bd-text);
}

.bd-light-hero,
.bd-image-hero {
    position: relative;
    overflow: hidden;
}

.bd-light-hero {
    padding: 70px 0 54px;
    background: linear-gradient(180deg, #f7faff, #fff);
    text-align: center;
}

.bd-light-hero h1,
.bd-image-hero h1 {
    color: var(--bd-text);
    font-size: 42px;
    line-height: 1.35;
    font-weight: 900;
    margin: 12px 0 14px;
}

.bd-light-hero p,
.bd-image-hero p {
    max-width: 720px;
    margin: 0 auto;
    color: var(--bd-muted);
    font-size: 16px;
    line-height: 1.9;
}

.bd-image-hero {
    min-height: 360px;
    padding: 86px 0;
    background-size: cover;
    background-position: center;
    color: #fff;
}

.bd-image-hero__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(270deg, rgba(9, 21, 39, .88), rgba(9, 21, 39, .62), rgba(9, 21, 39, .18));
}

.bd-image-hero .container {
    position: relative;
    z-index: 2;
}

.bd-image-hero h1 {
    color: #fff;
    max-width: 860px;
}

.bd-image-hero p {
    margin: 0;
    color: rgba(255, 255, 255, .86);
    text-align: right;
}

.bd-breadcrumb {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
    color: var(--bd-muted);
    font-size: 14px;
}

.bd-breadcrumb--light {
    justify-content: flex-start;
    color: rgba(255, 255, 255, .78);
}

.bd-breadcrumb a,
.bd-breadcrumb span,
.bd-breadcrumb strong {
    color: inherit;
}

.bd-breadcrumb a:hover {
    color: var(--bd-blue);
}

.bd-breadcrumb--light a:hover {
    color: #fff;
}

.bd-section {
    padding: 46px 0;
}

.bd-soft-band {
    background: #f7faff;
}

.bd-section-heading {
    text-align: center;
    margin-bottom: 28px;
}

.bd-section-heading--right {
    text-align: right;
}

.bd-section-heading h2 {
    color: var(--bd-text);
    font-size: 28px;
    line-height: 1.35;
    font-weight: 900;
    margin: 0;
}

.bd-section-heading span {
    display: block;
    width: 46px;
    height: 3px;
    border-radius: 999px;
    background: var(--bd-red);
    margin: 12px auto 0;
}

.bd-section-heading--right span {
    margin-right: 0;
}

.bd-search-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 220px 120px;
    gap: 12px;
    max-width: 920px;
    margin: -76px auto 34px;
    padding: 16px;
    border: 1px solid rgba(18, 48, 84, .08);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 18px 55px rgba(14, 37, 68, .12);
    position: relative;
    z-index: 3;
}

.bd-search-field {
    position: relative;
}

.bd-search-field i {
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    color: #8a99ad;
}

.bd-search-panel input,
.bd-search-panel select {
    width: 100%;
    min-height: 48px;
    border: 1px solid #dce6f2;
    border-radius: 8px;
    background: #fff;
    color: var(--bd-text);
    padding: 10px 42px 10px 14px;
}

.bd-search-panel select {
    padding-right: 14px;
}

.bd-search-panel button,
.bd-card__button,
.bd-booking-card__button,
.bd-cta-band a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    border: 1px solid var(--bd-blue);
    border-radius: 8px;
    background: var(--bd-blue);
    color: #fff;
    font-weight: 800;
    transition: .2s ease;
}

.bd-search-panel button:hover,
.bd-card__button:hover,
.bd-booking-card__button:hover,
.bd-cta-band a:hover {
    background: var(--bd-blue-dark);
    color: #fff;
}

.bd-card-grid {
    display: grid;
    gap: 24px;
}

.bd-city-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.bd-product-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.bd-card {
    overflow: hidden;
    border: 1px solid rgba(17, 43, 78, .08);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 16px 42px rgba(14, 37, 68, .1);
    transition: transform .2s ease, box-shadow .2s ease;
}

.bd-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 22px 60px rgba(14, 37, 68, .14);
}

.bd-card__image {
    position: relative;
    display: block;
    height: 210px;
    overflow: hidden;
    background: #eef3f8;
}

.bd-product-card .bd-card__image {
    height: 170px;
}

.bd-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .35s ease;
}

.bd-card:hover .bd-card__image img {
    transform: scale(1.04);
}

.bd-card__body {
    padding: 18px;
    direction: rtl;
    text-align: right;
}

.bd-card__meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    min-height: 22px;
    color: #708098;
    font-size: 13px;
    direction: rtl;
    justify-content: flex-start;
    text-align: right;
}

.bd-card__meta span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.bd-card__meta i {
    color: var(--bd-blue);
}

.bd-card h3 {
    margin: 9px 0;
    color: var(--bd-text);
    font-size: 19px;
    line-height: 1.45;
    font-weight: 900;
    text-align: right;
}

.bd-product-card h3 {
    min-height: 54px;
    font-size: 16px;
}

.bd-card h3 a {
    color: inherit;
}

.bd-card h3 a:hover {
    color: var(--bd-blue);
}

.bd-card p {
    color: var(--bd-muted);
    font-size: 14px;
    line-height: 1.8;
    margin-bottom: 14px;
    text-align: right;
}

.bd-count-row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 16px;
}

.bd-count-row span {
    padding: 6px 10px;
    border-radius: 999px;
    background: #f2f7fd;
    color: var(--bd-text);
    font-size: 12px;
    font-weight: 700;
}

.bd-card__button {
    width: 100%;
}

.bd-type-badge,
.bd-rating-badge {
    position: absolute;
    top: 12px;
    z-index: 2;
    padding: 6px 10px;
    border-radius: 999px;
    color: #fff;
    font-size: 12px;
    font-weight: 800;
}

.bd-type-badge {
    right: 12px;
    background: var(--bd-red);
}

.bd-rating-badge {
    left: 12px;
    background: rgba(9, 21, 39, .76);
}

.bd-rating-badge i {
    color: #ffd25d;
}

.bd-product-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 12px;
    direction: rtl;
    text-align: right;
}

.bd-product-footer strong {
    color: var(--bd-red);
    font-size: 18px;
    font-weight: 900;
}

.bd-product-footer a {
    color: var(--bd-blue);
    font-weight: 800;
}

.bd-empty-state {
    padding: 36px 24px;
    border: 1px dashed #cfdbea;
    border-radius: 14px;
    background: #f9fbff;
    text-align: center;
}

.bd-empty-state h2,
.bd-empty-state h3 {
    color: var(--bd-text);
    font-size: 22px;
    margin-bottom: 8px;
}

.bd-empty-state p {
    margin: 0;
    color: #68788f;
}

.bd-city-filter-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 26px;
    padding: 18px;
    border: 1px solid #edf2f8;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 16px 42px rgba(14, 37, 68, .08);
    direction: rtl;
    text-align: right;
}

.bd-city-filter-bar span {
    display: inline-flex;
    color: var(--bd-red);
    font-weight: 800;
    margin-bottom: 6px;
}

.bd-city-filter-bar h2 {
    margin: 0;
    color: var(--bd-text);
    font-size: 24px;
    line-height: 1.45;
    font-weight: 900;
}

.bd-city-filter-bar form {
    flex: 0 0 260px;
}

.bd-city-filter-bar label {
    display: block;
    margin-bottom: 6px;
    color: #708098;
    font-size: 13px;
    font-weight: 800;
}

.bd-city-filter-bar select {
    width: 100%;
    min-height: 46px;
    padding: 8px 12px;
    border: 1px solid #dce6f2;
    border-radius: 9px;
    background: #fff;
    color: var(--bd-text);
    font-weight: 800;
}

.bd-city-tabs {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 10px;
    direction: rtl;
}

.bd-city-tabs a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 44px;
    padding: 0 16px;
    border: 1px solid #dce6f2;
    border-radius: 999px;
    background: #fff;
    color: var(--bd-text);
    font-size: 14px;
    font-weight: 900;
    white-space: nowrap;
    transition: .2s ease;
}

.bd-city-tabs a small {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    height: 24px;
    padding: 0 7px;
    border-radius: 999px;
    background: #f2f7fd;
    color: var(--bd-blue);
    font-size: 12px;
    font-weight: 900;
}

.bd-city-tabs a:hover,
.bd-city-tabs a.is-active {
    border-color: var(--bd-red);
    background: var(--bd-red);
    color: #fff;
}

.bd-city-tabs a:hover small,
.bd-city-tabs a.is-active small {
    background: rgba(255, 255, 255, .18);
    color: #fff;
}

.bd-city-results-group + .bd-city-results-group {
    margin-top: 42px;
}

.bd-seo-band {
    text-align: center;
    background: #f7faff;
}

.bd-seo-band p {
    max-width: 920px;
    margin: 0 auto;
    color: #5e6f86;
    font-size: 15px;
    line-height: 2;
}

.bd-hero-stats {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 18px;
}

.bd-hero-stats span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 13px;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 999px;
    background: rgba(255, 255, 255, .08);
    color: #fff;
    backdrop-filter: blur(8px);
    font-weight: 700;
}

.bd-rich-copy {
    max-width: 980px;
    color: #52657c;
    font-size: 15px;
    line-height: 2.05;
    direction: rtl;
    text-align: right;
}

.bd-rich-copy p,
.bd-rich-copy li,
.bd-rich-copy div,
.bd-rich-copy span,
.bd-rich-copy strong {
    direction: rtl;
    text-align: right;
}

.bd-rich-copy p:last-child,
.bd-rich-copy ul:last-child,
.bd-rich-copy ol:last-child {
    margin-bottom: 0;
}

.bd-rich-copy ul,
.bd-rich-copy ol {
    padding-right: 20px;
}

.bd-lead-copy {
    color: #40556e;
    font-size: 17px;
    line-height: 2;
    margin-bottom: 16px;
    direction: rtl;
    text-align: right;
}

.bd-quick-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.bd-quick-grid div {
    min-height: 132px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 7px;
    border: 1px solid rgba(17, 43, 78, .08);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 12px 34px rgba(14, 37, 68, .08);
    text-align: center;
}

.bd-quick-grid i {
    color: var(--bd-blue);
    font-size: 28px;
}

.bd-quick-grid strong {
    color: var(--bd-text);
    font-size: 21px;
    font-weight: 900;
}

.bd-quick-grid span {
    color: #71829a;
    font-size: 13px;
}

.bd-cta-band {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 30px;
    border-radius: 16px;
    background: linear-gradient(270deg, var(--bd-navy), var(--bd-navy-2));
    color: #fff;
}

.bd-cta-band h2 {
    color: #fff;
    font-size: 25px;
    font-weight: 900;
    margin-bottom: 8px;
}

.bd-cta-band p {
    margin: 0;
    color: rgba(255, 255, 255, .78);
}

.bd-cta-band a {
    min-width: 180px;
    background: var(--bd-red);
    border-color: var(--bd-red);
}

.bd-cta-band a:hover {
    background: var(--bd-red-dark);
}

.bd-detail-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 340px;
    gap: 28px;
    align-items: start;
    direction: ltr;
}

.bd-detail-main,
.bd-booking-card {
    direction: rtl;
    text-align: right;
}

.bd-detail-gallery,
.bd-detail-block,
.bd-booking-card,
.bd-info-card {
    border: 1px solid rgba(17, 43, 78, .08);
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 16px 44px rgba(14, 37, 68, .1);
}

.bd-detail-gallery {
    overflow: hidden;
    margin-bottom: 24px;
}

.bd-detail-gallery img {
    width: 100%;
    height: 430px;
    object-fit: cover;
    display: block;
}

.bd-detail-gallery-main {
    display: block;
}

.bd-detail-gallery-thumbs {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    padding: 12px;
    background: #fff;
}

.bd-detail-gallery-thumbs a {
    display: block;
    overflow: hidden;
    aspect-ratio: 4 / 3;
    border: 1px solid rgba(17, 43, 78, .1);
    border-radius: 10px;
}

.bd-detail-gallery .bd-detail-gallery-thumbs img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .2s ease;
}

.bd-detail-gallery-thumbs a:hover img {
    transform: scale(1.04);
}

.bd-detail-block {
    padding: 28px;
    direction: rtl;
    text-align: right;
}

.bd-booking-card {
    position: sticky;
    top: 24px;
    padding: 26px;
}

.bd-booking-card__label {
    display: inline-flex;
    margin-bottom: 12px;
    padding: 6px 10px;
    border-radius: 999px;
    background: #f2f7fd;
    color: var(--bd-blue);
    font-weight: 800;
    font-size: 13px;
}

.bd-booking-card__price {
    color: var(--bd-red);
    font-size: 36px;
    line-height: 1;
    font-weight: 900;
    margin-bottom: 18px;
}

.bd-booking-card ul {
    list-style: none;
    padding: 0;
    margin: 0 0 18px;
    direction: rtl;
    text-align: right;
}

.bd-booking-card li {
    display: grid;
    grid-template-columns: 30px 1fr;
    gap: 8px;
    padding: 14px 0;
    border-bottom: 1px solid #edf2f8;
    direction: rtl;
    text-align: right;
}

.bd-booking-card li i {
    grid-row: span 2;
    color: var(--bd-blue);
    font-size: 19px;
    margin-top: 3px;
}

.bd-booking-card li span {
    color: var(--bd-muted);
    font-size: 13px;
    text-align: right;
}

.bd-booking-card li strong {
    color: var(--bd-text);
    font-size: 14px;
    text-align: right;
}

.bd-trust-list {
    display: grid;
    gap: 9px;
    margin-bottom: 20px;
    direction: rtl;
    text-align: right;
}

.bd-trust-list span {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #334964;
    font-size: 14px;
    direction: rtl;
    justify-content: flex-start;
    text-align: right;
}

.bd-trust-list i {
    color: #12834d;
}

.bd-booking-card__button {
    width: 100%;
}

.bd-info-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
    margin-top: 24px;
}

.bd-info-card {
    padding: 26px;
    direction: rtl;
    text-align: right;
}

.bd-info-card h2 {
    font-size: 21px;
    font-weight: 900;
    margin-bottom: 14px;
    text-align: right;
}

.bd-info-card--included {
    background: linear-gradient(270deg, #f4fff8, #fff);
    border-color: rgba(18, 131, 77, .16);
}

.bd-info-card--included h2,
.bd-info-card--included li::marker {
    color: #12834d;
}

.bd-info-card--excluded {
    background: linear-gradient(270deg, #fff5f5, #fff);
    border-color: rgba(var(--bd-red-rgb), .16);
}

.bd-info-card--excluded h2,
.bd-info-card--excluded li::marker {
    color: var(--bd-red);
}

.main-menu > ul > li > a.bd-active-nav {
    color: var(--bd-red);
}

.main-menu > ul > li > a.bd-active-nav:after {
    width: 100%;
}

@media (max-width: 1199px) {
    .bd-product-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .bd-detail-grid {
        grid-template-columns: minmax(0, 1fr) 320px;
    }
}

@media (max-width: 991px) {
    .bd-light-hero h1,
    .bd-image-hero h1 {
        font-size: 34px;
    }

    .bd-search-panel {
        grid-template-columns: 1fr;
        margin-top: -42px;
    }

    .bd-city-grid,
    .bd-product-grid,
    .bd-quick-grid,
    .bd-detail-grid,
    .bd-info-grid {
        grid-template-columns: 1fr 1fr;
    }

    .bd-booking-card {
        position: static;
    }

    .bd-detail-grid {
        direction: rtl;
    }

    .bd-detail-gallery img {
        height: 340px;
    }

    .bd-cta-band {
        align-items: stretch;
        flex-direction: column;
    }

    .bd-city-filter-bar {
        flex-direction: column;
        align-items: stretch;
    }

    .bd-city-tabs {
        justify-content: flex-start;
    }

    .bd-city-filter-bar form {
        flex-basis: auto;
    }

    .bd-cta-band a {
        width: 100%;
    }
}

@media (max-width: 575px) {
    .bd-light-hero {
        padding: 48px 0 38px;
    }

    .bd-image-hero {
        min-height: 300px;
        padding: 58px 0;
    }

    .bd-light-hero h1,
    .bd-image-hero h1 {
        font-size: 28px;
    }

    .bd-light-hero p,
    .bd-image-hero p {
        font-size: 14px;
    }

    .bd-section {
        padding: 34px 0;
    }

    .bd-city-grid,
    .bd-product-grid,
    .bd-quick-grid,
    .bd-detail-grid,
    .bd-info-grid {
        grid-template-columns: 1fr;
    }

    .bd-card__image {
        height: 190px;
    }

    .bd-product-card .bd-card__image {
        height: 178px;
    }

    .bd-product-card h3 {
        min-height: auto;
    }

    .bd-detail-gallery img {
        height: 250px;
    }

    .bd-detail-block,
    .bd-booking-card,
    .bd-info-card,
    .bd-cta-band {
        padding: 20px;
    }

    .bd-section-heading h2 {
        font-size: 23px;
    }

    .bd-city-tabs {
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-bottom: 4px;
        -webkit-overflow-scrolling: touch;
    }

    .bd-city-tabs a {
        min-height: 40px;
        padding: 0 13px;
        font-size: 13px;
    }
}
