body {
  margin: 0;
  line-height: normal;
}

 a { 
  text-decoration: none;
  color: unset;
}
input{
  outline: 0;
  background: transparent;
}

:root {
  /* fonts */
  --notosans-regular-18: "Noto Sans";

  /* font sizes */
  --font-size-sm: 14px;
  --font-size-xl: 20px;
  --font-size-base: 16px;
  --notosans-regular-18-size: 18px;
  --font-size-11xl: 30px;
  --font-size-13xl: 32px;
  --font-size-5xl: 24px;
  --font-size-mini-5: 14.5px;
  --font-size-mini-9: 14.9px;
  --font-size-mid-2: 17.2px;

  /* Colors */
  --darkgrey100-scales-10: #fff;
  --darkblue100: #00056f;
  --offwhite100: #f7f7f7;
  --darkgrey100-scales-20: #ececec;
  --darkgrey100-scales-70: #868686;
  --black: #000;
  --darkgrey100-scales-90: #5d5d5d;
  --darkgrey100: #343434;
  --color-darkslategray-100: rgba(52, 52, 52, 0.5);
  --darkgrey100-scales-60: #9a9a9a;

  /* Gaps */
  --gap-51xl: 70px;
  --gap-3xs: 10px;
  --gap-21xl: 40px;
  --gap-mini: 15px;
  --gap-31xl: 50px;
  --gap-xs: 12px;
  --gap-5xl: 24px;
  --gap-41xl: 60px;
  --gap-base: 16px;
  --gap-7xs: 6px;
  --gap-10xs: 3px;
  --gap-6xl: 25px;
  --gap-mid-2: 17.2px;
  --gap-27xl: 46px;
  --gap-mid: 17px;
  --gap-xl: 20px;
  --gap-xs-2: 11.2px;
  --gap-smi-7: 12.7px;
  --gap-5xs-5: 7.5px;
  --gap-10xs-2: 2.2px;
  --gap-6xs-2: 6.2px;
  --gap-mini-9: 14.9px;
  --gap-6xs-9: 6.9px;

  /* Paddings */
  --padding-5xl: 24px;
  --padding-8xs-3: 4.3px;
  --padding-5xs-5: 7.5px;
  --padding-mid-9: 17.9px;

  /* Border radiuses */
  --br-7xs: 6px;
  --br-28xl-6: 47.6px;
  --br-52xl-4: 71.4px;
  --br-base: 16px;
  --br-40xl: 59px;
  --br-6xs-9: 6.9px;
  --br-7xs-1: 5.1px;
  --br-8xs-3: 4.3px;
  --br-8xs-5: 4.5px;
  --br-55xl-6: 74.6px;
  --br-77xl-1: 96.1px;
}

/* =========================================================
   SHARED BLOCKS MOVED FROM home.css
========================================================= */

/* =========================================================
   TOP NAV / HEADER
========================================================= */

.frame-parent {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    max-width: 1222px;
    min-height: 84px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 20px;
    gap: 20px;
    z-index: 20;
    box-sizing: border-box;
}


.header1 .frame-parent::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100vw;
    height: 100%;
    background: #0B1E6D;
    z-index: -1;
}

.frame-wrapper {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.travelvego-logo-1-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
}

.travelvego-logo-1-icon {
    width: 134px;
    height: auto;
    object-fit: contain;
}

.frame-container1 {
    display: none;
}

.frame-group {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 28px;
    flex: 1;
}

.frame-container {
    display: flex;
    align-items: center;
    justify-content: center;
}

.language-1-parent {
    display: flex;
    align-items: center;
    justify-content: center;
}

.frame-group a,
.frame-group button,
.our-blog a {
    color: #ffffff;
    font-size: 16px;
    line-height: 1.4;
    font-weight: 600;
}

.open-button {
    border: 0;
    background: rgba(255, 255, 255, 0.16);
    color: #ffffff;
    padding: 10px 14px;
    border-radius: 12px;
    cursor: pointer;
    font-weight: 600;
    backdrop-filter: blur(8px);
}

.notification-2-2-icon {
    width: 28px;
    height: 28px;
    object-fit: contain;
}

.wrapper-no {
    position: absolute;
    top: 15px;
    right: 200px;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #fff;
    font-size: 11px;
    font-weight: 700;
}

.nu-notifications {
    line-height: 1;
}

.log-in {
    border: 0;
    background: transparent;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 8px;
    color: #ffffff;
}

