/* Phoenix Driving Academy: suburbs we service map */
.pdam{--pdam-navy:#001A63;--pdam-blue:#0799E2;--pdam-ink:#07192F;--pdam-mist:#F4F4F4;--pdam-white:#FFFFFF;--pdam-sky:#7CCBF2;
  display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:0;background:var(--pdam-white);color:var(--pdam-ink);font:inherit;
  /* Keep Leaflet's high z-index panes inside the map so they never sit over the sticky header */
  position:relative;z-index:0;isolation:isolate;border-radius:6px;overflow:hidden}
.pdam *{box-sizing:border-box}
.pdam button{text-transform:none;letter-spacing:normal;min-height:0;text-shadow:none;box-shadow:none}
.pdam .pdam-stage{position:relative;min-height:620px;background:var(--pdam-mist)}
.pdam .pdam-canvas{position:absolute;inset:0;background:var(--pdam-mist)}
.pdam .pdam-canvas:focus{outline:none}
.pdam .leaflet-container{font:inherit;background:var(--pdam-mist)}
.pdam .pdam-tiles{filter:grayscale(1) brightness(1.04) contrast(.9)}
.pdam .leaflet-control-attribution{font-size:10px;background:rgba(255,255,255,.8)}
.pdam .leaflet-bar{border:0;box-shadow:none}
.pdam .leaflet-bar a{border:0;border-radius:4px!important;margin-bottom:2px;background:var(--pdam-white);color:var(--pdam-navy)}
.pdam .leaflet-bar a:hover{background:var(--pdam-blue);color:var(--pdam-white)}

