/* =================================================================
   GLOBAL RESPONSIVE FIXES - Apply to all screen sizes
   ================================================================= */

/* Ensure all images are responsive */
img {
  max-width: 100%;
  height: auto;
}

/* Prevent horizontal scroll */
html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

/* Make container-fluid responsive */
.container-fluid {
  max-width: 100%;
  padding-left: 15px;
  padding-right: 15px;
}

/* Responsive Typography Base */
h1,
.heading-1 {
  font-size: clamp(1.5rem, 5vw, 3.5rem);
  line-height: 1.2;
}

h2,
.heading-2,
.sub-heading-1 {
  font-size: clamp(1.25rem, 4vw, 2.5rem);
  line-height: 1.3;
}

h3 {
  font-size: clamp(1.1rem, 3vw, 1.75rem);
  line-height: 1.4;
}

p,
li,
span {
  font-size: clamp(0.875rem, 2vw, 1rem);
  line-height: 1.6;
}

/* Responsive buttons */
.btn,
button,
.cta-btn,
.custom-import-btn {
  font-size: clamp(0.875rem, 2vw, 1rem) !important;
  padding: clamp(8px, 2vw, 12px) clamp(16px, 3vw, 24px) !important;
}

/* =================================================================
   EXTRA LARGE DEVICES (1600px and up) - Scale down elements
   ================================================================= */

@media only screen and (min-width: 1600px) {
  html {
    font-size: 18px;
    /* Slightly larger base font */
  }

  .container-pricing,
  .checkout-container {
    max-width: 1400px;
  }

  .c-login-pw .c-leav-status .card-body {
    height: 262px;
  }
}

/* =================================================================
   LARGE DEVICES (1200px - 1599px)
   ================================================================= */

@media only screen and (max-width: 1599px) {
  .heading {
    font-size: clamp(40px, 5vw, 60px);
  }

  .slider-wrapper {
    width: 90%;
    max-width: 1080px;
  }
}

@media only screen and (min-width:1799px) {
  .c-login-pw .c-leav-status .card-body {
    height: 322px;
  }
}

@media only screen and (max-width:1399px) {
  .c-login-pw {
    padding: 30px 20px;
  }
}

@media only screen and (max-width:1299px) {
  .c-login-pw {
    padding: 20px 20px;
  }

  .c-new-login-link {
    margin-top: 10px;
  }

  .c-login-left-logo img {
    width: 200px;
  }

  .c-login-right {
    padding: 20px;
  }

  .c-login-right h2 {
    font-size: 26px;
  }

  .c-login-pw .c-leav-status .card-body {
    height: 177px;
  }

  .c-login-pw .justify-content-between.mb-4 {
    margin-bottom: 15px !important;
  }
}

@media only screen and (max-width:1199px) {
  .c-login-pw {
    padding: 30px 20px;
  }

  .c-login-pw .col-lg-8 {
    width: 100%;
    max-width: 100%;
    flex: 0 0 100%;
  }

  .c-login-pw .col-lg-4 {
    width: 100%;
    max-width: 100%;
    flex: 0 0 100%;
  }

  .c-login-pw {
    height: auto;
  }

  .c-login-pw .card {
    margin: 0px;
    margin-top: 20px;
  }

  .c-login-pw .c-leav-status .card-body {
    height: 322px;
  }

}

@media only screen and (max-width:767px) {
  .c-login-pw .col-md-6 {
    width: 100%;
    max-width: 100%;
    flex: 0 0 100%;
  }

  .c-login-left-img img {
    height: auto;
  }

  .c-login-left {
    display: none;
  }

  .c-login-pw .col-md-6 {
    height: auto;
  }

  .c-login-pw {
    background-size: cover;
  }

  .c-login-pw {
    padding: 20px 10px;
  }

  .c-login-pw .notice-widget .overflow-hidden .overflow-hidden {
    max-width: 215px;
  }

  .c-login-pw .card {
    width: 100%;
  }

  .c-login-right h2 {
    font-size: 27px;
  }

  .c-login-right {
    padding: 20px;
  }

  .c-login-right p {
    margin-bottom: 15px;
  }

  .c-login-left-logo {
    margin-top: 0px;
  }

  .c-login-left-logo img {
    width: 150px;
  }
}

