/* ============================================================
   ORIGINAL LOCATOR + FORM LAYOUT (UNCHANGED)
============================================================ */
.rmdl-form { margin-bottom:16px }
.rmdl-row { display:flex; gap:8px; align-items:center }
.rmdl-row input, .rmdl-row select {
    padding:10px;
    border:1px solid #ddd;
    border-radius:10px;
    flex:1;
}

/* Override old 2-column map/list layout */
.rmdl-results {
    display:block;
    margin-top:16px;
}

/* Keep original map style but allow override below */
#rmdl-map {
    width:100%;
    height:520px;
    border-radius:14px;
    border:1px solid #eee;
    margin-bottom:30px;
}

.rmdl-grid {
    display:grid;
    grid-template-columns:1fr;
    gap:12px;
}

.rmdl-card {
    border:1px solid #eee;
    border-radius:14px;
    padding:14px;
    background:#fff;
    box-shadow:0 2px 10px rgba(0,0,0,.03);
}

.rmdl-badge {
    background:#f5f5f5;
    border-radius:999px;
    padding:4px 10px;
    font-size:12px;
}

.rmdl-card__meta { margin-top:6px }
.rmdl-empty {
    padding:10px;
    background:#fff;
    border-radius:10px;
    border:1px dashed #ddd;
}

.rmdl-form--vertical input { width:100%; margin:6px 0 }
.rmdl-two { display:grid; grid-template-columns:1fr 1fr; gap:8px }

@media(max-width:980px){
  .rmdl-two { grid-template-columns:1fr }
}


/* ============================================================
   REGISTRATION FORM (UNCHANGED)
============================================================ */
#rmdl-registration-form input::-webkit-input-placeholder { color:#999 }
#rmdl-registration-form .rmdl-two { row-gap:0; column-gap:20px; }
#rmdl-registration-form input[type="text"]:focus-visible,
#rmdl-registration-form input[type="url"]:focus-visible,
#rmdl-registration-form input[type="email"]:focus-visible { outline:none; box-shadow:none; }

#rmdl-registration-form input[type="text"],
#rmdl-registration-form input[type="url"],
#rmdl-registration-form input[type="email"] {
    background: transparent;
    border:1px solid hsl(37,45%,63%);
    color:hsl(0,0%,62%);
    font-family:"Open Sans";
    font-size:16px;
    height:40px;
    padding:0 8px;
    width:100%;
    margin:0 0 20px;
}

#rmdl-registration-form label { display:none }
#rmdl-registration-form .signup-check.text-center input[type=checkbox] + label {
    display:inline-block;
    margin:20px 0 20px 5px;
}

#rmdl-registration-form input[type=checkbox], 
#rmdl-registration-form input[type=radio] { width:unset; }

#rmdl-registration-form input[type="submit"] {
    background:hsl(33,44%,65%);
    border:none;
    color:#fff;
    display:block;
    font-family:"Francois One";
    font-size:20px;
    margin:auto;
    padding:8px 0;
    width:200px;
    transition:0.2s ease;
}

#rmdl-registration-form input[type="submit"]:hover {
    background:hsl(33,44%,50%);
}

.regestration_tech .regestration_form form { max-width:440px; margin:auto; text-align:center; }
#rmdl-registration-form p.rmdl-msg.error,
#rmdl-registration-form .rmdl-error { color:red; }
#rmdl-registration-form input.rmdl-error { border-color:red }

@media (max-width:767px) {
    #rmdl-registration-form .signup-check.text-center input[type=checkbox] + label {
        float:right;
        font-size:13px;
        margin:0 0 15px;
        width:90%;
    }
}


/* ============================================================
   UPDATED DEALER LIST + MAP LAYOUT
============================================================ */

/* 1) MAP — FULL WIDTH */
#rmdl-map {
    width:100%;
    height:550px;
    margin-bottom:30px;
    border-radius:18px;
}

/* 2) Dealer list responsive grid */
#rmdl-list {
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap:22px;
}

/* Tablet */
@media(max-width:1100px){
    #rmdl-list { grid-template-columns:repeat(2, 1fr); }
}

/* Mobile */
@media(max-width:700px){
    #rmdl-list { grid-template-columns:1fr; }
}


/* 3) Premium Glassmorphism Cards */
.rmdl-card {
    background:rgba(255,255,255,0.15);
    backdrop-filter:blur(12px);
    border:1px solid rgba(255,255,255,0.25);
    border-radius:20px;
    padding:22px;
    color:#fff;
    box-shadow:0 8px 25px rgba(0,0,0,0.18);
    transition:0.2s ease;
}

