.dht-area-shops { margin: 36px 0; }
.dht-area-shops > h2 { margin: 0 0 20px; font-size: clamp(1.25rem, 2.5vw, 1.65rem); }
.dht-area-shop-list { display: grid; gap: 20px; }
.dht-area-shop { min-width: 0; padding: clamp(18px, 3vw, 28px); border: 1px solid #dce0e6; border-radius: 10px; background: #fff; }
.dht-area-shop-featured { border: 2px solid #9b751d; background: #fffdf6; }
.dht-area-shop .dht-area-shop-badge { display: inline-block; margin: 0 0 12px; padding: 4px 16px; border-radius: 4px; background: #765513; color: #fff; font-size: 0.9375rem; font-weight: 700; }
.dht-area-shop > h3 { margin: 0 0 16px; font-size: 1.35rem; overflow-wrap: anywhere; }
.dht-area-shop-contact { margin: 0; }
.dht-area-shop-contact > div { display: grid; grid-template-columns: 10em minmax(0, 1fr); gap: 8px 16px; margin: 10px 0; }
.dht-area-shop-contact dt { font-weight: 700; }
.dht-area-shop-contact dd { margin: 0; overflow-wrap: anywhere; }
.dht-area-shop a { color: #00558b; text-underline-offset: 3px; }
.dht-area-shop-intro { margin-top: 20px; padding-top: 14px; border-top: 1px solid #dedbd1; }
.dht-area-shop-intro > summary { cursor: pointer; font-weight: 700; padding: 8px 0; }
.dht-area-shop-intro > div { line-height: 1.95; overflow-wrap: anywhere; }
.dht-area-shop-intro-body { width: 100%; max-width: 100%; min-width: 0; box-sizing: border-box; overflow-x: auto; }
.dht-area-shop-intro-body img { max-width: 100% !important; height: auto !important; }
.dht-area-shop-intro-body figure { max-width: 100%; margin: 20px 0; }
.dht-area-shop-intro-body table { width: 100% !important; max-width: 100% !important; min-width: 0 !important; table-layout: fixed; border-collapse: collapse; margin: 20px 0; }
.dht-area-shop-intro-body th, .dht-area-shop-intro-body td { padding: 10px; border: 1px solid #dce0e6; text-align: left; vertical-align: top; white-space: normal !important; overflow-wrap: anywhere; }
.dht-area-shop-intro-body th { background: #f3f5f7; }
.dht-area-shop-intro-body ul, .dht-area-shop-intro-body ol { padding-left: 1.5em; }
.dht-area-shop-intro-body h2, .dht-area-shop-intro-body h3, .dht-area-shop-intro-body h4 { line-height: 1.5; margin: 1.5em 0 .75em; }
@media (max-width: 600px) { .dht-area-shop-intro-body th, .dht-area-shop-intro-body td { padding: 7px 5px; font-size: .875rem; } }
.dht-area-shop-intro p { margin: 16px 0; }
.dht-area-shop a:focus-visible, .dht-area-shop-intro > summary:focus-visible { outline: 3px solid #005fcc; outline-offset: 3px; }
.dht-shop-sr-only { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; border: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; }
.dht-area-shop-jobs { margin-top: 24px; padding: 20px; border: 1px solid #b6cddd; border-radius: 8px; background: #f4faff; }
.dht-area-shop-jobs > h4 { margin: 0 0 16px; color: #144e75; font-size: 1.15rem; }
.dht-area-shop-job-banner { display: block; max-width: 100%; height: auto; margin: 0 auto 20px; }
.dht-area-shop-jobs-body { overflow-wrap: anywhere; overflow-x: auto; }
.dht-area-shop-jobs-body img { max-width: 100%; height: auto; }
.dht-area-shop-jobs-body p { margin: 12px 0; }
@media (max-width: 600px) { .dht-area-shop-contact > div { grid-template-columns: minmax(0, 1fr); gap: 2px; margin: 14px 0; } }