@media only screen and (min-width:1200px) {
  .c-location-plan-w h2 {
    margin-bottom: 60px;
  }

  .c-logo-w img {
    width: 139px;
  }
}

@media only screen and (min-width:992px) {
  .microsoft-prod .col-lg-4 {
    width: 30%;
  }

  .microsoft-prod .col-lg-4:first-child {
    width: 40%;
  }

  .c-nav-bottom-list>ul>li>a:after {
    content: "";
    display: block;
    position: relative;
    width: 100%;
    height: 2px;
    position: absolute;
    left: 0px;
    top: 0;
    display: block;
    background-color: var(--main-color);
    border: none;
    transition: 0.5s;
    opacity: 0;
  }

  .c-nav-bottom-list>ul>li>a:before {
    content: "";
    display: block;
    position: relative;
    width: 100%;
    height: 2px;
    position: absolute;
    right: 0px;
    bottom: 0;
    display: block;
    background-color: var(--main-color);
    border: none;
    transition: 0.5s;
    opacity: 0;
  }

  .c-nav-bottom-list>ul>li>a:hover:after,
  .c-nav-bottom-list>ul>li.active>a:after {
    left: -10px;
    opacity: 1;
  }

  .c-nav-bottom-list>ul>li>a:hover:before,
  .c-nav-bottom-list>ul>li.active>a:before {
    right: -10px;
    opacity: 1;
  }

  .c-nav-bottom-list>ul>li:hover>ul {
    display: block;
  }

  .c-nav-bottom-list>ul>li>ul {
    background-color: var(--main-color);
    padding: 0;
    margin: 0;
  }

  .c-nav-bottom-list>ul>li>ul li a {
    display: block;
    color: #fff;
    border-bottom: 1px solid #fff;
    padding: 8px 10px;
    line-height: 100%;
  }

  .c-nav-bottom-list>ul>li>a:hover {
    color: var(--main-color);
  }

  .c-nav-bottom-list>ul>li>a:hover,
  .c-nav-bottom-list>ul>li.active>a {
    color: var(--main-color);
  }

  .c-nav-bottom-list>ul>li>ul li a:hover {
    color: #fff;
    background-color: #000;
  }

  .dropdown-menu .dropdown-menu {
    right: -190px;
    width: 190px;
    background: var(--blue-2) !important;
    left: inherit;
    top: 0;
    background: #5284F8;
  }

  .c-nav-bottom-list>ul>li li ul {
    background-color: var(--main-color);
    padding: 0;
    margin: 0;
  }

  .c-nav-bottom-list>ul>li>ul li a {
    display: block;
    color: #fff;
    border-bottom: 1px solid #fff;
    padding: 8px 10px;
    line-height: 100%;
    font-size: 13px;
  }

  .c-nav-bottom-list>ul>li>li a:hover {
    color: var(--main-color);
  }

  .c-nav-bottom-list>ul>li>li a:hover,
  .c-nav-bottom-list>ul>li.active>a {
    color: var(--main-color);
  }

  .c-nav-bottom-list>ul>li li:hover>ul {
    display: block;
  }
}


@media only screen and (max-width:1199px) {


  .c-nav-bottom-list>ul>li>a {
    font-size: 15px;
  }

  .c-app-w h2 {
    font-size: 25px;
  }

  .achive-counter {
    padding-left: 102px;
  }

  .achive-counter_icon {
    left: 19px;
  }

  .c-packge-box .bb-package-selected {
    font-size: 14px !important;
  }

  .c-packge-box .accordion-button {
    padding: 10px;
  }

  .c-footer-bottom p {
    font-size: 12px;
  }

}

