/*=============================
  Variables (adjust to taste)
==============================*/
:root {
  --yellow: #ECBD32;
  --dark: #333333;
  --light-grey: #EEEEEE;
  --max-width: 1140px;
  --font-heading: 'Shuttleblock';
  --font-body: 'Shuttleblock';
}

/*=============================
  Global Wrap
==============================*/
.wrap {
  width: 90%;
  max-width: var(--max-width);
  margin: 0 auto;
}

/*=============================
  Hero Section
==============================*/
.our-dealers-page {
  text-align: center;
  font-family: var(--font-body);
}

.dealers-hero {
  padding: 100px 0 100px;  /* ↑100px top, 60px bottom */
  background-color: #fff;
}

.dealers-title {
  font-family: var(--font-heading);
  color: var(--yellow);
  font-size: 48px;
  line-height: 1.1;
  margin-bottom: 16px;
}

.dealers-subtitle {
  color: var(--yellow);
  font-size: 1rem;
  font-weight: 500;
}

/*=============================
  Search Form
==============================*/
.dealers-search {
  margin-top: 3rem;
  margin-bottom: 3rem;
}

.dealer-form {
  display: inline-flex;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}

.dealer-input {
  font-family: var(--font-body);
  font-size: 16px;
  padding: 0 16px;
  width: 240px;
  height: 48px;
  border: 1px solid var(--light-grey);
  border-right: none;
  border-radius: 4px 0 0 4px !important;
  outline: none;
}

.dealer-input:focus {
  border-color: var(--yellow);
}

.dealer-button {
  font-family: var(--font-heading);
  font-size: 16px;
  font-weight: 600;
  background: var(--yellow);
  color: #000;
  border: none;
  padding: 0 24px;
  cursor: pointer;
  border-radius: 0 4px 4px 0;
  transition: background 0.2s ease;
}

.dealer-button:hover {
  background: darken(var(--yellow), 8%);
}

/*=============================
  Results
==============================*/
.dealer-results {
  margin-top: 40px;
  text-align: left;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
}

.dealer-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.dealer-item {
  border: 1px solid var(--light-grey);
  border-radius: 4px;
  padding: 16px;
  margin-bottom: 16px;
}

.dealer-name {
  font-family: var(--font-heading);
  margin: 0 0 8px 0;
  font-size: 20px;
}

.dealer-address,
.dealer-phone {
  margin: 4px 0;
  font-size: 15px;
  color: var(--dark);
}

.no-dealers,
.error {
  font-size: 16px;
  color: #d9534f; /* bootstrap danger */
}

/*=============================
  Footer (matching your gold bar)
==============================*/
.site-footer { /* or whatever your footer wrapper is */
  background: var(--yellow);
  color: var(--dark);
  padding: 60px 0 40px;
  font-family: var(--font-body);
}

.site-footer .wrap {
  display: flex;
  justify-content: space-between;
  gap: 40px;
  flex-wrap: wrap;
}

.site-footer .footer-about,
.site-footer .footer-connect {
  flex: 1 1 280px;
}

.site-footer h4 {
  font-family: var(--font-heading);
  margin-bottom: 12px;
}

.site-footer p,
.site-footer a {
  font-size: 14px;
  line-height: 1.5;
  color: var(--dark);
}

.site-footer a:hover {
  text-decoration: underline;
}

.site-footer .social-icons a {
  display: inline-block;
  margin-right: 12px;
  font-size: 1rem;
  /* color: #000; */
}

/*=============================
  Responsive Breakpoints
==============================*/
@media (max-width: 1280px){
  .site-footer .wrap { flex-direction: column; gap: 5px;}
  .align-text-center-responsive { text-align: center;}
  #top_menu{ align-items: baseline !important; }
}
@media (max-width: 991px){
  .site-header .content-between-responsive { justify-content: space-between !important;}
}
@media (max-width: 768px) {
  .site-logo { width: 220px !important; }
  .dealers-hero { padding: 80px 0 40px; }
  .dealers-title { font-size: 36px; }
  .dealers-subtitle { font-size: 16px; }
  .dealer-input { width: 180px; }
  .dealer-button { padding: 0 16px; }
}

@media (max-width: 480px) {
  .dealers-hero { padding: 60px 0 30px; }
  .dealers-title { font-size: 28px; }
  .dealer-form { flex-direction: column; box-shadow: none !important; }
  .dealer-input,
  .dealer-button {
    width: 100%;
    border-radius: 4px !important;
  }
  .dealer-input { margin-bottom: 8px; border-right: 1px solid var(--light-grey); }
  .dealer-button { border-radius: 4px; }
}
/* ————————————————
   Header: top row
   ———————————————— */
.site-header .header-top {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  padding: 24px 0;
}

.logo-container {
  flex: 0 0 auto;
}

.site-logo {
  display: block;
  height: 100px;
  width: 289px;
}

