:root{
	
	--green: #34c129;
	
	/* Core hues */
  	--mapm-escort:       #db2777; /* rose-600 */
  	--mapm-escort-h:     #be185d;

  	--mapm-agency:       #4f46e5; /* indigo-600 */
  	--mapm-agency-h:     #4338ca;

    --mapm-client:       #0d9488; /* teal-600 */
    --mapm-client-h:     #0f766e;

  	--mapm-account:      #334155; /* slate-700 */
  	--mapm-account-h:    #1f2937;

  	--mapm-logout:       #b91c1c; /* red-700 */
  	--mapm-logout-h:     #991b1b;

  	--mapm-view:         #6b7280; /* gray-500 */
  	--mapm-view-h:       #4b5563;

  	--mapm-edit:         #2563eb; /* blue-600 */
  	--mapm-edit-h:       #1d4ed8;

  	--mapm-stats:   #1e40af; /* blue-800 */
    --mapm-stats-h: #1e3a8a; /* blue-900 */

  	--mapm-tour:         #0891b2; /* cyan-600 */
  	--mapm-tour-h:       #0e7490;

  	--mapm-upgrade:      #b45309; /* amber-700 (better contrast) */
  	--mapm-upgrade-h:    #92400e;

  	--mapm-adimg:        #9333ea; /* purple-600 */
  	--mapm-adimg-h:      #7e22ce;

  	--mapm-available:    #16a34a; /* green-600 */
  	--mapm-available-h:  #15803d;

  	--mapm-update:       #059669; /* emerald-600 */
  	--mapm-update-h:     #047857;

  	--mapm-verify:       #0ea5e9; /* sky-500/600ish */
  	--mapm-verify-h:     #0284c7;

  	--mapm-veristatus:   #14b8a6; /* teal-500 */
  	--mapm-veristatus-h: #0d9488;

  	--mapm-viewverify:   #7c3aed; /* violet-600 */
  	--mapm-viewverify-h: #6d28d9;

  	--mapm-activate:     #65a30d; /* lime-600 */
  	--mapm-activate-h:   #4d7c0f;

  	--mapm-review:       #ea580c; /* orange-600 */
  	--mapm-review-h:     #c2410c;

  	--mapm-access:       #7c3aed; /* violet-600 */
  	--mapm-access-h:     #6d28d9;

  	/* Publish / Unpublish */
    --mapm-publish:     #16a34a; /* green-600 */
    --mapm-publish-h:   #15803d;
    --mapm-unpublish:   #6b7280; /* zinc-500/600 */
    --mapm-unpublish-h: #4b5563;

    /* Edit in Admin */
    --mapm-admin:           #475569; /* slate-600 */
    --mapm-admin-h:         #334155;

    /* Mark Verified / Failed */
    --mapm-mark-verified:   #059669; /* emerald-600 */
    --mapm-mark-verified-h: #047857;
    --mapm-mark-failed:     #dc2626; /* red-600 */
    --mapm-mark-failed-h:   #b91c1c;

    /* Send Email */
    --mapm-send-email:   #0284c7; /* sky-600 */
    --mapm-send-email-h: #0369a1;

    /* Verification Photos (toggle) */
    --mapm-verif-photos:   #d97706; /* amber-600 */
    --mapm-verif-photos-h: #b45309;
    --mapm-verif-photos-approve: #059669; /* emerald-600 */
    --mapm-verif-photos-reject: #dc2626; /* red-600 */


  	/* Common tokens */
  	--mapm-btn-fg:       #ffffff;
  	--mapm-radius:       var(--buttons-border-radius) var(--buttons-border-radius-top-right-bottom-left, var(--buttons-border-radius)) !important;
}