.ellipse-parent-profile {
    display: flex;
    align-items: center;
    gap: 10px;
}

.profile-img {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    object-fit: cover;
}

.profile-name {
    font-weight: 600;
    color: #ffffff;
}

.w3-teal {
    display: none;
}

.w3-button,
.w3-bar-item {
    border: 0;
    background: transparent;
    cursor: pointer;
    color: #ffffff;
}

.w3-bar-itemimg {
    width: 24px;
    height: 24px;
    object-fit: contain;
}

.main-dowinload,
.main-home,
.main-Notifications,
.main-login {
    display: none;
}

/* =========================================================
   LOGIN MODAL
========================================================= */

.modallogin {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 9999;
    background: rgba(0, 0, 0, 0.45);
    padding: 30px 15px;
    overflow-y: auto;
}

.modal-contentlogin {
    width: 100%;
    max-width: 483px;
    margin: 40px auto;
    background: #fff;
    border-radius: 20px;
    padding: 28px 24px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12);
    position: relative;
}

.closelogin {
    position: absolute;
    top: 14px;
    right: 14px;
    cursor: pointer;
}

.container-child {
    width: 28px;
    height: 28px;
    object-fit: contain;
}

.sign-in-wrapper {
    margin-bottom: 20px;
    font-size: 24px;
    color: #343434;
}