@media only screen and (max-width:991px) {
  .cn-banner-main-img {
    padding: 0 30px;
    transform: scale(1);
  }

  .c-nav-bottom-list {
    display: none;
    position: fixed;
    width: 260px;
    left: 0;
    top: 0;
    background-color: #fff;
    -webkit-animation: menu-move 1s;
    animation: menu-move 1s;
  }

  .c-nav-bottom-list>ul {
    display: block;
    margin: 0;
  }

  .c-nav-bottom-list>ul>li {
    padding: 0;
  }

  .c-nav-bottom-list>ul>li>a {
    display: block;
    border-bottom: 1px solid #ccc;
    padding: 10px;
    line-height: 100%;
    display: flex;
    align-items: center;
  }

  .c-nav-bottom-list>ul>li {
    padding: 0;
  }

  .c-nav-bottom-list.active {
    display: block;
  }

  .c-nav-bottom-list:after {
    content: "";
    display: none;
    position: fixed;
    background: rgba(0, 0, 0, 0.6);
    width: 100%;
    height: 100%;
    z-index: 1;
    left: 0;
    top: 0;
    transition: 0.5s;
  }

  .c-nav-bottom-list.active:after {
    display: block;
    -webkit-animation: BgMove 0.6s;
    animation: BgMove 0.6s;
  }

  .c-nav-bottom-list:before {
    content: "\f00d";
    display: none;
    position: absolute;
    left: 290px;
    top: 10px;
    width: 30px;
    height: 30px;
    background: red;
    z-index: 2;
    border-radius: 50%;
    -webkit-animation: menu-cross-icon 0.7s;
    animation: menu-cross-icon 0.9s;
    font-family: 'FontAwesome';
    color: var(--white);
    align-items: center;
    justify-content: center;
  }

  .c-nav-bottom-list.active:before {
    display: inline-flex;
  }

  .c-nav-bottom-list {
    min-height: 100%;
  }

  .c-nav-bottom-list>ul {
    overflow: auto;
    height: 100vh;
    position: relative;
    z-index: 99;
    width: 100%;
    background-color: #fff;
  }

  .c-nav-bottom {
    display: flex;
    justify-content: flex-end;
    margin-top: 15px;
  }

  .c-menu-btn {
    line-height: 100%;
    background: var(--main-color);
    padding: 13px 20px;
    border-radius: 8px;
    box-shadow: none;
    border: none;
    display: inline-flex;
    color: var(--white);
    align-items: center;
    font-size: 16px;
    font-weight: bold;
    text-transform: capitalize;
  }

  .c-menu-btn i {
    margin-right: 8px;
    position: relative;
  }

  body {
    overflow-x: hidden;
  }

  .c-nav-top-info-in li span {
    position: static;
    line-height: 100%;
    display: block;
    /* position: relative; */
  }

  .c-nav-top-info-in li span img {
    height: 22px;
  }

  .c-nav-top-info-in li a {
    display: none;
  }

  .c-nav-top-info-in li {
    padding: 0;
  }

  .c-nav-top-social ul li a {
    width: 28px;
    height: 28px;
    font-size: 14px;
  }

  .c-nav-top-info {
    padding: 6px 20px;
  }

  .c-nav-top-social {
    padding: 6px 15px;
  }

  .c-nav-top-info-in li {
    margin-right: 10px;
    position: relative;
    top: 2px;
  }

  .c-nav-bottom .dropdown-toggle::after {
    margin-left: auto;
  }

  .c-nav-bottom-list>ul>li>a {
    font-weight: bold;
    padding-right: 10px 15px;
  }

  .c-nav-bottom-list>ul>li ul {
    width: 100%;
    position: static !important;
    transform: inherit !important;
    border: none;
  }

  .c-nav-bottom-list>ul>li ul li a {
    display: block;
    color: #fff;
    background-color: var(--blue-2);
  }

  .c-nav-bottom-list>ul>li ul {
    padding: 0 !important
  }

  .c-nav-bottom-list>ul>li ul li a {
    padding: 10px;
    border-bottom: 1px solid #a59999;
    line-height: 100%;
  }

  .c-nav-bottom-list>ul li a:hover {
    background-color: #000;
    color: #fff;
  }

  .c-nav-bottom-list>ul>li.active a {
    background-color: var(--main-color);
    color: #fff;
  }

  .c-banner-form {
    transform: inherit;
    position: static;
  }

  .property-info-area .justify-content-end {
    justify-content: center !important;
    margin-top: 15px !important;
  }

  .property-info-area .single-field {
    margin-bottom: 10px;
  }

  .c-why-bhushan-w .col-lg-3 {
    margin-bottom: 20px;
  }

  .c-testi-w .col-md-3 {
    width: 50%;
  }

  .c-how-work .prd-tab li p {
    display: none;
  }

  .c-prd-tab-con h3 {
    font-size: 26px;
  }

  .c-achive-con {
    margin-bottom: 20px;
  }

  .c-packge-box {
    margin-bottom: 20px;
  }

  .c-calculater-tab .nav-tabs {
    flex-wrap: wrap;
  }

  .c-calculater-tab .nav-tabs li button {
    width: 100%;
    text-align: center;
  }

  .c-header-w {
    position: relative;
    z-index: 9;
  }

  .c-singale-amenities-w ul li {
    width: calc(33.333% - 10px);
  }

  .c-singale-near-img {
    margin-bottom: 20px;
  }

  .c-singale-facilities-img {
    margin-bottom: 20px;
  }

  .c-singale-video-box {
    margin-bottom: 30px;
  }

  .c-singale-btn a {
    width: 100%;
    margin: 0;
    text-align: center;
    margin-bottom: 15px;
  }

  .c-calculater-tab .nav-tabs li {
    width: 50%;
    margin: 0;
    margin-bottom: 15px;
  }

  .c-logo-w {
    position: absolute;
    left: 16px;
    top: -2px;
  }

  .cn-banner-con h1 {
    font-size: 30px;
  }

  .cn-banner-con h1 span {
    font-size: 25px;
  }

  .cn-banner-con p {
    padding: 0;
  }

  .cn-banner-main-list-box .col-lg-5 {
    order: 1
  }

  .cn-banner-main-list-box .col-lg-6 {
    order: 2
  }

  .cn-banner-con {
    margin-top: 0px;
  }

  .cn-banner-con ul li img {
    width: 30px;
  }

  .cn-banner-main {
    padding: 15px 0;
  }

  .cn-banner-con h1 {
    margin-top: 20px;
  }

  .c-client-w {
    padding-top: 20px;
  }

  .c-client-list {
    margin-top: 20px;
  }

  .c-client-list .col-lg-4 {
    width: 50%;
  }

  .c-package-w {
    padding-top: 20px;
  }

  .testi-row .col-md-3 {
    width: 33.333%
  }

  .c-heading-new-3-con {
    margin-bottom: 20px;
  }

  .c-heading-new-3-con h4 {
    font-size: 16px;
  }

  .microsoft-prod .microsoft-box {
    height: auto;
    margin-bottom: 30px;
  }

  .microsoft-prod .microsoft-box ul {
    min-height: inherit;
  }

  .c-solusation-w .c-heading-new-3 {
    font-size: 23px;
  }

  .c-footer-top-in h3 {
    font-size: 15px;
    line-height: 30px;
  }

  .c-get-started-btn {
    justify-content: flex-start;
    margin-top: 20px;
  }

  .c-footer-nav,
  .c-footer-other {
    margin-top: 30px;
  }

  .c-solusation-w .col-lg-3 {
    margin-bottom: 10px;
  }

  .c-heading-new-3 {
    font-size: 21px;
  }

}