/* Base treatment for any MAPM-colored button */
.button.btn[class*="mapm-btn-"],
.button.button-primary.btn[class*="mapm-btn-"],
.button.button-secondary[class*="mapm-btn-"]{
	--_bg: var(--btn-bg, #111827);
	--_bgH: var(--btn-bg-h, #0b1220);
	--_fg: var(--btn-fg, var(--mapm-btn-fg));
	background: transparent !important;
	color: var(--_bg) !important;
	border-color: 1px solid var(--_bg) !important;
	border-radius: var(--mapm-radius) !important;
	-webkit-transition: all 0.3s ease-out;
	   -moz-transition: all 0.3s ease-out;
	    -ms-transition: all 0.3s ease-out;
	     -o-transition: all 0.3s ease-out;
	        transition: all 0.3s ease-out;
}
.button.btn[class*="mapm-btn-"] i{
	color: var(--btn-bg, #111827);
	-webkit-transition: all 0.3s ease-out;
	   -moz-transition: all 0.3s ease-out;
	    -ms-transition: all 0.3s ease-out;
	     -o-transition: all 0.3s ease-out;
	        transition: all 0.3s ease-out;
}
.button.btn[class*="mapm-btn-"]:hover i,
.button.btn[class*="mapm-btn-"]:focus i,
.button.btn[class*="mapm-btn-"]:active i{
	color: var(--_fg);
}
.button.btn[class*="mapm-btn-"]:hover,
.button.btn[class*="mapm-btn-"]:focus,
.button.btn[class*="mapm-btn-"]:active{ background: var(--_bg) !important; color: var(--_fg) !important; }
.button.btn[class*="mapm-btn-"][disabled],
.button.btn[class*="mapm-btn-"].disabled{ opacity:.6; pointer-events:none; }

/* Map each action to a color */
.mapm-btn-escort      { --btn-bg: var(--mapm-escort);     --btn-bg-h: var(--mapm-escort-h);     --btn-fg:#fff; } /* Create Escort Profile */
.mapm-btn-agency      { --btn-bg: var(--mapm-agency);     --btn-bg-h: var(--mapm-agency-h);     --btn-fg:#fff; } /* Create Agency Profile */
.mapm-btn-client      { --btn-bg: var(--mapm-client);     --btn-bg-h: var(--mapm-client-h);     --btn-fg:#fff; } /* Create Client Profile */

.mapm-btn-account     { --btn-bg: var(--mapm-account);    --btn-bg-h: var(--mapm-account-h);    --btn-fg:#fff; } /* My Account */
.mapm-btn-logout      { --btn-bg: var(--mapm-logout);     --btn-bg-h: var(--mapm-logout-h);     --btn-fg:#fff; } /* Log Out */

.mapm-btn-view        { --btn-bg: var(--mapm-view);       --btn-bg-h: var(--mapm-view-h);       --btn-fg:#fff; } /* View */
.mapm-btn-edit        { --btn-bg: var(--mapm-edit);       --btn-bg-h: var(--mapm-edit-h);       --btn-fg:#fff; } /* Edit */
.mapm-btn-stats       { --btn-bg: var(--mapm-stats);      --btn-bg-h: var(--mapm-stats-h);      --btn-fg:#fff; } /* Stats */
.mapm-btn-tour        { --btn-bg: var(--mapm-tour);       --btn-bg-h: var(--mapm-tour-h);       --btn-fg:#fff; } /* Tour Dates */

.mapm-btn-upgrade     { --btn-bg: var(--mapm-upgrade);    --btn-bg-h: var(--mapm-upgrade-h);    --btn-fg:#fff; } /* Upgrade */
.mapm-btn-adimg       { --btn-bg: var(--mapm-adimg);      --btn-bg-h: var(--mapm-adimg-h);      --btn-fg:#fff; } /* Ad Images */

.mapm-btn-available   { --btn-bg: var(--mapm-available);  --btn-bg-h: var(--mapm-available-h);  --btn-fg:#fff; } /* Set Available Now */
.mapm-btn-vissave     { --btn-bg: var(--mapm-update);     --btn-bg-h: var(--mapm-update-h);     --btn-fg:#fff; } /* Update */

.mapm-btn-getverified { --btn-bg: var(--mapm-verify);     --btn-bg-h: var(--mapm-verify-h);     --btn-fg:#fff; } /* Get Verified */
.mapm-btn-veristatus  { --btn-bg: var(--mapm-veristatus); --btn-bg-h: var(--mapm-veristatus-h); --btn-fg:#fff; } /* Verification Status */
.mapm-btn-viewverify  { --btn-bg: var(--mapm-viewverify); --btn-bg-h: var(--mapm-viewverify-h); --btn-fg:#fff; } /* View Verification */

.mapm-btn-activate    { --btn-bg: var(--mapm-activate); --btn-bg-h: var(--mapm-activate-h); --btn-fg:#fff; } /* Activate */
.mapm-btn-review      { --btn-bg: var(--mapm-review);   --btn-bg-h: var(--mapm-review-h);   --btn-fg:#fff; } /* Request Profile Review */
.mapm-btn-access      { --btn-bg: var(--mapm-access);   --btn-bg-h: var(--mapm-access-h);   --btn-fg:#fff; } /* Access Code */

.mapm-btn-admin-edit    { --btn-bg: var(--mapm-admin); --btn-bg-h: var(--mapm-admin-h); --btn-fg: #fff; } /* Fallback (no markup change): target the admin edit link in the moderator strip */

.mapm-btn-mark-verified { --btn-bg: var(--mapm-mark-verified); --btn-bg-h: var(--mapm-mark-verified-h); --btn-fg: #fff; }
.mapm-btn-mark-failed   { --btn-bg: var(--mapm-mark-failed); --btn-bg-h: var(--mapm-mark-failed-h); --btn-fg: #fff; }

/* ===== Send Email (uses existing .mapm-send-email-btn) ===== */
.mapm-btn-send-email { --btn-bg: var(--mapm-send-email); --btn-bg-h: var(--mapm-send-email-h); --btn-fg: #fff; }

/* ===== Verification Photos toggle (uses existing .mapm-verif-toggle) ===== */
.mapm-btn-verif-toggle        { --btn-bg: var(--mapm-verif-photos); --btn-bg-h: var(--mapm-verif-photos-h); --btn-fg: #fff; }
.mapm-btn-verif-photo-approve[data-approved="approved"] { --btn-bg: var(--mapm-verif-photos-approve); --btn-bg-h: var(--mapm-verif-photos-h); --btn-fg: #fff; }
.mapm-btn-verif-photo-approve[data-approved="rejected"]  { --btn-bg: var(--mapm-verif-photos-reject); --btn-bg-h: var(--mapm-verif-photos-h); --btn-fg: #fff; }

.mapm-btn-publish { --btn-bg: var(--mapm-publish); --btn-bg-h: var(--mapm-publish-h); --btn-fg: #fff; }
.mapm-btn-publish[data-status="publish"] { --btn-bg: var(--mapm-unpublish); --btn-bg-h: var(--mapm-unpublish-h); --btn-fg: #fff; }

/* Optional: special "ON" state for Available Now toggle */
.mapm-btn-available.is-on{ box-shadow: 0 0 0 3px rgba(22,163,74,.18) !important; }




/** 
 * 
 * Page widths 
 * 
 ========================= */
.page-profile-verification #content > .container{
	max-width: 1200px;
}




/** 
 * 
 * Dashboard 
 * 
 ========================= */
.button.button-danger{
    color:#b32d2e !important;
    border-color:#b32d2e !important;
    background-color: transparent !important;
}
.button.button-danger:hover{ background-color:#b32d2e !important; color:#fff !important }

.mapm-delete-profile.is-armed{
    color:#fff !important;
    background:#b32d2e !important;
    border-color:#b32d2e !important;
}

.mapm-badge{display:inline-block;padding:2px 6px;border-radius:4px;font-size:0.8rem;line-height:1.6;border:1px solid rgba(0,0,0,.08);background:#f6f7f7;margin:0 4px 4px 0;white-space:nowrap;}
.mapm-badge-none{opacity:.6}
.mapm-badge-premium{background:#e8f7ff;border-color:#7cc5ff}
.mapm-badge-flag.mapm-badge-silver{background:#f2f2f2;border-color:#d9d9d9;color:#444}
.mapm-badge-flag.mapm-badge-gold{background:#fff3c4;border-color:#f0c36d;color:#6b4e00}
.mapm-badge-flag.mapm-badge-platinum{background:#eef5ff;border-color:#b8c6ff;color:#293b7a}
.mapm-badge-city-featured,
.mapm-badge-homepage-grid,
.mapm-badge-homepage-featured,
.mapm-badge-homepage-slideshow{
    background:#fff8e5;   /* soft gold */
    border-color:#f0c36d; /* gold border */
    color:#6b4e00;        /* readable gold/brown text */
}


/* Visibility */
.mapm-visibility-wrap{
	display:inline-flex;
	align-items:center;
	gap:6px;
	align-items:center; 
	flex-wrap: wrap;
}
.mapm-visibility-wrap select { 
	min-width: 140px; 
	border-radius: var(--buttons-border-radius) var(--buttons-border-radius-top-right-bottom-left, var(--buttons-border-radius)) !important
}
.mapm-badge-public{ 
	background:#e9f9ef; 
	border-color:#8dda9e; 
	color:#1f8a3a; }
.mapm-badge-private{ 
	background:#ffe9e9; 
	border-color:#f5b2b2; 
	color:#8a1f1f; }
.mapm-badge-members-only{ 
	background:#fff7e6; 
	border-color:#ffd48a; 
	color:#8a6d1f; }
.mapm-badge-clients-only{
    background:#f3e8ff;   /* soft lavender */
    border-color:#d8b4fe; /* light purple border */
    color:#6b21a8;        /* deep purple text for contrast */
}

/* Verification */
.mapm-badge[title*="Submitted"]{background:#fff7e6;border-color:#ffd48a;color:#8a6d1f;}
.mapm-badge[title*="Verified"]{background:#e6ffed;border-color:#88d39f;color:#1f8a3a;}
.mapm-badge[title*="Failed"]{background:#ffe9e9;border-color:#f5b2b2;color:#8a1f1f;}

/* Available Now */
.mapm-available-now-ctrl{display:flex;align-items:center;gap:8px;align-items: center; flex-wrap: wrap;}
.mapm-badge-available{background:#e6ffed; border-color:#88d39f; color:#1f8a3a;}

.mapm-btn-blocked[aria-disabled="true"]{
    opacity:.55 !important;
    cursor:not-allowed !important;
}
.mapm-col-photo {
    width: 70px;
    text-align: center;
}
.mapm-no-photo {
    font-size: 0.8rem;
    color: #777;
}

.profile-row{
    margin-top: 15px;
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid #dddddd;
}
.profile-row:last-of-type{
    border-bottom: none;
}
.button-row{
    display:flex;
    flex-direction:row;
    gap:6px;
    flex-wrap:wrap;
    margin-top: 5px;
}
.photo-col{
    padding: 0 !important;
}
.details-col{
    padding-right: 0 !important;
}





/** 
 * 
 * Favourite Profiles
 * 
 ========================= */
.mapm-fav-btn{
    display:inline-flex;align-items:center;gap:6px;padding:6px 10px;
    border:1px solid #e5e7eb;border-radius:18px;background:#fff;cursor:pointer;
    color:#6b7280;
    outline: none !important;
}
.mapm-fav-btn .mapm-fav-ico svg{width:16px;height:16px;display:block}
.mapm-fav-btn .heart{
    fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;
    transition:fill .15s ease, transform .15s ease;
}
.mapm-fav-btn.is-fav{ background:#fff5f6;border-color:#f9c2c7;color:#e11d48; }
.mapm-fav-btn.is-fav .heart{ fill: currentColor; }


/* Guest notice (logged-out on /favorites) */
.mapm-favs-guest.notice { padding:10px; border-left:4px solid #72aee6; }

/* Modal shell */
.mapm-modal { display:none; }
.mapm-modal.is-open { 
	display:block;
    position: fixed;
    inset: 0;
    z-index: 99999; 
}
.mapm-modal__backdrop {
  position:fixed; inset:0; background:rgba(0,0,0,.55);
}
.mapm-modal__dialog {
  position:fixed; inset:0; display:flex; align-items:center; justify-content:center; pointer-events:none;
}
.mapm-modal__panel {
  pointer-events:auto; background:#fff; max-width:420px; width:92%;
  border-radius:10px; box-shadow:0 10px 30px rgba(0,0,0,.25); overflow:hidden;
}
.mapm-modal__head {
  padding:18px 18px 6px; display:flex; justify-content:space-between; align-items:center;
}
.mapm-modal__title { margin:0; }
.mapm-modal__close {
  border:0; background:transparent; cursor:pointer; outline:none !important;
}
.mapm-modal__body { padding:0 18px 14px; color:#444; }
.mapm-modal__text { margin:8px 0 0; }
.mapm-modal__foot { padding:12px 18px 18px; display:flex; gap:10px; flex-wrap:wrap; }

/* Modal buttons */
.mapm-btn {
  display:inline-block; padding:10px 14px; border-radius:8px; text-decoration:none;
}
.mapm-btn--primary { background:#1d4ed8; color:#fff; }
.mapm-btn--secondary { background:#e5e7eb; color:#111; }

/* Small screens */
@media (max-width:480px){
  .mapm-modal__panel { max-width:96%; width:96%; }
}



/** 
 * 
 * Profile Editor 
 * 
 ========================= */
.mapm-profile-editor{
	width: 1200px;
	margin: auto;
}
.mapm-profile-editor section{
	margin-bottom: 30px;
}

.mapm-profile-editor .mapm-facets--personal{
	margin-bottom: 14px;
}

.mapm-facets{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}
.mapm-facet{border:1px solid #ddd;border-radius:6px;padding:12px;background:#fff}
.mapm-facet .term{display:block;margin:6px 0}
.mapm-facet .term input{margin-right:6px}
.mapm-facet select{width:100%}

.mapm-main-locations {}
.mapm-main-locations label { display:inline-flex; align-items:center; gap:4px; background:#f8f8f8; padding:4px 8px; border-radius:3px; border:1px solid #ddd; }
.mapm-main-locations input[type=checkbox] { margin:0; }
.mapm-location-row{display: flex; margin-bottom: 6px}
.mapm-location-row select{margin-right: 6px}
.mapm-location-row select:last-of-type{margin-right:0;}

.mapm-tour-row{border:1px solid #e5e5e5;padding:10px;margin-bottom:12px;border-radius:4px;background:#fff}
.mapm-tour-section{display:flex;gap:6px;margin-bottom:8px}
.mapm-tour-actions{display:flex;gap:8px;margin:10px 0}
.mapm-tour-section label{width: auto}

.mapm-client-fields .fld{margin-bottom:10px}
.mapm-client-fields .fld label{display:block;font-weight:600;margin-bottom:3px}
.mapm-client-fields input[type=text],
.mapm-client-fields input[type=date]{width:100%;box-sizing:border-box}
.mapm-client-fields .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}

.mapm-client-details .fld { margin-bottom: 10px; }
.mapm-client-details .fld label { display:block; font-weight:600; margin-bottom:3px; }
.mapm-client-details input[type=text],
.mapm-client-details input[type=url],
.mapm-client-details input[type=date],
.mapm-client-details select,
.mapm-client-details textarea { width:100%; box-sizing:border-box; }
.mapm-client-details .grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:10px; }

.mapm-access-code .fld{margin-bottom:10px}
.mapm-access-code .fld label{display:block;font-weight:600;margin-bottom:3px}
.mapm-access-code input[type=password],
.mapm-access-code input[type=text]{width:100%;box-sizing:border-box}
.mapm-inline{display:flex;align-items:center;gap:10px;margin-top:6px}
.mapm-help{color:#666;font-size:0.8rem;margin-top:4px}
.mapm-warn{margin:10px 0;padding:10px;border-left:4px solid #ffb900;background:#fff8e5}





/** 
 * 
 * Ad Images Editor 
 * 
 ========================= */
.mapm-adimg-header{margin:0 0 12px;}
.mapm-adimg-title{margin:0;}
.mapm-adimg-form{background:#fff;border:1px solid #e5e7eb;padding:14px;border-radius:8px;}
.mapm-adimg-row{display:grid;grid-template-columns:160px 1fr;gap:16px;align-items:start;border-top:1px dashed #e5e7eb;padding:12px 0}
.mapm-adimg-row:first-of-type{border-top:0;padding-top:0}
.mapm-adimg-thumb img{max-width:140px;height:auto;border:1px solid #e5e7eb;border-radius:6px;background:#fafafa;padding:2px;display:block}
.mapm-adimg-badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:0.8rem;line-height:1.6;border:1px solid #d8dbe5;margin:.25rem 0 .25rem 8px;background:#f6f7fb;color:#444;vertical-align:middle}
.mapm-adimg-badge.status-approved{ background:#ecffef; border-color:#b6e2c0; color:#0a6b2b; }
.mapm-adimg-badge.status-pending { background:#f6f7fb; border-color:#d8dbe5; color:#444;   }
.mapm-adimg-badge.status-rejected{ background:#fff2f2; border-color:#f0c2c2; color:#a00000; }
.mapm-adimg-notice.success{background:#ecfdf5;border-left:4px solid #22c55e;padding:10px;margin:0 0 12px;border-radius:4px}
.mapm-adimg-notice.error{background:#fef2f2;border-left:4px solid #ef4444;padding:10px;margin:0 0 12px;border-radius:4px}
.mapm-adimg-actions{display:flex;gap:8px;align-items:center;margin-top:6px;flex-wrap:wrap}
.mapm-adimg-ori{font-size:0.8rem;color:#444;margin-top:4px}
.mapm-adimg-hint{color:#555;font-size:0.8rem;margin:.25rem 0 0}
.mapm-adimg-inline-msg{margin-top:8px;padding:8px 10px;border-left:4px solid #d1d5db;background:#f9fafb;border-radius:4px;display:none}
.mapm-adimg-inline-msg.ok{border-left-color:#22c55e;background:#ecfdf5;color:#065f46}
.mapm-adimg-inline-msg.err{border-left-color:#ef4444;background:#fef2f2;color:#991b1b}

.mapm-adimg-reject-wrap{display:inline-flex;gap:6px;align-items:center;margin-left:4px;flex-wrap:wrap}
.mapm-reject-reason{min-width:210px}
.mapm-reject-note{min-width:260px;max-width:360px}




/** 
 * 
 * Profile Verification 
 * 
 ========================= */

/* Layout */
.mapm-verify-grid{
    display:grid; grid-template-columns: 1fr 450px; gap:18px; align-items:start;;
}
@media (max-width: 860px){
    .mapm-verify-grid{ grid-template-columns: 1fr; }
}

/* Left column (existing styles kept) */
.mapm-verify-form{background:#fff;border:1px solid #e5e5e5;padding:14px;border-radius:6px;}
.mapm-verify-row{margin-bottom:12px}
.mapm-verify-msg{margin-bottom:12px}
.mapm-verify-notice.success{background:#f0fff4;border-left:4px solid #28a745;padding:10px;margin-bottom:12px}
.mapm-verify-notice.error{background:#fff5f5;border-left:4px solid #dc3545;padding:10px;margin-bottom:12px}
.mapm-verify-hint{color:#555;font-size:0.8rem;margin:.25rem 0 0}
.mapm-verify-existing{font-size:0.8rem;color:#444}

.mapm-verify-badge{
    display:inline-block; padding:2px 8px; border-radius:999px;
    font-size:0.8rem; line-height:1.6; border:1px solid #d8dbe5; margin:.25rem 0;
    vertical-align:middle; background:#f6f7fb; color:#444;
}
.mapm-verify-badge.status-approved{ background:#ecffef; border-color:#b6e2c0; color:#0a6b2b; }
.mapm-verify-badge.status-pending { background:#f6f7fb; border-color:#d8dbe5; color:#444; }
.mapm-verify-badge.status-rejected{ background:#fff2f2; border-color:#f0c2c2; color:#a00000; }

.mapm-verify-overall {
    display:flex; align-items:center; gap:8px; margin:0 auto 30px auto; justify-content:flex-start; flex-direction: column;
}
.mapm-verify-overall .mapm-verify-badge{
    margin: 0;
}
.mapm-verify-when{ color:#555; font-size:0.8rem; }

/* Right column (instructions) */
.mapm-verify-aside{
    position:sticky; top:10px;
}
.mapm-verify-aside-box{
    background:#fff; border:1px solid #e5e5e5; border-radius:6px; padding:14px;
}
.mapm-verify-aside h4{ margin:0 0 8px; }
.mapm-verify-aside ul{ margin:8px 0 12px 18px; padding:0; color:#333; }
.mapm-verify-aside li{ margin:6px 0; }
.mapm-verify-example{
    display:block; max-width:100%; height:auto; border:1px solid #e5e5e5; border-radius:6px;
}
.mapm-verify-caption{ font-size:0.8rem; color:#666; margin-top:6px; }




/** 
 * 
 * Moderation Controls 
 * 
 ========================= */
.mapm-moderation-controls{
	width: 1000px;
	max-width: 100%;
	margin: 0 auto 30px auto;
}
.mapm-moderation-row{
	border:1px solid #e5e7eb;
	padding:12px;
	border-radius:8px;
	margin:12px 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
} 

.mapm-edit-buttons{
	margin-top:10px;
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	justify-content: center;
	align-items: center;
}
.mapm-moderation-controls .notice{
	margin:8px 0 0;
}
.mapm-verif-panel em{
	color:#666;
}
.mapm-send-msg-key{ 
	border-radius: var(--buttons-border-radius) var(--buttons-border-radius-top-right-bottom-left, var(--buttons-border-radius)) !important; 
	min-width:260px;
}

.mapm-verification-buttons-wrap{
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	align-items:center;
	justify-content: center;
}
.mapm-verification-pill{
	display:inline-flex;
	align-items:center;
	gap:6px;
	padding: var(--buttons-padding-top-bottom) var(--buttons-padding-left-right) !important;
	border-radius: var(--buttons-border-radius) var(--buttons-border-radius-top-right-bottom-left, var(--buttons-border-radius)) !important;;
	background:#f3f4f6;
	border:1px solid #e5e7eb;
}
.mapm-verification-pill .mapm-verification-status{
	text-transform: capitalize;
	font-weight: bold;
}
.mapm-verification-pill .mapm-verification-status[data-status="verified"]{
	color: var(--mapm-mark-verified) !important;
}
.mapm-verification-pill .mapm-verification-status[data-status="failed"]{
	color: var(--mapm-mark-failed) !important;
}
.mapm-send-email-wrap{
	display: flex;
	flex-direction: row;
	gap: 8px;
	justify-content: center;
	align-items: center;
}
.mapm-verification-photos-wrap{
	width: 100%;
	text-align: center;
}
.mapm-verif-panel{
	display: none;
	margin-top: 10px;
	border-top: 1px dashed #e5e7eb;
	padding-top: 10px;
	width: 100%;
}
.mapm-verif-grid{
	display: grid;
	grid-template-columns: repeat(auto-fit,minmax(260px,1fr));
	gap: 12px;
}
.mapm-verif-item{
	margin: .25rem 0;
}
.mapm-verif-thumb{
	min-height: 80px;
}
.mapm-verif-actions{
	display: flex;
	gap: 8px;
	align-items: center;
	justify-content: center;
}
.mapm-verif-state[data-state="approved"] strong{
	color: var(--mapm-verif-photos-approve);
}
.mapm-verif-state[data-state="rejected"] strong{
	color: var(--mapm-verif-photos-reject);
}

/** 
 * 
 * Directory Grid Pages 
 * 
 ========================= */
.mapm-profile-grid{
	width: 100%;
}
button.mapm-open-filters i{
	font-size: 1rem !important;
}

.mapm-directory .mapm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:15px}
.mapm-card{border:1px solid #eee;border-radius:8px;padding:10px;background:#fff}
.mapm-card__thumb img{display:block;width:100%;height:auto;border-radius:6px}
.mapm-card__title{font-size:1rem;margin:.6rem 0}
.mapm-card__meta{font-size:.875rem;color:#666}
.mapm-breadcrumbs{margin:.5rem 0 1rem}
.mapm-nearby{display:flex;flex-wrap:wrap;gap:.5rem;padding:0;margin:.5rem 0 0;list-style:none}



/** 
 * 
 * Search Shortcode 
 * 
 ========================= */
.mapm-location-search-widget{padding: 0 15px;display:flex;justify-content:center}
.mapm-location-search-form{position:relative;display:flex;gap:8px;align-items:stretch;max-width:820px;width:100%}
.mapm-location-search__field{position:relative;flex:1}
.mapm-location-search__input{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px}


.mapm-loc-suggest{
    position:absolute; left:0; right:0; top:100%; z-index:50;
    background:#fff; border:1px solid #e5e7eb; border-radius:8px;
    box-shadow:0 10px 20px rgba(0,0,0,.08); margin-top:6px; max-height:260px; overflow:auto;
}
.mapm-loc-suggest ul{list-style:none;margin:0;padding:6px}
.mapm-loc-suggest li{padding:8px 10px;border-radius:6px;cursor:pointer;line-height:1.25}
.mapm-loc-suggest li:hover, .mapm-loc-suggest li.is-active{background:#f3f4f6}
.mapm-loc-suggest .sub{display:block;font-size:0.8rem;}



/* Shared modal (footer, centered middle) */
.mapm-searchfilters-overlay[hidden],
.mapm-searchfilters-modal[hidden]{ display:none; }

.mapm-searchfilters-overlay{
    position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:9998
}
.mapm-searchfilters-modal{
    position:fixed;
    left:50%;
    top:50%;
    transform:translate(-50%, -50%);
    width:min(540px,95vw);
    max-height:90vh;
    overflow:auto;
    background:#fff;
    border-radius:10px;
    box-shadow:0 20px 45px rgba(0,0,0,.25);
    padding:14px;
    z-index:9999
}
.mapm-searchfilters-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e5e7eb;padding-bottom:8px;margin-bottom:10px}
.mapm-searchfilters-head h3{margin:0;}
.mapm-searchfilters-close{background:none;border:0;padding:6px 8px;cursor:pointer;}
.mapm-searchfilters-body{display:grid;gap:10px}
.mapm-searchfilters-body .chk{display:flex;gap:8px;align-items:center;}
.mapm-searchfilters-body .rad{display:flex;gap:8px;align-items:center;}
.mapm-gender{margin:0;padding:0;border:0}
.mapm-gender legend{font-weight:600;margin-bottom:6px}
.mapm-searchfilters-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}







/** 
 * 
 * Profile Card
 * 
 ========================= */
.mapm-profile-card{
	padding-top: 150% !important; /* 2:3 */ 
	position: relative;
	overflow: hidden;
	height: 0;
	display:block;
	background:#fff;
	border:1px solid #e5e7eb;
	border-radius:12px;
}
.mapm-profile-card img{
	top:-100%; 
	left:0; 
	right: 0; 
	bottom:-100%;
	margin: auto !important;
	min-width: 100%;
	min-height: 100%;
	position: absolute;
	object-fit: cover;
	width: 100%;
	height: 100%;
}
.mapm-profile-card .img-hover{
	opacity: 0;
	transition:opacity .25s ease;
}
.mapm-profile-card:hover > .img-hover,
.mapm-profile-card:focus > .img-hover{
	opacity:1
}
.mapm-profile-card .mapm-card-body{
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	padding:10px 12px;
	color: #fff;
	text-align: center;
}
.mapm-profile-card .mapm-card-body:before{
	content: '';
	position: absolute;
	top:0;
	left:0;
	width: 100%;
	height: 100%;
	background-color: #000000;
	opacity: 0.1;
	transition:opacity .25s ease;
	z-index: 0;
}
.mapm-profile-card:hover .mapm-card-body:before{
	background-color: #000000;
	opacity: 0.4;
}
.mapm-profile-card .mapm-card-name{
	color: #fff;
	position: relative;
	z-index: 1;
	font-size: 1.2rem;
}
.mapm-profile-card .mapm-card-name h3{
	margin: 0;
}
.mapm-profile-card .mapm-card-meta{
	color: #fff;
	font-size: 0.8rem;
	display:flex;
	justify-content: center;
	align-items: center;
	position: relative;
	z-index: 1;
}
.mapm-profile-card .mapm-card-meta i{
	color: #fff;
	font-size: 0.7rem;
	margin-right: 5px;
}
.mapm-profile-card a{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* Ensure the heart sits above the overlay link and is clickable */
.mapm-profile-card { position: relative; }
.mapm-profile-card .mapm-card-fav {
	position: absolute;
 	top: 10px;
	right: 10px;
	z-index: 5; /* above the overlay link */
}

.mapm-profile-card .mapm-fav-btn{
    border:0px;
    background:transparent;
    cursor:pointer;
    color: #ffffff;
}
.mapm-profile-card .mapm-fav-btn.is-fav{
	border:0px;
	background:transparent;
	color: #e11d48;
}


/* ===== Featured Cards: 2-up grid ===== */

/* Grid wrapper for multiple featured cards */
.mapm-featured-grid {
	display: grid;
	grid-template-columns: 1fr;         /* 1 per row on small screens */
	gap: 15px;                          /* space between cards */
	margin-bottom: 15px;
}

/* 2 per row from ~tablet up */
@media (min-width: 768px) {
	.mapm-featured-grid {
    	grid-template-columns: repeat(2, minmax(0, 1fr));
  	}
}




/** 
 * 
 * Profile Card Featured
 * 
 ========================= */
/* ===== Featured Profile Card (split layout) ===== */

.mapm-profile-card-featured {
	position: relative;
	border-radius: 1rem;
	overflow: hidden;
	padding: 0 !important;
	margin-bottom: 0 !important;
	background-color: rgba(0, 0, 0, .01);
	border:1px solid rgba(0, 0, 0, .1);
}

.mapm-profile-card-featured.layout-split-left {
	align-items: stretch;
}


/* Left media column */
.mapm-profile-card-featured .mapm-card-media-left{
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 100%;
}

.mapm-profile-card-featured .mapm-card-media-left img{
	top: -100%;
  	left: 0;
	right: 0;
	bottom: -100%;
	margin: auto !important;
	min-width: 100%;
	min-height: 100%;
	position: absolute;
	object-fit: cover;
	width: 100%;
	height: 100%;
}

@media (min-width: 576px) {
	.mapm-profile-card-featured{
		display: flex;
		flex-direction: row;
	}
	.mapm-profile-card-featured .mapm-card-media-left {
    	position: relative;
		width: 65%;
		height: 100%;
		min-height: 500px;
		padding-top: 0;
	}
}

.mapm-profile-card-featured .mapm-card-media-left .img-hover{
	opacity: 0;
	transition:opacity .25s ease;
}
.mapm-profile-card-featured .mapm-card-media-left:hover > .img-hover,
.mapm-profile-card-featured .mapm-card-media-left:focus > .img-hover{
	opacity:1
}


.mapm-profile-card-featured .mapm-card-media-left a{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	inset: 0;
  	z-index: 1;
}

/* Badges overlay (top-left) */
.mapm-profile-card-featured .mapm-badges {
	position: absolute;
	top: 8px;
	left: 8px;
	display: flex;
	gap: 6px;
}

.mapm-profile-card-featured .mapm-badge svg {
	width: 1em;
	height: 1em;
}

/* Ensure the heart sits above the overlay link and is clickable */
.mapm-profile-card-featured { position: relative; }
.mapm-profile-card-featured .mapm-card-fav {
	position: absolute;
 	top: 10px;
	right: 10px;
	z-index: 5; /* above the overlay link */
}

.mapm-profile-card-featured .mapm-fav-btn{
    border:0px;
    background:transparent;
    cursor:pointer;
    color: #ffffff;
}
.mapm-profile-card-featured .mapm-fav-btn.is-fav{
	border:0px;
	background:transparent;
	color: #e11d48;
}


/* Right content column */
.mapm-profile-card-featured .mapm-card-body-right {
	box-sizing: border-box;
	flex-grow:1;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: .5rem;
	text-align: center;
}

@media (min-width: 576px) {
	.mapm-profile-card-featured .mapm-card-body-right {
		max-width: 50%;
	}
}

.mapm-profile-card-featured .mapm-card-body-right .mapm-note-touring{
	margin-bottom: 15px;
	font-weight: bold;
	border: 1px solid var(--green);
	border-radius: 1rem;
}

.mapm-profile-card-featured .mapm-card-body-right .inner{
	padding: 15px;
}
.mapm-profile-card-featured .mapm-card-name {
	margin: 0;
	line-height: 1.2;
}

.mapm-profile-card-featured .mapm-card-name a {
	text-decoration: none;
	color: var(--site-font-colour) !important;
}

.mapm-profile-card-featured .mapm-card-meta {
	display: flex;
	align-items: center;
	justify-content: center;
}

.mapm-profile-card-featured .mapm-card-meta i {
	font-size: 0.7rem;
	margin-right: 5px;
 	line-height: 0; /* nice vertical alignment for FA icons */
}

.mapm-profile-card-featured .mapm-card-tours .mapm-tours-section{
	margin-top: 10px;
}
.mapm-profile-card-featured .mapm-card-tours ul.mapm-tours-list{
	list-style: none;
	padding-left: 0;
	margin: 0;
}

.mapm-profile-card-featured .mapm-card-tours ul.mapm-tours-list li i{
	font-size: 0.7rem;
	margin-right: 5px;
}

.mapm-profile-card-featured .mapm-card-tours .mapm-tours-title{
	font-weight: bold;
}

.mapm-profile-card-featured .mapm-card-tours ul.mapm-tours-list .mapm-tours-dates{
	white-space: nowrap;
}
/* Optional: make the entire card feel interactive */
.mapm-profile-card-featured a {
	color: inherit;
}


/* ========= Base (color-only; structure lives elsewhere) ========= */
.mapm-badges{
	position:absolute;
	top:8px;
	left:8px;
	display:flex;
	gap:6px;
	flex-wrap:wrap;
}
.mapm-badge{
	display:inline-flex;
	align-items:center;
	gap:6px;
	padding:4px 8px;
	border-radius:999px;
	font-size:0.8rem;
	line-height:1;
}
.mapm-badge.verified{
	background:#065f46
}
.mapm-badge.new{
	background:#1f2937
}
.mapm-badge svg{
	width:14px;
	height:14px;
	display:block
}


/* ======================= AVAILABLE NOW ======================= */
.mapm-badge-available,
.mapm-badge.available{
  --mapm-badge-bg:#e6ffed;
  --mapm-badge-border:#88d39f;
  --mapm-badge-text:#1f8a3a;
  background:var(--mapm-badge-bg);
  border-color:var(--mapm-badge-border);
  color:var(--mapm-badge-text);
}

/* Available Now – palette */
.mapm-badge-available--mint   { --mapm-badge-bg:#eafff4; --mapm-badge-border:#78e3a2; --mapm-badge-text:#166534; }
.mapm-badge-available--lime   { --mapm-badge-bg:#f3ffe6; --mapm-badge-border:#c6f6a6; --mapm-badge-text:#3f6212; }
.mapm-badge-available--teal   { --mapm-badge-bg:#e6fffb; --mapm-badge-border:#7edcd1; --mapm-badge-text:#0f766e; }
.mapm-badge-available--sky    { --mapm-badge-bg:#e6f4ff; --mapm-badge-border:#9ecbff; --mapm-badge-text:#0c4a6e; }
.mapm-badge-available--amber  { --mapm-badge-bg:#fff7e6; --mapm-badge-border:#ffd48a; --mapm-badge-text:#8a6d1f; }
.mapm-badge-available--slate  { --mapm-badge-bg:#f3f4f6; --mapm-badge-border:#d1d5db; --mapm-badge-text:#374151; }

/* ========================== VERIFIED ========================== */
.mapm-badge-verified,
.mapm-badge.verified{
  --mapm-badge-bg:#eaf2ff;
  --mapm-badge-border:#9ab6ff;
  --mapm-badge-text:#1d4ed8;
  background:var(--mapm-badge-bg);
  border-color:var(--mapm-badge-border);
  color:var(--mapm-badge-text);
}

/* Verified – palette */
.mapm-badge-verified--blue   { --mapm-badge-bg:#e8f0ff; --mapm-badge-border:#97b3ff; --mapm-badge-text:#1e40af; }
.mapm-badge-verified--sky    { --mapm-badge-bg:#e6f4ff; --mapm-badge-border:#9ecbff; --mapm-badge-text:#0c4a6e; }
.mapm-badge-verified--cyan   { --mapm-badge-bg:#e6feff; --mapm-badge-border:#8be5ec; --mapm-badge-text:#155e75; }
.mapm-badge-verified--teal   { --mapm-badge-bg:#e6fffb; --mapm-badge-border:#7edcd1; --mapm-badge-text:#0f766e; }
.mapm-badge-verified--emerald{ --mapm-badge-bg:#e6fff5; --mapm-badge-border:#85e4c4; --mapm-badge-text:#065f46; }
.mapm-badge-verified--slate  { --mapm-badge-bg:#f3f4f6; --mapm-badge-border:#d1d5db; --mapm-badge-text:#374151; }

/* ============================ NEW ============================ */
.mapm-badge-new,
.mapm-badge.new{
  --mapm-badge-bg:#f3e8ff;
  --mapm-badge-border:#d0a6ff;
  --mapm-badge-text:#5b21b6;
  background:var(--mapm-badge-bg);
  border-color:var(--mapm-badge-border);
  color:var(--mapm-badge-text);
}

/* New – palette */
.mapm-badge-new--violet  { --mapm-badge-bg:#efe4ff; --mapm-badge-border:#cbb5ff; --mapm-badge-text:#6d28d9; }
.mapm-badge-new--indigo  { --mapm-badge-bg:#ececff; --mapm-badge-border:#b9baff; --mapm-badge-text:#4338ca; }
.mapm-badge-new--fuchsia { --mapm-badge-bg:#fde7ff; --mapm-badge-border:#f3a6ff; --mapm-badge-text:#a21caf; }
.mapm-badge-new--pink    { --mapm-badge-bg:#ffe9f3; --mapm-badge-border:#ffb3cf; --mapm-badge-text:#9d174d; }
.mapm-badge-new--amber   { --mapm-badge-bg:#fff7e6; --mapm-badge-border:#ffd48a; --mapm-badge-text:#8a6d1f; }
.mapm-badge-new--slate   { --mapm-badge-bg:#f3f4f6; --mapm-badge-border:#d1d5db; --mapm-badge-text:#374151; }

/* High-contrast/Windows forced-colors assist */
@media (forced-colors: active){
  .mapm-badge-available,
  .mapm-badge.available,
  .mapm-badge-verified,
  .mapm-badge.verified,
  .mapm-badge-new,
  .mapm-badge.new{ border-color: ButtonText; }
}






/** 
 * 
 * Request Profile Review
 * 
 ========================= */
#mapm-request-review-msg.mapm-ok{ background:#f0fff4; border-color:#00a32a; color:#1f7a1f; }
#mapm-request-review-msg.mapm-err{ background:#fff5f5; border-color:#d63638; color:#b32d2e; }





/** 
 * 
 * Report Profile
 * 
 ========================= */
.mapm-report-profile{
	margin-top: 30px;
}
.mapm-report-profile-button-wrapper{
	text-align: right;
}
@media (min-width: 768px) { 
    .mapm-report-profile-button-wrapper{
    	padding: 0 15px;
    }
}
/* Inline alert styles (inside widget) */
.mapm-report-alert{
    padding:8px 10px;
    border-left:4px solid #d1d5db;
    background:#f9fafb;
    color:#111827;
    border-radius:4px;
    display:none;
}
.mapm-report-alert.mapm-info{ border-color:#3b82f6; background:#eff6ff; color:#1e40af; }
.mapm-report-alert.mapm-ok{   border-color:#22c55e; background:#ecfdf5; color:#065f46; }
.mapm-report-alert.mapm-err{  border-color:#ef4444; background:#fef2f2; color:#991b1b; }



/** 
 * 
 * Pricing
 * 
 ========================= */
.mapm-profile-list{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}


.mapm-pricing-card{
    background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:14px;margin-bottom: 30px;
}

.mapm-group-title{}
.mapm-pricing-flag{font-size:0.8rem;text-transform:uppercase;letter-spacing:.02em;margin-bottom:6px;opacity:.7}
.mapm-pricing-title{margin:0 0 6px}
.mapm-pricing-price{font-weight:600;margin-bottom:8px}
.mapm-pricing-desc p{margin:.4em 0}
.mapm-upgrade-meta{margin:0 0 8px 0;padding-left:16px}
.mapm-upgrade-meta li{margin:.2em 0}
.mapm-flag-silver{border-color:#d9d9d9}
.mapm-flag-gold{border-color:#f0c36d}
.mapm-flag-platinum{border-color:#b8c6ff}
.mapm-flag-premium{border-color:#7cc5ff}
.mapm-flag-city_featured{border-color:#7cc5ff}
.mapm-flag-homepage_grid{border-color:#7cc5ff}
.mapm-flag-homepage_featured{border-color:#7cc5ff}
.mapm-flag-homepage_slideshow{border-color:#7cc5ff}
.mapm-flag-activation_fee{border-color:#cbd5e1}
.mapm-pricing-card table{width:auto;}



/** 
 * 
 * Password Reset
 * 
 ========================= */
.mapm-pw .notice{padding:10px;border-left:4px solid; margin:0 0 12px 0}
.mapm-pw .notice-success{background:#f6fff6;border-color:#46b450}
.mapm-pw .notice-error{background:#fff5f5;border-color:#dc3232}
.mapm-pw .notice-info{background:#f0f6ff;border-color:#72aee6}
.mapm-pw .notice-warning{background:#fff8e5;border-color:#ffb900}
.mapm-pw input[type=text], .mapm-pw input[type=password]{width:100%;max-width:420px;padding:10px;border:1px solid #ccc;border-radius:6px}









/** 
 * 
 * Delete Account
 * 
 ========================= */
.mapm-delete-account .button.button-primary:hover { background:#8a1f1f; border-color:#8a1f1f; }







/** 
 * 
 * Mobile Menu - Location item fix
 * 
 ========================= */

.nav-drill-wrapper #toggle-menu-location.nav-expand {
    display: flex;
    justify-content: var(--mobile-menu-text-alignment, space-between);
    cursor: pointer;
}
.nav-drill-wrapper #toggle-menu-location.nav-expand::after {
    flex: 0 1 auto;
    font-family: "Font Awesome 7 Free";
    font-weight: 900;
    content: '\f054';
    font-size: 0.5rem;
    margin-left: 0.5em;
}




/** 
 * 
 * Location Menu
 * 
 ========================= */

.locations-button-wrapper{
	text-align: center;
}

.locations-button-wrapper .title{

}

.locations-button-wrapper .button-group button{
    margin: 0 5px 10px 5px;
}

#location-menu{
    display: block;
}

.nav-drill-wrapper .menu-title-wrapper{
    position: absolute;
    top: 0;
    width: 100%;
    height: 50px;
    display: flex;
    align-items: center;
}

.nav-drill-wrapper .menu-title-wrapper .menu-title{
    padding-left: 0.875rem;
    text-transform: uppercase;
}

.nav-drill-wrapper .toggle-wrapper{
    z-index: 1;
    display: flex;
}

.nav-drill-wrapper .menu-item:not(:last-child) {
    border-bottom: solid 1px rgba(0, 0, 0, .03);
}

.nav-drill-wrapper .loc-link {
    display: flex;
    padding: var(--main-menu-item-spacing-sm-screens) 1em;
    color: var(--main-menu-colour-sm-screens, var(--main-menu-colour, var(--site-font-colour)));
    font-size: var(--main-menu-font-size-sm-screens);
    line-height: var(--main-menu-line-height);
    font-weight: var(--main-menu-font-weight, var(--global-font-weight));
    text-transform: var(--main-menu-text-transform);
    letter-spacing: var(--main-menu-letter-spacing);
    justify-content: var(--mobile-menu-text-alignment);
}

.nav-drill-wrapper .loc-link:hover,
.nav-drill-wrapper .loc-link:focus,
.nav-drill-wrapper .loc-link:active,
.nav-drill-wrapper .current-menu-item .loc-link
.nav-drill-wrapper .current-menu-item .loc-link:hover, 
.nav-drill-wrapper .current-menu-item .loc-link:focus, 
.nav-drill-wrapper .current-menu-item .loc-link:active{
    color: var(--main-menu-colour-sm-screens-hover, var(--main-menu-colour-hover, var(--accent-colour-hover)));
}

.nav-drill-wrapper .menu-item-has-children .loc-expand {
    display: flex;
    justify-content: var(--mobile-menu-text-alignment, space-between);
    cursor: pointer;
}

.nav-drill-wrapper .menu-item-has-children .loc-expand::after {
    flex: 0 1 auto;
    font-family: "Font Awesome 7 Free";
    font-weight: 900;
    content: '\f054';
    font-size: 0.5rem;
    margin-left: 0.5em;
}

.nav-drill-wrapper .loc-sub-menu {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transform: translateX(100%);
    background-color: var(--main-menu-bg-colour-sm-screens, var(--header-bg-colour, var(--site-bg-colour)));
    transition: 0.3s;
    visibility: hidden;
    margin: 0 !important;
    list-style-type: none;
    padding: 0;
}

.nav-drill-wrapper .loc-sub-menu .menu-item:not(:last-child) {
    border-bottom: solid 1px rgba(0, 0, 0, .03);
}

.nav-drill-wrapper .loc-sub-menu .loc-link {
    background-color: rgba(0, 0, 0, 0);
}

.nav-drill-wrapper .loc-sub-menu .loc-back-link {
    display: flex;
    align-items: center;
    background-color: rgba(0, 0, 0, .05) !important;
    opacity: 0.8;
    justify-content: left;
}

.nav-drill-wrapper .loc-sub-menu .loc-back-link::before {
    margin-right: 0.5em;
    font-family: "Font Awesome 7 Free";
    font-weight: 900;
    content: '\f053';
    font-size: 0.5rem;
}

.nav-drill-wrapper .loc-sub-menu .loc-back-link{
    justify-content: var(--mobile-menu-text-alignment, left);
}

.nav-drill-wrapper .loc-sub-menu .loc-back-link::after {
    content: '';
    display: none;
}

.nav-drill-wrapper .menu-item-has-children.active > .loc-sub-menu {
    transform: translateX(0);
    visibility: visible;
}

.nav-drill-wrapper .menu-item-has-children .loc-sub-menu .loc-link {
    background-color: rgba(0, 0, 0, 0);
}

#toggle-menu-location{
    cursor: pointer;
}

#location-bg-full-screen-overlay{
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99999999999;
    height: 0;
    width: 0;
    display: block;
}

#location-bg-full-screen-overlay div{
    background-color: rgba(0, 0, 0, 0.5);
    height: 100%;
    width: 100%;
    opacity: 0;
    -webkit-transition: all 0.3s ease-out;
       -moz-transition: all 0.3s ease-out;
        -ms-transition: all 0.3s ease-out;
         -o-transition: all 0.3s ease-out;
            transition: all 0.3s ease-out;
}

.location-menu-is-toggled #location-bg-full-screen-overlay{
    display: block;
    height: 100%;
    width: 100%;
}

.location-menu-is-toggled #location-bg-full-screen-overlay div{
    opacity: 1;
    -webkit-transition: all 0.3s ease-out;
       -moz-transition: all 0.3s ease-out;
        -ms-transition: all 0.3s ease-out;
         -o-transition: all 0.3s ease-out;
            transition: all 0.3s ease-out;
}

@media all and (max-width: 1000px) and (min-width: 0px) {
    .nav-is-toggled.location-menu-is-toggled #location-bg-full-screen-overlay{
        display: none !important;
    }
}

.location-menu-is-toggled #location-menu {
    transform: translateX(0);
}






/** 
 * 
 * Homepage Slideshow
 * 
 ========================= */

.homepage-slideshow-wrapper {
	margin: -15px -15px 0 -15px;
    max-width: initial !important;
    width: auto !important;
    position: relative;
}

.homepage-slideshow-wrapper:before{
	content: '';
	position: absolute;
	top:0;
	left:0;
	width: 100%;
	height: 100%;
}

.homepage-slideshow-wrapper .slider {
    width: 100%;
    margin: 0px auto;
    overflow: hidden;   
}

.homepage-slideshow-wrapper .slick-slide {
    margin: 0px;
    line-height: 0;
}

.homepage-slideshow-wrapper .homepage-slideshow-desktop .slide-content{
	position: absolute;
	bottom: 30px;
	right: 30px;
	top: initial;
	width: auto;
	padding: 20px 20px 20px 20px;
	background-color: rgba(255, 255, 255, 0.7);
}

.homepage-slideshow-wrapper .homepage-slideshow-mobile .slide-content{
	position: absolute;
	bottom: 30px;
	right: 30px;
	top: initial;
	width: auto;
	padding: 10px 10px 10px 10px;
	background-color: rgba(255, 255, 255, 0.7);
}

.homepage-slideshow-wrapper .homepage-slideshow-desktop .slide-content div{
	padding: inherit;
	font-size: 2rem;
	color: #2f2f2f;
}

.homepage-slideshow-wrapper .homepage-slideshow-mobile .slide-content div{
	padding: inherit;
	font-size: 1rem;
	color: #2f2f2f;
}

.homepage-slideshow-wrapper .homepage-slideshow-desktop a,
.homepage-slideshow-wrapper .homepage-slideshow-mobile a{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}



/** 
 * 
 * Provider Profile Pages
 * 
 ========================= */

.profile-photo{
	width: 300px;
	margin-top: -150px;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	z-index: 5;
}

.profile-photo .image-wrapper{
	padding-top: calc(100% - 20px) !important;
	border: 10px solid var(--site-bg-colour);
	background-color: var(--site-bg-colour);
	border-radius: 50%;
}
.mapm-boxed{
	width: 1100px;
	max-width: 100%;
	margin: auto;
}
.grid-wrapper{
	margin-left: -7px;
	margin-right: -7px;
}
.mapm-section{
	width: 100%;
	max-width: 100%;
}
.mapm-section .inner{
	padding: 15px;
}

.mapm-section.border-it .inner{
	padding: 30px;
	background-color: rgba(255, 255, 255, .5);
	border-radius: 1rem;
	border: 1px solid rgba(0,0,0,0.05);

}

.mapm-boxed .grid .grid-sizer,
.mapm-boxed .grid .mapm-section { 
    width: 100%;
}
.mapm-boxed .mapm-section {
	padding: 7px;
}
/* Spacing for small screens */
@media (max-width: 575px) { 
    
}
/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) { 
    
}   
/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) { 
    .grid-wrapper{
    	margin: 0;
    }
    .mapm-boxed .grid .grid-sizer,
    .mapm-boxed .grid .mapm-section{
        width: 50%;
    }
    .mapm-boxed .mapm-section {
    	padding: 15px;
    }
    .mapm-boxed .grid .mapm-section--w-100{
    	width: 100%;
    }
}    



.mapm-section h3{
	margin-bottom: .75rem;
}
.mapm-section p:last-of-type{
	margin-bottom: 0;
}
.mapm-row{
	width: 100%;
	max-width: 100%;
	border-bottom: 1px solid rgba(0,0,0,0.05);
	padding-bottom: .75rem;
	margin-bottom: .75rem;
}
.mapm-row:last-of-type{
	border-bottom: 0;
	padding-bottom: 0;
	margin-bottom: 0;
}
.space-between{
	display: flex;
	justify-content: space-between;
}

.mapm-section.heading{
	width: 100%;
	margin-top: 30px;
}
.mapm-section.heading h3{
	border-bottom: 1px solid var(--accent-colour) !important;
	padding-bottom: 5px;
	margin: 0;
}

.mapm-section.profile-title{
	text-align: center;
	margin: 15px 0 15px 0;
}
.mapm-section.profile-title h1,
.mapm-section.profile-title h3{
	text-transform: capitalize;
	margin-bottom: 0;
}
.mapm-section.profile-title h3{
	margin-top: 10px;
}
.mapm-section.profile-title .profile-badges{
	margin-top: 15px;
	display: flex;
	justify-content: center;
	gap: 6px;
}

.mapm-section.main-location{
	width: 1000px;
	margin: 0 auto 20px auto;
}

.mapm-section.description .main-location,
.mapm-section.agency-description .main-location{
	margin-bottom: 15px;
}


.mapm-section.description{
	width: 800px;
	margin: auto;
}

@media (max-width: 767px) { 
    .mapm-section.description .inner{
        padding-left: 0;
        padding-right: 0;
    }
}

.mapm-section.favourite-button{
	margin: 30px auto;
	text-align: center;
}


.mapm-masonry-gallery{
    margin-bottom: 30px;
    margin-left: -7px;
    margin-right: -7px;
}
    
.mapm-masonry-gallery .grid-sizer,
.mapm-masonry-gallery .grid .image { 
    width: 100%;
}
    
.mapm-masonry-gallery .grid .image{
    padding: 7px;
}

.mapm-masonry-gallery .grid .image .image-inner{
    border-radius: 0.5rem;
    overflow: hidden;
}


.mapm-masonry-gallery .grid .image-inner a.zoom img{
    -webkit-transition: all 0.3s ease-out;
       -moz-transition: all 0.3s ease-out;
        -ms-transition: all 0.3s ease-out;
         -o-transition: all 0.3s ease-out;
            transition: all 0.3s ease-out;
}

.mapm-masonry-gallery .grid .image-inner a.zoom:hover > img{
    transform: scale(1.05);
}

.mapm-masonry-gallery .grid .image-inner a span{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: rgba(0, 0, 0, 0);
    opacity: 0;
    -webkit-transition: all 0.3s ease-out;
       -moz-transition: all 0.3s ease-out;
        -ms-transition: all 0.3s ease-out;
         -o-transition: all 0.3s ease-out;
            transition: all 0.3s ease-out;
}

.mapm-masonry-gallery .grid .image-inner a span.darken-on-hover{
	background-color: rgba(0, 0, 0, 0.5);
}

.mapm-masonry-gallery .grid .image-inner a span:after{
    content: '\f067';
    font-family: 'Font Awesome 7 Free';
    font-weight: 900;
    color: #ffffff;
    font-size: 2rem;
}

.mapm-masonry-gallery .grid .image-inner a:hover span{
    opacity: 1;
}



   
/* Spacing for small screens */
@media (max-width: 575px) { 
    .mapm-masonry-gallery{
        margin-left: -7px;
        margin-right: -7px;
    }
    .mapm-masonry-gallery .grid .image{
        padding: 7px;
    }
}
    
/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) { 
    .mapm-masonry-gallery .grid-sizer,
    .mapm-masonry-gallery .grid .image{
        width: 50%;
    }
}
    
/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) { 
    .mapm-masonry-gallery .grid-sizer,
    .mapm-masonry-gallery .grid .image{
        width: 50%;
    }
    .mapm-masonry-gallery{
        margin-left: 0px;
        margin-right: 0px;
    }
    .mapm-masonry-gallery .grid .image{
        padding: 15px;
    }
}
    
/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
    .mapm-masonry-gallery .grid-sizer,
    .mapm-masonry-gallery .grid .image{
        width: 33.333%;
    }
}
    
/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
    .mapm-masonry-gallery .grid-sizer,
    .mapm-masonry-gallery .grid .image{
        width: 33.333%;
    }
}

.mapm-section.all-locations{
	text-align: center;
	width: 100%;
}

.mapm-row-title{
	font-weight: bold;
}
.mapm-row-title i{
	font-size: 0.8rem;
}

.contact-info .mapm-row-title,
.social-media .mapm-row-title,
.content-sites .mapm-row-title,
.gift-lists .mapm-row-title,
.payment-links .mapm-row-title,
.other-links .mapm-row-title{
	font-weight: var(--main-content-font-weight, var(--global-font-weight));
	display: flex;
	align-items: center;
}

.contact-info i,
.social-media i,
.content-sites i,
.gift-lists i,
.payment-links i,
.other-links i{
	font-size: 0.9rem;
	margin-right: 5px;
}

@media (max-width: 576px) {
	.mapm-row-title i{
		font-size: 1rem;
	}
	.mapm-row-title .mapm-row-label {
    	display: none;
	}
}


.currency-symbol{
	font-size: 0.8rem;
}
.currency-code{
	font-size: 0.8rem;
}

.mapm-rate-desc{
	font-variation-settings: 'ital' 125;
	font-size: 0.8rem;
}

.mapm-section.tours .tour-notes{
	font-variation-settings: 'ital' 125;
	font-size: 0.8rem;
}

.mapm-section.tags{
	width: 100%;
}

.mapm-tags .sep { 
	opacity: .5; 
	margin: 0 .35em; 
}
.mapm-tag-link { 
	text-decoration: none; 
}
.mapm-tag-link:hover { 
	text-decoration: underline; 
}
p.mapm-tags{
	margin: 0
}

.mapm-section.report-profile{
	width: 100%;
}


@media (min-width: 768px) { 
    .mapm-similar-profiles-grid,
    .mapm-agency-profiles-grid{
    	padding: 15px;
    }
}


.mapm-section.agency-profile-photo,
.mapm-section.agency-description,
.mapm-section.client-profile-photo,
.mapm-section.client-description{
	padding: 0 !important;
}

.agency-profile-photo img,
.client-profile-photo img{
	border-radius: 0.5rem;
}

.mapm-section.agency-profile-photo,
.mapm-section.client-profile-photo{
	margin-bottom: 15px;
}





/** 
 * 
 * Login Page
 * 
 ========================= */
.mapm-login-wrap{
	width: 500px;
	max-width: 100%;
	margin: auto;
}


/** 
 * 
 * Sign Up Buttons
 * 
 ========================= */
.mapm-signup-intro{
	text-align: center;
	margin: 15px 0;
}
.mapm-signup-buttons{
	width: 850px;
	max-width: 100%;
	margin: auto;
	padding-top: 30px;
	padding-bottom: 30px;
}
.mapm-signup-buttons .inner{
	display:flex;
	flex-wrap:wrap;
	justify-content: center;
}
.mapm-signup-buttons .sign-up-button-wrapper{
	text-align: center;
	width: 50%;
	padding: 15px;
}
.mapm-signup-buttons .sign-up-button-wrapper .btn{
	margin-bottom: 10px;
}

/* Extra large devices (large desktops, 1200px and up) */
@media (max-width: 650px) {
	.mapm-signup-buttons .sign-up-button-wrapper{
		width: 100%;
	}
}


/** 
 * 
 * Registration Page
 * 
 ========================= */
.mapm-section.mapm-signup-form{
	width: 1200px;
	max-width: 100%;
	margin: auto;
}
.mapm-section.mapm-signup-form .inner{
	display: flex;
	flex-wrap: wrap;
}

.mapm-section.mapm-signup-form .mapm-registration-policies{
	width: 100%;
	margin-bottom: 30px;
}
.mapm-section.mapm-signup-form .mapm-register-form{
	width: 100%;
}

@media (min-width: 768px) {
	.mapm-section.mapm-signup-form .mapm-registration-policies{
		width: 50%;
		padding-right: 15px;
		margin-bottom: 0;
	}
	.mapm-section.mapm-signup-form .mapm-register-form{
		width: 50%;
		padding-left: 15px;
	}
}
.mapm-section.mapm-signup-form .mapm-registration-policies h2,
.mapm-section.mapm-signup-form .mapm-register-form h2{
	margin-bottom: 20px;
}