/* CTA in top row */
.header-cta {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
.btn-contact {
  display: inline-block;
  background-color: var(--yellow);
  color: #000;
  text-transform: uppercase;
  font-weight: 600;
  font-size: 14px;
  padding: 12px 24px;
  border-radius: 4px;
  text-decoration: none;
  transition: background 0.2s ease;
}
.detail-logo{
  max-height: 190px;
  max-width: 190px !important;
}
.btn-contact:hover {
  background-color: #e5b221;
}

/* Divider line under header-top and header-bottom */
.header-divider {
  height: 1px;
  background-color: #ddd;
  margin: 0;
  width:100%
}
.desktop-btn { display: none;  
  background-color: var(--yellow);
  color: #000;
  text-transform: uppercase;
  font-weight: 600;
  font-size: 14px;
  text-decoration: none;
  transition: background 0.2s ease;
  font-family: var(--font-body);
  position: absolute;
  right:7%;
  top:20%
}
.desktop-btn:hover {
  background-color: #e5b221;
}
.mobile-btn { display: block;  background-color: var(--yellow);  font-family: var(--font-body); }
.mobile-btn:hover {
  background-color: #e5b221;
}

@media (min-width: 992px) {
  .desktop-btn { display: block !important; }
  .mobile-btn { display: none !important; }
}
/* ————————————————
   Header: bottom row nav
   ———————————————— */
.site-header .header-bottom {
  padding: 12px 0;
}

.site-nav .nav-menu {
  list-style: none;
  display: flex;
  justify-content: center;
  gap: 32px;
  margin: 0;
  padding: 0;
}

.site-nav .nav-menu li a {
  font-family: var(--font-body);
  font-size: 14px;
  color: #666;
  text-decoration: none;
  transition: color 0.2s ease;
}

.site-nav .nav-menu li a:hover,
.site-nav .nav-menu li a.active {
  color: var(--yellow);
}
.icon-chat:before    { content: "\f486"; /* dashicon chat */ }
.icon-mail:before    { content: "\f466"; /* dashicon email-alt */ }
.icon-phone:before   { content: "\f523"; /* dashicon phone */ }
.icon-facebook:before{ content: "\f304"; /* dashicon facebook */ }
.icon-youtube:before { content: "\f530"; /* dashicon youtube */ }
.icon-home:before    { content: "\f102"; /* dashicon admin-home */ }
/* ──────────────────────────────────────
   Footer Customization
────────────────────────────────────── */

/* overall footer */
.site-footer {
  background-color: #ECBD32;
  color: #000;
  padding: 0px;
  padding-bottom: 2%;
  padding-top: 2%;
  font-family: inherit;

}
.site-footer a {
  color: inherit;
  text-decoration: none;
}
.site-footer a .fa{
  font-size: 1rem !important;
}
.site-footer a:hover {
  text-decoration: underline;
}

/* two-column layout */
.footer-widgets {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  max-width: 1200px;
  margin: 0 auto 2rem;
}
.footer-about{
    flex:3.5 !important
}
.footer-connect {
  flex: 1 !important;
}

/* headings */
.footer-about h2,
.footer-connect h2 {
  font-size: 1.5rem;
  margin-bottom: 1rem;
}

/* About text */
.footer-about p {
  line-height: 1.6;
}

/* contact list */
.contact-list {
  list-style: none;
  padding: 0;
  margin: 0 0 1rem;
}
.contact-list li {
  display: flex;
  align-items: center;
}
.contact-list .icon {
  font-family: "dashicons";
  speak: none;
  display: inline-block;
  font-size: 1.25rem;
  margin-right: 0.5rem;
  line-height: 1;
}

/* social icons */
.social-icons a {
  display: inline-block;
  width: 2.5rem;
  height: 2.5rem;
  line-height: 2.5rem;
  text-align: center;
  background: #000;
  color: #FFF;
  border-radius: 4px;
  margin-right: 0.5rem;
}
.social-icons .icon {
  font-family: "dashicons";
  font-size: 1.25rem;
}

/* copyright line */
.site-info {
  font-size: 0.875rem;
  margin-left: -20px;
}
:root {
  --primary: #ECBD32;
  --secondary: #000814;
}

.dealer-detail-page {
  font-family: var(--font-body);
  color: var(--secondary);
  padding: 2rem 0;
}

.dealer-detail-page h1.dealer-title {
  font-family: var(--font-heading);
  color: var(--primary);
  font-size: 3rem !important;
  font-weight: bold;

  margin-bottom: 0.5rem;
}

.star-rating span.fa-star {
  color: var(--primary);
}

/* Responsive images */
.dealer-detail-page .img-fluid {
  max-width: 100%;
  height: auto;
}
.dealer-detail-page .rounded {
  border-radius: 0.25rem;
}

/* Dealer information spacing */
.dealer-detail-page .row + .row p {
  margin-bottom: 1rem;
}

.reviews-title {
  font-size: 1.5rem;
  color: var(--secondary);
}

/* Utility spacing if needed */
.mb-2 { margin-bottom: 0.5rem !important; }
.mb-3 { margin-bottom: 1rem !important; }
.mb-4 { margin-bottom: 1.5rem !important; }
.my-4 { margin-top: 1.5rem !important; margin-bottom: 1.5rem !important; }

/* Chrome, Safari, Edge, Opera */
.dealer-form .dealer-input::-webkit-inner-spin-button,
.dealer-form .dealer-input::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
.dealer-form .dealer-input[type=number] {
  -moz-appearance: textfield;
}

.card-body.text-center{
  border-bottom-left-radius: var(--bs-card-border-radius); 
  border-bottom-right-radius: var(--bs-card-border-radius);
  background-color: rgba(255, 255, 255, 0.9) !important; 
  color: #212529;
}
.star-rating{
  font-size: 20px; 
  color: #ffc107;
}
.dealer-img{
  border-top-left-radius: var(--bs-card-border-radius); 
  border-top-right-radius: var(--bs-card-border-radius);
}
.dealer-img-span{
  max-height: 100%; 
  max-width: 100%; 
  object-fit: contain;
}
.h-150px{
  height: 150px;
}
.pt-190{
  padding-top: 190px;
}
.site-header{
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1030;
    width: 100%;
    background: white;
}
.bg-grey{
  background-color:grey !important;
}
.custom-table-style{
  border: 2px solid black;
}
.select2-container--classic .select2-selection--single .select2-selection__arrow{
  height: 48px !important;
  width: 48px !important;
  top: 1px !important;
  right: 1px !important;
}
.select2-container--classic .select2-selection--single .select2-selection__rendered{
  line-height: 48px !important;
}
.select2-container .select2-selection--single{
  height: 50px !important;
}
.review-card{
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
}
#site-wrapper{
  display: flex;
    flex-direction: column;
    min-height: 100vh; /* Full viewport height */
}
.site-content{
      flex: 1;
}
.select2-container--classic .select2-results__option--highlighted.select2-results__option--selectable,
.select2-results__option:hover{
  background: #ffd21e !important;
  color: #fff !important;
}
.select2-dropdown{
  text-align: left !important;
}
.select2-results__option,
.form-control{
  color: #212529 !important;
  font-family: var(--font-body) !important;
}
.form-control{
  background-color: hsla(0, 0%,calc( 0% + 95% ), 100%) !important;
   
}