/* Legend + buttons */
.pdam .pdam-tools{position:absolute;top:14px;left:14px;z-index:700;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.pdam .pdam-legend{display:flex;gap:16px;align-items:center;background:var(--pdam-white);padding:9px 14px;border-radius:4px;font-size:13px;font-weight:600}
.pdam .pdam-legend span{display:inline-flex;align-items:center;gap:8px}
.pdam .pdam-key-area{width:16px;height:12px;background:color-mix(in srgb,var(--pdam-blue) 40%,transparent);outline:2px solid var(--pdam-navy);outline-offset:-2px}
.pdam .pdam-key-base{width:12px;height:12px;border-radius:50%;background:var(--pdam-navy);outline:3px solid var(--pdam-blue)}
.pdam .pdam-key-car{width:10px;height:16px;border-radius:3px;background:var(--pdam-blue);position:relative}
.pdam .pdam-key-car::after{content:"";position:absolute;left:2px;top:6px;width:6px;height:5px;background:#FFD500;border-radius:1px}
.pdam .pdam-btn{appearance:none;border:0;background:var(--pdam-navy);color:var(--pdam-white);font:inherit;font-size:13px;font-weight:700;line-height:1;padding:11px 14px;border-radius:4px;cursor:pointer}
.pdam .pdam-btn:hover{background:var(--pdam-blue)}
.pdam .pdam-btn:focus-visible{outline:2px solid var(--pdam-blue);outline-offset:2px}
.pdam .pdam-btn[hidden]{display:none}
.pdam .pdam-btn--light{background:var(--pdam-white);color:var(--pdam-navy)}
.pdam .pdam-btn--light:hover{background:var(--pdam-blue);color:var(--pdam-white)}

/* Scroll hint */
.pdam .pdam-hint{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);z-index:700;background:rgba(0,26,99,.9);color:#fff;font-size:13px;padding:8px 14px;border-radius:4px;pointer-events:none;opacity:0;transition:opacity .25s;white-space:nowrap}
.pdam .pdam-hint.is-on{opacity:1}

/* Suburb card */
.pdam .pdam-card{position:absolute;left:14px;bottom:14px;z-index:800;width:min(330px,calc(100% - 28px));background:var(--pdam-white);padding:22px 22px 20px;border-radius:6px;box-shadow:0 10px 30px rgba(0,26,99,.18);transform:translateY(10px);opacity:0;pointer-events:none;transition:opacity .25s,transform .25s}
.pdam .pdam-card.is-open{opacity:1;transform:none;pointer-events:auto}
.pdam .pdam-card-kicker{margin:0 0 6px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--pdam-blue)}
.pdam .pdam-card-title{margin:0 40px 10px 0;color:var(--pdam-navy);font-size:24px;line-height:1.25}
.pdam .pdam-card-text{margin:0 0 16px;font-size:15px;line-height:1.55}
.pdam .pdam-card-close{position:absolute;top:14px;right:14px;width:32px;height:32px;border:0;border-radius:50%;background:var(--pdam-mist);color:var(--pdam-navy);font-size:20px;line-height:32px;padding:0;cursor:pointer}
.pdam .pdam-card-close:hover{background:var(--pdam-blue);color:var(--pdam-white)}
.pdam .pdam-card-actions{display:flex;flex-direction:column;gap:8px}
.pdam .pdam-cta{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 18px;border-radius:4px;background:var(--pdam-blue);color:var(--pdam-white)!important;font-size:14px;font-weight:700;line-height:1.2;text-decoration:none!important;transition:background .2s}
.pdam .pdam-cta:after{content:"\2192"}
.pdam .pdam-cta:hover{background:var(--pdam-navy)}
.pdam .pdam-cta:focus-visible{outline:2px solid var(--pdam-navy);outline-offset:2px}
.pdam .pdam-cta--ghost{background:var(--pdam-mist);color:var(--pdam-navy)!important}
.pdam .pdam-cta--ghost:hover{background:var(--pdam-navy);color:var(--pdam-white)!important}

/* Sidebar list */
.pdam .pdam-side{display:flex;flex-direction:column;max-height:620px;background:var(--pdam-navy);color:var(--pdam-white)}
.pdam .pdam-side-head{padding:26px 24px 14px}
.pdam .pdam-side-kicker{margin:0 0 6px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--pdam-sky)}
.pdam .pdam-side-title{margin:0 0 8px;color:var(--pdam-white);font-size:26px;line-height:1.25}
.pdam .pdam-side-sub{margin:0;font-size:14px;line-height:1.5;opacity:.8}
.pdam .pdam-list{list-style:none;margin:0;padding:6px 12px 16px;overflow:auto;flex:1;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.25) transparent}
.pdam .pdam-item{margin:0}
.pdam .pdam-empty{padding:12px;font-size:14px;line-height:1.5;opacity:.8}
.pdam .pdam-search{display:block;width:100%;margin:16px 0 0;padding:11px 14px;border:0;border-radius:4px;background:rgba(255,255,255,.12);color:var(--pdam-white);font:inherit;font-size:15px;box-shadow:none}
.pdam .pdam-search::placeholder{color:rgba(255,255,255,.65)}
.pdam .pdam-search:focus{outline:2px solid var(--pdam-blue);outline-offset:0;background:rgba(255,255,255,.16)}
.pdam .pdam-item button{appearance:none;width:100%;text-align:left;border:0;background:none;font:inherit;color:var(--pdam-white);padding:11px 12px;border-radius:4px;cursor:pointer;display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.pdam .pdam-item button:hover{background:rgba(255,255,255,.08)}
.pdam .pdam-item button:focus-visible{outline:2px solid var(--pdam-blue);outline-offset:-2px}
.pdam .pdam-item.is-active button{background:var(--pdam-blue);color:var(--pdam-white)}
.pdam .pdam-item-name{font-weight:700;font-size:16px;line-height:1.3}
.pdam .pdam-item-meta{font-size:13px;opacity:.7;white-space:nowrap}
.pdam .pdam-item.is-active .pdam-item-meta{opacity:.9}

/* Base pin, learner cars and labels */
.pdam .pdam-pin{width:20px;height:20px;border-radius:50%;background:var(--pdam-navy);border:4px solid var(--pdam-blue);position:relative}
.pdam .pdam-pin::after{content:"";position:absolute;inset:-10px;border-radius:50%;border:2px solid var(--pdam-blue);animation:pdam-pulse 2.4s ease-out infinite}
@keyframes pdam-pulse{0%{transform:scale(.5);opacity:.9}100%{transform:scale(1.5);opacity:0}}
.pdam .pdam-car{background:none;border:0}
.pdam .pdam-car-body{width:16px;height:28px;transform-origin:50% 50%;filter:drop-shadow(0 1px 1.5px rgba(0,0,0,.45));cursor:pointer}
.pdam .pdam-car-body svg{display:block}
.pdam .pdam-car:hover .pdam-car-body{filter:drop-shadow(0 0 4px rgba(7,153,226,.9))}
@media (prefers-reduced-motion:reduce){.pdam .pdam-pin::after{animation:none;opacity:.5}}
.pdam .leaflet-tooltip.pdam-tip{background:var(--pdam-navy);color:#fff;border:0;border-radius:4px;font-size:13px;font-weight:600;padding:6px 10px;box-shadow:none}
.pdam .leaflet-tooltip.pdam-tip::before{display:none}
.pdam .leaflet-tooltip.pdam-label{background:none;border:0;box-shadow:none;padding:0;color:var(--pdam-navy);font-size:11px;font-weight:600;letter-spacing:.02em;text-shadow:0 0 3px #fff,0 0 3px #fff,0 0 4px #fff}
.pdam .leaflet-tooltip.pdam-label::before{display:none}
.pdam .leaflet-tooltip.pdam-label--major{font-size:13px;font-weight:700}

/* Pages with the map: keep the site header (including the version that drops in on scroll) in front of it */
header.fl-builder-content,.fl-builder-content[data-type="header"],.fl-theme-builder-header-sticky,.fl-page-header,.fl-page-header-fixed{z-index:1000!important}

@media (max-width:900px){
  .pdam{grid-template-columns:1fr}
  .pdam .pdam-stage{min-height:480px}
  .pdam .pdam-side{max-height:none}
  .pdam .pdam-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:2px;max-height:520px}
}
@media (max-width:560px){
  .pdam .pdam-stage{min-height:0;display:flex;flex-direction:column}
  .pdam .pdam-canvas{position:relative;inset:auto;height:440px;flex:none}
  .pdam .pdam-legend{font-size:12px;gap:10px;padding:8px 10px}
  .pdam .pdam-legend span:nth-child(2){display:none}
  .pdam .pdam-card{position:static;width:auto;transform:none;display:none;box-shadow:none}
  .pdam .pdam-card.is-open{display:block}
  .pdam .pdam-tools{top:10px;left:10px;right:56px}
}
