/* DCP City :: the solution finder (Batch Z, 15 Oct 2026). SpecHub only.
   The project panel opens wide on a close-up of the chosen building; product groups are picture tiles.
   Markup comes from assets/js/city-1.js (showGroups / showPlaces). city-1.css is shared with www and stays as it is. */
#kcityPanel.kfind{width:min(900px,100vw)}
#kcityPanel.kfind .sidep__h{position:absolute;top:0;left:0;right:0;z-index:3;border:0;padding:16px 18px;justify-content:flex-end;pointer-events:none}
#kcityPanel.kfind .sidep__h > div{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
#kcityPanel.kfind .sidep__x{pointer-events:auto;background:rgba(255,255,255,.94);border-color:transparent;width:38px;height:38px;font-size:19px}
#kcityPanel.kfind .sidep__x:hover{background:#fff;border-color:#211D22}
#kcityPanel.kfind .sidep__b{padding:0}

/* the close-up */
.kfind__hero{position:relative;height:232px;background:#2A2527 center/cover no-repeat;display:flex;align-items:flex-end}
.kfind__hero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,18,19,0) 30%,rgba(20,18,19,.82))}
.kfind__hero--g::after{content:"";position:absolute;left:0;right:0;bottom:0;height:5px;background:var(--gc,#F06C38)}
.kfind__ht{position:relative;padding:0 32px 24px;color:#fff}
.kfind__ht small{display:block;font-size:13px;font-weight:600;color:rgba(255,255,255,.78);margin-bottom:4px}
.kfind__ht h2{font-size:34px;line-height:1.05;font-weight:800;letter-spacing:-.03em;margin:0;color:#fff}
.kfind__ht span{display:block;margin-top:8px;font-size:14px;color:rgba(255,255,255,.86)}
.kfind__in{padding:22px 32px 34px}

/* where you are: project, group, place */
.kfind__steps{list-style:none;margin:0 0 22px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}
.kfind__steps li{display:flex;align-items:center;gap:10px;padding:10px 12px 9px;border-top:3px solid #E9E2D9;font-size:13px;color:#6B6463;min-width:0}
.kfind__steps em{flex:none;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-style:normal;font-weight:800;font-size:12.5px;border:1.5px solid currentColor}
.kfind__steps span{min-width:0;display:flex;flex-direction:column;font-weight:600}
.kfind__steps b{font-weight:500;color:#6B6463;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kfind__steps li.done{border-top-color:#211D22;color:#211D22}
.kfind__steps li.done em{background:#211D22;border-color:#211D22;color:#fff}
.kfind__steps li.on{border-top-color:#F06C38;color:#211D22}
.kfind__steps li.on em{background:#F06C38;border-color:#F06C38;color:#fff}
.kfind__q{font-size:21px;font-weight:700;letter-spacing:-.02em;margin:0 0 16px;color:#211D22}
.kfind__none{font-size:14px;color:#6B6463}

/* product groups: picture tiles */
.kfind__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.kfind__g{display:grid;grid-template-columns:132px minmax(0,1fr);text-align:left;padding:0;border:1px solid #E9E2D9;background:#fff;cursor:pointer;
  font:inherit;color:#211D22;min-height:118px;position:relative;transition:border-color .15s,box-shadow .2s,transform .2s}
.kfind__g::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--gc);z-index:1}
.kfind__pic{position:relative;overflow:hidden;background:#F5EFE8}
.kfind__pic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.kfind__gt{display:flex;flex-direction:column;padding:14px 34px 13px 16px;min-width:0;position:relative}
.kfind__gt::after{content:"";position:absolute;right:14px;top:17px;width:9px;height:9px;border-top:2px solid #9A9290;border-right:2px solid #9A9290;transform:rotate(45deg);transition:border-color .15s,transform .2s}
.kfind__gt b{font-size:16px;font-weight:700;letter-spacing:-.01em;line-height:1.25}
.kfind__gt small{font-size:13px;font-weight:700;color:var(--gc);margin-top:3px}
.kfind__gt i{font-style:normal;font-size:13px;line-height:1.45;color:#6B6463;margin-top:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.kfind__g:hover,.kfind__g:focus-visible{border-color:#211D22;box-shadow:0 14px 30px -14px rgba(33,29,34,.35);outline:none}
.kfind__g:hover .kfind__pic img,.kfind__g:focus-visible .kfind__pic img{transform:scale(1.06)}
.kfind__g:hover .kfind__gt::after{border-color:#F06C38;transform:translateX(3px) rotate(45deg)}
.kfind__all{display:inline-block;margin-top:20px;font-size:14px;font-weight:700;color:#D9561F}

/* places */
.kfind__back{border:0;background:none;font:600 14px Inter,sans-serif;color:#D9561F;cursor:pointer;padding:0;margin:0 0 16px;display:inline-flex;align-items:center;gap:8px}
.kfind__back::before{content:"";width:8px;height:8px;border-left:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg)}
.kfind__places{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.kfind__p{display:flex;flex-direction:column;gap:5px;padding:16px 40px 15px 18px;border:1px solid #E9E2D9;border-left:1px solid #E0D7CC;color:#211D22;text-decoration:none;position:relative;transition:border-color .15s,box-shadow .2s}
.kfind__p::after{content:"";position:absolute;right:16px;top:20px;width:9px;height:9px;border-top:2px solid #9A9290;border-right:2px solid #9A9290;transform:rotate(45deg)}
.kfind__p b{font-size:16px;font-weight:700;letter-spacing:-.01em}
.kfind__p span{font-size:13.5px;line-height:1.5;color:#6B6463}
.kfind__p small{font-size:12.5px;font-weight:700;color:#211D22;margin-top:auto;padding-top:4px}
.kfind__p:hover,.kfind__p:focus-visible{border-color:#211D22;border-left-color:var(--gc);box-shadow:0 14px 30px -16px rgba(33,29,34,.35);outline:none}
.kfind__p:hover::after{border-color:#F06C38}

@media (max-width:720px){
  .kfind__hero{height:170px}
  .kfind__ht{padding:0 20px 18px}.kfind__ht h2{font-size:26px}
  .kfind__in{padding:18px 18px 28px}
  .kfind__grid,.kfind__places{grid-template-columns:1fr}
  .kfind__g{grid-template-columns:104px minmax(0,1fr);min-height:104px}
  .kfind__steps li{padding:8px 6px;gap:6px}.kfind__steps b{display:none}
}
@media (prefers-reduced-motion:reduce){.kfind__pic img,.kfind__g,.kfind__p{transition:none}}