#erorrimage{
  font-size: 12px;
}
#modal_prod_info .form-group.col-12{
  margin-bottom: 1rem;
}
#modal_prod_info .form-group.col-12 input[type=file]{
  height: var(--form_input_height);
  line-height: 42px;
}
.form-control:focus{
  box-shadow: none !important;
  border: 1px solid #ffd21e !important;
}
.select2-container--classic.select2-container--open .select2-dropdown,
.select2-container--classic .select2-search--dropdown .select2-search__field,
.select2-container--classic.select2-container--open .select2-selection--single{
  border: 1px solid #ffd21e !important;
}
.select2-container--classic .select2-selection--single{
  border: 1px solid #e2e2e2 !important;
}
.table-responsive {
  width: 100% !important;
  overflow-x: auto !important;   /* or scroll */
  -webkit-overflow-scrolling: touch !important; /* smoother scroll on mobile */
}

.my-table {
  width: 100% !important;
  border-collapse: collapse !important;
}

.my-table th, .my-table td {
  white-space: nowrap !important; /* optional, but causes horizontal scroll if needed */
}
h2.text-center.fw-bold.text-white.bg-grey{
  font-size: 2.5rem !important;
  padding: 11px; 
}
@media (max-width: 768px) {
  body{
    font-size: 14px !important;
  }
  .dealers-search {
    margin-top: 1rem;
    margin-bottom: 1rem;
  }
  h2.text-center.fw-bold.text-white.bg-grey{
    font-size: 1.5rem !important;
    padding: 11px; 
  }
  .select2-container--classic .select2-selection--single .select2-selection__arrow{
    width: 32px !important;
  }
  .dealer-detail-page h1.dealer-title {
    font-size: 2rem !important;
  }
}
@media (max-width: 661px) {
    .container {
        width: 80% !important;
    }
}
@media (max-width: 660px) {
    .container {
        width: 560px !important;
    }
    .card.p-4{
      padding: .5rem!important;
    }
}
@media (max-width: 600px) {
    .container {
        width: 500px !important;
    }
}
@media (max-width: 540px) {
    .container {
        width: 440px !important;
    }
}
@media (max-width: 480px) {
    .container {
        width: 380px !important;
    }
}
@media (max-width: 420px) {
    .container {
        width: 320px !important;
    }
}
@media (max-width: 360px) {
    .container {
        width: 260px !important;
    }
}