/* 21+ source-backed individual dispensary listings · no unlicensed product photos */
.dc-card{max-width:820px;margin:16px auto;padding:16px;background:#fff;color:#27313b;
 border:1px solid #d5dde0;border-radius:19px;box-shadow:0 5px 21px #20293410;
 font-family:system-ui,-apple-system,Roboto,sans-serif;line-height:1.45;}
.dc-kicker{font-size:11px;font-weight:800;letter-spacing:.1em;color:#617078}
.dc-headline{font-size:22px!important;line-height:1.2!important;margin:14px 0 8px!important;color:#203344}
.dc-disclaimer{font-size:14px;line-height:1.5;color:#4d5b64}
.dc-control{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 15px;
 text-align:center;background:#fff;border:1px solid #b9c5cc;border-radius:11px;text-decoration:none!important;
 color:#24455d!important;font-size:14px;font-weight:750;cursor:pointer}
.dc-control:hover,.dc-control:focus-visible{background:#eaf0f3}
.dc-control:focus-visible,.dc-quiet:focus-visible{outline:3px solid #74a8c5;outline-offset:2px}
.dc-enter{width:100%;font-size:16px;min-height:50px;margin:9px 0}
.dc-fine,.dc-source{font-size:12px;color:#61707a;line-height:1.5;margin:10px 0}
.dc-hero{display:flex;gap:17px;align-items:center;min-height:190px;margin:12px 0 0;
 padding:22px;border:1px solid #d6e1e3;border-radius:15px;
 background:linear-gradient(135deg,#eef3f4,#f7fafb 62%,#e7eff1)}
.dc-mark{flex:0 0 78px;display:grid;place-items:center;width:78px;height:78px;
 border-radius:20px;border:1px solid #d0dce0;background:#fff;overflow:hidden}
.dc-favicon{display:block;width:60px;height:60px;object-fit:contain}
.dc-favicon[hidden]{display:none!important}
.dc-mark-fallback:after{content:'SOURCE';font-weight:900;letter-spacing:.05em;font-size:11px;color:#446070}
.dc-tag{color:#566a74;text-transform:uppercase;letter-spacing:.07em;font-weight:800;font-size:10px;margin:0 0 5px}
.dc-name{color:#193648!important;line-height:1.17!important;font-size:clamp(23px,5vw,36px)!important;margin:0 0 7px!important}
.dc-location{font-weight:700;color:#4e5e68;font-size:15px}
.dc-details{padding:12px 2px 6px}
.dc-address{margin:0;font-weight:750;font-size:15px}
.dc-description{margin:7px 0 0;font-size:14px;color:#53616c}
.dc-actions{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}
.dc-actions .dc-control{flex:1 1 170px}
.dc-primary{background:#244f6a!important;border-color:#244f6a!important;color:#fff!important}
.dc-primary:hover,.dc-primary:focus-visible{background:#173951!important}
.dc-quiet{border:0;background:transparent;color:#53646e;padding:9px 4px;cursor:pointer;text-decoration:underline}
@media(max-width:420px){.dc-card{padding:14px}.dc-hero{gap:11px;padding:14px;min-height:165px}.dc-mark{flex-basis:57px;width:57px;height:57px}.dc-favicon{width:47px;height:47px}}
@media(prefers-reduced-motion:reduce){.dc-card *{animation:none!important;transition:none!important}}
