:root{
  --dhd-navy:#071d33;
  --dhd-blue:#0f5f9f;
  --dhd-light:#f5f7fb;
  --dhd-border:#dfe6ef;
  --dhd-text:#172033;
  --dhd-muted:#526071;
}

.dhd-wrap{max-width:1400px;margin:0 auto;padding:20px;font-family:Arial,sans-serif;color:var(--dhd-text)}

.dhd-hero{background:linear-gradient(rgba(5,15,30,.9),rgba(5,15,30,.9)),url('https://images.unsplash.com/photo-1505761671935-60b3a7427bad?q=80&w=1600')!important;background-size:cover!important;background-position:center!important;text-align:center!important;color:#fff!important;padding:60px 30px!important;border-radius:22px!important;margin-bottom:25px!important;box-shadow:0 20px 50px rgba(7,29,51,.18)}
.dhd-hero h1,.dhd-wrap .dhd-hero h1,.entry-content .dhd-hero h1{color:#fff!important;font-size:52px!important;font-weight:900!important;letter-spacing:-1.2px!important;text-shadow:0 4px 20px rgba(0,0,0,.5);margin:0 0 10px!important}
.dhd-hero p{color:rgba(255,255,255,.9)!important;font-size:18px;max-width:650px;margin:0 auto 26px!important}

.dhd-search{display:flex;gap:10px;background:#fff;padding:10px;border-radius:16px;max-width:600px!important;margin:0 auto!important;box-shadow:0 12px 34px rgba(0,0,0,.15)}
.dhd-search input{flex:1;min-width:0;border:0;padding:15px;font-size:15px;color:var(--dhd-text)}
.dhd-search button{background:var(--dhd-navy);color:#fff;border:0;border-radius:12px;padding:0 24px;font-weight:800;font-size:15px}

.dhd-section{background:#fff;border:1px solid var(--dhd-border);border-radius:18px;padding:22px;margin-bottom:20px;box-shadow:0 10px 30px rgba(7,29,51,.05)}
.dhd-section-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px}
.dhd-section h2{margin:0;font-size:22px;font-weight:900}
.dhd-link,.dhd-back-link{color:var(--dhd-blue);font-weight:800;text-decoration:none}

.dhd-grid{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))!important;gap:14px!important;align-items:stretch!important}

.dhd-card{display:flex!important;flex-direction:column!important;height:100%!important;min-height:520px!important;border:1px solid var(--dhd-border)!important;border-radius:16px!important;background:#fff!important;overflow:hidden!important;box-shadow:0 10px 25px rgba(7,29,51,.07)!important;transition:.22s ease}
.dhd-card:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(7,29,51,.12)!important}
.dhd-card-featured{border:1px solid #b9d7f2!important;box-shadow:0 12px 32px rgba(15,95,159,.13)!important}

.dhd-img{width:100%;aspect-ratio:1/1;background:#e8edf4;display:flex;align-items:center;justify-content:center;color:#708197;font-weight:800;overflow:hidden;flex:0 0 auto}
.dhd-img img{width:100%;height:100%;object-fit:cover;display:block}
.dhd-ad-media picture,
.dhd-img picture{width:100%;height:100%;display:block}
.dhd-ad-media picture img,
.dhd-img picture img{width:100%;height:100%;object-fit:cover;display:block}

.dhd-card-body{display:flex!important;flex-direction:column!important;justify-content:space-between!important;flex:1 1 auto!important;padding:14px!important}
.dhd-card-top{min-height:190px}
.dhd-card h3{font-size:16px!important;line-height:1.25!important;margin:0 0 6px!important;font-weight:900!important;color:var(--dhd-text)!important}
.dhd-card p{font-size:13px!important;line-height:1.35!important;color:var(--dhd-muted)!important;margin:4px 0!important}
.dhd-tagline{font-weight:800!important;color:var(--dhd-text)!important}
.dhd-card-category{color:#375c82!important}
.dhd-card-address{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

.dhd-offer{font-size:13px;line-height:1.35;color:#d12755;font-weight:900;margin-bottom:8px;text-transform:uppercase}
.dhd-featured-badge{display:inline-block;background:#fff3cd;color:#6b4e00;font-size:12px;font-weight:900;padding:5px 9px;border-radius:999px;margin-bottom:8px}

.dhd-card-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px;padding-top:10px;border-top:1px solid #edf1f6}
.dhd-card-actions a{background:#071d33;color:#fff!important;text-decoration:none!important;font-size:12px;font-weight:900;padding:8px 10px;border-radius:9px}
.dhd-card-actions a:hover{background:#0f5f9f}
.dhd-more-link{background:#0f5f9f!important}

.dhd-cat-grid{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))!important;gap:10px!important}
.dhd-cat{border:1px solid var(--dhd-border);border-radius:12px;padding:14px;text-align:center;background:#f8fafc;font-size:13px;font-weight:900;text-decoration:none!important;color:var(--dhd-text)!important;transition:.2s ease}
.dhd-cat:hover{background:#eaf2fb;transform:translateY(-3px)}

.dhd-section .dhd-cat-grid:has(.dhd-hub-link){
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:14px!important;
}

.dhd-hub-link{
  position:relative;
  display:grid!important;
  grid-template-rows:auto auto 1fr auto;
  gap:8px!important;
  min-height:178px;
  padding:18px!important;
  text-align:left!important;
  background:linear-gradient(145deg,#ffffff 0%,#eef8ff 100%)!important;
  border-color:#cfe6f8!important;
  box-shadow:0 14px 34px rgba(7,29,51,.1);
  overflow:hidden;
}

.dhd-hub-link::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:4px;
  background:linear-gradient(90deg,#0f5f9f,#14b8a6);
  opacity:.9;
}

.dhd-hub-link::before{
  content:"";
  position:absolute;
  right:-34px;
  top:-42px;
  width:118px;
  height:118px;
  border-radius:999px;
  background:rgba(15,95,159,.08);
  pointer-events:none;
}

.dhd-hub-icon{
  display:flex!important;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  border-radius:14px;
  background:#071d33;
  color:#fff!important;
  font-size:0!important;
  font-weight:900!important;
  line-height:1!important;
  box-shadow:0 12px 24px rgba(7,29,51,.14);
}

.dhd-hub-icon::before{
  content:"";
  width:23px;
  height:23px;
  background:currentColor;
  -webkit-mask:center/contain no-repeat;
  mask:center/contain no-repeat;
}

.dhd-hub-link:nth-child(1){
  background:linear-gradient(145deg,#ffffff 0%,#eaf6ff 100%)!important;
  border-color:#bfdbfe!important;
}

.dhd-hub-link:nth-child(1) .dhd-hub-icon{
  background:#0f5f9f;
}

.dhd-hub-link:nth-child(1) .dhd-hub-icon::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.5 18a7.5 7.5 0 1 1 5.94-2.92l3.24 3.24-1.36 1.36-3.24-3.24A7.47 7.47 0 0 1 10.5 18Zm0-2a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11Z'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.5 18a7.5 7.5 0 1 1 5.94-2.92l3.24 3.24-1.36 1.36-3.24-3.24A7.47 7.47 0 0 1 10.5 18Zm0-2a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11Z'/%3E%3C/svg%3E");
}

.dhd-hub-link:nth-child(2){
  background:linear-gradient(145deg,#ffffff 0%,#ecfdf5 100%)!important;
  border-color:#bbf7d0!important;
}

.dhd-hub-link:nth-child(2) .dhd-hub-icon{
  background:#0f766e;
}

.dhd-hub-link:nth-child(2) .dhd-hub-icon::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 22a10 10 0 1 1 0-20 10 10 0 0 1 0 20Zm0-2a8 8 0 1 0 0-16 8 8 0 0 0 0 16Zm-1-10h2v7h-2v-7Zm0-3h2v2h-2V7Z'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 22a10 10 0 1 1 0-20 10 10 0 0 1 0 20Zm0-2a8 8 0 1 0 0-16 8 8 0 0 0 0 16Zm-1-10h2v7h-2v-7Zm0-3h2v2h-2V7Z'/%3E%3C/svg%3E");
}

.dhd-hub-link:nth-child(3){
  background:linear-gradient(145deg,#ffffff 0%,#fff7ed 100%)!important;
  border-color:#fed7aa!important;
}

.dhd-hub-link:nth-child(3) .dhd-hub-icon{
  background:#f97316;
}

.dhd-hub-link:nth-child(3) .dhd-hub-icon::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 4h12a2 2 0 0 1 2 2v1h1.5A1.5 1.5 0 0 1 22 8.5V18a2 2 0 0 1-2 2H5a3 3 0 0 1-3-3V7a3 3 0 0 1 3-3Zm0 14h13a2 2 0 0 1-1-1.73V6H5a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1Zm14-9v7.27a1 1 0 0 0 1 .96V9h-1ZM6 8h8v2H6V8Zm0 4h8v2H6v-2Zm0 4h5v2H6v-2Z'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 4h12a2 2 0 0 1 2 2v1h1.5A1.5 1.5 0 0 1 22 8.5V18a2 2 0 0 1-2 2H5a3 3 0 0 1-3-3V7a3 3 0 0 1 3-3Zm0 14h13a2 2 0 0 1-1-1.73V6H5a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1Zm14-9v7.27a1 1 0 0 0 1 .96V9h-1ZM6 8h8v2H6V8Zm0 4h8v2H6v-2Zm0 4h5v2H6v-2Z'/%3E%3C/svg%3E");
}

.dhd-hub-link:nth-child(4){
  background:linear-gradient(145deg,#ffffff 0%,#f5f3ff 100%)!important;
  border-color:#ddd6fe!important;
}

.dhd-hub-link:nth-child(4) .dhd-hub-icon{
  background:#6d5bd0;
}

.dhd-hub-link:nth-child(4) .dhd-hub-icon::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7 2h2v2h6V2h2v2h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2V2Zm12 8H5v10h14V10ZM5 8h14V6H5v2Zm2 5h3v3H7v-3Zm5 0h3v3h-3v-3Z'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7 2h2v2h6V2h2v2h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2V2Zm12 8H5v10h14V10ZM5 8h14V6H5v2Zm2 5h3v3H7v-3Zm5 0h3v3h-3v-3Z'/%3E%3C/svg%3E");
}

.dhd-hub-link:nth-child(5){
  background:linear-gradient(145deg,#ffffff 0%,#fff1f2 100%)!important;
  border-color:#fecdd3!important;
}

.dhd-hub-link:nth-child(5) .dhd-hub-icon{
  background:#d12755;
}

.dhd-hub-link:nth-child(5) .dhd-hub-icon::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20.59 13.41 12 22l-8.59-8.59A2 2 0 0 1 3 12V5a2 2 0 0 1 2-2h7a2 2 0 0 1 1.41.59l7.18 7.18a2 2 0 0 1 0 2.64ZM18.9 12 12 5H5v7l7 7 6.9-7ZM7.5 9A1.5 1.5 0 1 1 7.5 6a1.5 1.5 0 0 1 0 3Z'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20.59 13.41 12 22l-8.59-8.59A2 2 0 0 1 3 12V5a2 2 0 0 1 2-2h7a2 2 0 0 1 1.41.59l7.18 7.18a2 2 0 0 1 0 2.64ZM18.9 12 12 5H5v7l7 7 6.9-7ZM7.5 9A1.5 1.5 0 1 1 7.5 6a1.5 1.5 0 0 1 0 3Z'/%3E%3C/svg%3E");
}

.dhd-hub-link strong{
  color:#071d33;
  font-size:18px;
  line-height:1.15;
}

.dhd-hub-link span:not(.dhd-hub-icon){
  color:#526071;
  font-size:13px;
  line-height:1.38;
  font-weight:700;
}

.dhd-hub-link em{
  align-self:end;
  color:#0f5f9f;
  font-style:normal;
  font-size:13px;
  font-weight:900;
}

.dhd-section-subtitle{
  margin:6px 0 0;
  color:var(--dhd-muted);
  font-size:14px;
  line-height:1.45;
}

.dhd-az-section{
  background:linear-gradient(135deg,#071d33,#102846)!important;
  border-color:rgba(255,255,255,.12)!important;
  color:#fff;
}

.dhd-az-section h2,
.dhd-az-section .dhd-section-subtitle{
  color:#fff!important;
}

.dhd-az-section .dhd-link{
  color:#ffb000!important;
}

.dhd-az-grid{
  display:grid;
  grid-template-columns:repeat(14,minmax(0,1fr));
  gap:9px;
}

.dhd-az-link{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:12px;
  background:rgba(255,255,255,.08);
  color:#fff!important;
  text-decoration:none!important;
  font-weight:900;
  font-size:16px;
  transition:.2s ease;
}

.dhd-az-link:hover{
  background:#ffb000;
  color:#071d33!important;
  transform:translateY(-2px);
}

.dhd-cta{background:linear-gradient(135deg,#071d33,#0f5f9f);color:#fff;border-radius:24px;padding:40px;text-align:center;box-shadow:0 20px 50px rgba(7,29,51,.2);margin-bottom:82px}
.dhd-cta h2,.dhd-cta p{color:#fff!important}
.dhd-cta a{display:inline-block;background:#fff;color:#071d33!important;padding:14px 22px;border-radius:12px;text-decoration:none!important;font-weight:900;margin-top:12px}

.dhd-business-profile{display:grid;grid-template-columns:minmax(280px,420px) 1fr;gap:28px;background:#fff;border:1px solid var(--dhd-border);border-radius:22px;padding:28px;box-shadow:0 14px 36px rgba(7,29,51,.08)}
.dhd-profile-media{background:#e8edf4;border-radius:18px;overflow:hidden;display:flex;align-items:center;justify-content:center;min-height:320px;font-weight:900;color:#708197}
.dhd-profile-media img{width:100%;height:100%;min-height:320px;object-fit:cover;display:block}
.dhd-profile-content h1{margin:8px 0 10px;font-size:38px;line-height:1.08;color:var(--dhd-text)}
.dhd-profile-tagline{font-size:18px;font-weight:800;margin:0 0 8px;color:var(--dhd-text)}
.dhd-profile-meta{color:var(--dhd-muted);margin:0 0 18px}
.dhd-profile-actions{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}
.dhd-profile-actions a{display:inline-block;background:#071d33;color:#fff!important;text-decoration:none!important;font-weight:900;padding:11px 14px;border-radius:11px}
.dhd-profile-details{border-top:1px solid var(--dhd-border);border-bottom:1px solid var(--dhd-border);padding:16px 0;margin:16px 0}
.dhd-profile-details p{margin:8px 0;color:var(--dhd-muted)}

.dhd-mobile-nav{display:none}

@media(max-width:980px){
  .dhd-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .dhd-business-profile{grid-template-columns:1fr}
}
@media(max-width:768px){
  .dhd-wrap{padding:0 14px 20px}
  .dhd-hero{padding:42px 20px!important;border-radius:0 0 22px 22px!important}
  .dhd-hero h1{font-size:34px!important}
  .dhd-hero p{font-size:15px!important}
  .dhd-search{flex-direction:column!important}
  .dhd-search button{padding:14px!important}
  .dhd-section{padding:18px!important;border-radius:16px!important}
  .dhd-section-head{align-items:flex-start;flex-direction:column}
  .dhd-section .dhd-cat-grid:has(.dhd-hub-link){
    grid-template-columns:1fr!important;
  }

  .dhd-hub-link{
    min-height:112px;
    grid-template-columns:auto minmax(0,1fr);
    grid-template-rows:auto auto auto;
    align-items:center;
  }

  .dhd-hub-icon{
    grid-row:1/4;
  }

  .dhd-hub-link em{
    align-self:start;
  }

  .dhd-az-grid{
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:8px;
  }

  .dhd-az-link{
    min-height:46px;
    font-size:15px;
  }
  .dhd-card{min-height:500px!important}
  .dhd-business-profile{padding:18px;border-radius:18px}
  .dhd-profile-content h1{font-size:30px}
  .dhd-mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:9999;background:#fff;border-top:1px solid var(--dhd-border);justify-content:space-around;padding:9px 0}
  .dhd-mobile-nav a{font-size:12px;color:#071d33!important;text-decoration:none!important;font-weight:900}
  body{padding-bottom:72px}
}
@media(max-width:520px){
  .dhd-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .dhd-card{min-height:440px!important;border-radius:13px!important}
  .dhd-card-body{padding:10px!important}
  .dhd-card-top{min-height:170px}
  .dhd-card h3{font-size:13px!important}
  .dhd-card p{font-size:11px!important}
  .dhd-offer{font-size:11px}
  .dhd-featured-badge{font-size:11px;padding:4px 7px}
  .dhd-card-actions a{font-size:11px;padding:6px 7px}
  .dhd-img span{font-size:11px}
  .dhd-hero h1{font-size:34px!important}
}

.dhd-custom-business-html{margin-top:24px;padding-top:22px;border-top:1px solid #e5e7eb}.dhd-custom-business-html h2,.dhd-custom-business-html h3{color:#071d33}.dhd-custom-business-html p{line-height:1.65}.dhd-custom-business-html a{font-weight:700}

/* Step 4: cleaner, more uniform listing cards */
.dhd-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fill,minmax(270px,1fr))!important;
  gap:18px!important;
  align-items:stretch!important;
}

.dhd-card{
  min-height:auto!important;
  height:100%!important;
  display:flex!important;
  flex-direction:column!important;
  border-radius:18px!important;
}

.dhd-card-featured{
  position:relative;
  border:2px solid #0f5f9f!important;
  background:linear-gradient(180deg,#ffffff 0%,#f6fbff 100%)!important;
}

.dhd-img{
  aspect-ratio:1/1!important;
  min-height:0!important;
}

.dhd-card-body{
  flex:1!important;
  display:flex!important;
  flex-direction:column!important;
  padding:16px!important;
}

.dhd-card-top{
  min-height:0!important;
  flex:1!important;
}

.dhd-card h3{
  min-height:40px!important;
  display:flex!important;
  align-items:flex-start!important;
}

.dhd-tagline{
  min-height:36px!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}

.dhd-card-category{
  display:inline-block!important;
  background:#eef6fd!important;
  color:#0f4c81!important;
  border-radius:999px!important;
  padding:5px 9px!important;
  font-weight:900!important;
  margin:8px 0!important;
}

.dhd-card-address{
  min-height:36px!important;
}

.dhd-card-actions{
  margin-top:auto!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
}

.dhd-card-actions a{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:38px!important;
  text-align:center!important;
}

.dhd-card-actions a.dhd-more-link{
  grid-column:1/-1;
  background:#0f5f9f!important;
}

.dhd-featured-badge{
  background:#071d33!important;
  color:#fff!important;
}

@media(max-width:700px){
  .dhd-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
  }

  .dhd-card-body{
    padding:11px!important;
  }

  .dhd-card h3{
    min-height:34px!important;
  }

  .dhd-tagline,
  .dhd-card-address{
    min-height:30px!important;
  }

  .dhd-card-actions{
    grid-template-columns:1fr!important;
  }

  .dhd-card-actions a{
    min-height:32px!important;
  }
}

/* Modern card refresh: cleaner hierarchy, stronger tap targets and calmer image treatment */
.dhd-grid{
  grid-template-columns:repeat(auto-fill,minmax(300px,1fr))!important;
  gap:24px!important;
}

.dhd-card.dhd-modern-card{
  border-radius:18px!important;
  border:1px solid #dce6f1!important;
  box-shadow:0 10px 24px rgba(7,29,51,.08)!important;
  background:#fff!important;
  content-visibility:auto;
  contain-intrinsic-size:520px;
}

.dhd-card.dhd-modern-card:hover{
  transform:translateY(-3px)!important;
  border-color:#b8d4ec!important;
  box-shadow:0 18px 40px rgba(7,29,51,.13)!important;
}

.dhd-card.dhd-modern-card.dhd-card-featured{
  border:2px solid #d6a928!important;
  box-shadow:0 18px 42px rgba(214,169,40,.22),0 0 0 4px rgba(255,236,179,.62)!important;
  background:linear-gradient(180deg,#fffdf7 0%,#ffffff 42%)!important;
}

.dhd-card.dhd-modern-card.dhd-card-featured:hover{
  border-color:#bd8f14!important;
  box-shadow:0 22px 48px rgba(214,169,40,.28),0 0 0 4px rgba(255,236,179,.75)!important;
}

.dhd-spotlight-section{
  position:relative;
  overflow:hidden;
  border-color:#ead08b!important;
  background:
    radial-gradient(circle at 86% 8%,rgba(255,210,105,.28),transparent 28%),
    linear-gradient(135deg,#fffaf0 0%,#ffffff 46%,#f7fbff 100%)!important;
  box-shadow:0 18px 46px rgba(120,83,18,.12)!important;
}

.dhd-spotlight-section:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-radius:18px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.7);
}

.dhd-spotlight-head{
  position:relative;
  align-items:flex-end!important;
}

.dhd-spotlight-head h2{
  font-size:28px!important;
  color:#071d33!important;
}

.dhd-spotlight-head p{
  margin:5px 0 0!important;
  color:#6a4a11!important;
  font-weight:800!important;
}

.dhd-spotlight-kicker{
  display:inline-flex;
  margin-bottom:8px;
  padding:6px 10px;
  border-radius:999px;
  background:linear-gradient(135deg,#8a5a00,#d6a928 54%,#ffe7a3);
  color:#ffffff;
  font-size:12px;
  line-height:1;
  font-weight:950;
  box-shadow:0 10px 22px rgba(138,90,0,.22);
}

.dhd-spotlight-grid{
  position:relative;
  grid-template-columns:repeat(auto-fit,minmax(310px,1fr))!important;
}

.dhd-card.dhd-modern-card.dhd-spotlight-card{
  border:2px solid #d6a928!important;
  background:
    linear-gradient(180deg,#fffdf6 0%,#ffffff 42%,#f8fbff 100%)!important;
  box-shadow:0 22px 54px rgba(120,83,18,.18),0 0 0 5px rgba(255,236,179,.58)!important;
}

.dhd-card.dhd-modern-card.dhd-spotlight-card:hover{
  transform:translateY(-6px)!important;
  border-color:#bd8f14!important;
  box-shadow:0 28px 64px rgba(120,83,18,.24),0 0 0 5px rgba(255,236,179,.78)!important;
}

.dhd-spotlight-card .dhd-ad-media{
  background:linear-gradient(135deg,#221504,#8a5a00 46%,#d6a928)!important;
}

.dhd-spotlight-card .dhd-ad-media:after{
  height:58%;
  background:linear-gradient(to top,rgba(33,21,4,.82),rgba(33,21,4,0))!important;
}

.dhd-spotlight-card .dhd-ad-category{
  background:rgba(255,248,224,.96)!important;
  color:#4b3100!important;
}

.dhd-spotlight-card .dhd-ad-content h3{
  color:#071d33!important;
  font-size:22px!important;
}

.dhd-spotlight-ribbon{
  position:absolute;
  left:12px;
  top:12px;
  z-index:4;
  padding:8px 11px;
  border-radius:999px;
  background:linear-gradient(135deg,#8a5a00,#d6a928 58%,#ffe7a3);
  color:#fff;
  font-size:12px;
  line-height:1;
  font-weight:950;
  box-shadow:0 10px 24px rgba(0,0,0,.26);
}

.dhd-spotlight-card .dhd-ad-offer-badge{
  top:auto!important;
  right:12px!important;
  bottom:12px!important;
  background:#071d33!important;
}

.dhd-spotlight-card .dhd-ad-btn{
  background:#221504!important;
}

.dhd-spotlight-card .dhd-ad-btn:hover,
.dhd-spotlight-card .dhd-ad-more{
  background:#8a5a00!important;
}

.dhd-modern-card .dhd-ad-media{
  aspect-ratio:1/1!important;
  background:linear-gradient(135deg,#071d33,#0f5f9f)!important;
}

.dhd-modern-card .dhd-ad-media img{
  object-fit:cover!important;
  background:#f3f6fa!important;
}

.dhd-modern-card .dhd-ad-media:after{
  height:48%;
  background:linear-gradient(to top,rgba(7,29,51,.76),rgba(7,29,51,0))!important;
}

.dhd-modern-card .dhd-ad-offer-badge{
  position:absolute;
  right:12px;
  top:12px;
  z-index:3;
  max-width:calc(100% - 24px);
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  padding:8px 10px;
  border-radius:12px;
  background:#d12755;
  color:#fff;
  font-size:12px;
  line-height:1.2;
  font-weight:900;
  box-shadow:0 10px 24px rgba(0,0,0,.24);
}

.dhd-ad-offer-mobile{
  display:none;
}

.dhd-modern-card.dhd-card-featured .dhd-ad-offer-badge{
  top:12px;
}

.dhd-modern-card .dhd-ad-category{
  background:rgba(255,255,255,.96)!important;
  color:#071d33!important;
}

.dhd-modern-card .dhd-ad-content{
  padding:18px!important;
}

.dhd-modern-card .dhd-ad-offer{
  display:none!important;
}

.dhd-modern-card .dhd-ad-content h3{
  min-height:0!important;
  margin:0 0 8px!important;
  font-size:20px!important;
  line-height:1.14!important;
  letter-spacing:0!important;
}

.dhd-modern-card .dhd-ad-tagline{
  min-height:0!important;
  margin-bottom:9px!important;
  color:#172033!important;
  font-size:14px!important;
  font-weight:800!important;
}

.dhd-modern-card .dhd-ad-address{
  min-height:0!important;
  margin-bottom:14px!important;
  color:#526071!important;
}

.dhd-modern-card .dhd-desktop-contact{
  display:grid;
  gap:5px;
  margin:0 0 14px;
  font-size:13px;
  line-height:1.35;
}

.dhd-modern-card .dhd-desktop-contact span{
  color:#172033!important;
  font-weight:800;
  overflow-wrap:anywhere;
}

.dhd-modern-card .dhd-ad-actions{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
  padding-top:14px!important;
}

.dhd-modern-card .dhd-ad-btn{
  gap:6px!important;
  white-space:nowrap!important;
  min-height:42px!important;
  border-radius:12px!important;
  background:#071d33!important;
  font-size:12px!important;
}

.dhd-modern-card .dhd-ad-more{
  grid-column:1/-1!important;
  background:#0f5f9f!important;
}

.dhd-modern-card .dhd-website-btn{
  grid-column:1/-1!important;
}

@media(min-width:701px){
  .dhd-modern-card .dhd-mobile-contact-btn{
    display:none!important;
  }
}

.dhd-directory-tools{
  display:grid;
  gap:16px;
}

.dhd-directory-app-hero{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:24px;
  margin-bottom:18px;
  padding:34px;
  border-radius:24px;
  background:radial-gradient(circle at 88% 16%,rgba(255,176,0,.24),transparent 32%),linear-gradient(135deg,#071d33,#102846);
  color:#fff;
  box-shadow:0 18px 48px rgba(7,29,51,.18);
}

.dhd-app-kicker{
  display:inline-flex;
  margin-bottom:10px;
  padding:7px 11px;
  border-radius:999px;
  background:rgba(94,234,212,.14);
  color:#5eead4;
  font-size:13px;
  font-weight:900;
}

.dhd-directory-app-hero h1{
  margin:0 0 8px;
  color:#fff!important;
  font-size:clamp(34px,5vw,56px);
  line-height:1.02;
  font-weight:900;
  letter-spacing:-.5px;
}

.dhd-directory-app-hero p{
  max-width:640px;
  margin:0;
  color:rgba(255,255,255,.86);
  font-size:16px;
}

.dhd-directory-count{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:0 10px;
  border-radius:999px;
  background:#eef6fd;
  color:#0f4c81;
  font-size:13px;
  font-weight:900;
  justify-content:center;
  white-space:nowrap;
}

.dhd-directory-app-hero .dhd-directory-count{
  min-height:46px;
  padding:0 14px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  color:#fff;
}

.dhd-directory-app-tools{
  padding:18px!important;
}

.dhd-directory-search{
  margin:0!important;
  max-width:none!important;
  box-shadow:none!important;
  border:1px solid var(--dhd-border);
}

.dhd-directory-cats{
  margin-top:2px;
}

.dhd-directory-az{
  display:flex;
  gap:8px;
  overflow-x:auto;
  padding:2px 2px 8px;
  scrollbar-width:thin;
}

.dhd-directory-az-link{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  min-height:40px;
  padding:0 12px;
  border:1px solid #d9e5f0;
  border-radius:12px;
  background:#f8fafc;
  color:#071d33!important;
  text-decoration:none!important;
  font-weight:900;
  transition:.2s ease;
}

.dhd-directory-az-link:hover,
.dhd-directory-az-link.is-active{
  background:#071d33;
  border-color:#071d33;
  color:#fff!important;
  transform:translateY(-1px);
}

.dhd-business-results{
  padding-top:24px!important;
}

@media(max-width:700px){
  .dhd-directory-app-hero{
    display:grid;
    gap:16px;
    padding:24px 18px;
    border-radius:0 0 24px 24px;
    margin-left:-14px;
    margin-right:-14px;
  }

  .dhd-directory-app-hero h1{
    font-size:34px;
  }

  .dhd-directory-app-hero .dhd-directory-count{
    justify-self:start;
  }

  .dhd-directory-app-tools{
    border-radius:18px!important;
    padding:14px!important;
  }

  .dhd-directory-az{
    margin-left:-2px;
    margin-right:-2px;
    padding-bottom:10px;
  }

  .dhd-directory-az-link{
    min-width:44px;
    min-height:44px;
    border-radius:14px;
  }

  .dhd-grid{
    grid-template-columns:1fr!important;
    gap:16px!important;
  }

  .dhd-spotlight-grid{
    grid-template-columns:1fr!important;
  }

  .dhd-spotlight-head{
    align-items:flex-start!important;
  }

  .dhd-modern-card .dhd-ad-content{
    padding:14px!important;
  }

  .dhd-modern-card .dhd-ad-content h3{
    font-size:18px!important;
  }

  .dhd-modern-card .dhd-ad-address{
    display:-webkit-box!important;
  }

  .dhd-modern-card .dhd-desktop-contact{
    display:none!important;
  }

  .dhd-modern-card .dhd-ad-actions{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}


/* Step 5 preview: advert-style business cards inspired by mobile local ad creative */
.dhd-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fill,minmax(285px,1fr))!important;
  gap:22px!important;
  align-items:stretch!important;
}

.dhd-card.dhd-ad-card{
  display:flex!important;
  flex-direction:column!important;
  min-height:0!important;
  height:100%!important;
  overflow:hidden!important;
  border-radius:22px!important;
  background:#ffffff!important;
  border:1px solid #dfe8f3!important;
  box-shadow:0 14px 34px rgba(7,29,51,.10)!important;
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.dhd-card.dhd-ad-card:hover{
  transform:translateY(-5px)!important;
  box-shadow:0 22px 48px rgba(7,29,51,.16)!important;
}

.dhd-card.dhd-ad-card.dhd-card-featured{
  border:2px solid #1687e0!important;
  box-shadow:0 18px 44px rgba(15,95,159,.20)!important;
  background:linear-gradient(180deg,#ffffff 0%,#f4faff 100%)!important;
}

.dhd-ad-media{
  position:relative;
  width:100%;
  aspect-ratio:1/1;
  background:linear-gradient(135deg,#071d33,#0f5f9f);
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}

.dhd-ad-media img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
  background:#f3f6fa;
}

.dhd-ad-media:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:44%;
  background:linear-gradient(to top,rgba(7,29,51,.72),rgba(7,29,51,0));
  pointer-events:none;
}

.dhd-ad-placeholder{
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#ffffff;
  font-size:70px;
  font-weight:900;
  letter-spacing:-2px;
}

.dhd-ad-ribbon{
  position:absolute;
  top:12px;
  left:12px;
  z-index:2;
  background:#1687e0;
  color:#fff;
  font-size:12px;
  line-height:1;
  font-weight:900;
  padding:8px 10px;
  border-radius:999px;
  box-shadow:0 8px 22px rgba(0,0,0,.25);
}

.dhd-ad-category{
  position:absolute;
  left:12px;
  bottom:12px;
  z-index:2;
  background:rgba(255,255,255,.94);
  color:#071d33;
  border-radius:999px;
  padding:7px 10px;
  font-size:12px;
  font-weight:900;
  max-width:calc(100% - 24px);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  box-shadow:0 8px 22px rgba(0,0,0,.18);
}

.dhd-ad-content{
  display:flex!important;
  flex-direction:column!important;
  flex:1 1 auto!important;
  padding:17px!important;
}

.dhd-ad-offer{
  color:#e21954;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.2px;
  font-size:13px;
  line-height:1.35;
  margin:0 0 10px;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.dhd-ad-content h3{
  margin:0 0 7px!important;
  color:#071d33!important;
  font-size:18px!important;
  line-height:1.16!important;
  font-weight:950!important;
  min-height:42px!important;
  display:flex!important;
  align-items:flex-start!important;
}

.dhd-ad-tagline{
  margin:0 0 8px!important;
  color:#172033!important;
  font-size:14px!important;
  line-height:1.35!important;
  font-weight:800!important;
  min-height:38px!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}

.dhd-ad-address{
  margin:0 0 12px!important;
  color:#526071!important;
  font-size:13px!important;
  line-height:1.35!important;
  min-height:36px!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}

.dhd-ad-actions{
  margin-top:auto!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
  padding-top:12px!important;
  border-top:1px solid #edf2f7!important;
}

.dhd-ad-btn{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:40px!important;
  padding:8px 8px!important;
  border-radius:12px!important;
  background:#071d33!important;
  color:#ffffff!important;
  text-decoration:none!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:900!important;
  text-align:center!important;
  white-space:nowrap!important;
  box-shadow:0 8px 18px rgba(7,29,51,.12)!important;
}

.dhd-ad-btn:hover{
  background:#0f5f9f!important;
  color:#ffffff!important;
}

.dhd-ad-more{
  grid-column:1/-1!important;
  background:#1687e0!important;
}

.dhd-ad-more:hover{
  background:#0f5f9f!important;
}

@media(max-width:700px){
  .dhd-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
  }

  .dhd-card.dhd-ad-card{
    border-radius:16px!important;
  }

  .dhd-ad-content{
    padding:11px!important;
  }

  .dhd-ad-ribbon,
  .dhd-ad-category{
    font-size:10px!important;
    padding:6px 8px!important;
  }

  .dhd-ad-offer{
    font-size:11px!important;
    -webkit-line-clamp:2;
  }

  .dhd-ad-content h3{
    font-size:13px!important;
    min-height:32px!important;
  }

  .dhd-ad-tagline{
    font-size:11px!important;
    min-height:30px!important;
  }

  .dhd-ad-address{
    display:none!important;
  }

  .dhd-ad-actions{
    grid-template-columns:1fr!important;
    gap:6px!important;
  }

  .dhd-ad-btn{
    min-height:32px!important;
    font-size:11px!important;
    border-radius:9px!important;
  }
}

/* Mobile button layout hardening: keeps action buttons readable across narrow Android and iPhone widths. */
@media(max-width:700px){
  .dhd-ad-actions,
  .dhd-modern-card .dhd-ad-actions{
    grid-template-columns:1fr!important;
    gap:6px!important;
  }

  .dhd-ad-btn,
  .dhd-modern-card .dhd-ad-btn{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    min-width:0!important;
    min-height:32px!important;
    padding:8px 10px!important;
    font-size:11px!important;
    line-height:1.1!important;
    border-radius:9px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  .dhd-mobile-contact-btn{
    display:flex!important;
  }
}

@media(max-width:380px){
  .dhd-ad-btn,
  .dhd-modern-card .dhd-ad-btn{
    font-size:10px!important;
    padding-left:8px!important;
    padding-right:8px!important;
  }
}

/* S21/iPhone mobile button fix: prevent theme/browser text breaking and force stable tap targets. */
@media (max-width: 767px) {
  .dhd-ad-actions,
  .dhd-modern-card .dhd-ad-actions {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    gap: 7px !important;
  }

  .dhd-ad-btn,
  .dhd-modern-card .dhd-ad-btn {
    display: flex !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 36px !important;
    padding: 9px 10px !important;
    font-size: 12px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
    text-align: center !important;
  }

  .dhd-mobile-contact-btn {
    display: flex !important;
  }
}

/* Final responsive guard for narrow WebView devices: keep "Website" on one line. */
.dhd-website-btn,
.dhd-website-btn span,
.dhd-ad-btn[data-dhd-click="website"],
.dhd-ad-btn[data-dhd-click="website"] span,
.dhd-profile-actions a[href^="http"] {
  white-space:nowrap!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}

.dhd-website-btn span,
.dhd-ad-btn[data-dhd-click="website"] span {
  display:inline-block!important;
  max-width:100%!important;
}

@media(max-width:390px){
  .dhd-website-btn,
  .dhd-ad-btn[data-dhd-click="website"]{
    font-size:11px!important;
    letter-spacing:0!important;
    padding-left:9px!important;
    padding-right:9px!important;
  }
}

@media(max-width:340px){
  .dhd-website-btn,
  .dhd-ad-btn[data-dhd-click="website"]{
    font-size:10px!important;
    padding-left:7px!important;
    padding-right:7px!important;
  }
}

.dhd-ad-actions > .dhd-ad-more,
.dhd-modern-card .dhd-ad-actions > .dhd-ad-more,
.dhd-spotlight-card .dhd-ad-actions > .dhd-ad-more{
  background:#071d33!important;
  color:#fff!important;
}

.dhd-ad-actions > .dhd-ad-more:hover,
.dhd-modern-card .dhd-ad-actions > .dhd-ad-more:hover,
.dhd-spotlight-card .dhd-ad-actions > .dhd-ad-more:hover{
  background:#0b2a49!important;
  color:#fff!important;
}

/* Final mobile layout guard for the private High Street signup page only. */
@media(max-width:700px){
  .dhd-highstreet-landing{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0 auto!important;
    padding-left:12px!important;
    padding-right:12px!important;
    overflow-x:hidden!important;
  }

  .dhd-highstreet-landing .dhd-highstreet-strip,
  .dhd-highstreet-landing .dhd-highstreet-form-section,
  .dhd-highstreet-landing .dhd-highstreet-two,
  .dhd-highstreet-landing .dhd-highstreet-social-row{
    display:grid!important;
    grid-template-columns:1fr!important;
    justify-items:stretch!important;
    width:100%!important;
  }

  .dhd-highstreet-landing .dhd-highstreet-panel,
  .dhd-highstreet-landing .dhd-highstreet-strip div,
  .dhd-highstreet-landing .dhd-highstreet-form-copy,
  .dhd-highstreet-landing .dhd-highstreet-form-card,
  .dhd-highstreet-landing .dhd-highstreet-websites{
    width:100%!important;
    max-width:560px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .dhd-highstreet-landing .dhd-highstreet-social-row input,
  .dhd-highstreet-landing .dhd-highstreet-social-row button,
  .dhd-highstreet-landing .dhd-highstreet-add-social{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:44px!important;
    padding:0 14px!important;
  }

  .dhd-highstreet-landing .dhd-highstreet-add-social{
    margin-top:10px!important;
  }
}

@media(max-width:380px){
  .dhd-highstreet-landing{
    padding-left:10px!important;
    padding-right:10px!important;
  }

  .dhd-highstreet-landing .dhd-highstreet-hero{
    margin-left:-10px!important;
    margin-right:-10px!important;
    padding-left:14px!important;
    padding-right:14px!important;
  }

  .dhd-highstreet-landing .dhd-highstreet-panel,
  .dhd-highstreet-landing .dhd-highstreet-form-copy,
  .dhd-highstreet-landing .dhd-highstreet-form-card,
  .dhd-highstreet-landing .dhd-highstreet-websites{
    padding:16px!important;
  }
}

/* Absolute final contrast guard for the private High Street signup page only. */
.dhd-highstreet-landing .dhd-highstreet-hero h1,
.dhd-highstreet-landing .dhd-highstreet-hero p,
.dhd-highstreet-landing .dhd-highstreet-panel strong,
.dhd-highstreet-landing .dhd-highstreet-panel li{
  color:#ffffff!important;
}

.dhd-highstreet-landing .dhd-highstreet-form-copy h2,
.dhd-highstreet-landing .dhd-highstreet-websites h2,
.dhd-highstreet-landing .dhd-highstreet-strip strong,
.dhd-highstreet-landing .dhd-highstreet-field label,
.dhd-highstreet-landing .dhd-highstreet-check span{
  color:#071d33!important;
}

.dhd-highstreet-landing .dhd-highstreet-form-copy p,
.dhd-highstreet-landing .dhd-highstreet-websites p,
.dhd-highstreet-landing .dhd-highstreet-strip span{
  color:#475569!important;
}

.dhd-highstreet-landing .dhd-highstreet-form-copy .dhd-highstreet-kicker,
.dhd-highstreet-landing .dhd-highstreet-websites .dhd-highstreet-kicker{
  background:#e8f3ff!important;
  color:#071d33!important;
}
/* End of High Street signup contrast guard. */

/* Final mobile layout guard for the private High Street signup page only. */
@media(max-width:700px){
  .dhd-highstreet-landing{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0 auto!important;
    padding-left:12px!important;
    padding-right:12px!important;
    overflow-x:hidden!important;
  }

  .dhd-highstreet-landing .dhd-highstreet-strip,
  .dhd-highstreet-landing .dhd-highstreet-form-section,
  .dhd-highstreet-landing .dhd-highstreet-two,
  .dhd-highstreet-landing .dhd-highstreet-social-row{
    display:grid!important;
    grid-template-columns:1fr!important;
    justify-items:stretch!important;
    width:100%!important;
  }

  .dhd-highstreet-landing .dhd-highstreet-panel,
  .dhd-highstreet-landing .dhd-highstreet-strip div,
  .dhd-highstreet-landing .dhd-highstreet-form-copy,
  .dhd-highstreet-landing .dhd-highstreet-form-card,
  .dhd-highstreet-landing .dhd-highstreet-websites{
    width:100%!important;
    max-width:560px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .dhd-highstreet-landing .dhd-highstreet-social-row input,
  .dhd-highstreet-landing .dhd-highstreet-social-row button,
  .dhd-highstreet-landing .dhd-highstreet-add-social{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:44px!important;
    padding:0 14px!important;
  }

  .dhd-highstreet-landing .dhd-highstreet-add-social{
    margin-top:10px!important;
  }
}

@media(max-width:380px){
  .dhd-highstreet-landing{
    padding-left:10px!important;
    padding-right:10px!important;
  }

  .dhd-highstreet-landing .dhd-highstreet-hero{
    margin-left:-10px!important;
    margin-right:-10px!important;
    padding-left:14px!important;
    padding-right:14px!important;
  }

  .dhd-highstreet-landing .dhd-highstreet-panel,
  .dhd-highstreet-landing .dhd-highstreet-form-copy,
  .dhd-highstreet-landing .dhd-highstreet-form-card,
  .dhd-highstreet-landing .dhd-highstreet-websites{
    padding:16px!important;
  }
}

/* Final mobile layout guard for the private High Street signup page only. */
@media(max-width:700px){
  .dhd-highstreet-landing{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0 auto!important;
    padding-left:12px!important;
    padding-right:12px!important;
    overflow-x:hidden!important;
  }

  .dhd-highstreet-landing .dhd-highstreet-strip,
  .dhd-highstreet-landing .dhd-highstreet-form-section,
  .dhd-highstreet-landing .dhd-highstreet-two,
  .dhd-highstreet-landing .dhd-highstreet-social-row{
    display:grid!important;
    grid-template-columns:1fr!important;
    justify-items:stretch!important;
    width:100%!important;
  }

  .dhd-highstreet-landing .dhd-highstreet-panel,
  .dhd-highstreet-landing .dhd-highstreet-strip div,
  .dhd-highstreet-landing .dhd-highstreet-form-copy,
  .dhd-highstreet-landing .dhd-highstreet-form-card,
  .dhd-highstreet-landing .dhd-highstreet-websites{
    width:100%!important;
    max-width:560px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .dhd-highstreet-landing .dhd-highstreet-social-row input,
  .dhd-highstreet-landing .dhd-highstreet-social-row button,
  .dhd-highstreet-landing .dhd-highstreet-add-social{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:44px!important;
    padding:0 14px!important;
  }

  .dhd-highstreet-landing .dhd-highstreet-add-social{
    margin-top:10px!important;
  }
}

@media(max-width:380px){
  .dhd-highstreet-landing{
    padding-left:10px!important;
    padding-right:10px!important;
  }

  .dhd-highstreet-landing .dhd-highstreet-hero{
    margin-left:-10px!important;
    margin-right:-10px!important;
    padding-left:14px!important;
    padding-right:14px!important;
  }

  .dhd-highstreet-landing .dhd-highstreet-panel,
  .dhd-highstreet-landing .dhd-highstreet-form-copy,
  .dhd-highstreet-landing .dhd-highstreet-form-card,
  .dhd-highstreet-landing .dhd-highstreet-websites{
    padding:16px!important;
  }
}

/* Absolute final contrast guard for the private High Street signup page only. */
.dhd-highstreet-landing .dhd-highstreet-hero h1,
.dhd-highstreet-landing .dhd-highstreet-hero p,
.dhd-highstreet-landing .dhd-highstreet-panel strong,
.dhd-highstreet-landing .dhd-highstreet-panel li{
  color:#ffffff!important;
}

.dhd-highstreet-landing .dhd-highstreet-form-copy h2,
.dhd-highstreet-landing .dhd-highstreet-websites h2,
.dhd-highstreet-landing .dhd-highstreet-strip strong,
.dhd-highstreet-landing .dhd-highstreet-field label,
.dhd-highstreet-landing .dhd-highstreet-check span{
  color:#071d33!important;
}

.dhd-highstreet-landing .dhd-highstreet-form-copy p,
.dhd-highstreet-landing .dhd-highstreet-websites p,
.dhd-highstreet-landing .dhd-highstreet-strip span{
  color:#475569!important;
}

.dhd-highstreet-landing .dhd-highstreet-form-copy .dhd-highstreet-kicker,
.dhd-highstreet-landing .dhd-highstreet-websites .dhd-highstreet-kicker{
  background:#e8f3ff!important;
  color:#071d33!important;
}

.dhd-highstreet-landing{
  max-width:1180px;
  margin:0 auto;
  padding:24px 18px 42px;
  color:#172033;
  font-family:Arial,sans-serif;
}

.dhd-highstreet-hero{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);
  gap:28px;
  align-items:stretch;
  padding:42px;
  border-radius:24px;
  background:linear-gradient(135deg,#071d33 0%,#102846 58%,#0f5f9f 100%);
  color:#fff;
  box-shadow:0 22px 58px rgba(7,29,51,.2);
}

.dhd-highstreet-kicker{
  display:inline-flex;
  margin-bottom:12px;
  padding:7px 11px;
  border-radius:999px;
  background:rgba(94,234,212,.14);
  color:#5eead4;
  font-size:13px;
  font-weight:900;
}

.dhd-highstreet-hero h1{
  max-width:760px;
  margin:0 0 14px;
  color:#fff!important;
  font-size:54px;
  line-height:1.02;
  letter-spacing:0;
  font-weight:900;
}

.dhd-highstreet-hero p{
  max-width:700px;
  margin:0;
  color:rgba(255,255,255,.88)!important;
  font-size:18px;
  line-height:1.5;
}

.dhd-highstreet-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:14px;
  margin-top:26px;
}

.dhd-highstreet-actions a,
.dhd-highstreet-websites a,
.dhd-highstreet-submit{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:0 20px;
  border:0;
  border-radius:14px;
  background:#ffb000;
  color:#071d33!important;
  text-decoration:none!important;
  font-size:15px;
  font-weight:900;
  box-shadow:0 14px 30px rgba(0,0,0,.2);
  cursor:pointer;
  transition:.2s ease;
}

.dhd-highstreet-actions a:hover,
.dhd-highstreet-websites a:hover,
.dhd-highstreet-submit:hover{
  transform:translateY(-2px);
  background:#ffd166;
}

.dhd-highstreet-actions span{
  color:rgba(255,255,255,.82);
  font-size:14px;
  font-weight:800;
}

.dhd-highstreet-panel{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:24px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:20px;
  background:rgba(255,255,255,.1);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.1);
}

.dhd-highstreet-panel strong{
  color:#fff;
  font-size:20px;
}

.dhd-highstreet-panel ul{
  display:grid;
  gap:10px;
  margin:16px 0 0;
  padding:0;
  list-style:none;
}

.dhd-highstreet-panel li{
  position:relative;
  padding-left:22px;
  color:rgba(255,255,255,.9);
  line-height:1.4;
  font-weight:800;
}

.dhd-highstreet-panel li:before{
  content:"";
  position:absolute;
  left:0;
  top:.45em;
  width:9px;
  height:9px;
  border-radius:999px;
  background:#ffb000;
}

.dhd-highstreet-strip{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin:18px 0;
}

.dhd-highstreet-strip div{
  padding:18px;
  border:1px solid #dfe6ef;
  border-radius:16px;
  background:#fff;
  box-shadow:0 10px 24px rgba(7,29,51,.06);
}

.dhd-highstreet-strip strong,
.dhd-highstreet-strip span{
  display:block;
}

.dhd-highstreet-strip strong{
  color:#071d33;
  font-size:16px;
  margin-bottom:5px;
}

.dhd-highstreet-strip span{
  color:#526071;
  font-size:14px;
  line-height:1.4;
}

.dhd-highstreet-form-section{
  display:grid;
  grid-template-columns:minmax(260px,.6fr) minmax(0,1fr);
  gap:24px;
  align-items:start;
  margin-top:28px;
}

.dhd-highstreet-form-copy{
  position:sticky;
  top:24px;
  padding:26px;
  border-radius:20px;
  background:#f5f9ff;
  border:1px solid #dfe6ef;
}

.dhd-highstreet-form-copy h2,
.dhd-highstreet-websites h2{
  margin:0 0 10px;
  color:#071d33!important;
  font-size:32px;
  line-height:1.1;
}

.dhd-highstreet-form-copy p,
.dhd-highstreet-websites p{
  margin:0;
  color:#526071;
  font-size:16px;
  line-height:1.55;
}

.dhd-highstreet-form-card{
  padding:24px;
  border:1px solid #dfe6ef;
  border-radius:20px;
  background:#fff;
  box-shadow:0 18px 42px rgba(7,29,51,.08);
}

.dhd-highstreet-two{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.dhd-highstreet-field{
  margin-bottom:15px;
}

.dhd-highstreet-field label{
  display:block;
  margin-bottom:7px;
  color:#172033;
  font-size:14px;
  font-weight:900;
}

.dhd-highstreet-field label span{
  color:#b91c1c;
  font-size:12px;
}

.dhd-highstreet-field input,
.dhd-highstreet-field textarea{
  width:100%;
  box-sizing:border-box;
  border:1px solid #cfd9e5;
  border-radius:12px;
  padding:12px 13px;
  color:#172033;
  font-size:15px;
  background:#fff;
}

.dhd-highstreet-field textarea{
  resize:vertical;
}

.dhd-highstreet-social-list{
  display:grid;
  gap:10px;
}

.dhd-highstreet-social-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
}

.dhd-highstreet-social-row button,
.dhd-highstreet-add-social{
  min-height:42px;
  border:1px solid #cfd9e5;
  border-radius:12px;
  background:#f8fafc;
  color:#071d33;
  font-weight:900;
  cursor:pointer;
}

.dhd-highstreet-add-social{
  margin-top:10px;
  padding:0 14px;
}

.dhd-highstreet-check{
  display:flex;
  gap:10px;
  align-items:flex-start;
  margin:6px 0 18px;
  padding:13px;
  border:1px solid #dfe6ef;
  border-radius:14px;
  background:#f8fafc;
  color:#172033;
  font-weight:800;
}

.dhd-highstreet-submit{
  width:100%;
  min-height:52px;
  background:#071d33;
  color:#fff!important;
  box-shadow:none;
}

.dhd-highstreet-submit:hover{
  background:#0f5f9f;
}

.dhd-highstreet-success,
.dhd-highstreet-error{
  border-radius:16px;
  padding:18px;
}

.dhd-highstreet-success{
  background:#ecfdf5;
  border:1px solid #bbf7d0;
}

.dhd-highstreet-success h3{
  margin:0 0 7px;
  color:#065f46;
}

.dhd-highstreet-error{
  margin-bottom:16px;
  background:#fff1f2;
  border:1px solid #fecdd3;
  color:#9f1239;
  font-weight:800;
}

.dhd-highstreet-hp{
  position:absolute!important;
  left:-9999px!important;
}

.dhd-highstreet-websites{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  margin-top:28px;
  padding:28px;
  border-radius:22px;
  background:linear-gradient(135deg,#fffaf0 0%,#ffffff 48%,#eef8ff 100%);
  border:1px solid #ead08b;
  box-shadow:0 16px 38px rgba(120,83,18,.1);
}

.dhd-highstreet-websites s{
  color:#7a8797;
}

.dhd-highstreet-websites a{
  flex:0 0 auto;
  background:#071d33;
  color:#fff!important;
}

@media(max-width:900px){
  .dhd-highstreet-hero,
  .dhd-highstreet-form-section{
    grid-template-columns:1fr;
  }

  .dhd-highstreet-hero h1{
    font-size:42px;
  }

  .dhd-highstreet-form-copy{
    position:static;
  }
}

@media(max-width:700px){
  .dhd-highstreet-landing{
    padding:0 12px 30px;
  }

  .dhd-highstreet-hero{
    padding:30px 18px;
    border-radius:0 0 22px 22px;
    margin-left:-12px;
    margin-right:-12px;
  }

  .dhd-highstreet-hero h1{
    font-size:34px;
  }

  .dhd-highstreet-hero p{
    font-size:16px;
  }

  .dhd-highstreet-actions,
  .dhd-highstreet-websites{
    display:grid;
  }

  .dhd-highstreet-actions a,
  .dhd-highstreet-websites a{
    width:100%;
    box-sizing:border-box;
  }

  .dhd-highstreet-strip,
  .dhd-highstreet-two{
    grid-template-columns:1fr;
  }

  .dhd-highstreet-form-card,
  .dhd-highstreet-form-copy,
  .dhd-highstreet-websites{
    padding:18px;
    border-radius:18px;
  }

  .dhd-highstreet-social-row{
    grid-template-columns:1fr;
  }
}

@media(max-width:390px){
  .dhd-highstreet-hero h1{
    font-size:29px;
  }

  .dhd-highstreet-form-copy h2,
  .dhd-highstreet-websites h2{
    font-size:26px;
  }

  .dhd-highstreet-kicker{
    font-size:12px;
  }
}

/* High Street signup page final polish. Scoped so the directory remains untouched. */
.dhd-highstreet-landing,
.dhd-highstreet-landing *{
  box-sizing:border-box;
}

.dhd-highstreet-landing{
  background:#ffffff;
}

.dhd-highstreet-landing h1,
.dhd-highstreet-landing h2,
.dhd-highstreet-landing h3,
.dhd-highstreet-landing h4,
.dhd-highstreet-landing p,
.dhd-highstreet-landing label,
.dhd-highstreet-landing span,
.dhd-highstreet-landing strong,
.dhd-highstreet-landing li{
  letter-spacing:0!important;
}

.dhd-highstreet-hero h1,
.dhd-highstreet-hero p,
.dhd-highstreet-panel strong,
.dhd-highstreet-panel li{
  color:#ffffff!important;
}

.dhd-highstreet-hero p,
.dhd-highstreet-panel li{
  color:rgba(255,255,255,.9)!important;
}

.dhd-highstreet-hero .dhd-highstreet-kicker{
  background:rgba(255,255,255,.14)!important;
  color:#ffffff!important;
  border:1px solid rgba(255,255,255,.18);
}

.dhd-highstreet-form-copy .dhd-highstreet-kicker,
.dhd-highstreet-websites .dhd-highstreet-kicker{
  background:#e8f3ff!important;
  color:#071d33!important;
  border:1px solid #cfe3f7;
}

.dhd-highstreet-form-copy h2,
.dhd-highstreet-websites h2,
.dhd-highstreet-strip strong,
.dhd-highstreet-field label,
.dhd-highstreet-check span,
.dhd-highstreet-success h3{
  color:#071d33!important;
}

.dhd-highstreet-form-copy p,
.dhd-highstreet-websites p,
.dhd-highstreet-strip span,
.dhd-highstreet-success p{
  color:#475569!important;
}

.dhd-highstreet-form-card{
  color:#172033!important;
}

.dhd-highstreet-field input,
.dhd-highstreet-field textarea{
  min-height:46px;
  color:#071d33!important;
  background:#ffffff!important;
  border-color:#b9c7d8!important;
  box-shadow:none!important;
}

.dhd-highstreet-field input:focus,
.dhd-highstreet-field textarea:focus{
  outline:3px solid rgba(15,95,159,.18)!important;
  border-color:#0f5f9f!important;
}

.dhd-highstreet-field input::placeholder,
.dhd-highstreet-field textarea::placeholder{
  color:#64748b!important;
  opacity:1!important;
}

.dhd-highstreet-social-row button,
.dhd-highstreet-add-social{
  color:#071d33!important;
  background:#eef6fd!important;
  border-color:#cfe3f7!important;
}

.dhd-highstreet-social-row button:hover,
.dhd-highstreet-add-social:hover{
  background:#dcecff!important;
}

.dhd-highstreet-actions span{
  color:rgba(255,255,255,.9)!important;
}

.dhd-highstreet-submit,
.dhd-highstreet-websites a{
  color:#ffffff!important;
}

.dhd-highstreet-actions a{
  color:#071d33!important;
}

.dhd-highstreet-websites{
  background:linear-gradient(135deg,#fff8e7 0%,#ffffff 48%,#eef7ff 100%)!important;
}

@media(max-width:700px){
  .dhd-highstreet-landing{
    width:100%;
    max-width:100%;
    overflow-x:hidden;
  }

  .dhd-highstreet-hero,
  .dhd-highstreet-form-card,
  .dhd-highstreet-form-copy,
  .dhd-highstreet-strip div,
  .dhd-highstreet-websites{
    width:100%;
    max-width:100%;
  }

  .dhd-highstreet-hero h1{
    line-height:1.06!important;
  }

  .dhd-highstreet-field input,
  .dhd-highstreet-field textarea,
  .dhd-highstreet-submit,
  .dhd-highstreet-actions a,
  .dhd-highstreet-websites a,
  .dhd-highstreet-social-row button,
  .dhd-highstreet-add-social{
    min-width:0;
    max-width:100%;
  }

  .dhd-highstreet-check{
    align-items:flex-start;
  }
}

@media(max-width:360px){
  .dhd-highstreet-landing{
    padding-left:10px;
    padding-right:10px;
  }

  .dhd-highstreet-hero{
    padding:26px 14px;
    margin-left:-10px;
    margin-right:-10px;
  }

  .dhd-highstreet-panel,
  .dhd-highstreet-form-card,
  .dhd-highstreet-form-copy,
  .dhd-highstreet-websites{
    padding:16px;
  }
}

/* Mobile offer strip: keep offers visible without covering the business image. */
@media(max-width:700px){
  .dhd-modern-card .dhd-ad-offer-badge{
    display:none!important;
  }

  .dhd-ad-offer-mobile{
    display:block!important;
    margin:0!important;
    padding:8px 10px!important;
    background:#d12755!important;
    color:#fff!important;
    font-size:11px!important;
    line-height:1.25!important;
    font-weight:900!important;
    text-align:center!important;
    text-transform:uppercase!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
}

@media(max-width:380px){
  .dhd-ad-offer-mobile{
    font-size:10px!important;
    padding:7px 9px!important;
  }
}

/* Final desktop action layout guard: Website matches Learn More width. */
.dhd-ad-actions > .dhd-website-btn,
.dhd-modern-card .dhd-ad-actions > .dhd-website-btn,
.dhd-ad-actions > .dhd-ad-btn[data-dhd-click="website"],
.dhd-modern-card .dhd-ad-actions > .dhd-ad-btn[data-dhd-click="website"]{
  grid-column:1/-1!important;
  width:100%!important;
}

/* Local Spotlight final layout guard: keep Premium + cards wider and more prestigious than standard listings. */
.dhd-spotlight-grid{
  grid-template-columns:repeat(auto-fit,minmax(310px,1fr))!important;
}

@media(max-width:700px){
  .dhd-spotlight-grid{
    grid-template-columns:1fr!important;
  }
}

/* Mobile card compression: shorter, app-like cards for iPhone and Android while preserving tier feel. */
@media(max-width:767px){
  .dhd-grid,
  .dhd-spotlight-grid{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }

  .dhd-card.dhd-ad-card,
  .dhd-card.dhd-modern-card{
    border-radius:16px!important;
    box-shadow:0 10px 24px rgba(7,29,51,.09)!important;
  }

  .dhd-card.dhd-modern-card.dhd-card-featured{
    border:2px solid #d6a928!important;
    box-shadow:0 12px 28px rgba(214,169,40,.18),0 0 0 3px rgba(255,236,179,.56)!important;
  }

  .dhd-card.dhd-modern-card.dhd-spotlight-card{
    border:2px solid #d6a928!important;
    box-shadow:0 16px 36px rgba(120,83,18,.2),0 0 0 4px rgba(255,236,179,.72)!important;
  }

  .dhd-ad-media,
  .dhd-modern-card .dhd-ad-media,
  .dhd-spotlight-card .dhd-ad-media{
    aspect-ratio:3/4!important;
    min-height:0!important;
  }

  .dhd-ad-media img,
  .dhd-modern-card .dhd-ad-media img{
    object-fit:cover!important;
  }

  .dhd-ad-media:after,
  .dhd-modern-card .dhd-ad-media:after,
  .dhd-spotlight-card .dhd-ad-media:after{
    height:46%!important;
  }

  .dhd-modern-card .dhd-ad-offer-badge,
  .dhd-spotlight-card .dhd-ad-offer-badge{
    display:none!important;
  }

  .dhd-ad-offer-mobile{
    display:block!important;
    padding:7px 10px!important;
    font-size:11px!important;
    line-height:1.2!important;
  }

  .dhd-modern-card .dhd-ad-content,
  .dhd-ad-content{
    padding:13px!important;
  }

  .dhd-modern-card .dhd-ad-content h3,
  .dhd-ad-content h3,
  .dhd-spotlight-card .dhd-ad-content h3{
    min-height:0!important;
    margin-bottom:6px!important;
    font-size:17px!important;
    line-height:1.15!important;
  }

  .dhd-modern-card .dhd-ad-tagline,
  .dhd-ad-tagline{
    min-height:0!important;
    margin-bottom:8px!important;
    font-size:13px!important;
    line-height:1.32!important;
    -webkit-line-clamp:2!important;
  }

  .dhd-ad-address,
  .dhd-modern-card .dhd-ad-address,
  .dhd-desktop-contact,
  .dhd-modern-card .dhd-desktop-contact{
    display:none!important;
  }

  .dhd-ad-actions,
  .dhd-modern-card .dhd-ad-actions{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
    width:100%!important;
    padding-top:10px!important;
  }

  .dhd-ad-btn,
  .dhd-modern-card .dhd-ad-btn{
    width:100%!important;
    min-width:0!important;
    min-height:36px!important;
    padding:8px 8px!important;
    border-radius:10px!important;
    font-size:11px!important;
    line-height:1!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  .dhd-ad-actions > .dhd-website-btn,
  .dhd-modern-card .dhd-ad-actions > .dhd-website-btn,
  .dhd-ad-actions > .dhd-ad-more,
  .dhd-modern-card .dhd-ad-actions > .dhd-ad-more{
    grid-column:auto!important;
  }

  .dhd-website-btn span,
  .dhd-ad-btn[data-dhd-click="website"] span{
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  .dhd-ad-category,
  .dhd-spotlight-card .dhd-ad-category{
    left:10px!important;
    bottom:10px!important;
    max-width:calc(100% - 20px)!important;
    padding:6px 8px!important;
    font-size:10px!important;
  }

  .dhd-spotlight-ribbon{
    left:10px!important;
    top:10px!important;
    padding:7px 9px!important;
    font-size:11px!important;
  }
}

@media(max-width:360px){
  .dhd-modern-card .dhd-ad-content h3,
  .dhd-ad-content h3,
  .dhd-spotlight-card .dhd-ad-content h3{
    font-size:16px!important;
  }

  .dhd-ad-btn,
  .dhd-modern-card .dhd-ad-btn{
    font-size:10px!important;
    padding-left:6px!important;
    padding-right:6px!important;
  }
}

/* Final card alignment fixes. */
@media(min-width:768px){
  .dhd-spotlight-grid{
    display:grid!important;
    grid-template-columns:repeat(auto-fit,minmax(310px,360px))!important;
    justify-content:start!important;
  }

  .dhd-spotlight-grid .dhd-card{
    max-width:360px!important;
  }
}

@media(max-width:767px){
  .dhd-ad-actions,
  .dhd-modern-card .dhd-ad-actions{
    display:grid!important;
    grid-template-columns:repeat(auto-fit,minmax(132px,1fr))!important;
  }

  .dhd-ad-actions > .dhd-ad-more,
  .dhd-modern-card .dhd-ad-actions > .dhd-ad-more,
  .dhd-ad-actions > .dhd-website-btn,
  .dhd-modern-card .dhd-ad-actions > .dhd-website-btn{
    grid-column:auto!important;
    width:100%!important;
    max-width:100%!important;
  }

  .dhd-ad-actions > .dhd-ad-btn:only-child,
  .dhd-modern-card .dhd-ad-actions > .dhd-ad-btn:only-child{
    grid-column:1/-1!important;
  }

  .dhd-ad-actions > .dhd-ad-btn:last-child:nth-child(odd),
  .dhd-modern-card .dhd-ad-actions > .dhd-ad-btn:last-child:nth-child(odd){
    grid-column:1/-1!important;
  }
}

/* Mobile action button tidy-up: use two compact columns when labels fit, with sensible full-width fallbacks. */
@media(max-width:767px){
  .dhd-card.dhd-ad-card .dhd-ad-actions,
  .dhd-card.dhd-modern-card .dhd-ad-actions{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    width:100%!important;
  }

  .dhd-card.dhd-ad-card .dhd-ad-actions > .dhd-ad-btn,
  .dhd-card.dhd-modern-card .dhd-ad-actions > .dhd-ad-btn{
    grid-column:auto!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }

  .dhd-card.dhd-ad-card .dhd-ad-actions > .dhd-ad-btn:only-child,
  .dhd-card.dhd-modern-card .dhd-ad-actions > .dhd-ad-btn:only-child{
    grid-column:1/-1!important;
  }

  .dhd-card.dhd-ad-card .dhd-ad-actions > .dhd-ad-btn:first-child:nth-last-child(3) ~ .dhd-ad-btn:last-child,
  .dhd-card.dhd-modern-card .dhd-ad-actions > .dhd-ad-btn:first-child:nth-last-child(3) ~ .dhd-ad-btn:last-child,
  .dhd-card.dhd-ad-card .dhd-ad-actions > .dhd-ad-btn:first-child:nth-last-child(5) ~ .dhd-ad-btn:last-child,
  .dhd-card.dhd-modern-card .dhd-ad-actions > .dhd-ad-btn:first-child:nth-last-child(5) ~ .dhd-ad-btn:last-child{
    grid-column:1/-1!important;
  }
}

@media(max-width:340px){
  .dhd-card.dhd-ad-card .dhd-ad-actions,
  .dhd-card.dhd-modern-card .dhd-ad-actions{
    grid-template-columns:1fr!important;
  }
}

/* Compact mobile list cards: horizontal layout for faster scanning. */
@media(max-width:767px){
  .dhd-grid,
  .dhd-spotlight-grid{
    gap:10px!important;
  }

  .dhd-card.dhd-ad-card,
  .dhd-card.dhd-modern-card{
    display:grid!important;
    grid-template-columns:minmax(104px,30vw) minmax(0,1fr)!important;
    grid-template-rows:auto 1fr!important;
    align-items:stretch!important;
    min-height:146px!important;
    border-radius:14px!important;
    overflow:hidden!important;
  }

  .dhd-card.dhd-ad-card .dhd-ad-media,
  .dhd-card.dhd-modern-card .dhd-ad-media,
  .dhd-spotlight-card .dhd-ad-media{
    grid-column:1!important;
    grid-row:1 / -1!important;
    width:100%!important;
    height:100%!important;
    min-height:146px!important;
    aspect-ratio:auto!important;
  }

  .dhd-card.dhd-ad-card .dhd-ad-media img,
  .dhd-card.dhd-modern-card .dhd-ad-media img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
  }

  .dhd-card.dhd-ad-card .dhd-ad-media:after,
  .dhd-card.dhd-modern-card .dhd-ad-media:after,
  .dhd-spotlight-card .dhd-ad-media:after{
    height:55%!important;
  }

  .dhd-card.dhd-ad-card .dhd-ad-offer-mobile,
  .dhd-card.dhd-modern-card .dhd-ad-offer-mobile{
    grid-column:2!important;
    grid-row:1!important;
    align-self:start!important;
    margin:8px 9px 0!important;
    padding:5px 7px!important;
    border-radius:8px!important;
    font-size:9px!important;
    line-height:1.15!important;
    text-align:left!important;
  }

  .dhd-card.dhd-ad-card .dhd-ad-content,
  .dhd-card.dhd-modern-card .dhd-ad-content{
    grid-column:2!important;
    grid-row:auto!important;
    min-width:0!important;
    padding:9px 9px 8px!important;
  }

  .dhd-card.dhd-ad-card .dhd-ad-offer-mobile + .dhd-ad-content,
  .dhd-card.dhd-modern-card .dhd-ad-offer-mobile + .dhd-ad-content{
    padding-top:7px!important;
  }

  .dhd-card.dhd-ad-card .dhd-ad-content h3,
  .dhd-card.dhd-modern-card .dhd-ad-content h3,
  .dhd-spotlight-card .dhd-ad-content h3{
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
    min-height:0!important;
    margin:0 0 4px!important;
    font-size:15px!important;
    line-height:1.12!important;
  }

  .dhd-card.dhd-ad-card .dhd-ad-tagline,
  .dhd-card.dhd-modern-card .dhd-ad-tagline{
    display:-webkit-box!important;
    -webkit-line-clamp:1!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
    min-height:0!important;
    margin:0 0 4px!important;
    font-size:11px!important;
    line-height:1.25!important;
  }

  .dhd-card.dhd-ad-card .dhd-ad-address,
  .dhd-card.dhd-modern-card .dhd-ad-address{
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
    min-height:0!important;
    margin:0 0 6px!important;
    color:#5d6b7c!important;
    font-size:9.5px!important;
    line-height:1.2!important;
  }

  .dhd-card.dhd-ad-card .dhd-ad-actions,
  .dhd-card.dhd-modern-card .dhd-ad-actions{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:5px!important;
    margin-top:auto!important;
    padding-top:6px!important;
  }

  .dhd-card.dhd-ad-card .dhd-ad-actions > .dhd-ad-btn,
  .dhd-card.dhd-modern-card .dhd-ad-actions > .dhd-ad-btn{
    min-height:29px!important;
    padding:6px 6px!important;
    border-radius:8px!important;
    font-size:10px!important;
    line-height:1!important;
  }

  .dhd-card.dhd-ad-card .dhd-ad-category,
  .dhd-card.dhd-modern-card .dhd-ad-category,
  .dhd-spotlight-card .dhd-ad-category{
    left:7px!important;
    right:7px!important;
    bottom:7px!important;
    max-width:calc(100% - 14px)!important;
    padding:5px 6px!important;
    font-size:9px!important;
    border-radius:8px!important;
  }

  .dhd-spotlight-ribbon{
    left:7px!important;
    top:7px!important;
    padding:5px 6px!important;
    font-size:9px!important;
    border-radius:8px!important;
  }
}

@media(max-width:390px){
  .dhd-card.dhd-ad-card,
  .dhd-card.dhd-modern-card{
    grid-template-columns:96px minmax(0,1fr)!important;
    min-height:142px!important;
  }

  .dhd-card.dhd-ad-card .dhd-ad-media,
  .dhd-card.dhd-modern-card .dhd-ad-media,
  .dhd-spotlight-card .dhd-ad-media{
    min-height:142px!important;
  }

  .dhd-card.dhd-ad-card .dhd-ad-content h3,
  .dhd-card.dhd-modern-card .dhd-ad-content h3,
  .dhd-spotlight-card .dhd-ad-content h3{
    font-size:14px!important;
  }

  .dhd-card.dhd-ad-card .dhd-ad-address,
  .dhd-card.dhd-modern-card .dhd-ad-address{
    -webkit-line-clamp:2!important;
    margin-bottom:5px!important;
    font-size:9px!important;
    line-height:1.18!important;
  }

  .dhd-card.dhd-ad-card .dhd-ad-actions,
  .dhd-card.dhd-modern-card .dhd-ad-actions{
    gap:5px!important;
  }

  .dhd-card.dhd-ad-card .dhd-ad-actions > .dhd-ad-btn,
  .dhd-card.dhd-modern-card .dhd-ad-actions > .dhd-ad-btn{
    font-size:9px!important;
    padding-left:5px!important;
    padding-right:5px!important;
  }
}

@media(max-width:340px){
  .dhd-card.dhd-ad-card,
  .dhd-card.dhd-modern-card{
    grid-template-columns:88px minmax(0,1fr)!important;
    min-height:138px!important;
  }

  .dhd-card.dhd-ad-card .dhd-ad-media,
  .dhd-card.dhd-modern-card .dhd-ad-media,
  .dhd-spotlight-card .dhd-ad-media{
    min-height:138px!important;
  }

  .dhd-card.dhd-ad-card .dhd-ad-address,
  .dhd-card.dhd-modern-card .dhd-ad-address{
    -webkit-line-clamp:1!important;
  }
}

.dhd-ad-actions > .dhd-ad-more,
.dhd-modern-card .dhd-ad-actions > .dhd-ad-more,
.dhd-spotlight-card .dhd-ad-actions > .dhd-ad-more{
  background:#071d33!important;
  color:#fff!important;
}

.dhd-ad-actions > .dhd-ad-more:hover,
.dhd-modern-card .dhd-ad-actions > .dhd-ad-more:hover,
.dhd-spotlight-card .dhd-ad-actions > .dhd-ad-more:hover{
  background:#0b2a49!important;
  color:#fff!important;
}

/* Final mobile layout guard for the private High Street signup page only. */
@media(max-width:700px){
  .dhd-highstreet-landing{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0 auto!important;
    padding-left:12px!important;
    padding-right:12px!important;
    overflow-x:hidden!important;
  }

  .dhd-highstreet-landing .dhd-highstreet-strip,
  .dhd-highstreet-landing .dhd-highstreet-form-section,
  .dhd-highstreet-landing .dhd-highstreet-two,
  .dhd-highstreet-landing .dhd-highstreet-social-row{
    display:grid!important;
    grid-template-columns:1fr!important;
    justify-items:stretch!important;
    width:100%!important;
  }

  .dhd-highstreet-landing .dhd-highstreet-panel,
  .dhd-highstreet-landing .dhd-highstreet-strip div,
  .dhd-highstreet-landing .dhd-highstreet-form-copy,
  .dhd-highstreet-landing .dhd-highstreet-form-card,
  .dhd-highstreet-landing .dhd-highstreet-websites{
    width:100%!important;
    max-width:560px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .dhd-highstreet-landing .dhd-highstreet-social-row input,
  .dhd-highstreet-landing .dhd-highstreet-social-row button,
  .dhd-highstreet-landing .dhd-highstreet-add-social{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:44px!important;
    padding:0 14px!important;
  }

  .dhd-highstreet-landing .dhd-highstreet-add-social{
    margin-top:10px!important;
  }
}

/* Absolute final contrast guard for the private High Street signup page only. */
.dhd-highstreet-landing .dhd-highstreet-hero h1,
.dhd-highstreet-landing .dhd-highstreet-hero p,
.dhd-highstreet-landing .dhd-highstreet-panel strong,
.dhd-highstreet-landing .dhd-highstreet-panel li{
  color:#ffffff!important;
}

.dhd-highstreet-landing .dhd-highstreet-form-copy h2,
.dhd-highstreet-landing .dhd-highstreet-websites h2,
.dhd-highstreet-landing .dhd-highstreet-strip strong,
.dhd-highstreet-landing .dhd-highstreet-field label,
.dhd-highstreet-landing .dhd-highstreet-check span{
  color:#071d33!important;
}

.dhd-highstreet-landing .dhd-highstreet-form-copy p,
.dhd-highstreet-landing .dhd-highstreet-websites p,
.dhd-highstreet-landing .dhd-highstreet-strip span{
  color:#475569!important;
}

.dhd-highstreet-landing .dhd-highstreet-form-copy .dhd-highstreet-kicker,
.dhd-highstreet-landing .dhd-highstreet-websites .dhd-highstreet-kicker{
  background:#e8f3ff!important;
  color:#071d33!important;
}