@media only screen and (max-width:767px) {
  .c-whatsapp-w {
    padding-bottom: 0;
  }

  .c-whatsapp-img {
    position: static;
    transform: inherit;
    width: 100%;
  }

  .dropdown-menu .dropdown-menu,
  .dropdown-menu .dropdown-menu li a {
    display: block;
    background: #DDAA39 !important;
  }

  .c-nav-bottom-list>ul>li li ul {
    background-color: var(--main-color);
    padding: 0;
    margin: 0;
  }

  .c-nav-bottom-list>ul>li>ul li a {
    display: block;
    color: #fff;
    border-bottom: 1px solid #fff;
    padding: 8px 10px;
    line-height: 100%;
    font-size: 13px;
  }

  .c-header-w .col-md-3 {
    position: absolute;
    width: 104px;
    left: 0;
    top: 0;
  }

  .c-header-w .col-md-3 img {
    width: 100%;
  }

  .c-nav-top-info {
    padding: 6px 15px;
  }

  .c-nav-top-social {
    padding: 6px 10px;
  }

  .c-testi-w .col-md-3 {
    width: 100%;
  }

  .c-book-con h3 {
    font-size: 26px;
  }

  .c-about-con {
    padding: 0;
    padding-top: 30px;
  }

  .c-about-con a,
  .c-btn-1 {
    font-size: 16px;
    padding: 8px 20px;
    margin: 0;
  }

  .c-about-w,
  .c-testi-w,
  .c-how-work,
  .c-packge-w {
    padding: 25px 0;
  }

  .c-heading-2,
  .c-heading-3 h2 {
    font-size: 25px;
  }

  .c-why-bhushan-w {
    padding-bottom: 30px;
  }

  .c-app-w h2 {
    font-size: 22px;
  }

  .c-book-con {
    margin-top: 30px;
  }

  .c-how-work .prd-tab li span {
    width: 30px;
    height: 30px;
    font-size: 18px;
  }

  .prd-tab ul:after {
    top: 14px;
  }

  .c-achive-img {
    padding: 0;
  }

  .c-packge-w .row {
    padding: 0;
  }

  .c-calculater-tab .nav-tabs li button {
    font-size: 12px;
    padding: 10px 7px;
  }

  .c-calculater-tab .nav-tabs {
    margin-bottom: 15px;
  }

  .c-calculater-result-box {
    margin-bottom: 15px;
  }

  .c-calculater-result-box {
    padding: 0;
  }

  .c-testi-list-box-info {
    width: 100%;
  }

  .c-testi-list-box-info:after {
    display: none;
  }

  .c-testi-list-box-info h4 {
    font-size: 12px;
  }

  .c-heading-1 {
    font-size: 18px;
  }

  .c-btn-2 {
    padding: 10px 20px;
    font-size: 14px;
  }

  .c-prd-tab-con {
    margin-top: 15px;
  }

  .c-footer-social {
    justify-content: flex-start;
    margin: 10px 0 20px;
  }

  .c-footer-coppy {
    text-align: center;
    margin-top: 0;
  }

  .c-footer-logo {
    text-align: center;
    margin-top: 20px;
  }

  .c-project-in {
    padding: 30px 10px;
  }

  .c-footer-bottom p {
    text-align: center;
  }

  .c-banner-w .slick-dots {
    bottom: 4px;
  }

  .c-banner-list-con h3 {
    font-size: 15px;
  }

  .c-banner-w .slick-dots li.slick-active button {
    border: transparent !important;
  }

  .c-banner-list-con h2 {
    font-size: 20px;
  }

  .c-banner-list-con h2 {
    margin-bottom: 8px;
  }

  .c-banner-list-con h3 {
    font-size: 13px;
    padding: 8px 15px;
  }

  .c-banner-w {
    margin-bottom: 15px;
  }

  .c-header-w {
    padding-bottom: 15px;
  }

  .c-form-w {
    margin-top: 15px;
  }

  .property-info-area h3 {
    display: block;
    margin-bottom: 15px;
    font-weight: bold;
    color: #fff;
    font-size: 18px;
    text-align: center;
  }

  .c-nav-top-info .btn {
    display: block;
  }

  .c-form-w {
    padding: 30px;
  }

  .c-singale-plan img {
    height: 200px;
  }

  .c-singale-page .c-banner-w .c-singale-btn-in {
    right: -220px;
    top: 347px;
  }

  .c-singale-amenities-w ul li {
    width: calc(50% - 10px);
  }

  .c-inner-banner-con ul li {
    font-size: 13px;
  }

  .c-inner-banner-con h1 {
    font-size: 16px;
  }

  .c-inner-banner-con ul {
    margin-top: 5px;
  }

  .c-sidebar-w {
    padding: 0px;
  }

  .c-sidebar-w .property-info-area h3 {
    margin: 0
  }

  .c-listing-page-tab .nav-tabs li button {
    width: 100%;
    text-align: center;
    font-size: 14px;
    padding: 8px;
  }

  .c-singale-description {
    padding-right: 40px;
  }

  .c-singale-btn .c-btn-2 {
    margin-bottom: 10px
  }

  .c-singale-page .container {
    padding-right: 30px;
  }

  .c-singale-plan .nav-tabs li {
    width: 50%;
    margin-bottom: 10px;
    padding: 0 10px;
  }

  .c-singale-plan .nav-tabs li button {
    width: 100%;
    text-align: center;
  }

  .c-singale-page .c-btn-2 {
    font-size: 13px;
    padding: 10px 15px;
  }

  .c-singale-plan .nav-tabs {
    justify-content: flex-start;
  }

  .c-home-page .c-banner-form {
    display: block;
  }

  .c-calculater-tab .nav-tabs {
    justify-content: flex-start;
  }

  .c-banner-in video {
    height: auto;
  }

  .c-listing-page-tab .nav-tabs li {
    width: calc(50% - 14px);
    margin: 0 7px;
    margin-bottom: 15px;
  }

  .c-home-page .c-singale-btn-in {
    right: -72px;
  }

  .c-home-page .container {
    padding-right: 40px;
  }

  .c-singale-location iframe {
    margin-bottom: 30px;
    height: 200px !important;
  }

  .c-banner-list-img img {
    height: 200px;
    object-fit: cover;
  }

  .c-client-w h2 {
    font-size: 32px;
  }

  .c-nav-bottom-list>ul>li>a.c-btn-1 {
    display: inline-flex;
    margin-top: 20px;
    margin-left: 20px;
    width: 129px;
    text-align: center;
    justify-content: center;
  }

  .cn-banner-main-img {
    padding-bottom: 10px;
    padding-top: 10px;
  }

  .c-testi-w .slick-arrow {
    width: 30px;
    height: 30px;
    right: 39px;
    top: -64px;
  }

  .c-testi-w .slick-next {
    left: inherit;
    right: 0px;
  }

  .c-testimonial-w {
    padding: 30px 0;
  }

  .microsoft-prod .microsoft-box .testi-item p {
    font-size: 10px;
  }

  .c-testimonial-w .slick-arrow {
    width: 30px;
    height: 30px;
    right: 39px;
    top: -64px;
  }

  .c-testimonial-w .slick-next {
    left: inherit;
    right: 0px;
  }

  .cn-banner-con h2 {
    font-size: 17px;
    line-height: 27px;
  }

  .cn-banner-con h1 {
    line-height: 100%;
  }

  .c-headeing-new-1 {
    font-size: 28px;
  }

  .c-form-bottom-img {
    margin: 20px 0;
  }

  .c-package-w {
    padding-bottom: 30px;
  }

  .c-footer-in {
    padding-top: 0px;
    padding-bottom: 8px;
  }

  .c-footer-info {
    margin-top: 30px;
  }

  .c-footer-other img {
    width: 150px;
  }

  .c-price-left-img {
    margin: 0 auto;
    margin-bottom: 30px;
    width: 250px;
    display: block;
  }

  .c-gst-return-con .c-headeing-new-1 {
    margin-top: 18px;
    line-height: 34px;
    font-size: 20px;
  }

  .c-solusation-img-1 {
    margin-bottom: 30px;
  }

  .c-why-inru-box:hover {
    transform: scale(1);
  }

  .c-solusation-w .col-lg-3 {
    padding: 0 30px;
    margin-bottom: 20px;
  }

  .c-gst-return-img {
    padding: 0 30px;
  }

  .c-gst-return-con {
    padding: 0 30px;
  }

  .cn-banner-con {
    padding: 0 20px;
  }

  .c-login-content {
    width: 100%;
    position: static;
  }

  .c-login-right {
    width: 100%;
  }

  .c-login-pw {
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .c-login-content {
    display: none;
  }
}

@keyframes BgMove {
  from {
    left: 100%;
  }

  to {
    left: 0;
  }
}

@keyframes menu-move {
  from {
    left: -100%;
  }

  to {
    left: 0;
  }
}

@keyframes menu-cross-icon {
  from {
    top: -100%;
  }

  to {
    top: 10px;
  }
}

/* =================================================================
   GLOBAL RESPONSIVE IMPROVEMENTS - Added for better scaling
   ================================================================= */

/* Ensure all images are responsive */
img {
  max-width: 100%;
  height: auto;
}

/* Responsive Typography using clamp for better scaling */
@media only screen and (max-width: 1400px) {

  .checkout-container .checkout-header h1,
  .container-pricing .header h1 {
    font-size: clamp(1.8rem, 4vw, 2.5rem) !important;
  }

  .checkout-container .section-title,
  .container-pricing .section-title {
    font-size: clamp(1.2rem, 3vw, 1.4rem) !important;
  }
}

/* Checkout Page Responsive Improvements */
@media only screen and (max-width: 1200px) {
  .checkout-container {
    padding: 0 15px;
  }

  .checkout-container .checkout-body {
    flex-direction: column;
  }

  .checkout-container .order-summary,
  .checkout-container .payment-details {
    min-width: 100%;
    width: 100%;
  }
}

@media only screen and (max-width: 992px) {
  .checkout-container .billing-selector-container .billing-option {
    padding: 10px 20px;
    min-width: 100px;
    font-size: 0.85rem;
  }

  .checkout-container .form-row {
    flex-direction: column;
  }

  .checkout-container .form-group {
    width: 100%;
  }
}

@media only screen and (max-width: 768px) {
  .checkout-container {
    margin: 1rem auto;
    max-width: 100%;
  }

  .checkout-container .checkout-header h1 {
    font-size: 1.5rem !important;
  }

  .checkout-container .checkout-header p {
    font-size: 0.9rem !important;
  }

  .checkout-container .billing-selector-container {
    flex-wrap: wrap;
    padding: 15px 10px;
  }

  .checkout-container .billing-selector-container .billing-option {
    width: 100%;
    margin-bottom: 8px;
  }

  .checkout-container .plan-details {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .checkout-container .plan-icon {
    margin-right: 0;
    margin-bottom: 10px;
  }

  .checkout-container .order-summary,
  .checkout-container .payment-details {
    padding: 20px 15px;
  }

  .checkout-container .section-title {
    font-size: 1.1rem !important;
  }

  .checkout-container .price-row {
    font-size: 0.85rem;
  }

  .checkout-container .price-row.total {
    font-size: 1rem !important;
  }
}

@media only screen and (max-width: 576px) {
  .checkout-container .checkout-header h1 {
    font-size: 1.3rem !important;
  }

  .checkout-container .billing-selector-container .billing-option .discount-badge {
    position: static;
    display: block;
    margin-top: 5px;
    margin-left: auto;
    margin-right: auto;
    width: fit-content;
  }
}

/* Pricing Page Responsive Improvements */
@media only screen and (max-width: 1200px) {
  .container-pricing .pricing-card {
    width: 45%;
  }
}

@media only screen and (max-width: 992px) {
  .container-pricing .tabs {
    max-width: 100%;
  }

  .container-pricing .tab {
    padding: 12px 25px;
    font-size: 0.9rem;
  }

  .container-pricing .billing-selector-container .billing-option {
    padding: 10px 20px;
    min-width: 100px;
  }
}

@media only screen and (max-width: 768px) {
  .container-pricing {
    padding: 20px 15px;
  }

  .container-pricing .header h1 {
    font-size: 1.8rem !important;
  }

  .container-pricing .header p {
    font-size: 0.95rem !important;
  }

  .container-pricing .tabs {
    flex-direction: column;
  }

  .container-pricing .tab {
    width: 100% !important;
    border-radius: 6px !important;
    margin-bottom: 10px;
  }

  .container-pricing .billing-selector-container {
    flex-direction: column;
    width: 100%;
    border-radius: 10px;
    padding: 10px;
  }

  .container-pricing .billing-selector-container .billing-option {
    width: 100%;
    margin-bottom: 8px;
    border-radius: 8px;
  }

  .container-pricing .pricing-card {
    width: 100%;
    margin-bottom: 20px;
  }

  .container-pricing .pricing-card h3 {
    font-size: 1.3rem;
  }

  .container-pricing .pricing-card .price {
    font-size: 1.5rem;
  }
}

@media only screen and (max-width: 576px) {
  .container-pricing .pricing-card {
    padding: 20px 15px;
  }

  .container-pricing .cta-btn {
    font-size: 0.9rem !important;
    padding: 10px 15px !important;
  }
}

/* Import Cards Responsive Improvements */
@media only screen and (max-width: 992px) {
  .import-card {
    margin-bottom: 20px;
  }

  .import-card-header {
    font-size: 0.75rem;
    padding: 10px 14px;
  }

  .import-card-body {
    padding: 20px 15px;
  }

  .import-card-title {
    font-size: 1rem;
  }

  .import-card-logo {
    max-width: 60px;
    max-height: 60px;
  }
}

@media only screen and (max-width: 576px) {
  .import-card-header {
    font-size: 0.7rem;
    padding: 8px 12px;
  }

  .import-card-body {
    padding: 16px 12px;
  }

  .import-card-title {
    font-size: 0.9rem;
  }

  .import-card-logo {
    max-width: 50px;
    max-height: 50px;
  }

  .ribbon {
    font-size: 0.6rem;
    padding: 4px 35px;
  }
}

/* Hero Section Responsive Improvements */
@media only screen and (max-width: 992px) {
  .hero-container {
    background-size: cover;
    background-position: center;
  }

  .heading-1 {
    font-size: clamp(2rem, 6vw, 3.5rem);
  }

  .sub-heading-1 {
    font-size: clamp(1.2rem, 4vw, 2rem);
  }

  .image-hero {
    padding: 30px 15px;
  }
}

@media only screen and (max-width: 768px) {
  .cta-buttons {
    flex-direction: column;
    align-items: stretch;
  }

  .cta-buttons button,
  .cta-buttons a {
    width: 100%;
    margin-right: 0 !important;
    margin-bottom: 10px;
  }

  .logos img {
    width: 20%;
  }
}

/* Form Responsive Improvements */
@media only screen and (max-width: 768px) {

  .checkout-form-control,
  .checkout-form-select {
    font-size: 16px !important;
    /* Prevents zoom on iOS */
  }

  input,
  select,
  textarea {
    font-size: 16px !important;
    /* Prevents zoom on iOS */
  }
}

/* Table Responsive Improvements */
@media only screen and (max-width: 768px) {
  table {
    font-size: 0.85rem;
  }

  table th,
  table td {
    padding: 8px 4px !important;
  }
}

/* Modal Responsive Improvements */
@media only screen and (max-width: 576px) {
  .modal-dialog {
    margin: 10px;
    max-width: calc(100% - 20px);
  }

  .modal-xl,
  .modal-lg {
    max-width: 100%;
  }

  .modal-content {
    border-radius: 8px;
  }
}

/* Card Responsive Improvements */
@media only screen and (max-width: 768px) {
  .card {
    margin-bottom: 15px;
  }

  .card-body {
    padding: 15px;
  }

  .card-title {
    font-size: 1.1rem;
  }
}

/* Navbar Responsive Fix */
@media only screen and (max-width: 992px) {
  .navbar-brand img {
    max-height: 40px;
  }

  .navbar-collapse {
    max-height: 80vh;
    overflow-y: auto;
  }
}

/* Prevent text from being too small on any device */
@media only screen and (max-width: 380px) {
  html {
    font-size: 14px !important;
  }

  .checkout-container,
  .container-pricing {
    padding: 0 10px;
  }

  h1 {
    font-size: 1.5rem !important;
  }

  h2 {
    font-size: 1.25rem !important;
  }

  h3 {
    font-size: 1.1rem !important;
  }

  button,
  .btn {
    font-size: 0.85rem !important;
    padding: 8px 12px !important;
  }
}