.rmdl-card:hover {
    transform:translateY(-4px);
    box-shadow:0 12px 28px rgba(0,0,0,0.28);
}

.rmdl-card h4 {
    font-size:19px;
    margin-bottom:10px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    color:#fff;
}

.rmdl-badge {
    background:#c2923a;
    color:#fff;
    padding:4px 10px;
    border-radius:10px;
    font-size:12px;
    font-weight:bold;
}

.rmdl-card p {
    color:#f1f1f1;
}

.rmdl-card__meta a {
    color:#c2923a;
    font-weight:600;
    text-decoration:none;
}
.rmdl-card__meta a:hover { text-decoration:underline; }

/* Empty message */
.rmdl-empty {
    background:rgba(255,255,255,0.12);
    border:1px dashed rgba(255,255,255,0.35);
    color:#fff;
}

/* ---------------------------------------------------
   FIX — Restore ZIP input, Radius selection, and Button
--------------------------------------------------- */

.rmdl-form {
    margin-bottom: 20px;
}

.rmdl-row {
    display: flex;
    gap: 10px;
    align-items: center;
}

.rmdl-row input[type="text"],
.rmdl-row select {
    background: #ffffff !important;
    border: 1px solid #ddd !important;
    color: #444 !important;
    font-size: 16px;
    border-radius: 12px !important;
    padding: 10px 14px !important;
    height: 46px !important;
    flex: 1;
}

/* Search Button */
.rmdl-btn {
    background: #c2923a !important;
    color: #fff !important;
    border: none !important;
    padding: 10px 18px !important;
    border-radius: 12px !important;
    height: 46px !important;
    font-size: 16px !important;
    cursor: pointer;
    white-space: nowrap;
    font-weight: 600;
    transition: 0.2s ease-in-out;
}

.rmdl-btn:hover {
    background: #a87b2e !important;
}

/* Fix for dark theme so search bar stays readable */
.rmdl-row input::placeholder {
    color: #777 !important;
}

/* ============================================================
   MAP INFOWINDOW (Readable Black Text)
============================================================ */
.gm-style .gm-style-iw-c {
    background:#ffffff;
    padding:10px 14px;
    border-radius:8px;
}
.gm-style .gm-style-iw-d { color:#000; }
.gm-style .gm-style-iw-c * {
    color:#000;
    font-family:Arial, sans-serif;
}


/* ============================================================
   PAGINATION
============================================================ */
.rmdl-pagination { 
    text-align:center; 
    margin:25px 0;
}

.rmdl-pagination a {
    display:inline-block;
    margin:0 6px;
    padding:8px 14px;
    background:#333;
    color:#fff;
    border-radius:12px;
    text-decoration:none;
    transition:0.2s ease;
}

.rmdl-pagination a.active,
.rmdl-pagination a:hover {
    background:#c2923a;
    color:#fff;
}

/* map pin popup  */

.gm-style .gm-style-iw-c *{
    font-family: open sans;
    font-size: 14px;
    line-height: 18px;
}
.gm-style .gm-style-iw-c strong {
    text-transform: uppercase;
    font-size: 16px;
    font-family: open sans;
    display: block;
    margin-bottom: 8px;
}

.gm-style .gm-style-iw-c a {
    /* outline: none;
    display: inline-block;
    margin-top: 9px; */
}
.gm-style .gm-style-iw-c p {
    display: flex;
    align-items: center;
    gap:4px;
}
.gm-style .gm-style-iw-c p span {
    width: 22px;
    display: inline-flex;
    min-width: 22px;
    justify-content: center;
}
.gm-style .gm-style-iw-c a:hover{
    color: hsl(40, 45%, 63%);
    text-shadow: 0 0 1px hsl(40, 45%, 63%);
    text-decoration: underline;
}
.gm-style .gm-style-iw-c {
    background: #ffffff;
    padding: 10px 14px;
    border-radius: 12px !important;
    max-width: 350px !important;
}
.gm-style .gm-style-iw-c .gm-style-iw-d {
    padding-top: 20px;
    padding-right: 13px;
}
.gm-style .gm-style-iw-c .gm-style-iw-chr {
    position: absolute;
    right: 0;
}
@media(max-width:767px){
    .rmdl-locator .rmdl-row{
        flex-wrap: wrap;
    }
}