.dgcl {
  --dgcl-primary: #2563eb;
  --dgcl-green: #14532d;
  --dgcl-border: #dbe4ee;
  box-sizing: border-box;
  width: 100%;
  max-width: 1440px;
  margin: 24px auto;
  padding: clamp(24px, 4vw, 40px);
  border: 1px solid var(--dgcl-border);
  border-radius: 20px;
  background: #fff;
  color: #142033;
  box-shadow: 0 14px 42px rgba(15, 23, 42, .08);
}
.dgcl *, .dgcl *::before, .dgcl *::after { box-sizing: border-box; }
.dgcl .dgcl__header { display:flex!important; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:22px 32px; margin:0 0 30px!important; }
.dgcl .dgcl__header>div { flex:1 1 680px; min-width:0; }
.dgcl .dgcl__title { margin:0 0 12px!important; color:var(--dgcl-green); font-size:clamp(2.2rem,4.7vw,3.65rem); line-height:1.05; letter-spacing:-.035em; }
.dgcl .dgcl__intro { max-width:850px; margin:0!important; color:#475569; font-size:1rem; line-height:1.65; }
.dgcl .dgcl__locate { flex:0 0 auto; }
.dgcl .button { display:inline-flex!important; align-items:center; justify-content:center; gap:8px; min-height:48px; margin:0!important; padding:12px 24px!important; border:1px solid #cbd8e8!important; border-radius:999px!important; background:#fff!important; color:#142033!important; text-decoration:none!important; font-size:.84rem; font-weight:800; line-height:1.1; text-transform:uppercase; letter-spacing:.01em; cursor:pointer; }
.dgcl .button:hover { transform:translateY(-1px); box-shadow:0 7px 18px rgba(15,23,42,.08); }
.dgcl .button-primary, .dgcl .dgcl__submit { border-color:var(--dgcl-primary)!important; background:var(--dgcl-primary)!important; color:#fff!important; }
.dgcl .dgcl__form { display:grid!important; grid-template-columns:repeat(12,minmax(0,1fr)); column-gap:18px; row-gap:20px; width:100%; margin:0!important; padding:clamp(20px,3vw,28px)!important; border:1px solid #edf2f7!important; border-radius:15px; background:#f8fafc; }
.dgcl .dgcl__form>label { display:flex!important; flex-direction:column!important; gap:8px!important; grid-column:span 4; min-width:0; margin:0!important; padding:0!important; font-size:.9rem; font-weight:700; line-height:1.35; }
.dgcl .dgcl__form input:not([type=checkbox]), .dgcl .dgcl__form select { display:block!important; width:100%!important; min-width:0!important; min-height:50px!important; margin:0!important; padding:11px 14px!important; border:1px solid #cbd8e8!important; border-radius:9px!important; background:#fff!important; color:#172033!important; font:inherit; line-height:1.2!important; }
.dgcl .dgcl__form input:focus, .dgcl .dgcl__form select:focus { outline:3px solid color-mix(in srgb,var(--dgcl-primary) 18%,transparent)!important; outline-offset:1px; border-color:var(--dgcl-primary)!important; }
.dgcl .dgcl__form-actions { display:flex!important; flex-wrap:wrap; align-items:center; gap:16px 28px; grid-column:1/-1; min-width:0; padding-top:2px; }
.dgcl .dgcl__options { display:flex!important; flex-wrap:wrap; align-items:center; gap:16px 30px; min-width:0; }
.dgcl .dgcl__check { display:inline-flex!important; flex-direction:row!important; align-items:center!important; gap:9px!important; width:auto!important; margin:0!important; padding:0!important; font-size:.95rem; font-weight:500; line-height:1.4; white-space:nowrap; cursor:pointer; }
.dgcl .dgcl__check input[type=checkbox] { flex:0 0 auto; width:19px!important; height:19px!important; min-height:0!important; margin:0!important; accent-color:var(--dgcl-primary); }
.dgcl .dgcl__submit { min-width:236px; }
.dgcl .dgcl__summarybar { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:14px 24px; margin:24px 0 14px; }
.dgcl .dgcl__status { min-height:24px; margin:0!important; color:#334155; font-size:.98rem; font-weight:600; line-height:1.55; }
.dgcl .dgcl__results { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.dgcl .dgcl-card { display:flex; flex-direction:column; min-width:0; overflow:hidden; border:1px solid #dbe4ee; border-radius:13px; background:#fff; box-shadow:0 3px 10px rgba(15,23,42,.035); }
.dgcl .dgcl-card__image { position:relative; min-height:150px; background:
  radial-gradient(circle at 68% 72%, rgba(250,204,21,.9) 0 5px, transparent 6px),
  linear-gradient(160deg, transparent 0 64%, rgba(68,87,40,.72) 65% 100%),
  radial-gradient(ellipse at 50% 110%, #71935c 0 30%, transparent 31%),
  linear-gradient(135deg,#224f35,#5f8352 48%,#b3cb8f); }
.dgcl .dgcl-card:nth-child(4n+2) .dgcl-card__image { background:linear-gradient(155deg,rgba(23,55,39,.1),rgba(20,83,45,.15)),linear-gradient(145deg,#163e2b,#789467 55%,#d3dfb4); }
.dgcl .dgcl-card:nth-child(4n+3) .dgcl-card__image { background:linear-gradient(170deg,rgba(255,255,255,.15),transparent 50%),linear-gradient(135deg,#4c723f,#a4bd7a 58%,#dbe8c2); }
.dgcl .dgcl-card:nth-child(4n) .dgcl-card__image { background:linear-gradient(145deg,rgba(0,0,0,.15),transparent),linear-gradient(130deg,#183c2a,#587a4a 55%,#acc68e); }
.dgcl .dgcl-card__holes { position:absolute; top:12px; right:12px; padding:5px 8px; border:1px solid rgba(255,255,255,.7); border-radius:6px; background:rgba(20,83,45,.9); color:#fff; font-size:.78rem; font-weight:800; line-height:1; text-transform:uppercase; }
.dgcl .dgcl-card__body { display:flex; flex:1; flex-direction:column; padding:14px 16px 16px; }
.dgcl .dgcl-card h3 { margin:0 0 4px!important; color:var(--dgcl-green); font-size:1.13rem; line-height:1.25; }
.dgcl .dgcl-card__place { margin:0!important; color:#536276; font-size:.9rem; line-height:1.45; }
.dgcl .dgcl-card__badges { display:flex; flex-wrap:wrap; gap:6px; margin:10px 0; }
.dgcl .dgcl-card__badges span { padding:4px 7px; border-radius:5px; background:#dcfce7; color:#08713a; font-size:.76rem; font-weight:700; line-height:1.2; }
.dgcl .dgcl-card__meta { margin:0!important; color:#475569; font-size:.88rem; line-height:1.55; }
.dgcl .dgcl-card__actions { display:flex; flex-wrap:wrap; gap:14px 22px; margin-top:auto; padding-top:14px; border-top:1px solid #eef2f6; }
.dgcl .dgcl-card__actions a { color:#0f6f73; font-size:.88rem; font-weight:700; text-decoration:none; }
.dgcl .dgcl__footer-actions { display:flex; flex-direction:column; align-items:center; gap:0; margin-top:22px; }
.dgcl .dgcl__more { min-width:280px; }
.dgcl .dgcl__count-note { margin:0!important; color:#64748b; font-size:.86rem; line-height:1.5; }
.dgcl .dgcl__data-notes { display:flex; flex-wrap:wrap; align-items:flex-start; justify-content:space-between; gap:12px 24px; margin-top:20px; padding-top:16px; border-top:1px solid #eef2f6; }
.dgcl .dgcl__verification-note, .dgcl .dgcl__attribution { margin:0!important; color:#64748b; font-size:.82rem; line-height:1.65; }
.dgcl .dgcl__verification-note { flex:1 1 650px; }
.dgcl .dgcl__attribution { flex:0 1 auto; }
.dgcl .dgcl__attribution a { color:#16834a; }
.dgcl .dgcl__lat, .dgcl .dgcl__lon { display:none!important; }
@media(max-width:1100px){.dgcl .dgcl__results{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:900px){.dgcl .dgcl__form>label{grid-column:span 6}.dgcl .dgcl__results{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:620px){.dgcl{padding:18px;border-radius:14px}.dgcl .dgcl__header{align-items:flex-start}.dgcl .dgcl__locate{width:100%}.dgcl .dgcl__form{padding:16px!important}.dgcl .dgcl__form>label{grid-column:1/-1}.dgcl .dgcl__form-actions{align-items:stretch}.dgcl .dgcl__options{display:grid!important;gap:12px}.dgcl .dgcl__check{white-space:normal}.dgcl .dgcl__submit{width:100%;min-width:0}.dgcl .dgcl__results{grid-template-columns:1fr}.dgcl .dgcl__more{width:100%;min-width:0}.dgcl .dgcl__data-notes{display:block}.dgcl .dgcl__attribution{margin-top:10px!important}}
