:root{
  --rcl-bg:#ffffff;
  --rcl-soft:#f7fbfb;
  --rcl-border:#e5e7eb;
  --rcl-text:#362F75;
  --rcl-muted:#6b7280;
  --rcl-primary:#362f75;
  --rcl-radius:12px;
}
.rcl-filter{
  display:flex;
  gap:14px;
  margin-bottom:0px;
  flex-wrap:wrap;
}

.rcl-filter select{
  min-width:260px;
  padding:12px 42px 12px 14px;
  border-radius:0px;
  border:1px solid var(--rcl-border);
  font-size:14px;
  background:#fff;
  cursor:pointer;
  appearance:none;
  -webkit-appearance:none;
  -moz-appearance:none;
}

.rcl-filter select:disabled{
  background:#f9fafb;
  color:var(--rcl-muted);
  cursor:not-allowed;
}
.rclregionheading{color:#E75524; margin-top:10px; margin-bottom:5px;}
.rcl-region{font-size: 16px;}
.rcl-layout{
  display:flex;
  gap:24px;
  margin-top:20px;
  align-items:stretch;
}

.rcl-info{
  width:100%;
  background:var(--rcl-bg);
  border-radius:var(--rcl-radius);
  padding:22px;
  border:1px solid var(--rcl-border);
  box-shadow:0 10px 25px rgba(0,0,0,0.04);
}

/* Top image */
.rcl-info > img{
  max-width:100%;
  border-radius:10px;
  margin-bottom:16px;
  display:block;
}
.rcl-info p{
  display:flex;
  align-items:flex-start;
  gap:10px;
  font-size:14px;
  color:var(--rcl-text);
  margin-bottom:12px;
  line-height:1.6;
}

/* Icons */
.rcl-info p img,
.rcl-info ul li img{
  width:18px;
  height:18px;
  margin-top:2px;
  flex-shrink:0;
  opacity:0.8;
}

/* Address sub text (multi-line support) */
.rcl-sub{
  margin-left:28px;
  margin-bottom:12px;
  font-size:14px;
  line-height:1.6;
  color:var(--rcl-text);
}

/* ===============================
   PHONE & EMAIL LIST
================================ */
.rcl-info ul{
  list-style:none;
  padding-left:28px; /* aligns under text, not icon */
  margin-top:4px;
  margin-bottom:12px;
}

.rcl-info ul li{
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:6px;
  font-size:14px;
}

/* Links */
.rcl-info a{
  color:var(--rcl-primary);
  text-decoration:none;
  font-weight:500;
}

.rcl-info a:hover{
  text-decoration:underline;
}

/* ===============================
   MAP CARD
================================ */
.rcl-map{
  border-radius:var(--rcl-radius);
  overflow:hidden;
  border:1px solid var(--rcl-border);
  box-shadow:0 10px 25px rgba(0,0,0,0.04);
}

.rcl-map iframe{
  width:100%;
  height:100%;
  min-height:360px;
  border:0;
  display:block;
}
.rcl-grid{
  display:grid;
  gap:24px;
}

.rcl-cols-2{grid-template-columns:repeat(2,1fr);}
.rcl-cols-3{grid-template-columns:repeat(3,1fr);}
.rcl-cols-4{grid-template-columns:repeat(4,1fr);}

.rcl-card{
  background:#fff;
  border-radius:14px;
  overflow:hidden;
  border:1px solid var(--rcl-border);
  box-shadow:0 12px 30px rgba(0,0,0,.08);
  transition:transform .25s ease, box-shadow .25s ease;
}

.rcl-card:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 36px rgba(0,0,0,.12);
}

.rcl-cover{
  width:100%;
  height:auto;
  display:block;
}

.rcl-details{
  padding:18px;
}

.rcl-row{
  display:flex;
  gap:5px;
  align-items:flex-start;
  margin-bottom:14px;
  font-size:14px;
  line-height:2.1em;
  color:var(--rcl-text);
}
.rcl-icon {
    width: 22px;
    height: 22px;
    flex-shrink: 0;
    margin-top: 3px;
}
.rcl-row span:first-child{
  flex-shrink:0;
  opacity:.75;
}

@media(max-width:1024px){
  .rcl-cols-4{
    grid-template-columns:repeat(3,1fr);
  }
}

@media(max-width:768px){

  .rcl-filter{
    flex-direction:column;
  }

  .rcl-filter select{
    width:100%;
  }

  .rcl-layout{
    flex-direction:column;
  }

  .rcl-info,
  .rcl-map{
    width:100%;
  }

  .rcl-map iframe{
    min-height:300px;
  }

  .rcl-cols-3,
  .rcl-cols-4{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:480px){
  .rcl-cols-2,
  .rcl-cols-3,
  .rcl-cols-4{
    grid-template-columns:1fr;
  }
}
