/* BSK agency single page 1.3.0. Scoped to .bskpl. Loads on the agents page only, after bskpl-agencies.css. */

.bskpl-ag-page { padding-bottom: 40px; }

/* Header: banner, identity and actions */
.bskpl-ag-top { position: relative; margin-top: 12px; border: 1px solid var(--line); border-radius: var(--radius-lg); background: #fff; overflow: hidden; }
.bskpl-ag-banner { height: 160px; background: linear-gradient(120deg, #e4f5e6 0%, #f3fbf3 55%, #ffffff 100%); }
.bskpl-ag-banner-img { display: block; width: 100%; height: 100%; object-fit: cover; }
.bskpl-ag-id { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 18px; align-items: start; padding: 0 22px 20px; }
.bskpl-ag-logo-lg { width: 112px; height: 112px; margin-top: -44px; display: grid; place-items: center; border: 4px solid #fff; border-radius: var(--radius-lg); background: #fff; box-shadow: 0 2px 10px rgba(16, 24, 40, .12); overflow: hidden; }
.bskpl-ag-logo-lg img { width: 100%; height: 100%; object-fit: contain; padding: 6px; }
.bskpl-ag-initials { font-size: 34px; font-weight: 900; color: var(--g); }
.bskpl-ag-idtext { min-width: 0; display: grid; gap: 6px; padding-top: 14px; }
.bskpl-ag-pills { display: flex; flex-wrap: wrap; gap: 6px; }
.bskpl-ag-pills .bskpl-ag-badge { position: static; }
.bskpl-ag-idtext h1 { font-size: 28px; line-height: 1.2; font-weight: 900; overflow-wrap: anywhere; }
.bskpl-ag-loc, .bskpl-ag-counts { display: flex; align-items: center; gap: 6px; color: var(--muted); font-size: 15px; }
.bskpl-ag-loc .bskpl-i { width: 16px; height: 16px; color: var(--g); }
.bskpl-ag-cta { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; padding-top: 14px; }
.bskpl-ag-cta .bskpl-btn { min-height: 42px; }

/* Body: main column and the enquiry form */
.bskpl-ag-grid2 { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 18px; margin-top: 16px; align-items: start; }
.bskpl-ag-main { display: grid; gap: 14px; min-width: 0; }
.bskpl-ag-side { position: sticky; top: 16px; min-width: 0; }
.bskpl-ag-video { position: relative; aspect-ratio: 16 / 9; border-radius: var(--radius); overflow: hidden; background: #111; }
.bskpl-ag-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

/* Team */
.bskpl-ag-team { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 12px; }
.bskpl-ag-person { display: grid; gap: 12px; padding: 14px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; min-width: 0; }
.bskpl-ag-personhead { display: flex; align-items: center; gap: 12px; min-width: 0; }
.bskpl-ag-personhead > div { min-width: 0; overflow-wrap: anywhere; }
.bskpl-ag-personhead small { color: var(--muted); }
.bskpl-ag-personbtns { display: flex; flex-wrap: wrap; gap: 8px; }
.bskpl-ag-personbtns .bskpl-btn { min-height: 38px; padding: 0 12px; font-size: 14px; }

/* Listings section */
.bskpl-ag-listhead { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; margin-bottom: 12px; }
.bskpl-ag-listhead h2 { font-size: 20px; font-weight: 900; }
.bskpl-ag-none { color: var(--muted); }

/* Phones and tablets */
@media (max-width: 900px) {
  .bskpl-ag-id { grid-template-columns: auto minmax(0, 1fr); }
  .bskpl-ag-cta { grid-column: 1 / -1; justify-content: flex-start; padding-top: 0; }
  .bskpl-ag-grid2 { grid-template-columns: 1fr; }
  .bskpl-ag-side { position: static; }
}
@media (max-width: 720px) {
  .bskpl-ag-banner { height: 110px; }
  .bskpl-ag-id { grid-template-columns: 1fr; padding: 0 16px 16px; gap: 8px; }
  .bskpl-ag-logo-lg { width: 92px; height: 92px; margin-top: -36px; }
  .bskpl-ag-idtext { padding-top: 0; }
  .bskpl-ag-idtext h1 { font-size: 23px; }
  .bskpl-ag-cta { display: grid; grid-template-columns: 1fr 1fr; padding-top: 6px; }
  .bskpl-ag-cta .bskpl-btn { justify-content: center; }
  .bskpl-ag-team { grid-template-columns: 1fr; }
}