.google-login-parent {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.google-login {
    min-height: 48px;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px;
}

.frame-parent109 {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.phone-number-parent {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.company {
    font-size: 16px;
    font-weight: 600;
    color: #343434;
}

.country-code-parent {
    display: flex;
    align-items: stretch;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    overflow: hidden;
    min-height: 52px;
}

.country-code {
    width: 110px;
    border-inline-end: 1px solid #e5e7eb;
    background: #fff;
}

.country-code select {
    width: 100%;
    height: 100%;
    border: 0;
    outline: 0;
    padding: 0 10px;
    background: transparent;
}

.frame {
    flex: 1;
    display: flex;
    align-items: center;
    padding: 0 14px;
}

.sign-in-with {
    width: 100%;
}

.sign-in-with input {
    width: 100%;
    border: 0;
    outline: 0;
    background: transparent;
}

.eye-password-hide-1-parent {
    border: 1px solid #d1d5db;
    border-radius: 8px;
    min-height: 52px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 14px;
    gap: 12px;
}

.password-1-parent {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 1;
}

.eye-password-hide-1-icon,
.eye-password-hide-2-icon {
    width: 20px;
    height: 20px;
    object-fit: contain;
}

.forgot-your-password {
    font-size: 14px;
    font-weight: 600;
    text-align: end;
}

.forgot-your-password a {
    color: #00056f;
}

.log-in-wrapper,
.log-in-wrapper3 {
    width: 100%;
    height: 51px;
    border: 0;
    border-radius: 999px;
    color: #fff;
    font-weight: 700;
    cursor: pointer;
}

.log-in-wrapper {
    background: #00056f;
}

.log-in-wrapper3 {
    background: #ff0000;
}

.frame-parent110,
.frame-parent111,
.frame-parent112 {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.line-parent {
    display: flex;
    align-items: center;
    gap: 12px;
}

.line-div,
.frame-child37 {
    flex: 1;
    height: 1px;
    background: #d1d5db;
}

.Not-Member {
    white-space: nowrap;
    font-size: 14px;
    color: #343434;
}

.join-to-get-container,
.by-signing-in-container {
    font-size: 14px;
    line-height: 1.7;
    color: #4b5563;
}

.terms-conditions {
    text-decoration: underline;
    color: #00056f;
}

/* =========================================================
   LANGUAGE / CURRENCY MODAL
========================================================= */

.container#myForm {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    width: 100%;
    max-width: 485px;
    transform: translate(-50%, -50%);
    z-index: 9999;
    background: #fff;
    border: 3px solid #00056f;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 18px 50px rgba(0, 0, 0, 0.18);
}

.container-inner {
    margin-bottom: 20px;
}

.choose-your-preference-parent {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.choose-your-preference {
    font-size: 22px;
    font-weight: 700;
    color: #343434;
}

.btnclose {
    border: 0;
    background: transparent;
    cursor: pointer;
}

.frame-parentlan {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 20px;
}

.frame-wrapper46,
.frame-wrapper47 {
    flex: 1;
}

.language-1-group {
    display: flex;
    align-items: center;
    justify-content: center;
}

.btn {
    display: flex;
    align-items: center;
    gap: 8px;
    border: 0;
    background: transparent;
    cursor: pointer;
    padding: 10px 14px;
    font-weight: 700;
    color: #343434;
}

.btn.active,
.btn:hover {
    color: #00056f;
}

.Languageimg,
.Currencyimg {
    width: 22px;
    height: 22px;
    object-fit: contain;
}

.line-divlan {
    width: 1px;
    height: 35px;
    background: #d1d5db;
}

.frame-parent1100 {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
}

.filterDiv {
    display: none;
}

.show {
    display: inline-flex;
}

.frame-parent1100 a {
    padding: 8px 12px;
    border-radius: 10px;
    background: #f3f4f6;
    color: #343434;
    font-weight: 600;
}

/* =========================================================
   FOOTER
========================================================= */

.footer {
    position: relative;
    width: 100%;
    box-sizing: border-box;
    background: linear-gradient(180deg, #00056f 0%, #00045c 100%);
    color: #fff;
    padding: 68px 20px 34px;
    overflow: hidden;
}

body.login-modal-open {
    overflow: hidden;
}

.search-results-page {
    background: #f4f7fb;
    min-height: 60vh;
    padding: 28px 14px 56px;
}

.search-results-wrap {
    max-width: 1220px;
    margin: 0 auto;
    background: #ffffff;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 16px;
    padding: 24px;
}

.search-results-wrap h1 {
    margin: 0 0 14px;
    font-size: 30px;
    color: #0f172a;
}

.search-results-form {
    display: flex;
    gap: 10px;
    margin-bottom: 14px;
}

.search-results-form input {
    flex: 1;
    min-height: 44px;
    border: 1px solid rgba(15, 23, 42, 0.2);
    border-radius: 10px;
    padding: 10px 12px;
}

.search-results-form button {
    border: 0;
    border-radius: 10px;
    background: #00056f;
    color: #fff;
    padding: 10px 18px;
    font-weight: 700;
}

.search-results-meta {
    margin: 0 0 16px;
    color: #475569;
}

.search-empty-state {
    border: 1px dashed rgba(15, 23, 42, 0.2);
    border-radius: 12px;
    padding: 18px;
    color: #475569;
}

.search-results-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 14px;
}

.search-result-card {
    display: block;
    text-decoration: none;
    color: inherit;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 12px;
    padding: 14px;
    background: #fbfcfe;
    transition: transform .2s ease, box-shadow .2s ease;
}

.search-result-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.1);
}

.search-result-type {
    display: inline-block;
    font-size: 12px;
    font-weight: 700;
    color: #00056f;
    margin-bottom: 8px;
}

.search-result-card h2 {
    margin: 0 0 6px;
    font-size: 18px;
    line-height: 1.4;
}

.search-result-card p {
    margin: 0;
    color: #64748b;
}

@media (max-width: 768px) {
    .search-results-wrap {
        padding: 14px;
    }

    .search-results-wrap h1 {
        font-size: 24px;
    }
}

.telegram,
.viber,
.whatsapp {
    position: fixed;
    right: 20px;
    width: 48px;
    height: 48px;
    z-index: 30;
    object-fit: contain;
}

.telegram {
    bottom: 20px;
}

.viber {
    bottom: 76px;
}

.whatsapp {
    bottom: 132px;
}

.frame-parent122 {
    width: 100%;
    max-width: 1226px;
    margin: 0 auto 36px;
    display: grid;
    grid-template-columns: 1.4fr 1fr 0.8fr;
    gap: 52px;
    align-items: start;
}

.frame-parent123 {
    display: flex;
    flex-direction: column;
    gap: 26px;
}

.travelvego-logo-1-parent {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.travelvego-logo-1-icon1 {
    width: 150px;
    height: auto;
    object-fit: contain;
}

.provide-you-well {
    font-size: 16px;
    line-height: 1.8;
    color: #e5e7eb;
}

.frame-parent124 {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.location-1-parent,
.phone-2-parent,
.email-1-parent,
.frame-parent125 {
    display: flex;
    align-items: center;
    gap: 10px;
}

.frame-parent125 {
    flex-wrap: wrap;
    gap: 20px;
}

.location-1-icon,
.location-2-icon {
    width: 20px;
    height: 20px;
    object-fit: contain;
    flex-shrink: 0;
}

.tahrir-st-bab {
    font-size: 15px;
    line-height: 1.7;
    color: #f9fafb;
}

.frame-parent126 {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 34px;
}

.company-parent {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.about-us-parent,
.frame-parent127 {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.git-shops a,
.git-shops {
    font-size: 14px;
    line-height: 1;
    color: #d1d5db;
    transition: color 0.25s ease;
}

.download-now {
    font-size: 19px;
    font-weight: 700;
    color: #fff;
}

.frame-child75 {
    width: 173px;
    height: auto;
    object-fit: contain;
    transition: transform 0.25s ease, filter 0.25s ease;
}

.facebook-3-parent {
    width: 100%;
    max-width: 1226px;
    margin: 0 auto 24px;
    display: flex;
    align-items: center;
    gap: 18px;
    flex-wrap: wrap;
}

.facebook-3-icon {
    width: 25px;
    height: 25px;
    object-fit: contain;
}

.frame-parent128 {
    width: 100%;
    max-width: 1226px;
    margin: 0 auto 24px;
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
}

.frame-wrapper44 {
    width: 190px;
    height: 51px;
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 10px;
    overflow: hidden;
}

.frame-wrapper44 select {
    width: 100%;
    height: 100%;
    border: 0;
    outline: 0;
    background: transparent;
    color: #fff;
    padding: 0 16px;
    font-weight: 600;
}

.frame-wrapper44 select option {
    color: #111827;
}

.ways-you-can-pay-parent {
    width: 100%;
    max-width: 1226px;
    margin: 0 auto 24px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.ways-you-can h2 {
    margin: 0;
    font-size: 20px;
    line-height: 1.4;
    font-weight: 700;
    color: #fff;
}

.image-52-parent {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.image-52-icon,
.cash-1-icon {
    width: 46px;
    height: auto;
    object-fit: contain;
}

.image-1-parent {
    width: 100%;
    max-width: 1226px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    border-top: 1px solid rgba(255, 255, 255, 0.16);
    padding-top: 22px;
}

.image-1-icon {
    width: 24px;
    height: 24px;
    object-fit: contain;
}

.image-1-parent .git-shops {
    color: #fff;
}

/* =========================================================
   SHARED RESPONSIVE BLOCKS MOVED FROM home.css
========================================================= */

@media (hover: hover) and (pointer: fine) {
    .footer .git-shops a:hover,
    .footer .about-us-parent a:hover,
    .footer .frame-parent127 a:hover {
        color: #ffffff;
    }

    .frame-child75:hover {
        transform: translateY(-2px);
        filter: drop-shadow(0 10px 20px rgba(0, 0, 0, 0.22));
    }
}

@media (max-width: 1200px) {
    .frame-parent122 {
        grid-template-columns: 1fr 1fr;
    }
}

@media (min-width: 769px) {
    .frame-group .w3-bar-item {
        display: none !important;
    }
}

@media (max-width: 992px) {
    .wrapper-no {
    position: absolute;
    top: 345px;
    right: 72px;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #fff;
    font-size: 11px;
    font-weight: 700;
}
    .frame-parent {
        padding: 12px 14px;
    }

    .frame-group {
        gap: 16px;
    }

    .frame-parent122 {
        grid-template-columns: 1fr;
    }

    .frame-parent126 {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 768px) {
    html,
    body {
        overflow-x: hidden;
    }

    .frame-parent {
        left: 0;
        right: 0;
        transform: none;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
    }

    .header1 .frame-parent::before {
        left: 0;
        transform: none;
        width: 100%;
    }

    .frame-group {
        display: none;
        position: fixed;
        inset: 0;
        z-index: 1000;
        width: 100% !important;
        height: 100vh !important;
        padding: 82px 18px 24px;
        background: rgba(0, 5, 111, 0.92);
        backdrop-filter: blur(6px);
        flex-direction: column;
        align-items: stretch;
        justify-content: flex-start;
        gap: 12px;
        overflow-y: auto;
    }

    .frame-group>.w3-bar-item {
        margin-right: 10%;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 40px;
        height: 40px;
        padding: 0;
        position: absolute;
        top: 18px;
        inset-inline-end: 18px;
        background: rgba(255, 255, 255, 0.18);
        border-radius: 10px;
    }

    .frame-group>a,
    .frame-group>.travelvego-logo-1-wrapper,
    .frame-group>.frame-container,
    .frame-group>.log-in,
    .frame-group>.ellipse-parent-profile {
        width: 80%;
        min-height: 35px;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        padding: 10px 14px;
        border-radius: 12px;
        background: rgba(255, 255, 255, 0.09);
    }

    .frame-group .travelvego-logo-1-wrapper {
        justify-content: flex-start;
    }

    .frame-group .frame-container,
    .frame-group .language-1-parent {
        justify-content: flex-start;
        width: 80%;
    }

    .frame-group .open-button {
        width: 100%;
        text-align: start;
        border-radius: 10px;
        padding: 11px 12px;
        background: rgba(255, 255, 255, 0.14);
    }

    .frame-group .log-in {
        border: 0;
    }

    .frame-group .profile-name {
        color: #ffffff;
    }

    .frame-group .main-dowinload,
    .frame-group .main-home,
    .frame-group .main-Notifications,
    .frame-group .main-login {
        display: inline;
    }

    .frame-container1 {
        display: none;
    }

    .frame-parent>.w3-teal {
        display: flex;
        align-items: center;
        margin-inline-start: auto;
    }

    .frame-parent>.w3-teal .w3-button {
        width: 40px;
        height: 40px;
        border-radius: 10px;
        background: rgba(255, 255, 255, 0.2);
        font-size: 26px;
        line-height: 1;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

    .telegram,
    .viber,
    .whatsapp {
        width: 42px;
        height: 42px;
        right: 12px;
    }

    .telegram {
        bottom: 60px;
    }

    .viber {
        bottom: 108px;
    }

    .whatsapp {
        bottom: 156px;
    }

    .frame-parent128 {
        flex-direction: column;
        align-items: stretch;
    }

    .frame-wrapper44 {
        width: 100%;
    }

    .frame-parent126 {
        grid-template-columns: 1fr;
    }
}

/* =========================================================
   MOBILE HEADER SAFETY OVERRIDES
   Keep language/currency button inside drawer only
========================================================= */
@media (max-width: 992px) {
    .frame-parent > .frame-container1 {
        display: none !important;
    }
}

@media (max-width: 768px) {
    .frame-parent > .frame-group {
        display: none !important;
    }

    .frame-parent > .frame-group[style*="display: flex"] {
        display: flex !important;
    }
}

@media (max-width: 576px) {
    .frame-parent {
        min-height: auto;
    }

    .travelvego-logo-1-icon {
        width: 115px;
    }

    .container#myForm {
        width: calc(100% - 55px);
        padding: 18px;
    }

    .modal-contentlogin {
        padding: 22px 16px;
    }

    .country-code-parent {
        flex-direction: column;
    }

    .country-code {
        width: 100%;
        border-inline-end: 0;
        border-bottom: 1px solid #e5e7eb;
        min-height: 46px;
    }

    .frame {
        min-height: 46px;
    }
}

/* =========================================================
   FRONT UI UNIFICATION LAYER (HOME AS VISUAL REFERENCE)
========================================================= */

:root {
    --front-max-width: 1222px;
    --front-section-gap: 42px;
    --front-section-px: 20px;
    --front-card-radius: 20px;
    --front-card-border: 1px solid rgba(15, 23, 42, 0.08);
    --front-card-shadow: 0 10px 26px rgba(16, 24, 40, 0.08);
    --front-input-radius: 12px;
}

.frame-parent3,
.popular-parent,
.trave-profile,
.Terms-and-Condtions,
.Get-In-Touch,
.Why-Travelvego,
.Why-Travelvego1,
.Speacial-Features,
.Subscribe-Today,
.all-Product,
.region-head,
.region-body,
.Customer-Reviews {
    width: 100%;
    max-width: var(--front-max-width);
    margin-left: auto;
    margin-right: auto;
    padding-left: var(--front-section-px);
    padding-right: var(--front-section-px);
    box-sizing: border-box;
}

.popular-parent,
.trave-profile,
.Terms-and-Condtions,
.Get-In-Touch,
.Why-Travelvego,
.Why-Travelvego1,
.Speacial-Features,
.Subscribe-Today,
.all-Product,
.region-head,
.region-body,
.Customer-Reviews {
    margin-top: 34px;
    margin-bottom: 34px;
}

.frame-parent3,
.section-title-parent,
.section-title-group {
    gap: var(--front-section-gap);
}

.section-title,
.section-title1,
.region-Description,
.details-trip,
.book,
.Booking-requestr,
.Booking-requestl,
.notification1,
.popupNotifications1,
.popupbooking-Success,
.popup-Booking-Confirmed-Successfully {
    border-radius: var(--front-card-radius);
    border: var(--front-card-border);
    box-shadow: var(--front-card-shadow);
    background: #fff;
}

.city h1,
.city h2,
.all-Product h2,
.popular1,
.popular2,
.news-name,
.my-profile,
.personal-information,
.termsandcondtion,
.Get-In-Touch h1,
.Speacial-Features1 h1,
.region-book h1,
.region-Description h2 {
    color: #0f172a;
    letter-spacing: -0.01em;
    line-height: 1.3;
}

.city p,
.region-Description p,
.blog-body-content,
.home-account,
.stay-flexible-on,
.text,
.text2,
.provide-you-well,
.tahrir-st-bab {
    color: rgba(15, 23, 42, 0.72);
    line-height: 1.25;
}

.read_more {
    line-height: 1.25;
    border: 0;
    border-radius: 999px;
    background: #1a1f7a;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    padding: 12px 24px;
    cursor: pointer;
    transition: box-shadow 0.25s ease, transform 0.25s ease, background 0.25s ease;
    text-align: center;
}


/* Keep footer text readable on dark background */
.footer .provide-you-well,
.footer .tahrir-st-bab,
.footer .git-shops,
.footer .git-shops a {
    color: #ffffff;
}

.search,
.submit,
.send,
.log-in-wrapper,
.log-in-wrapper3,
#load_more_button,
.more-blogs-wrapper1 button,
.checkbox-payment button,
.add-review,
.cancel-review,
.book button,
.save,
.Remove-Account {
    border-radius: 999px;
    min-height: 46px;
    padding: 10px 20px;
    font-weight: 700;
    border: 1px solid #00056f;
    transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.search,
.submit,
.send,
.log-in-wrapper,
#load_more_button,
.more-blogs-wrapper1 button,
.checkbox-payment button,
.add-review,
.book button,
.save {
    background: #00056f;
    color: #fff;
}

.cancel-review,
.Remove-Account {
    background: #fff;
    color: #00056f;
}

input[type="text"],
input[type="email"],
input[type="number"],
input[type="date"],
input[type="search"],
input[type="password"],
select,
textarea,
.type-an-invitation,
.contact-mail1,
.name-phone-email-child1,
.name-phone-email-item {
    border-radius: var(--front-input-radius);
    border: 1px solid #d1d5db;
    min-height: 46px;
    padding: 10px 14px;
    color: #111827;
    background: #fff;
    box-sizing: border-box;
}

textarea {
    min-height: 120px;
    resize: vertical;
}

.mx-trip-card,
.frame-parent7,
.section-title-parent .frame-child,
.articles-4,
.articles-02,
.articles-01-highlight {
    border-radius: var(--front-card-radius);
    overflow: hidden;
}

@media (hover: hover) and (pointer: fine) {
    .search:hover,
    .submit:hover,
    .send:hover,
    .log-in-wrapper:hover,
    #load_more_button:hover,
    .more-blogs-wrapper1 button:hover,
    .checkbox-payment button:hover,
    .add-review:hover,
    .book button:hover,
    .save:hover {
        transform: translateY(-1px);
        box-shadow: 0 10px 22px rgba(0, 5, 111, 0.22);
    }
}

@media (max-width: 992px) {
    .popular-parent,
    .trave-profile,
    .Terms-and-Condtions,
    .Get-In-Touch,
    .Why-Travelvego,
    .Why-Travelvego1,
    .Speacial-Features,
    .Subscribe-Today,
    .all-Product,
    .region-head,
    .region-body,
    .Customer-Reviews {
        margin-top: 24px;
        margin-bottom: 24px;
    }
}

@media (max-width: 768px) {
    .frame-parent3,
    .popular-parent,
    .trave-profile,
    .Terms-and-Condtions,
    .Get-In-Touch,
    .Why-Travelvego,
    .Why-Travelvego1,
    .Speacial-Features,
    .Subscribe-Today,
    .all-Product,
    .region-head,
    .region-body,
    .Customer-Reviews {
        padding-left: 14px;
        padding-right: 14px;
    }
}

/* Shared rating stars used by product/place/supplier/notifications pages */
.rate,
.rated {
    float: left;
    height: 46px;
    padding: 0 10px;
}

.rate:not(:checked) > input,
.rated:not(:checked) > input {
    position: absolute;
    display: none;
}

.rate:not(:checked) > label,
.rated:not(:checked) > label {
    float: right;
    width: 1em;
    overflow: hidden;
    white-space: nowrap;
    cursor: pointer;
    font-size: 30px;
}

.rate:not(:checked) > label {
    color: #ccc;
}

.rated:not(:checked) > label,
.rated > input:checked ~ label {
    color: #ffc700;
}

/* =========================================================
   FRONT LAYOUT ALIGNMENT PASS (HOME AS VISUAL REFERENCE)
========================================================= */

:root {
    --front-align-max-width: 1222px;
    --front-align-px: 20px;
    --front-align-gap: 34px;
}

.category-product,
.frame-parent2,
.places-city,
.all-Product,
.latest-post-1,
.region-head,
.containe,
.span4,
.region-body,
.Customer-Reviews,
.featured-product-city.product {
    width: 100%;
    max-width: var(--front-align-max-width);
    margin-left: auto;
    margin-right: auto;
    padding-left: var(--front-align-px);
    padding-right: var(--front-align-px);
    box-sizing: border-box;
}

.category-product,
.frame-parent2,
.places-city,
.all-Product,
.latest-post-1,
.region-body,
.Customer-Reviews,
.featured-product-city.product {
    margin-top: var(--front-align-gap);
    margin-bottom: var(--front-align-gap);
}

.region-head {
    margin-top: 24px;
}

.containe {
    margin-top: 24px;
    height: auto;
    left: auto;
}

.containe .carousel,
.containe .carousel-inner,
.containe .item,
.containe .item img {
    width: 100%;
}

.containe .item img {
    height: clamp(240px, 36vw, 420px);
    object-fit: cover;
}

.region-body {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 380px);
    align-items: start;
    gap: 24px;
}

.region-dis,
.region-map {
    width: 100%;
    max-width: none;
    margin: 0;
}

.region-dis > *,
.region-map > * {
    max-width: 100%;
}

.maps-container,
.maps-container1 {
    width: 100%;
    max-width: 100%;
    height: auto;
}

.maps-container iframe,
.maps-container1 iframe {
    display: block;
    width: 100%;
    max-width: 100%;
    min-height: 320px;
}

.featured-product-city.product {
    height: auto;
    overflow: visible;
}

.featured-product-city.product .container-fluid {
    width: 100%;
    max-width: none;
    height: auto;
    margin: 0;
    padding: 0;
}

.featured-product-city.product .row {
    margin-left: 0;
    margin-right: 0;
}

.featured-product-city.product .section-header {
    width: 100%;
    margin: 0 0 18px;
}

.frame-parent2,
.frame-parent3,
.all-Product-city,
.places-city-1 {
    width: 100%;
}

.frame-parent2,
.frame-parent3 {
    margin-left: auto;
    margin-right: auto;
}

.all-Product-city,
.places-city-1 {
    box-sizing: border-box;
}

.all-Product-city a,
.places-city-1 a {
    display: block;
    height: 100%;
}

.section-title-parent {
padding-top: 5px;
    padding-bottom: 5px;
    width: 100%;
    background: var(--city-surface);
     border: 1px solid var(--city-border);
    border-radius: var(--city-radius-md);
    box-shadow: var(--city-shadow-soft);
    overflow: hidden;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    
}

.region-dis .contentdone,
.region-dis .notification,
.region-dis .notification1,
.region-dis .header-content {
    width: 100%;
    max-width: 100%;
}

@media (max-width: 992px) {
    .category-product,
    .frame-parent2,
    .places-city,
    .all-Product,
    .latest-post-1,
    .region-head,
    .containe,
    .span4,
    .region-body,
    .Customer-Reviews,
    .featured-product-city.product {
        padding-left: 2px;
        padding-right: 2px;
    }

    .region-body {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .category-product,
    .frame-parent2,
    .places-city,
    .all-Product,
    .latest-post-1,
    .region-body,
    .Customer-Reviews,
    .featured-product-city.product {
        margin-top: 2px;
        margin-bottom: 2px;
    }
}

.rate:not(:checked) > label:before,
.rated:not(:checked) > label:before {
    content: "★ ";
}

.rate > input:checked ~ label {
    color: #ffc700;
}

.rate:not(:checked) > label:hover,
.rate:not(:checked) > label:hover ~ label,
.rated:not(:checked) > label:hover,
.rated:not(:checked) > label:hover ~ label {
    color: #deb217;
}

.rate > input:checked + label:hover,
.rate > input:checked + label:hover ~ label,
.rate > input:checked ~ label:hover,
.rate > input:checked ~ label:hover ~ label,
.rate > label:hover ~ input:checked ~ label,
.rated > input:checked + label:hover,
.rated > input:checked + label:hover ~ label,
.rated > input:checked ~ label:hover,
.rated > input:checked ~ label:hover ~ label,
.rated > label:hover ~ input:checked ~ label {
    color: #c59b08;
}

.star-rating-complete {
    color: #c59b08;
}

.rating-container .form-control:hover,
.rating-container .form-control:focus {
    background: #fff;
    border: 1px solid #ced4da;
}

.rating-container textarea:focus,
.rating-container input:focus {
    color: #000;
}

/* =========================================================
   CUSTOMER PAGES FIXES (notifications + booking)
========================================================= */

}

.trave-profile .Four-Seasons,
.trave-profile .Apartment-Rental,
.trave-profile .Request-number {
    width: 100% !important;
    position: static !important;
}
.trave-profile {
    gap: 28px !important;
}

.trave-profile .header-frame1 {
    width: 100% !important;
    max-width: 1222px !important;
    margin: 0 auto !important;
    display: grid !important;
    grid-template-columns: minmax(280px, 360px) minmax(0, 1fr) !important;
    gap: 20px !important;
    align-items: start !important;
}

.trave-profile .frame-title {
    width: 100% !important;
    min-width: 0 !important;
    display: block !important;
}

.trave-profile .header-content {
    width: 100% !important;
    min-width: 0 !important;
}



.trave-profile .notification-detils {
    width: 100% !important;
    min-width: 0 !important;
    padding-inline-end: 12px !important;

.trave-profile .Request-number {
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin-top: 8px !important;
}

.popup-osman10 {
    position: fixed !important;
    inset: 0 !important;
    z-index: 9999 !important;
    background: rgba(15, 23, 42, 0.55) !important;
    padding: 18px !important;
    overflow-y: auto !important;
}

.popup-osman10 .popupNotifications1,
.popup-osman10 .popup-Booking-Confirmed-Successfully,
.popup-osman10 .popupbooking-Success,
.popup-osman10 .popup-Booking-Confirmed-Successfully {
    width: min(980px, 100%) !important;
    max-width: 980px !important;
    margin: 22px auto !important;
    max-height: calc(100vh - 44px) !important;
    overflow: auto !important;
    border-radius: 14px !important;
}

.Booking-request {
    width: 100% !important;
    max-width: 1222px !important;
    margin: 0 auto 18px !important;
    padding: 0 20px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 420px) !important;
    gap: 16px !important;
    box-sizing: border-box !important;
}

.Booking-requestr,
.Booking-requestl,
.how-to-pay,
.checkbox-payment {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}

.how-to-pay,
.checkbox-payment {
    padding-left: 20px !important;
    padding-right: 20px !important;
}

@media (max-width: 992px) {
    .trave-profile .header-frame1 {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    .Booking-request {
        padding: 0 14px !important;
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    .how-to-pay,
    .checkbox-payment {
        padding-left: 14px !important;
        padding-right: 14px !important;
    }
}

@media (max-width: 768px) {
    .trave-profile .notification,
    .trave-profile .notification1 {
        grid-template-columns: 1fr !important;
    }

    .trave-profile .notification-img {
        width: 100% !important;
        height: auto !important;
        margin: 0 !important;
    }

    .trave-profile .notification-img img {
        width: 100% !important;
        height: 180px !important;
        object-fit: cover !important;
        display: block !important;
    }

    .trave-profile .notification-detils {
        padding: 12px !important;
    }

    .popup-osman10 {
        padding: 10px !important;
    }

    .popup-osman10 .popupNotifications1,
    .popup-osman10 .popup-Booking-Confirmed-Successfully,
    .popup-osman10 .popupbooking-Success {
        width: 100% !important;
        margin: 10px auto !important;
        max-height: calc(100vh - 20px) !important;
        padding: 12px !important;
    }

    .Booking-requestr h2,
    .Booking-requestl h2 {
        font-size: 20px !important;
        line-height: 1.3 !important;
    }

    .f-l-name,
    .p-number {
        flex-direction: column !important;
        gap: 10px !important;
    }

    .f-name,
    .l-name {
        width: 100% !important;
    }

    .checkbox-payment {
        margin-bottom: 24px !important;
    }

    .checkbox-payment .popupbooking button {
        width: 100% !important;
    }
}
