:root{--lca-navy:#082c4c;--lca-blue:#0c5e9e;--lca-amber:#ffbd2e;--lca-orange:#f08b00;--lca-red:#b42318;--lca-ink:#142b3f;--lca-soft:#f4f7fa}

/* Compact public header control. It is rendered at the footer then moved beside Live Radar by front.js. */
.lca-header-button{display:none!important;position:relative;text-decoration:none!important;box-sizing:border-box;font-family:inherit}
.lca-header-button.lca-header-ready{display:inline-flex!important;align-items:center;gap:7px;min-height:40px;padding:7px 13px;border:1px solid #e39b00;border-radius:999px;background:linear-gradient(180deg,#ffd85d 0%,#ffb61f 100%);color:#132b43!important;font-size:13px;font-weight:900;line-height:1;white-space:nowrap;box-shadow:0 3px 10px rgba(157,94,0,.22),inset 0 1px 0 rgba(255,255,255,.7);vertical-align:middle;margin:0 10px;z-index:20;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}
.lca-header-button:hover{transform:translateY(-1px);box-shadow:0 5px 14px rgba(157,94,0,.3),inset 0 1px 0 rgba(255,255,255,.8);filter:saturate(1.05)}
.lca-header-button:focus-visible{outline:3px solid #ffdf00!important;outline-offset:3px!important;box-shadow:0 0 0 2px #082c4c!important}
.lca-header-icon{font-size:15px}.lca-header-arrow{font-size:21px;font-weight:700;margin-left:1px;line-height:.7}
.lca-header-beacon{position:absolute;top:-5px;left:13px;width:8px;height:8px;border-radius:50%;background:#ff9d00;box-shadow:0 0 0 3px rgba(255,157,0,.22),0 0 13px rgba(255,125,0,.95);animation:lcaBeacon 1.5s ease-in-out infinite alternate}
.lca-header-count{position:absolute;right:-6px;top:-8px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:#b42318;color:#fff;display:grid;place-items:center;font-size:10px;font-weight:900;border:2px solid #fff;box-sizing:border-box}
.lca-header-fallback{position:fixed!important;top:14px;left:50%;transform:translateX(-50%);z-index:99999}.lca-header-fallback:hover{transform:translateX(-50%) translateY(-1px)}
@keyframes lcaBeacon{from{opacity:.45;transform:scale(.84)}to{opacity:1;transform:scale(1.12)}}

/* Dedicated Traffic Alerts page */
.lca-public-page{max-width:1440px;margin:0 auto 45px;color:var(--lca-ink);font-family:inherit}
.lca-page-hero{position:relative;overflow:hidden;border-radius:20px;margin:20px 0;background:radial-gradient(circle at 82% 18%,rgba(255,190,45,.22),transparent 24%),linear-gradient(115deg,#061d33 0%,#0b3d67 58%,#102b43 100%);color:#fff;box-shadow:0 16px 44px rgba(4,31,55,.16)}
.lca-page-hero:after{content:"";position:absolute;right:-85px;top:-90px;width:320px;height:320px;border:46px solid rgba(255,190,45,.08);border-radius:50%}
.lca-page-stripes{position:absolute;inset:auto 0 0;height:9px;background:repeating-linear-gradient(135deg,#ffc536 0 18px,#132c41 18px 36px)}
.lca-page-hero-inner{position:relative;z-index:2;padding:34px 38px 40px;max-width:900px}
.lca-page-badge{display:inline-flex;align-items:center;gap:9px;padding:7px 11px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(255,255,255,.08);font-size:11px;font-weight:900;letter-spacing:.12em;color:#ffe5a2}
.lca-page-beacon{width:9px;height:9px;border-radius:50%;background:var(--lca-amber);box-shadow:0 0 12px rgba(255,189,46,.85);animation:lcaBeacon 1.5s ease-in-out infinite alternate}
.lca-page-hero h1{margin:12px 0 7px!important;color:#fff!important;font-size:clamp(32px,4vw,52px)!important;line-height:1.05!important;letter-spacing:-.025em}
.lca-page-hero p{margin:0!important;max-width:720px;color:#dce9f4;font-size:17px;line-height:1.55}
.lca-page-status{position:absolute;right:38px;bottom:35px;display:flex;align-items:center;gap:10px;background:#fff;color:var(--lca-navy);padding:12px 17px;border-radius:14px;box-shadow:0 8px 24px rgba(0,0,0,.15)}
.lca-page-status strong{font-size:29px;line-height:1;color:#b46c00}.lca-page-status span{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.07em}
.lca-page-main{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(390px,.95fr);gap:22px;align-items:start}
.lca-page-section-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin:4px 2px 14px}.lca-page-section-head span,.lca-map-card-head span{display:block;color:#777;font-size:10px;font-weight:900;letter-spacing:.14em}.lca-page-section-head h2{margin:3px 0 0!important;font-size:25px!important;color:var(--lca-navy)!important}.lca-page-section-head p{margin:0;color:#667b8b;font-size:12px}
.lca-page-card{position:relative;display:grid;grid-template-columns:54px 1fr;gap:15px;background:#fff;border:1px solid #dbe4eb;border-left:5px solid var(--lca-amber);border-radius:16px;padding:18px;margin:0 0 15px;box-shadow:0 6px 22px rgba(12,48,76,.07)}
.lca-page-card.priority-important{border-left-color:#e97000}.lca-page-card.priority-emergency{border-left-color:var(--lca-red)}
.lca-card-symbol{width:48px;height:48px;border-radius:13px;display:grid;place-items:center;background:#fff3c4;font-size:25px;border:1px solid #f3d46f}
.lca-card-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.lca-card-type{font-size:10px;font-weight:900;letter-spacing:.12em;color:#5e7485}.lca-card-closed{background:var(--lca-red);color:#fff;border-radius:999px;padding:4px 7px;font-size:10px;font-weight:900}
.lca-page-card h3{margin:5px 0 8px!important;font-size:23px!important;line-height:1.15!important;color:var(--lca-navy)!important}
.lca-page-message{display:inline-block;background:#fff6d6;border:1px solid #f5d777;border-radius:9px;padding:8px 10px;color:#5a3c00;font-weight:900;font-size:13px;margin-bottom:8px}.lca-page-location{margin:2px 0 10px;color:#36546a;font-weight:700}.lca-page-location span{color:#e79000}
.lca-page-times{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:9px 0 11px}.lca-page-times>span{display:flex;flex-direction:column;gap:2px;background:#f5f8fa;border-radius:9px;padding:8px 10px}.lca-page-times small{font-size:9px;letter-spacing:.09em;font-weight:900;color:#718494}.lca-page-times strong{font-size:12px;color:#263f53}.lca-page-description{line-height:1.55;color:#435867;font-size:14px}.lca-page-description p:last-child{margin-bottom:0}
.lca-map-focus{margin-top:10px;border:0;background:var(--lca-navy);color:#fff;border-radius:999px;padding:9px 13px;font-weight:800;cursor:pointer}.lca-map-focus:hover{background:#0e4d7d}.lca-map-focus:focus-visible{outline:3px solid #ffdf00;outline-offset:2px}
.lca-page-clear{border-left-color:#2e8b57}.lca-page-clear .lca-card-symbol{background:#eaf8ef;border-color:#b9dfc7;color:#267249}
.lca-page-map-wrap{position:sticky;top:96px}.lca-map-card{overflow:hidden;border-radius:17px;background:#fff;border:1px solid #d7e0e7;box-shadow:0 9px 28px rgba(12,48,76,.1)}
.lca-map-card-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 16px;border-bottom:1px solid #dfe7ed;background:linear-gradient(180deg,#fff,#f7f9fb)}.lca-map-card-head strong{display:block;margin-top:2px;font-size:17px;color:var(--lca-navy)}.lca-map-key{font-size:11px;color:#5c7182}.lca-key-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--lca-orange);margin-right:4px}.lca-key-line{display:inline-block;width:28px;height:8px;border-radius:999px;background:#ffd400;border:2px solid #d47a00;box-shadow:0 0 0 3px rgba(255,228,92,.35);vertical-align:-1px;margin-right:6px}
.lca-public-map{height:525px;background:#e9eef2}.lca-map-foot{display:flex;justify-content:space-between;gap:10px;padding:10px 13px;font-size:10px;color:#6c7f8d;background:#f8fafb}
.lca-safety-card{display:flex;gap:12px;align-items:flex-start;margin-top:14px;border-radius:14px;padding:14px 15px;background:#102f4a;color:#fff;box-shadow:0 7px 20px rgba(12,48,76,.12)}.lca-safety-icon{font-size:22px}.lca-safety-card strong{display:block;color:#ffe182}.lca-safety-card p{margin:3px 0 0;color:#dce6ee;font-size:12px;line-height:1.45}
.lca-map-marker-wrap{background:transparent!important;border:0!important}.lca-map-marker{width:32px;height:32px;border-radius:50% 50% 50% 8px;transform:rotate(-45deg);display:grid;place-items:center;background:#f3a400;color:#102c42;border:3px solid #fff;box-shadow:0 3px 9px rgba(0,0,0,.25);font-weight:900}.lca-map-marker::first-letter{transform:rotate(45deg)}.lca-map-marker-end{background:#173b5a;color:#fff}.lca-map-popup strong{display:block;font-size:13px;color:#0a2944}.lca-map-popup small{display:block;margin-top:3px;color:#566b7b}

@media(max-width:980px){.lca-page-main{grid-template-columns:1fr}.lca-page-map-wrap{position:static}.lca-public-map{height:430px}.lca-page-status{position:static;display:inline-flex;margin-top:18px}.lca-page-hero-inner{padding:27px 25px 34px}.lca-header-button.lca-header-ready{padding:7px 10px;margin:0 6px}.lca-header-label{font-size:12px}}
@media(max-width:680px){.lca-header-arrow{display:none}.lca-header-button.lca-header-ready{min-height:36px;padding:6px 9px;gap:5px}.lca-header-label{font-size:11px}.lca-page-hero{border-radius:13px}.lca-page-hero-inner{padding:24px 18px 30px}.lca-page-card{grid-template-columns:1fr;padding:15px}.lca-page-times{grid-template-columns:1fr}.lca-page-section-head{align-items:start;flex-direction:column}.lca-public-map{height:360px}.lca-map-foot{flex-direction:column}}
@media(prefers-reduced-motion:reduce){.lca-header-beacon,.lca-page-beacon{animation:none!important}.lca-header-button{transition:none!important}}
@media(forced-colors:active){.lca-header-button,.lca-page-card,.lca-map-card{border:2px solid CanvasText}.lca-header-button:focus-visible,.lca-map-focus:focus-visible{outline:3px solid Highlight!important}}

/* v1.4 administrator-only preview treatment */
.lca-header-button.lca-preview-button:after{content:"PREVIEW";position:absolute;left:50%;bottom:-13px;transform:translateX(-50%);padding:2px 6px;border-radius:999px;background:#082c4c;color:#fff;font-size:8px;line-height:1.2;font-weight:900;letter-spacing:.08em;border:1px solid #fff;box-shadow:0 2px 5px rgba(0,0,0,.18)}
.lca-preview-notice{display:flex;align-items:center;gap:14px;margin:18px 0 8px;padding:11px 15px;border:1px solid #d7a12a;border-radius:12px;background:#fff7dc;color:#4e3800;box-shadow:0 4px 14px rgba(65,45,0,.08)}
.lca-preview-notice strong{font-size:11px;letter-spacing:.11em}.lca-preview-notice span{font-size:13px}
.lca-card-preview-status{display:inline-flex;align-items:center;padding:4px 7px;border-radius:999px;background:#e9f2fa;color:#174d77;border:1px solid #bdd4e7;font-size:9px;font-weight:900;letter-spacing:.08em}
@media(max-width:680px){.lca-preview-notice{align-items:flex-start;flex-direction:column;gap:3px}.lca-header-button.lca-preview-button:after{display:none}}

/* v1.4.1 safe header placement + dedicated page layout */
.lca-header-between-blocks{flex:0 0 auto!important;align-self:center!important;margin:0 12px!important}
.lca-nav-alert-holder{display:flex!important;align-items:center!important;list-style:none!important;margin:0 8px!important;padding:0!important}
.lca-nav-alert-holder .lca-header-button{margin:0!important}
.lca-header-nav-fallback{margin:0 8px!important}

/* Dedicated template bypasses the theme's normal page title/content wrapper. */
body.lca-traffic-alerts-page .lca-standalone-page{display:block;width:100%;max-width:none;margin:0;padding:18px 24px 54px;background:linear-gradient(180deg,#f7f9fb 0,#fff 420px);box-sizing:border-box}
body.lca-traffic-alerts-page .lca-public-page{width:min(1400px,calc(100% - 16px));max-width:1400px;margin:0 auto 40px;padding:0;box-sizing:border-box}
body.lca-traffic-alerts-page .lca-preview-notice{margin-top:0}
body.lca-traffic-alerts-page .lca-page-hero{margin-top:14px}

@media(max-width:1150px){
  .lca-header-between-blocks{margin:0 7px!important}
  .lca-header-between-blocks .lca-header-label{font-size:12px}
}
@media(max-width:900px){
  .lca-header-between-blocks{display:none!important}
}
@media(max-width:680px){
  body.lca-traffic-alerts-page .lca-standalone-page{padding:10px 10px 36px}
  body.lca-traffic-alerts-page .lca-public-page{width:100%}
}

/* v1.4.3 hero count badge layout fix: reserve space so alert count never covers title/subtitle. */
@media(min-width:981px){
  .lca-page-hero-inner{max-width:none!important;padding-right:285px!important;box-sizing:border-box}
  .lca-page-status{top:50%!important;right:38px!important;bottom:auto!important;transform:translateY(-50%)!important;max-width:210px!important;box-sizing:border-box}
}
@media(min-width:981px) and (max-width:1180px){
  .lca-page-hero-inner{padding-right:245px!important}
  .lca-page-status{right:24px!important;padding:10px 13px!important}
  .lca-page-status strong{font-size:25px!important}
  .lca-page-status span{font-size:10px!important}
}

/* v1.4.4 compact Construction Alerts control + safe full-button attention pulse */
.lca-header-button.lca-header-ready{
  min-height:34px!important;
  padding:5px 10px!important;
  gap:5px!important;
  margin:0 8px!important;
  font-size:12px!important;
  animation:lcaButtonAttention 2.8s ease-in-out infinite!important;
  transform-origin:center;
}
.lca-header-left-of-brand{flex:0 0 auto!important;align-self:center!important;margin-left:8px!important;margin-right:10px!important}
.lca-header-icon{font-size:13px!important}
.lca-header-arrow{font-size:17px!important}
.lca-header-beacon{top:-4px!important;left:11px!important;width:7px!important;height:7px!important}
.lca-header-count{right:-5px!important;top:-7px!important;min-width:18px!important;height:18px!important;font-size:9px!important}
@keyframes lcaButtonAttention{
  0%,68%,100%{background:linear-gradient(180deg,#ffd85d 0%,#ffb61f 100%);box-shadow:0 2px 8px rgba(157,94,0,.20),inset 0 1px 0 rgba(255,255,255,.72);filter:brightness(1)}
  78%{background:linear-gradient(180deg,#ffe889 0%,#ffc63a 100%);box-shadow:0 0 0 3px rgba(255,183,0,.16),0 0 18px rgba(255,157,0,.62),inset 0 1px 0 rgba(255,255,255,.9);filter:brightness(1.08)}
  88%{background:linear-gradient(180deg,#ffd85d 0%,#ffb61f 100%);box-shadow:0 2px 8px rgba(157,94,0,.20),inset 0 1px 0 rgba(255,255,255,.72);filter:brightness(1)}
}
@media(max-width:1100px){
  .lca-header-button.lca-header-ready{padding:5px 8px!important;margin:0 5px!important;font-size:11px!important;min-height:32px!important}
  .lca-header-left-of-brand{margin-left:5px!important;margin-right:6px!important}
}
@media(max-width:900px){
  .lca-header-left-of-brand{display:inline-flex!important}
  .lca-header-button.lca-header-ready{max-width:150px!important}
  .lca-header-arrow{display:none!important}
}
@media(max-width:680px){
  .lca-header-button.lca-header-ready{min-height:31px!important;padding:4px 7px!important;font-size:10px!important;max-width:132px!important}
  .lca-header-label{font-size:10px!important}
}
@media(prefers-reduced-motion:reduce){
  .lca-header-button.lca-header-ready{animation:none!important;filter:none!important}
}

/* v1.4.5: non-destructive header overlay. The alert never consumes flex/grid width. */
.lca-header-overlay{
  position:absolute!important;
  margin:0!important;
  z-index:9998!important;
  max-height:34px!important;
}
.lca-header-button.lca-header-ready{
  min-height:30px!important;
  padding:4px 9px!important;
  gap:4px!important;
  font-size:11px!important;
  border-radius:999px!important;
  animation:lcaSlowAttention 5.2s ease-in-out infinite!important;
  transform:none!important;
}
.lca-header-button.lca-header-ready:hover{transform:none!important}
.lca-header-button.lca-header-ready .lca-header-label{font-size:11px!important;overflow:hidden;text-overflow:ellipsis}
.lca-header-button.lca-header-ready .lca-header-arrow{font-size:15px!important}
.lca-header-button.lca-header-tight{padding:4px 6px!important;gap:3px!important}
.lca-header-button.lca-header-tight .lca-header-label{font-size:9px!important}
.lca-header-button.lca-header-tight .lca-header-arrow{display:none!important}
.lca-header-mobile{transform:translateX(-50%)!important;max-width:138px!important}
.lca-header-mobile:hover{transform:translateX(-50%)!important}
@keyframes lcaSlowAttention{
  0%,58%,100%{background:linear-gradient(180deg,#ffd85d 0%,#ffb61f 100%);box-shadow:0 2px 7px rgba(157,94,0,.18),inset 0 1px 0 rgba(255,255,255,.72);filter:brightness(1)}
  70%{background:linear-gradient(180deg,#fff1a8 0%,#ffc94a 100%);box-shadow:0 0 0 3px rgba(255,183,0,.13),0 0 15px rgba(255,157,0,.46),inset 0 1px 0 rgba(255,255,255,.9);filter:brightness(1.06)}
  82%{background:linear-gradient(180deg,#ffd85d 0%,#ffb61f 100%);box-shadow:0 2px 7px rgba(157,94,0,.18),inset 0 1px 0 rgba(255,255,255,.72);filter:brightness(1)}
}
@media(max-width:760px){
  .lca-header-button.lca-header-ready{min-height:29px!important;padding:4px 7px!important;font-size:10px!important}
  .lca-header-button.lca-header-ready .lca-header-label{font-size:10px!important}
  .lca-header-button.lca-header-ready .lca-header-arrow{display:none!important}
  .lca-header-count{min-width:17px!important;height:17px!important;font-size:8px!important}
}
@media(prefers-reduced-motion:reduce){
  .lca-header-button.lca-header-ready{animation:none!important;filter:none!important}
}

/* Work-zone map emphasis. */
.lca-map-unmapped{position:absolute;left:50%;top:55%;transform:translate(-50%,-50%);z-index:600;width:min(82%,420px);padding:14px 16px;border:2px solid #d18b00;border-radius:12px;background:rgba(255,249,226,.96);color:#3d2c00;box-shadow:0 8px 24px rgba(0,0,0,.14);text-align:center;pointer-events:none}
.lca-map-unmapped strong{display:block;font-size:15px;margin-bottom:4px}.lca-map-unmapped span{display:block;font-size:12px;line-height:1.4}
.lca-map-card{position:relative}
.lca-map-marker>span{display:block;transform:rotate(45deg);line-height:1}

/* v1.4.6 — Work Zone Alerts: anchor visually to the LEFT of the City logo without changing header flow. */
.lca-header-button.lca-header-ready{
  min-height:30px!important;
  padding:4px 9px!important;
  gap:4px!important;
  max-width:none!important;
  white-space:nowrap!important;
  overflow:visible!important;
  font-size:11px!important;
  line-height:1!important;
  animation:lcaWorkZonePulse 5.8s ease-in-out infinite!important;
}
.lca-header-button.lca-header-ready .lca-header-label{
  font-size:11px!important;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:nowrap!important;
}
.lca-header-button.lca-header-tight{padding:4px 7px!important;gap:3px!important}
.lca-header-button.lca-header-tight .lca-header-label{font-size:10px!important}
.lca-header-button.lca-header-tight .lca-header-arrow{display:none!important}
@keyframes lcaWorkZonePulse{
  0%,62%,100%{background:linear-gradient(180deg,#ffd85d 0%,#ffb61f 100%);box-shadow:0 2px 7px rgba(157,94,0,.18),inset 0 1px 0 rgba(255,255,255,.72);filter:brightness(1)}
  74%{background:linear-gradient(180deg,#fff0a0 0%,#ffc63d 100%);box-shadow:0 0 0 3px rgba(255,183,0,.12),0 0 13px rgba(255,157,0,.42),inset 0 1px 0 rgba(255,255,255,.9);filter:brightness(1.05)}
  86%{background:linear-gradient(180deg,#ffd85d 0%,#ffb61f 100%);box-shadow:0 2px 7px rgba(157,94,0,.18),inset 0 1px 0 rgba(255,255,255,.72);filter:brightness(1)}
}
@media(max-width:900px){
  .lca-header-button.lca-header-ready{min-height:29px!important;padding:4px 7px!important}
  .lca-header-button.lca-header-ready .lca-header-label{font-size:10px!important}
}
@media(max-width:680px){
  .lca-header-button.lca-header-ready{min-height:28px!important;padding:4px 6px!important}
  .lca-header-button.lca-header-ready .lca-header-label{font-size:9.5px!important}
  .lca-header-button.lca-header-ready .lca-header-arrow{display:none!important}
}
@media(prefers-reduced-motion:reduce){
  .lca-header-button.lca-header-ready{animation:none!important;filter:none!important}
}

/* v1.4.7: viewport-anchored Work Zone Alerts control. It never participates in
   the theme's flex/grid header, so it cannot push Home, the helper, or weather. */
.lca-header-overlay-fixed{
  position:fixed!important;
  z-index:100000!important;
  margin:0!important;
}
.lca-header-button.lca-preview-button:after{display:none!important}
.lca-header-overlay-fixed.lca-header-fallback{left:12px!important;top:12px!important;transform:none!important}
@media(max-width:760px){
  .lca-header-overlay-fixed{max-width:126px!important}
  .lca-header-overlay-fixed .lca-header-label{font-size:9.5px!important}
}

/* v1.4.7 work-zone route styling: the public map now requests roadway geometry
   and follows the actual street network between the two mapped endpoints. */
.lca-map-card .leaflet-interactive{stroke-linecap:round;stroke-linejoin:round}

/* v1.4.8 — exact header anchoring and safe failure behavior. */
.lca-header-overlay-fixed{position:fixed!important;z-index:100000!important;margin:0!important;visibility:hidden}
.lca-header-button.lca-header-ready{min-height:29px!important;padding:4px 8px!important;font-size:10.5px!important;animation:lcaWorkZonePulse 6.2s ease-in-out infinite!important}
.lca-header-button.lca-header-ready .lca-header-label{font-size:10.5px!important}
.lca-header-button.lca-header-tight{padding:4px 6px!important}
.lca-header-button.lca-header-tight .lca-header-label{font-size:9.5px!important}
@media(max-width:760px){.lca-header-overlay-fixed{display:none!important}}
@media(prefers-reduced-motion:reduce){.lca-header-button.lca-header-ready{animation:none!important}}

.lca-workzone-label-wrap{background:transparent!important;border:0!important;overflow:visible!important}.lca-workzone-label{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;min-width:140px;padding:6px 10px;border-radius:9px;background:#fff8c7;border:2px solid #b96d00;color:#17324a;font:800 12px/1.15 Arial,sans-serif;box-shadow:0 3px 10px rgba(0,0,0,.22);text-align:center;white-space:nowrap}.lca-workzone-label b{display:block;margin-top:2px;font-size:10px;letter-spacing:.08em;color:#8b4b00}.lca-endpoint-tooltip{border:2px solid #173b5a!important;border-radius:8px!important;background:#fff!important;color:#102c42!important;font-weight:700!important;box-shadow:0 3px 10px rgba(0,0,0,.18)!important}.lca-endpoint-tooltip strong{color:#b45f00;letter-spacing:.08em;font-size:10px}.lca-endpoint-tooltip:before{border-top-color:#173b5a!important}

/* v1.5.6 — live public-state sync. The public button can be injected after a
   cached homepage loads, so changing Preview/Public or publishing an alert is
   not dependent on Bluehost/page-cache HTML being regenerated first. */
.lca-header-button[data-lca-header-button].lca-header-ready{visibility:visible}


/* v1.5.7 — sticky-header layer fix.
   Work Zone Alerts now lives inside the same sticky/locked header container as
   the City logo. It remains absolutely positioned, so it consumes no layout
   width and cannot push weather, navigation, or the helper. */
.lca-header-in-shell{
  position:absolute!important;
  z-index:2147483000!important;
  margin:0!important;
  visibility:hidden;
  pointer-events:auto!important;
}
.lca-header-in-shell.lca-header-ready{visibility:visible}
.lca-header-overlay-fixed{z-index:2147483000!important}
@media(max-width:760px){
  .lca-header-in-shell{display:none!important}
}


/* v1.5.8 — responsive Work Zone Alerts control for desktop, tablet, and phone.
   Never hide the control solely because the viewport is small. */
.lca-header-in-shell{display:inline-flex!important}
.lca-header-button.lca-header-ready{animation:lcaWorkZonePulse 6.4s ease-in-out infinite!important}
.lca-header-button.lca-header-desktop{min-width:0!important}
.lca-header-button.lca-header-tablet{min-height:36px!important;padding:6px 9px!important;gap:4px!important;max-width:118px!important}
.lca-header-button.lca-header-tablet .lca-header-label{font-size:10px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.lca-header-button.lca-header-tablet .lca-header-arrow{display:none!important}
.lca-header-button.lca-header-mobile-icon{
  width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;
  padding:0!important;margin:0!important;border-radius:50%!important;gap:0!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
}
.lca-header-button.lca-header-mobile-icon .lca-header-label,
.lca-header-button.lca-header-mobile-icon .lca-header-arrow,
.lca-header-button.lca-header-mobile-icon .lca-header-beacon{display:none!important}
.lca-header-button.lca-header-mobile-icon .lca-header-icon{font-size:20px!important;line-height:1!important;margin:0!important}
.lca-header-button.lca-header-mobile-icon .lca-header-count{
  display:flex!important;position:absolute!important;right:-4px!important;top:-5px!important;
  min-width:20px!important;height:20px!important;padding:0 5px!important;font-size:10px!important;
}
@media(max-width:1024px){
  .lca-page-wrap{padding-left:14px!important;padding-right:14px!important}
  .lca-page-main{grid-template-columns:1fr!important}
  .lca-page-map-wrap{position:static!important;top:auto!important}
  .lca-public-map{height:min(52vh,430px)!important;min-height:320px!important}
}
@media(max-width:680px){
  .lca-header-in-shell{display:inline-flex!important}
  .lca-page-wrap{padding-left:10px!important;padding-right:10px!important}
  .lca-page-hero{margin-top:10px!important;border-radius:12px!important}
  .lca-page-hero-inner{padding:20px 16px 24px!important}
  .lca-page-hero h1{font-size:clamp(28px,9vw,38px)!important}
  .lca-page-hero p{font-size:15px!important}
  .lca-page-status{margin-top:14px!important;padding:9px 12px!important}
  .lca-page-card{grid-template-columns:1fr!important;padding:14px!important}
  .lca-page-card h3{font-size:20px!important}
  .lca-page-times{grid-template-columns:1fr!important}
  .lca-public-map{height:360px!important;min-height:300px!important}
  .lca-map-card-head{align-items:flex-start!important;flex-direction:column!important}
  .lca-workzone-label{min-width:0!important;max-width:180px!important;white-space:normal!important}
}
@media(prefers-reduced-motion:reduce){
  .lca-header-button.lca-header-ready{animation:none!important;filter:none!important}
}
@media(forced-colors:active){
  .lca-header-button.lca-header-mobile-icon{border:2px solid ButtonText!important}
}


/* v1.5.9 — mobile/tablet utility dock.
   On smaller screens the Work Zone Alerts and website helper controls live
   beside the hamburger menu instead of competing with weather or the logo. */
.lca-mobile-utility-dock{display:none!important}
@media (max-width:1024px){
  .lca-mobile-utility-dock{
    position:absolute!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:8px!important;
    z-index:2147483000!important;
    margin:0!important;
    padding:0!important;
    pointer-events:auto!important;
  }
  .lca-mobile-utility-dock .lca-header-button{
    position:relative!important;
    left:auto!important;top:auto!important;right:auto!important;bottom:auto!important;
    visibility:visible!important;
    display:inline-flex!important;
    width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;
    max-width:46px!important;padding:0!important;margin:0!important;border-radius:50%!important;
    align-items:center!important;justify-content:center!important;gap:0!important;
    animation:lcaWorkZonePulse 6.4s ease-in-out infinite!important;
  }
  .lca-mobile-utility-dock .lca-header-button .lca-header-label,
  .lca-mobile-utility-dock .lca-header-button .lca-header-arrow,
  .lca-mobile-utility-dock .lca-header-button .lca-header-beacon{display:none!important}
  .lca-mobile-utility-dock .lca-header-button .lca-header-icon{display:inline-block!important;font-size:20px!important;line-height:1!important;margin:0!important}
  .lca-mobile-utility-dock .lca-header-count{
    display:flex!important;position:absolute!important;right:-4px!important;top:-5px!important;
    min-width:20px!important;height:20px!important;padding:0 5px!important;border-radius:999px!important;
    align-items:center!important;justify-content:center!important;font-size:10px!important;
  }
  .lca-mobile-helper-btn{
    appearance:none!important;-webkit-appearance:none!important;
    width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;
    border:2px solid #0b4a79!important;border-radius:50%!important;background:#fff!important;color:#0b3456!important;
    display:inline-flex!important;align-items:center!important;justify-content:center!important;
    padding:0!important;margin:0!important;box-shadow:0 2px 8px rgba(0,0,0,.16)!important;
    cursor:pointer!important;font:800 18px/1 Arial,sans-serif!important;
  }
  .lca-mobile-helper-btn img{width:38px!important;height:38px!important;object-fit:contain!important;border-radius:50%!important;display:block!important}
  .lca-mobile-helper-btn .lca-mobile-helper-fallback{font-size:20px!important;line-height:1!important}
  .lca-mobile-helper-btn:focus-visible,
  .lca-mobile-utility-dock .lca-header-button:focus-visible{
    outline:3px solid #ffdf00!important;outline-offset:3px!important;box-shadow:0 0 0 2px #082c4c!important;
  }
  .lca-helper-original-mobile-hidden{visibility:hidden!important;pointer-events:none!important}
}
@media (max-width:680px){
  .lca-mobile-utility-dock{gap:7px!important}
  .lca-mobile-utility-dock .lca-header-button,
  .lca-mobile-helper-btn{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;max-width:44px!important}
  .lca-mobile-utility-dock .lca-header-button .lca-header-icon{font-size:19px!important}
}
@media (max-width:420px){
  .lca-mobile-utility-dock{gap:5px!important}
  .lca-mobile-utility-dock .lca-header-button,
  .lca-mobile-helper-btn{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;max-width:42px!important}
}
@media (prefers-reduced-motion:reduce){
  .lca-mobile-utility-dock .lca-header-button{animation:none!important;filter:none!important}
}


/* v1.6.0 — fully responsive header positioning.
   Desktop/tablet (when space exists): exact center of the real gap between Radar and City logo.
   Tight tablet/phone: move to the mobile quick-action dock beside the hamburger. */
.lca-header-gap-centered{
  margin:0!important;
  transform:none!important;
  pointer-events:auto!important;
}
.lca-header-gap-centered:hover{transform:translateY(-1px)!important}
@media (min-width:1025px){
  .lca-header-gap-centered.lca-header-desktop{
    min-height:32px!important;
    padding:5px 10px!important;
    max-width:150px!important;
  }
}
@media (min-width:681px) and (max-width:1024px){
  .lca-header-gap-centered.lca-header-tablet{
    min-height:34px!important;
    padding:5px 8px!important;
    max-width:116px!important;
  }
  .lca-header-gap-centered.lca-header-tablet .lca-header-label{font-size:10px!important}
  .lca-header-gap-centered.lca-header-tablet .lca-header-arrow{display:none!important}
}
@media (max-width:680px){
  .lca-mobile-utility-dock{
    max-width:calc(100% - 20px)!important;
  }
  .lca-mobile-utility-dock .lca-header-button,
  .lca-mobile-helper-btn{
    flex:0 0 auto!important;
  }
}
@media (prefers-reduced-motion:reduce){
  .lca-header-gap-centered:hover{transform:none!important}
}


/* v1.6.1 — reliable responsive quick-action strip.
   On phones and tight tablets, do not reduce Work Zone Alerts to an unlabeled
   floating circle. Put labeled, one-tap controls in normal header flow. */
@media (max-width:1024px){
  .lca-mobile-utility-dock{
    position:relative!important;
    inset:auto!important;
    left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
    width:100%!important;max-width:none!important;min-height:54px!important;
    box-sizing:border-box!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
    gap:10px!important;padding:6px 14px!important;margin:0!important;
    background:rgba(248,249,247,.98)!important;
    border-top:1px solid rgba(11,52,86,.12)!important;
    border-bottom:1px solid rgba(11,52,86,.16)!important;
    box-shadow:0 2px 8px rgba(0,0,0,.06)!important;
    z-index:2147483000!important;
    pointer-events:auto!important;
  }
  .lca-mobile-utility-dock .lca-header-button{
    position:relative!important;inset:auto!important;
    flex:1 1 0!important;width:auto!important;max-width:360px!important;
    min-width:0!important;height:42px!important;min-height:42px!important;
    padding:0 15px!important;margin:0!important;border-radius:10px!important;
    display:inline-flex!important;align-items:center!important;justify-content:center!important;
    gap:7px!important;visibility:visible!important;
    font-size:13px!important;line-height:1!important;
    animation:lcaWorkZonePulse 6.4s ease-in-out infinite!important;
  }
  .lca-mobile-utility-dock .lca-header-button .lca-header-icon{font-size:17px!important;display:inline-block!important}
  .lca-mobile-utility-dock .lca-header-button .lca-header-label{
    display:inline-block!important;font-size:12.5px!important;font-weight:900!important;
    white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important;
  }
  .lca-mobile-utility-dock .lca-header-button .lca-header-arrow{display:inline-block!important;font-size:18px!important}
  .lca-mobile-utility-dock .lca-header-button .lca-header-beacon{display:block!important;top:-4px!important;left:11px!important}
  .lca-mobile-utility-dock .lca-header-count{
    right:-5px!important;top:-7px!important;min-width:20px!important;height:20px!important;
  }
  .lca-mobile-helper-btn{
    flex:0 1 auto!important;width:auto!important;max-width:170px!important;
    min-width:116px!important;height:42px!important;min-height:42px!important;
    padding:0 12px!important;margin:0!important;border-radius:10px!important;
    gap:7px!important;font-size:13px!important;line-height:1!important;
  }
  .lca-mobile-helper-btn img{width:31px!important;height:31px!important;flex:0 0 31px!important}
  .lca-mobile-helper-btn .lca-mobile-helper-fallback{font-size:17px!important}
  .lca-mobile-helper-label{display:inline-block!important;font:800 12px/1.1 Arial,sans-serif!important;white-space:nowrap!important}
}
@media (max-width:560px){
  .lca-mobile-utility-dock{gap:7px!important;padding:6px 10px!important;min-height:52px!important}
  .lca-mobile-utility-dock .lca-header-button{height:40px!important;min-height:40px!important;padding:0 11px!important;gap:5px!important}
  .lca-mobile-utility-dock .lca-header-button .lca-header-label{font-size:11.5px!important}
  .lca-mobile-utility-dock .lca-header-button .lca-header-arrow{display:none!important}
  .lca-mobile-helper-btn{height:40px!important;min-height:40px!important;min-width:104px!important;padding:0 9px!important;gap:5px!important}
  .lca-mobile-helper-btn img{width:28px!important;height:28px!important;flex-basis:28px!important}
  .lca-mobile-helper-label{font-size:11px!important}
}
@media (max-width:390px){
  .lca-mobile-utility-dock{padding-left:7px!important;padding-right:7px!important;gap:5px!important}
  .lca-mobile-utility-dock .lca-header-button{padding-left:9px!important;padding-right:9px!important}
  .lca-mobile-utility-dock .lca-header-button .lca-header-label{font-size:10.8px!important}
  .lca-mobile-helper-btn{min-width:92px!important;padding-left:7px!important;padding-right:7px!important}
  .lca-mobile-helper-label{font-size:10.5px!important}
}
@media (prefers-reduced-motion:reduce){
  .lca-mobile-utility-dock .lca-header-button{animation:none!important;filter:none!important}
}

/* v1.6.2 — fixed-location responsive mobile/tablet action bar.
   The bar is inserted once directly after the City header (never in the hero/slideshow),
   so its location is stable and event overlays cannot cover it. */
@media (max-width:1024px){
  .lca-mobile-utility-dock[data-lca-stable-mobile-bar="1"]{
    position:relative!important;
    inset:auto!important;
    left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
    width:100%!important;max-width:none!important;
    min-height:52px!important;
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:10px!important;
    padding:6px max(10px,env(safe-area-inset-right)) 6px max(10px,env(safe-area-inset-left))!important;
    margin:0!important;
    background:#f8f9f7!important;
    border-top:1px solid rgba(11,52,86,.12)!important;
    border-bottom:1px solid rgba(11,52,86,.18)!important;
    box-shadow:0 2px 8px rgba(0,0,0,.08)!important;
    z-index:2147483000!important;
    isolation:isolate!important;
    clear:both!important;
  }
  .lca-mobile-utility-dock[data-lca-stable-mobile-bar="1"] .lca-header-button{
    position:relative!important;inset:auto!important;
    visibility:visible!important;display:inline-flex!important;
    flex:1 1 auto!important;width:auto!important;max-width:430px!important;
    min-width:0!important;height:40px!important;min-height:40px!important;
    margin:0!important;padding:0 14px!important;border-radius:10px!important;
    align-items:center!important;justify-content:center!important;gap:6px!important;
    font-size:12.5px!important;line-height:1!important;
    white-space:nowrap!important;
  }
  .lca-mobile-utility-dock[data-lca-stable-mobile-bar="1"] .lca-header-label{
    display:inline-block!important;font-size:12.5px!important;font-weight:900!important;
    overflow:visible!important;text-overflow:clip!important;white-space:nowrap!important;
  }
  .lca-mobile-utility-dock[data-lca-stable-mobile-bar="1"] .lca-header-arrow{display:inline-block!important}
  .lca-mobile-utility-dock[data-lca-stable-mobile-bar="1"] .lca-header-icon{display:inline-block!important;font-size:17px!important}
  .lca-mobile-utility-dock[data-lca-stable-mobile-bar="1"] .lca-mobile-helper-btn{
    position:relative!important;inset:auto!important;
    flex:0 0 auto!important;width:auto!important;min-width:112px!important;max-width:155px!important;
    height:40px!important;min-height:40px!important;margin:0!important;padding:0 10px!important;
    border-radius:10px!important;gap:6px!important;
  }
}
@media (max-width:560px){
  .lca-mobile-utility-dock[data-lca-stable-mobile-bar="1"]{min-height:50px!important;gap:7px!important;padding-top:5px!important;padding-bottom:5px!important}
  .lca-mobile-utility-dock[data-lca-stable-mobile-bar="1"] .lca-header-button{height:40px!important;min-height:40px!important;padding:0 11px!important;max-width:none!important}
  .lca-mobile-utility-dock[data-lca-stable-mobile-bar="1"] .lca-header-label{font-size:11.5px!important}
  .lca-mobile-utility-dock[data-lca-stable-mobile-bar="1"] .lca-header-arrow{display:none!important}
  .lca-mobile-utility-dock[data-lca-stable-mobile-bar="1"] .lca-mobile-helper-btn{min-width:96px!important;max-width:112px!important;padding:0 8px!important}
  .lca-mobile-utility-dock[data-lca-stable-mobile-bar="1"] .lca-mobile-helper-label{font-size:10.5px!important}
}
@media (max-width:390px){
  .lca-mobile-utility-dock[data-lca-stable-mobile-bar="1"]{gap:5px!important}
  .lca-mobile-utility-dock[data-lca-stable-mobile-bar="1"] .lca-header-button{padding-left:9px!important;padding-right:9px!important}
  .lca-mobile-utility-dock[data-lca-stable-mobile-bar="1"] .lca-header-label{font-size:10.8px!important}
  .lca-mobile-utility-dock[data-lca-stable-mobile-bar="1"] .lca-mobile-helper-btn{min-width:86px!important;max-width:98px!important;padding-left:6px!important;padding-right:6px!important}
  .lca-mobile-utility-dock[data-lca-stable-mobile-bar="1"] .lca-mobile-helper-label{font-size:10px!important}
}
\n\n/* v1.6.3 — true mobile header-flow placement.\n   The action strip is a sibling immediately after the City logo/hamburger row,\n   not a child of the hero/slideshow. It therefore reserves its own height and\n   cannot cover homepage controls or event artwork. */\n@media (max-width:1024px){\n  .lca-mobile-utility-dock[data-lca-stable-mobile-bar=\"1\"]{\n    position:relative!important;\n    display:flex!important;\n    float:none!important;\n    clear:both!important;\n    width:100%!important;\n    max-width:none!important;\n    height:auto!important;\n    min-height:52px!important;\n    margin:0!important;\n    box-sizing:border-box!important;\n    transform:none!important;\n    z-index:50!important;\n    background:#fff!important;\n    isolation:isolate!important;\n  }\n  .lca-mobile-utility-dock[data-lca-stable-mobile-bar=\"1\"] + *{\n    clear:both!important;\n  }\n}\n@media (max-width:560px){\n  .lca-mobile-utility-dock[data-lca-stable-mobile-bar=\"1\"]{\n    min-height:50px!important;\n    padding-top:5px!important;\n    padding-bottom:5px!important;\n  }\n}\n\n\n/* v1.6.5 — mobile/tablet placement hardening for the London theme.\n   The Work Zone/Help row is always a normal-flow sibling BETWEEN the weather/radar\n   row and the City-logo/hamburger row. It must never enter or overlay the hero. */\n@media (max-width:1024px){\n  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"]{\n    position:relative!important;\n    inset:auto!important;\n    left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;\n    float:none!important;clear:both!important;\n    transform:none!important;\n    width:100%!important;max-width:none!important;\n    margin:0!important;\n    padding:6px max(10px,env(safe-area-inset-right)) 6px max(10px,env(safe-area-inset-left))!important;\n    box-sizing:border-box!important;\n    background:#fff!important;\n    border-top:1px solid rgba(11,52,86,.10)!important;\n    border-bottom:1px solid rgba(11,52,86,.16)!important;\n    box-shadow:none!important;\n    z-index:20!important;\n  }\n  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-header-button,\n  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-mobile-helper-btn{\n    position:relative!important;inset:auto!important;transform:none!important;\n  }\n}\n@media (max-width:560px){\n  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"]{\n    padding-top:5px!important;padding-bottom:5px!important;\n  }\n}\n
/* v1.6.6: immediate mobile controls + reliable helper fallback */
@media(max-width:1024px){
  .lca-helper-forced-open{
    position:fixed!important;
    inset:12px!important;
    z-index:2147483646!important;
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    max-height:calc(100dvh - 24px)!important;
    overflow:auto!important;
    box-sizing:border-box!important;
  }
}


/* v1.6.7 — clean unified mobile/tablet quick-actions panel.
   Both Work Zone Alerts and Website Help are presented together in one stable,
   normal-flow row between Weather/Radar and the City brand row. */
@media (max-width:1024px){
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"]{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    align-items:stretch!important;
    justify-content:center!important;
    gap:8px!important;
    width:min(680px,calc(100% - 24px))!important;
    max-width:680px!important;
    min-height:0!important;
    margin:8px auto!important;
    padding:7px!important;
    border:1px solid rgba(11,52,86,.14)!important;
    border-radius:16px!important;
    background:rgba(247,249,250,.98)!important;
    box-shadow:0 4px 14px rgba(11,52,86,.08)!important;
    overflow:visible!important;
    z-index:40!important;
  }
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-header-button,
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-mobile-helper-btn{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    min-height:48px!important;
    height:48px!important;
    margin:0!important;
    padding:0 14px!important;
    border-radius:11px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    box-sizing:border-box!important;
    font-family:Arial,sans-serif!important;
    font-weight:800!important;
    white-space:nowrap!important;
    text-decoration:none!important;
  }
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-header-button{
    border:1px solid #d99a00!important;
    background:linear-gradient(180deg,#ffe87a 0%,#ffc83d 100%)!important;
    color:#102f4d!important;
    box-shadow:0 2px 6px rgba(188,125,0,.14)!important;
    animation:lcaWorkZonePulse 6.4s ease-in-out infinite!important;
  }
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-mobile-helper-btn{
    border:2px solid #0b4776!important;
    background:#fff!important;
    color:#0b3b63!important;
    box-shadow:none!important;
  }
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-header-label,
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-mobile-helper-label{
    display:inline-block!important;
    font-size:13px!important;
    line-height:1.1!important;
    font-weight:800!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-header-arrow{display:none!important}
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-header-icon{font-size:18px!important;line-height:1!important}
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-mobile-helper-btn img{
    width:32px!important;height:32px!important;flex:0 0 32px!important;object-fit:contain!important;border-radius:50%!important;
  }
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-mobile-helper-fallback{
    width:30px!important;height:30px!important;display:grid!important;place-items:center!important;border-radius:50%!important;
    background:#eaf2f8!important;color:#0b4776!important;font-size:18px!important;font-weight:900!important;flex:0 0 30px!important;
  }
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-header-count{
    top:-7px!important;right:-6px!important;min-width:21px!important;height:21px!important;font-size:11px!important;
  }
}
@media (max-width:560px){
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"]{
    width:calc(100% - 16px)!important;
    gap:6px!important;
    margin:6px auto!important;
    padding:6px!important;
    border-radius:14px!important;
  }
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-header-button,
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-mobile-helper-btn{
    min-height:46px!important;height:46px!important;padding:0 10px!important;gap:6px!important;border-radius:10px!important;
  }
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-header-label,
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-mobile-helper-label{font-size:12px!important}
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-mobile-helper-btn img{width:28px!important;height:28px!important;flex-basis:28px!important}
}
@media (max-width:390px){
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"]{width:calc(100% - 12px)!important;padding:5px!important;gap:5px!important}
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-header-button,
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-mobile-helper-btn{padding:0 8px!important}
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-header-label,
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-mobile-helper-label{font-size:11.25px!important}
}
@media (prefers-reduced-motion:reduce){
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-header-button{animation:none!important;filter:none!important}
}

/* v1.6.9 — professional mobile/tablet municipal utility strip.
   This deliberately overrides earlier experimental dock styles. The two actions
   share one reserved header row with no avatar artwork, no oversized cards, and
   no overlap with the City brand or hero. */
@media (max-width:1024px){
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"]{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    max-width:none!important;
    min-height:50px!important;
    height:auto!important;
    margin:0!important;
    padding:5px max(12px,env(safe-area-inset-right)) 5px max(12px,env(safe-area-inset-left))!important;
    gap:0!important;
    box-sizing:border-box!important;
    background:#f8fafc!important;
    border:0!important;
    border-top:1px solid rgba(11,52,86,.10)!important;
    border-bottom:1px solid rgba(11,52,86,.16)!important;
    border-radius:0!important;
    box-shadow:none!important;
    overflow:visible!important;
    position:relative!important;
    z-index:40!important;
  }
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-header-button,
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-mobile-helper-btn{
    position:relative!important;
    inset:auto!important;
    transform:none!important;
    flex:1 1 50%!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    min-height:40px!important;
    height:40px!important;
    margin:0!important;
    padding:0 13px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    box-sizing:border-box!important;
    border-radius:8px!important;
    font:800 13px/1 Arial,sans-serif!important;
    letter-spacing:.01em!important;
    white-space:nowrap!important;
    text-decoration:none!important;
    box-shadow:none!important;
  }
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-header-button{
    color:#102f4d!important;
    background:#fff6cf!important;
    border:1px solid #dca400!important;
    margin-right:5px!important;
    animation:lcaWorkZonePulse 7s ease-in-out infinite!important;
  }
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-mobile-helper-btn{
    color:#0b3b63!important;
    background:#ffffff!important;
    border:1px solid #9cb7cc!important;
    margin-left:5px!important;
    cursor:pointer!important;
  }
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-header-label,
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-mobile-helper-label{
    display:inline-block!important;
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font:800 13px/1.1 Arial,sans-serif!important;
  }
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-header-icon{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    font-size:16px!important;
    line-height:1!important;
    margin:0!important;
    flex:0 0 auto!important;
  }
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-header-arrow,
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-header-beacon{
    display:none!important;
  }
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-mobile-helper-symbol{
    display:inline-grid!important;
    place-items:center!important;
    width:22px!important;
    height:22px!important;
    flex:0 0 22px!important;
    border-radius:50%!important;
    background:#0b4776!important;
    color:#fff!important;
    font:900 14px/1 Arial,sans-serif!important;
  }
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-mobile-helper-btn img,
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-mobile-helper-fallback{
    display:none!important;
  }
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-header-count{
    top:-7px!important;
    right:-5px!important;
    min-width:20px!important;
    height:20px!important;
    padding:0 5px!important;
    font-size:11px!important;
    line-height:20px!important;
    border:2px solid #f8fafc!important;
  }
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-header-button:focus-visible,
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-mobile-helper-btn:focus-visible{
    outline:3px solid #ffcf00!important;
    outline-offset:2px!important;
  }
}
@media (max-width:560px){
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"]{
    min-height:48px!important;
    padding:4px 8px!important;
  }
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-header-button,
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-mobile-helper-btn{
    min-height:40px!important;
    height:40px!important;
    padding:0 9px!important;
    gap:6px!important;
    border-radius:7px!important;
  }
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-header-button{margin-right:4px!important}
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-mobile-helper-btn{margin-left:4px!important}
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-header-label,
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-mobile-helper-label{font-size:12px!important}
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-mobile-helper-symbol{width:20px!important;height:20px!important;flex-basis:20px!important;font-size:13px!important}
}
@media (max-width:360px){
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-header-label,
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-mobile-helper-label{font-size:11px!important}
}
@media (prefers-reduced-motion:reduce){
  .lca-mobile-utility-dock[data-lca-placement="between-weather-and-brand"] .lca-header-button{animation:none!important;filter:none!important}
}
\n\n/* v1.7.1 — mobile/tablet controls live in their own full-width row UNDER the\n   City of London logo/hamburger row. This intentionally overrides earlier\n   between-weather-and-brand experiments. */\n@media (max-width:1024px){\n  .lca-mobile-utility-dock[data-lca-placement="under-brand"]{\n    display:flex!important;\n    position:relative!important;\n    inset:auto!important;\n    transform:none!important;\n    float:none!important;\n    clear:both!important;\n    width:100%!important;\n    max-width:none!important;\n    min-height:50px!important;\n    height:auto!important;\n    margin:0!important;\n    padding:5px max(12px,env(safe-area-inset-right)) 5px max(12px,env(safe-area-inset-left))!important;\n    box-sizing:border-box!important;\n    align-items:center!important;\n    justify-content:center!important;\n    gap:8px!important;\n    background:#f8fafc!important;\n    border:0!important;\n    border-top:1px solid rgba(11,52,86,.10)!important;\n    border-bottom:1px solid rgba(11,52,86,.16)!important;\n    border-radius:0!important;\n    box-shadow:none!important;\n    overflow:visible!important;\n    z-index:40!important;\n    isolation:isolate!important;\n  }\n  .lca-mobile-utility-dock[data-lca-placement="under-brand"] .lca-header-button,\n  .lca-mobile-utility-dock[data-lca-placement="under-brand"] .lca-mobile-helper-btn{\n    position:relative!important;\n    inset:auto!important;\n    transform:none!important;\n    flex:1 1 0!important;\n    width:auto!important;\n    min-width:0!important;\n    max-width:290px!important;\n    min-height:42px!important;\n    height:42px!important;\n    margin:0!important;\n    padding:0 12px!important;\n    display:flex!important;\n    align-items:center!important;\n    justify-content:center!important;\n    gap:7px!important;\n    box-sizing:border-box!important;\n    border-radius:8px!important;\n    font:800 13px/1 Arial,sans-serif!important;\n    white-space:nowrap!important;\n    text-decoration:none!important;\n    box-shadow:none!important;\n  }\n  .lca-mobile-utility-dock[data-lca-placement="under-brand"] .lca-header-button{\n    color:#102f4d!important;\n    background:#fff6cf!important;\n    border:1px solid #dca400!important;\n    animation:lcaWorkZonePulse 7s ease-in-out infinite!important;\n  }\n  .lca-mobile-utility-dock[data-lca-placement="under-brand"] .lca-mobile-helper-btn{\n    color:#0b3b63!important;\n    background:#fff!important;\n    border:1px solid #9cb7cc!important;\n    cursor:pointer!important;\n  }\n  .lca-mobile-utility-dock[data-lca-placement="under-brand"] .lca-header-label,\n  .lca-mobile-utility-dock[data-lca-placement="under-brand"] .lca-mobile-helper-label{\n    display:inline-block!important;\n    min-width:0!important;\n    overflow:hidden!important;\n    text-overflow:ellipsis!important;\n    white-space:nowrap!important;\n    font:800 13px/1.1 Arial,sans-serif!important;\n  }\n  .lca-mobile-utility-dock[data-lca-placement="under-brand"] .lca-header-icon{\n    display:inline-flex!important;align-items:center!important;justify-content:center!important;\n    font-size:16px!important;line-height:1!important;margin:0!important;flex:0 0 auto!important;\n  }\n  .lca-mobile-utility-dock[data-lca-placement="under-brand"] .lca-header-arrow,\n  .lca-mobile-utility-dock[data-lca-placement="under-brand"] .lca-header-beacon{display:none!important}\n  .lca-mobile-utility-dock[data-lca-placement="under-brand"] .lca-mobile-helper-symbol{\n    display:inline-grid!important;place-items:center!important;width:22px!important;height:22px!important;\n    flex:0 0 22px!important;border-radius:50%!important;background:#0b4776!important;color:#fff!important;\n    font:900 14px/1 Arial,sans-serif!important;\n  }\n  .lca-mobile-utility-dock[data-lca-placement="under-brand"] .lca-mobile-helper-btn img,\n  .lca-mobile-utility-dock[data-lca-placement="under-brand"] .lca-mobile-helper-fallback{display:none!important}\n  .lca-mobile-utility-dock[data-lca-placement="under-brand"] .lca-header-count{\n    top:-7px!important;right:-5px!important;min-width:20px!important;height:20px!important;padding:0 5px!important;\n    font-size:11px!important;line-height:20px!important;border:2px solid #f8fafc!important;\n  }\n  .lca-mobile-utility-dock[data-lca-placement="under-brand"] .lca-header-button:focus-visible,\n  .lca-mobile-utility-dock[data-lca-placement="under-brand"] .lca-mobile-helper-btn:focus-visible{\n    outline:3px solid #ffcf00!important;outline-offset:2px!important;\n  }\n}\n@media (max-width:560px){\n  .lca-mobile-utility-dock[data-lca-placement="under-brand"]{padding:4px 8px!important;gap:7px!important;min-height:48px!important}\n  .lca-mobile-utility-dock[data-lca-placement="under-brand"] .lca-header-button,\n  .lca-mobile-utility-dock[data-lca-placement="under-brand"] .lca-mobile-helper-btn{\n    height:40px!important;min-height:40px!important;padding:0 9px!important;border-radius:7px!important;gap:6px!important;\n  }\n  .lca-mobile-utility-dock[data-lca-placement="under-brand"] .lca-header-label,\n  .lca-mobile-utility-dock[data-lca-placement="under-brand"] .lca-mobile-helper-label{font-size:12px!important}\n  .lca-mobile-utility-dock[data-lca-placement="under-brand"] .lca-mobile-helper-symbol{width:20px!important;height:20px!important;flex-basis:20px!important;font-size:13px!important}\n}\n@media (max-width:360px){\n  .lca-mobile-utility-dock[data-lca-placement="under-brand"] .lca-header-label,\n  .lca-mobile-utility-dock[data-lca-placement="under-brand"] .lca-mobile-helper-label{font-size:11px!important}\n}\n@media (prefers-reduced-motion:reduce){\n  .lca-mobile-utility-dock[data-lca-placement="under-brand"] .lca-header-button{animation:none!important;filter:none!important}\n}\n