/* Escrow page and provider profiles (templates/escrow). Builds on site.css: page-head, section, stepper. */

/* Hero */
.esc-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:32px;align-items:center}
.esc-hero-copy{max-width:540px}
.esc-hero-copy .lead{margin-bottom:20px}
.esc-hero-art{justify-self:end;width:100%;max-width:420px}
.esc-hero-art img{display:block;width:100%;height:auto}

/* Steps: the stepper sizes inline SVGs; these are images */
.esc-steps .step-art img{display:block;width:104px;height:auto}

/* Provider cards */
.esc-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap)}
.esc-card{display:flex;flex-direction:column;gap:10px;min-width:0;padding:16px;background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);transition:border-color .15s,box-shadow .15s}
.esc-card:hover{border-color:var(--violet-100);box-shadow:var(--shadow-md)}
.esc-card-head{display:flex;align-items:center;gap:12px;min-width:0}
.esc-card-head .esc-id{gap:3px}
.esc-id{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}
.esc-name{font-size:1rem;margin:0;line-height:1.3;overflow-wrap:anywhere}
.esc-name a{color:var(--ink)}
.esc-tagline{font-size:var(--fs-sm);margin:0;overflow-wrap:anywhere}
.esc-card-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:2px}
.esc-view{display:inline-flex;align-items:center;gap:4px;min-height:32px;margin-left:auto;font-size:var(--fs-sm);font-weight:700;color:var(--violet)}
.esc-view .i{transition:transform .15s}
.esc-view:hover .i{transform:translateX(2px)}

/* Avatar: a photo, or the provider's initials */
.esc-av{flex:none;display:grid;place-items:center;width:48px;height:48px;border-radius:50%;object-fit:cover;background:var(--violet-50);color:var(--violet);font-weight:800;font-size:.9375rem;letter-spacing:.02em;border:1px solid var(--violet-100)}
.esc-av-lg{width:72px;height:72px;font-size:1.375rem}

/* Facts (fee, payment methods, languages, website) */
.esc-facts{margin:0;display:grid;gap:8px}
.esc-facts div{display:grid;grid-template-columns:minmax(0,9.5em) minmax(0,1fr);gap:10px;font-size:var(--fs-sm)}
.esc-facts dt{color:var(--muted);font-weight:600}
.esc-facts dd{margin:0;color:var(--ink);overflow-wrap:anywhere}
.esc-card .esc-facts{gap:6px;padding-top:10px;border-top:1px solid var(--border)}
.esc-card .esc-facts div{grid-template-columns:minmax(0,8.5em) minmax(0,1fr);font-size:var(--fs-xs)}

/* Telegram handles */
.esc-handles{display:flex;flex-wrap:wrap;gap:8px;max-width:100%}
.esc-tg{max-width:100%}
.esc-tg .i{color:var(--violet)}

/* Empty state */
.esc-empty{display:grid;grid-template-columns:36px minmax(0,1fr);gap:14px;align-items:start;padding:clamp(18px,3vw,28px);background:var(--surface);border:1px dashed var(--border-strong);border-radius:var(--r-lg)}
.esc-empty h3{font-size:var(--fs-h4);margin:6px 0 4px}
.esc-empty p{font-size:var(--fs-sm);max-width:60ch;margin:0 0 14px}

/* Safety box */
.esc-safe-wrap{padding-bottom:var(--section)}
.esc-safe{background:var(--amber-50);border:1px solid #F6DDB0;border-radius:var(--r-lg);padding:clamp(18px,3vw,28px)}
.esc-safe-head{display:flex;align-items:center;gap:14px;margin-bottom:14px}
.storefront .esc-safe-icon{background:#fff;color:var(--amber-700)}
.esc-safe-head .eyebrow{color:var(--amber-700);margin-bottom:2px}
.esc-safe-head h2{font-size:1.25rem;margin:0}
.esc-safe-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px 28px}
.esc-safe-list li{display:flex;gap:10px;align-items:flex-start;font-size:var(--fs-sm)}
.esc-safe-list .i{margin-top:2px;color:var(--amber-700);stroke-width:2.6}
.esc-safe-list strong{color:var(--ink)}

/* Provider profile: one compact card */
.esc-profile-wrap{padding:clamp(20px,3vw,36px) 0 0}
.esc-profile{max-width:760px}
.esc-back{display:inline-flex;align-items:center;gap:4px;min-height:36px;font-size:var(--fs-sm);font-weight:700;color:var(--text);margin-bottom:10px}
.esc-back:hover{color:var(--violet);text-decoration:none}
.esc-pcard{display:grid;gap:0;min-width:0;background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);overflow:hidden}
.esc-pcard-head{display:flex;align-items:center;gap:16px;min-width:0;padding:20px 20px 0}
.esc-pcard-head .eyebrow{margin-bottom:0}
.esc-pcard-name{font-size:clamp(1.375rem,1.1rem + .9vw,1.75rem);line-height:1.2;letter-spacing:-.02em;margin:0;overflow-wrap:anywhere}
.esc-pcard-tagline{margin:12px 0 0;padding:0 20px;font-size:var(--fs-body);color:var(--text);max-width:60ch;overflow-wrap:anywhere}
.esc-pcard-sec{min-width:0;margin-top:16px;padding:16px 20px 0;border-top:1px solid var(--border)}
.esc-pcard-sec:last-child{padding-bottom:20px}
.esc-pcard-h{font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 10px}
.esc-pcard-note{font-size:var(--fs-sm);color:var(--muted);margin:10px 0 0;max-width:62ch}
.esc-pcard-h+.esc-pcard-note{margin-top:0}
.esc-pcard-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px}
.esc-pcard-facts div{grid-template-columns:1fr;gap:1px}
.esc-pcard-facts dt{font-size:var(--fs-xs)}
.esc-pcard-facts dd{font-weight:600}
.esc-about p{font-size:var(--fs-sm);overflow-wrap:anywhere;max-width:68ch}
.esc-about p:last-child{margin-bottom:0}
.esc-profile .esc-safe-list{grid-template-columns:1fr}

@media (max-width:959px){
  .esc-hero-grid{grid-template-columns:1fr;gap:24px}
  .esc-hero-art{justify-self:start;max-width:340px}
  .esc-steps .step-art img{width:130px}
  .esc-grid{grid-template-columns:1fr 1fr}
  .esc-safe-list{grid-template-columns:1fr}
}
@media (max-width:640px){
  .esc-hero-art{max-width:280px}
  .esc-steps .step-art img{width:62px}
  .esc-grid{grid-template-columns:1fr}
  .esc-card{padding:14px}
  .esc-pcard-head{gap:14px;padding:16px 16px 0}
  .esc-av-lg{width:64px;height:64px;font-size:1.25rem}
  .esc-pcard-tagline{padding:0 16px;font-size:var(--fs-sm)}
  .esc-pcard-sec{padding:14px 16px 0;margin-top:14px}
  .esc-pcard-sec:last-child{padding-bottom:16px}
  .esc-pcard-facts{grid-template-columns:1fr}
  .esc-handles .esc-tg{min-height:40px}
  .esc-view{min-height:40px}
  .esc-back{min-height:40px;margin-bottom:6px}
  .esc-safe{padding:16px}
  .esc-safe-head{gap:12px}
  .esc-safe-head h2{font-size:1.125rem}
}
.esc-verified .i{width:13px;height:13px;stroke-width:2.8}
