.elementor-8223 .elementor-element.elementor-element-ae38b15{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;}.elementor-8223 .elementor-element.elementor-element-ae38b15.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-8223 .elementor-element.elementor-element-a7f8ae8 .elementor-button{background-color:var( --e-global-color-be9a9fa );font-size:14px;font-weight:bold;box-shadow:0px 0px 10px 0px #FFFBFB;padding:7px 10px 7px 10px;}.elementor-8223 .elementor-element.elementor-element-a7f8ae8{width:initial;max-width:initial;}.elementor-8223 .elementor-element.elementor-element-a7f8ae8.elementor-element{--align-self:center;}.elementor-8223 .elementor-element.elementor-element-a7f8ae8 .elementor-button-content-wrapper{flex-direction:row-reverse;}#elementor-popup-modal-8223 .dialog-widget-content{background-color:#F8F4F440;border-radius:20px 20px 20px 20px;box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}#elementor-popup-modal-8223{background-color:rgba(0,0,0,.8);justify-content:center;align-items:center;pointer-events:all;}#elementor-popup-modal-8223 .dialog-message{width:100vw;height:100vh;align-items:flex-start;padding:0px 0px 0px 0px;}@media(min-width:768px){.elementor-8223 .elementor-element.elementor-element-ae38b15{--width:90%;}}/* Start custom CSS for container, class: .elementor-element-ae38b15 */.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget{
  --bg1:#dff6ff;
  --bg2:#fff8d6;
  --card:rgba(255,255,255,.94);
  --ink:#14324a;
  --accent:#ffd056;
  --brand1:#FD8303;
  --brand2:#FEE387;
  --shadow:0 10px 28px rgba(0,0,0,.18);
  font-family:Arial,Helvetica,sans-serif;
  color:var(--ink);
  background:linear-gradient(180deg,var(--bg1),var(--bg2));
  border-radius:20px;
  overflow:hidden;
  position:relative;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget *{box-sizing:border-box}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .header{
  padding:12px 14px;
  background:linear-gradient(135deg,var(--brand1),var(--brand2));
  color:#fff;
  box-shadow:var(--shadow);
  position:relative;
  z-index:10;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .title{
  font-size:28px;
  font-weight:800;
  margin:0 0 6px;
  color:#20609D;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .subtitle{
  margin:0 0 10px;
  font-size:16px;
  font-weight:700;
  opacity:.96;
  color:#20609D;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .header-row{
  display:flex;
  gap:12px;
  justify-content:space-between;
  align-items:flex-start;
  flex-wrap:wrap;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .header-main{
  width:100%;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .header-actions,
.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .filter-bar{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .header-actions{
  justify-content:flex-end;
  margin-top:10px;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .filter-wrap{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .filter-label{
  color:#20609D;
  font-size:14px;
  font-weight:700;
  display:inline-flex;
  align-items:center;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .menu-toggle{
  display:none;
  border:1px solid rgba(255,255,255,.35);
  background:rgba(255,255,255,.18);
  color:#fff;
  border-radius:12px;
  padding:10px 14px;
  font-size:15px;
  font-weight:700;
  cursor:pointer;
  width:max-content;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .filter-btn{
  border:1px solid #b8c8d4;
  background:#d6e0e7;
  color:#6f8597;
  border-radius:999px;
  padding:8px 12px;
  font-size:14px;
  font-weight:700;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  gap:8px;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .filter-count{
  font-size:12px;
  color:#2f3f4c;
  font-weight:700;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .filter-btn.active{
  background:linear-gradient(135deg,var(--accent),#fff6bf);
  color:#20609D;
  border-color:transparent;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .filter-btn.active .filter-count{
  color:#000;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .filter-btn.inactive{
  opacity:1;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .download-btn{
  border:1px solid #FD8303;
  background:#FD8303;
  color:#fff;
  border-radius:999px;
  padding:8px 12px;
  font-size:14px;
  font-weight:700;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  gap:8px;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .widget-body{
  position:relative;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .hopa-map{
  width:100%;
  height:70vh;
  min-height:420px;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .panel{
  position:absolute;
  top:16px;
  right:16px;
  width:min(360px,calc(100% - 32px));
  max-height:calc(100% - 32px);
  overflow:auto;
  background:rgba(255,255,255,.94);
  backdrop-filter:blur(8px);
  border-radius:20px;
  padding:16px;
  box-shadow:0 10px 28px rgba(0,0,0,.18);
  z-index:900;
  border:1px solid rgba(255,255,255,.65);
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .panel.hidden{
  display:none;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .panel-toggle{
  position:absolute;
  top:16px;
  right:16px;
  z-index:950;
  border:none;
  background:#0b4f6c;
  color:#fff;
  border-radius:999px;
  padding:10px 14px;
  font-size:14px;
  font-weight:700;
  cursor:pointer;
  box-shadow:0 10px 28px rgba(0,0,0,.18);
  display:none;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .panel h2{
  margin:0 0 8px;
  font-size:20px;
  color:#FD8303;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .panel p{
  margin:0 0 12px;
  line-height:1.45;
  font-size:14px;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .legend{
  display:grid;
  gap:8px;
  background:#eefbff;
  padding:12px;
  border-radius:12px;
  margin-bottom:12px;
  border:1px solid #ccecf3;
  font-size:14px;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .legend-row{
  display:flex;
  align-items:center;
  gap:10px;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .legend-icon{
  width:28px;
  text-align:center;
  font-size:20px;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .item-list{
  display:grid;
  gap:8px;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .item-link{
  display:block;
  text-decoration:none;
  color:#14324a;
  background:#fff;
  border:1px solid #d9eef4;
  border-radius:14px;
  padding:10px 12px;
  box-shadow:0 4px 14px rgba(0,0,0,.06);
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .item-link strong{
  display:block;
  font-size:14px;
  margin-bottom:4px;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .item-meta{
  font-size:12px;
  color:#4e6a7d;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .empty-state{
  background:#fff;
  border:1px solid #d9eef4;
  border-radius:14px;
  padding:14px;
  font-size:14px;
  color:#4e6a7d;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .map-pin-wrap{
  background:transparent;
  border:none;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .map-pin{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  font-size:22px;
  background:radial-gradient(circle at 30% 30%,#fff8de,#ffd47e);
  border:2px solid #ff9800;
  border-radius:50%;
  box-shadow:0 5px 14px rgba(0,0,0,.25);
  position:relative;
  cursor:pointer;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .map-pin::after{
  content:"";
  position:absolute;
  width:12px;
  height:12px;
  background:#ff9800;
  bottom:-5px;
  left:50%;
  transform:translateX(-50%) rotate(45deg);
  z-index:-1;
  border-radius:2px;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .desc-html{
  font-size:13px;
  line-height:1.5;
  color:#355569;
  margin:0 0 10px;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .desc-html p{margin:0 0 8px}
.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .desc-html ul,
.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .desc-html ol{margin:0 0 8px 18px;padding:0}
.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .desc-html h2,
.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .desc-html h3,
.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .desc-html h4{margin:0 0 8px;color:#0b4f6c}
.elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .desc-html img{
  max-width:100%;
  height:auto;
  border-radius:10px;
  display:block;
  margin:8px 0;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .leaflet-popup-content .popup-card{
  min-width:220px;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .leaflet-popup-content .popup-type{
  font-size:12px;
  font-weight:700;
  color:#0b4f6c;
  margin-bottom:6px;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .leaflet-popup-content h3{
  margin:0 0 8px;
  font-size:16px;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .leaflet-popup-content p{
  margin:0 0 8px;
  font-size:13px;
  line-height:1.45;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .leaflet-popup-content a{
  font-weight:700;
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .fun-tooltip{
  background:#0b4f6c;
  color:#fff;
  border:none;
  border-radius:8px;
  box-shadow:0 4px 12px rgba(0,0,0,.2);
}

.elementor-8223 .elementor-element.elementor-element-ae38b15 .fun-tooltip:before{
  border-top-color:#0b4f6c !important;
}

@media (max-width:1024px){
  .elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .panel{
    width:min(320px,calc(100% - 24px));
  }
  .elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .panel-toggle{
    display:inline-block;
  }
}

@media (max-width:768px){
  .elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .header{
    padding:10px 12px;
  }

  .elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .header-row{
    flex-direction:column;
    align-items:stretch;
    gap:10px;
  }

  .elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .title{
    font-size:22px;
    line-height:1.15;
  }

  .elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .subtitle{
    font-size:14px;
    margin-bottom:8px;
  }

  .elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .header-actions{
    justify-content:flex-start;
    margin-top:8px;
  }

  .elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .menu-toggle{
    display:inline-flex;
    align-items:center;
    justify-content:center;
  }

  .elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .filter-bar{
    display:none;
    flex-direction:column;
    align-items:stretch;
    gap:8px;
    background:rgba(255,255,255,.18);
    border:1px solid rgba(255,255,255,.25);
    border-radius:14px;
    padding:10px;
    width:100%;
  }

  .elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .filter-bar.open{
    display:flex;
  }

  .elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .filter-label{
    display:none;
  }

  .elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .filter-btn{
    width:100%;
    justify-content:flex-start;
    border-radius:12px;
  }

  .elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .panel,
  .elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .panel-toggle{
    display:none !important;
  }

  .elementor-8223 .elementor-element.elementor-element-ae38b15 .hopa-favorites-widget .hopa-map{
    height:55vh;
    min-height:360px;
  }
}/* End custom CSS */
/* Start custom CSS */#elementor-popup-modal-8223 .dialog-widget-content,
#elementor-popup-modal-8223 .elementor-popup-modal {
  width: 100vw !important;
  max-width: 100vw !important;
  margin: 0 !important;
}

#elementor-popup-modal-8223 .elementor-popup-modal {
  z-index: 9999 !important;
}

#elementor-popup-modal-8223 .elementor-widget-html,
#elementor-popup-modal-8223 .hopa-favorites-widget,
#elementor-popup-modal-8223 .hopa-favorites-widget .widget-body,
#elementor-popup-modal-8223 .hopa-favorites-widget .hopa-map {
  width: 100% !important;
  max-width: 100% !important;
}

#elementor-popup-modal-8223 .hopa-favorites-widget {
  margin: 0;
}

#elementor-popup-modal-8223 .hopa-favorites-widget .hopa-map {
  height: 80vh;
  min-height: 500px;
}

#elementor-popup-modal-8223 .pagetitle {
  color: #0373AA;
}/* End custom CSS */