/* ============================================================
   BEYENI.MA — COMPONENTS.CSS
   Cards, badges, filters, grids, agents, cities, tools, footer
   ============================================================ */

/* ─── Cards ─── */
.byn-card{
  background:#fff;
  border-radius:var(--byn-radius-lg);
  overflow:hidden;
  border:1.5px solid var(--byn-border);
  transition:.3s;
  cursor:pointer;
  position:relative;
}
.byn-card:hover{
  transform:translateY(-6px);
  box-shadow:0 24px 56px rgba(93,65,255,.12);
  border-color:rgba(93,65,255,.2);
}
.byn-card__img{
  height:200px;
  position:relative;
  overflow:hidden;
}
.byn-card__img img{
  width:100%;height:100%;
  object-fit:cover;
  transition:.5s;
}
.byn-card:hover .byn-card__img img{transform:scale(1.06)}
.byn-card__overlay{
  position:absolute;inset:0;
  background:linear-gradient(to top,rgba(13,19,33,.4),transparent 50%);
}
.byn-card__body{padding:16px 18px}
.byn-card__price{
  font-size:20px;
  font-weight:900;
  color:var(--byn-primary);
  letter-spacing:-.5px;
  margin-bottom:3px;
}
.byn-card__price--green{color:#10b981}
.byn-card__title{
  font-size:13.5px;
  font-weight:600;
  color:var(--byn-dark);
  margin-bottom:7px;
  line-height:1.35;
}
.byn-card__location{
  font-size:12px;
  color:var(--byn-gray);
  display:flex;
  align-items:center;
  gap:4px;
  margin-bottom:12px;
}
.byn-card__specs{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border:1.5px solid var(--byn-border);
  border-radius:10px;
  overflow:hidden;
  margin-bottom:12px;
}
.byn-card__spec{
  padding:9px 4px;
  text-align:center;
  border-right:1.5px solid var(--byn-border);
}
.byn-card__spec:last-child{border-right:none}
.byn-card__spec strong{
  display:block;
  font-size:12.5px;
  font-weight:800;
  color:var(--byn-dark);
}
.byn-card__spec span{
  font-size:10px;
  color:var(--byn-gray);
  font-weight:500;
}
.byn-card__agent{
  display:flex;
  align-items:center;
  gap:9px;
  padding-top:12px;
  border-top:1.5px solid var(--byn-border);
}
.byn-card__avatar{
  width:30px;height:30px;
  border-radius:9px;
  display:grid;place-items:center;
  color:#fff;
  font-size:11px;font-weight:800;
  flex-shrink:0;
}
.byn-card__agent-name strong{
  display:block;
  font-size:12.5px;
  font-weight:700;
  color:var(--byn-dark);
}
.byn-card__agent-name span{
  font-size:11px;
  color:var(--byn-gray);
}

/* ─── Featured card (à la une) ─── */
.byn-card--featured{
  border-color:rgba(245,158,11,.3);
  background:linear-gradient(to bottom,#fffdf5,#fff);
}
.byn-card--featured::before{
  content:'';
  position:absolute;top:0;left:0;right:0;
  height:3px;
  background:linear-gradient(90deg,#f59e0b,#fbbf24);
  z-index:2;
}

/* ─── Badges ─── */
.byn-badge{
  font-size:11px;
  font-weight:800;
  padding:4px 11px;
  border-radius:7px;
  display:inline-flex;
  align-items:center;
  gap:4px;
}
.byn-badge--sell{background:rgba(93,65,255,.9);color:#fff}
.byn-badge--rent{background:rgba(16,185,129,.9);color:#fff}
.byn-badge--new{background:rgba(245,158,11,.9);color:#fff}
.byn-badge--featured{background:rgba(93,65,255,.9);color:#fff}
.byn-badge--exclusive{background:#EEF2FF;color:var(--byn-primary)}
.byn-badge--independent{background:#F0FDF4;color:#16a34a}
.byn-badge--agency{background:#FFF7ED;color:#ea580c}
.byn-badge--promoter{background:#EFF6FF;color:#0ea5e9}
.byn-badge--franchisor{background:#FDF4FF;color:#9333ea}

.byn-card__fav{
  position:absolute;
  top:12px;right:12px;
  width:34px;height:34px;
  background:rgba(255,255,255,.88);
  border-radius:50%;
  display:grid;place-items:center;
  font-size:14px;cursor:pointer;
  transition:.25s;
  border:1.5px solid rgba(255,255,255,.5);
  z-index:3;
}
.byn-card__fav:hover{transform:scale(1.1)}

/* ─── Grids ─── */
.byn-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
}
.byn-grid--4{grid-template-columns:repeat(4,1fr)}

/* ─── View buttons ─── */
.byn-view-btn{
  width:36px;height:36px;
  border-radius:8px;
  border:1.5px solid rgba(255,255,255,.1);
  background:transparent;
  color:rgba(255,255,255,.5);
  cursor:pointer;
  display:grid;place-items:center;
  font-size:14px;transition:.2s;
}
.byn-view-btn.on{
  background:rgba(93,65,255,.2);
  border-color:rgba(93,65,255,.4);
  color:var(--byn-primary-2);
}
.byn-view-btn:hover{
  border-color:rgba(93,65,255,.3);
  color:var(--byn-primary-2);
}

/* ─── Filters ─── */
.byn-filters{
  background:rgba(255,255,255,.04);
  border-top:1px solid rgba(255,255,255,.06);
  padding:16px 0;
}
.byn-filters__inner{
  display:flex;
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
}
.byn-type-tabs{
  display:flex;gap:4px;
  background:rgba(255,255,255,.06);
  border-radius:10px;
  padding:4px;
}
.byn-type-tab{
  padding:7px 14px;
  border-radius:7px;
  font-size:13px;
  font-weight:600;
  color:rgba(255,255,255,.5);
  cursor:pointer;
  transition:.2s;
  border:none;
  background:transparent;
  font-family:var(--byn-font);
}
.byn-type-tab.on{
  background:var(--byn-primary);
  color:#fff;
  box-shadow:0 4px 12px rgba(93,65,255,.35);
}
.byn-type-tab:hover:not(.on){color:rgba(255,255,255,.8)}

.byn-filter-sep{
  width:1px;height:28px;
  background:rgba(255,255,255,.08);
  flex-shrink:0;
}

/* Dropdown */
.byn-fdd{position:relative}
.byn-fdd__btn{
  display:flex;align-items:center;gap:6px;
  padding:8px 14px;
  border-radius:8px;
  border:1.5px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.04);
  color:rgba(255,255,255,.7);
  font-size:13px;font-weight:600;
  cursor:pointer;
  font-family:var(--byn-font);
  transition:.2s;
  white-space:nowrap;
}
.byn-fdd__btn:hover,.byn-fdd__btn.on{
  border-color:rgba(93,65,255,.4);
  background:rgba(93,65,255,.1);
  color:#fff;
}
.byn-fdd__arrow{font-size:10px;opacity:.5;transition:.2s}
.byn-fdd__btn.on .byn-fdd__arrow{transform:rotate(180deg)}
.byn-fdd__menu{
  position:absolute;
  top:calc(100% + 8px);left:0;
  min-width:200px;
  background:#1a1f2e;
  border:1px solid rgba(255,255,255,.08);
  border-radius:12px;
  padding:8px;
  box-shadow:0 20px 50px rgba(0,0,0,.4);
  z-index:50;
  display:none;
}
.byn-fdd__menu.open{display:block}
.byn-fdd__item{
  display:flex;align-items:center;gap:8px;
  padding:8px 10px;
  border-radius:8px;
  font-size:13px;
  color:rgba(255,255,255,.6);
  cursor:pointer;
  transition:.2s;
  font-weight:500;
}
.byn-fdd__item:hover{
  background:rgba(93,65,255,.15);
  color:#fff;
}
.byn-fdd__item input[type="checkbox"]{accent-color:var(--byn-primary);width:14px;height:14px}

/* Active filters */
.byn-active-filters{
  display:flex;gap:6px;
  flex-wrap:wrap;
  padding:12px 0 0;
}
.byn-af-tag{
  display:flex;align-items:center;gap:6px;
  background:rgba(93,65,255,.15);
  border:1px solid rgba(93,65,255,.25);
  color:var(--byn-primary-2);
  font-size:12px;font-weight:600;
  padding:4px 10px 4px 12px;
  border-radius:50px;
}
.byn-af-tag button{
  background:none;border:none;
  color:var(--byn-primary-2);
  cursor:pointer;font-size:13px;
  line-height:1;padding:0;opacity:.7;
}
.byn-af-tag button:hover{opacity:1}
.byn-af-clear{
  font-size:12px;
  font-weight:600;
  cursor:pointer;
  padding:4px 10px;
  border:1px solid rgba(255,255,255,.06);
  border-radius:50px;
  background:none;
  font-family:var(--byn-font);
  color:rgba(255,255,255,.3);
  transition:.2s;
}
.byn-af-clear:hover{color:rgba(255,255,255,.6)}

/* Sort bar */
.byn-sort-bar{
  padding:16px 5%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  background:#fff;
  border-bottom:1.5px solid var(--byn-border);
}
.byn-result-count{font-size:14px;font-weight:600;color:var(--byn-dark)}
.byn-result-count em{color:var(--byn-primary);font-style:normal}
.byn-sort-right{display:flex;align-items:center;gap:10px}
.byn-sort-label{font-size:13px;color:var(--byn-gray);font-weight:500}
.byn-sort-select{
  padding:8px 12px;
  border:1.5px solid var(--byn-border);
  border-radius:8px;
  font-size:13px;font-weight:600;
  color:var(--byn-dark);
  font-family:var(--byn-font);
  outline:none;
  background:#fff;cursor:pointer;
}
.byn-sort-select:focus{border-color:var(--byn-primary)}

/* ─── Pagination ─── */
.byn-pagination{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:40px 0 20px;
}
.byn-page-btn{
  width:38px;height:38px;
  border-radius:9px;
  display:grid;place-items:center;
  font-size:13.5px;font-weight:700;
  cursor:pointer;
  border:1.5px solid var(--byn-border);
  background:#fff;
  color:var(--byn-gray);
  transition:.2s;
  font-family:var(--byn-font);
}
.byn-page-btn:hover{border-color:var(--byn-primary);color:var(--byn-primary)}
.byn-page-btn.on{
  background:var(--byn-primary);
  border-color:var(--byn-primary);
  color:#fff;
}
.byn-page-btn.dots{border:none;background:none;cursor:default;color:var(--byn-gray)}

/* ─── Agent cards ─── */
.byn-card--agent{text-align:center}
.byn-agent__avatar{
  width:72px;height:72px;
  border-radius:50%;
  background:linear-gradient(135deg,var(--byn-primary),var(--byn-primary-2));
  display:grid;place-items:center;
  color:#fff;
  font-size:24px;font-weight:800;
  margin:0 auto 12px;
}
.byn-agent__name{
  font-size:16px;font-weight:700;
  color:var(--byn-dark);
  margin:8px 0 4px;
}
.byn-agent__city{
  font-size:13px;
  color:var(--byn-gray);
  margin-bottom:12px;
}
.byn-agent__score{margin:12px 0}
.byn-agent__score-value{
  font-size:32px;font-weight:900;
  color:var(--byn-primary);
}
.byn-agent__score-label{
  font-size:13px;color:var(--byn-gray);
}
.byn-agent__stats{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border:1.5px solid var(--byn-border);
  border-radius:10px;
  overflow:hidden;
  margin:12px 0;
}
.byn-agent__stats div{
  padding:8px 4px;
  border-right:1.5px solid var(--byn-border);
}
.byn-agent__stats div:last-child{border-right:none}
.byn-agent__stats strong{
  display:block;font-size:14px;font-weight:800;
}
.byn-agent__stats span{
  font-size:11px;color:var(--byn-gray);
}

/* ─── Project cards ─── */
.byn-card--project .byn-card__price{
  font-size:16px;font-weight:600;color:var(--byn-gray);
}
.byn-card--project .byn-card__price strong{
  font-size:20px;font-weight:900;color:var(--byn-primary);
}
.byn-project__progress{
  position:absolute;
  bottom:0;left:0;right:0;
  height:4px;
  background:rgba(255,255,255,.2);
}
.byn-project__progress-bar{
  height:100%;
  background:var(--byn-success);
  transition:width .3s;
}

/* ─── Franchise cards ─── */
.byn-card--franchise .byn-card__img{
  background:linear-gradient(145deg,#4c1d95,#1e1b4b);
  display:flex;
  align-items:center;
  justify-content:center;
}
.byn-franchise__icon{font-size:64px}

/* ─── City cards ─── */
.byn-cities-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
}
.byn-city-card{
  border-radius:16px;
  padding:28px 22px;
  border:1.5px solid var(--byn-border);
  background:#fff;
  cursor:pointer;
  transition:.3s;
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  gap:6px;
}
.byn-city-card::before{
  content:'';
  position:absolute;bottom:0;left:0;right:0;
  height:3px;
  background:linear-gradient(90deg,var(--byn-primary),var(--byn-primary-2));
  transform:scaleX(0);
  transition:.3s;
  transform-origin:left;
}
.byn-city-card:hover{
  border-color:rgba(93,65,255,.25);
  transform:translateY(-4px);
  box-shadow:0 16px 40px rgba(93,65,255,.1);
}
.byn-city-card:hover::before{transform:scaleX(1)}
.byn-city-card__emoji{font-size:32px;margin-bottom:6px}
.byn-city-card__name{font-size:16px;font-weight:800;color:var(--byn-dark)}
.byn-city-card__count{font-size:13px;color:var(--byn-gray);font-weight:500}
.byn-city-card__types{
  display:flex;gap:5px;
  margin-top:8px;
  flex-wrap:wrap;
}
.byn-city-card__type{
  font-size:10.5px;
  background:var(--byn-primary-light);
  color:var(--byn-primary);
  padding:3px 9px;
  border-radius:50px;
  font-weight:600;
}

/* ─── Actor cards ─── */
.byn-actors-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}
.byn-actor-card{
  border:1.5px solid var(--byn-border);
  border-radius:18px;
  padding:30px 22px;
  transition:.3s;
  cursor:pointer;
  position:relative;
  overflow:hidden;
  background:#fff;
}
.byn-actor-card__glow{
  position:absolute;
  top:-60px;right:-60px;
  width:120px;height:120px;
  border-radius:50%;
  background:var(--byn-primary);
  opacity:0;filter:blur(40px);
  transition:.4s;
}
.byn-actor-card:hover .byn-actor-card__glow{opacity:.12}
.byn-actor-card:hover{
  border-color:rgba(93,65,255,.3);
  transform:translateY(-5px);
  box-shadow:0 20px 50px rgba(93,65,255,.1);
}
.byn-actor-card:hover .byn-actor-card__icon{
  background:linear-gradient(135deg,var(--byn-primary),var(--byn-primary-2));
  box-shadow:0 8px 20px rgba(93,65,255,.35);
}
.byn-actor-card__icon{
  width:54px;height:54px;
  background:var(--byn-primary-light);
  border-radius:14px;
  display:grid;place-items:center;
  font-size:26px;
  margin-bottom:20px;
  transition:.3s;
}
.byn-actor-card__title{
  font-size:15.5px;font-weight:800;
  color:var(--byn-dark);
  margin-bottom:8px;
}
.byn-actor-card__desc{
  font-size:13px;color:var(--byn-gray);
  line-height:1.65;margin-bottom:18px;
}
.byn-actor-card__link{
  font-size:13px;color:var(--byn-primary);
  font-weight:700;
  display:flex;align-items:center;gap:5px;
  opacity:0;transition:.2s;
  transform:translateX(-6px);
}
.byn-actor-card:hover .byn-actor-card__link{
  opacity:1;transform:translateX(0);
}

/* ─── Tool cards ─── */
.byn-tools-grid{
  display:grid;
  grid-template-columns:1.15fr 1fr 1fr;
  gap:20px;
}
.byn-tool-card{
  border-radius:22px;
  padding:38px;
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  min-height:300px;
}
.byn-tool-card--gradient{
  background:linear-gradient(145deg,#4730d4 0%,var(--byn-primary) 50%,var(--byn-primary-2) 100%);
  color:#fff;
}
.byn-tool-card--dark{
  background:linear-gradient(145deg,#0a0e1a,var(--byn-dark));
  color:#fff;
  border:1px solid rgba(255,255,255,.07);
}
.byn-tool-card--light{
  background:#fff;
  border:1.5px solid var(--byn-border);
}
.byn-tool-card__bg{
  position:absolute;
  top:-30px;right:-30px;
  font-size:100px;
  opacity:.1;line-height:1;
  transition:.3s;
}
.byn-tool-card:hover .byn-tool-card__bg{transform:scale(1.1) rotate(5deg)}
.byn-tool-card__tag{
  font-size:10.5px;font-weight:800;
  letter-spacing:1px;text-transform:uppercase;
  opacity:.6;margin-bottom:12px;
}
.byn-tool-card h3{
  font-size:22px;font-weight:900;
  letter-spacing:-.5px;line-height:1.2;
  margin-bottom:12px;
}
.byn-tool-card p{
  font-size:13.5px;line-height:1.68;
  opacity:.75;margin-bottom:24px;
  flex:1;
}
.byn-tool-card__badge{
  display:inline-flex;align-items:center;gap:5px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.2);
  color:rgba(255,255,255,.8);
  font-size:10px;font-weight:700;
  padding:4px 10px;border-radius:50px;
  margin-bottom:16px;width:fit-content;
}

/* ─── Agent section (dark) ─── */
.byn-agents-section .byn-section__header{text-align:center}
.byn-agents-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
}
.byn-agent-showcase{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  padding:28px;
  transition:.3s;
  position:relative;
  overflow:hidden;
}
.byn-agent-showcase::before{
  content:'';
  position:absolute;inset:0;
  background:linear-gradient(135deg,rgba(93,65,255,.08),transparent);
  opacity:0;transition:.3s;
}
.byn-agent-showcase:hover{
  border-color:rgba(93,65,255,.3);
  transform:translateY(-4px);
}
.byn-agent-showcase:hover::before{opacity:1}
.byn-agent-showcase__top{
  display:flex;align-items:center;gap:12px;
  margin-bottom:22px;
}
.byn-agent-showcase__avatar{
  width:50px;height:50px;
  border-radius:13px;
  display:grid;place-items:center;
  color:#fff;
  font-size:17px;font-weight:900;
  flex-shrink:0;
}
.byn-agent-showcase__name{font-size:15px;font-weight:800;color:#fff}
.byn-agent-showcase__territoire{font-size:12px;color:#4B5563;margin-top:2px;font-weight:500}
.byn-agent-showcase__kpis{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;margin-bottom:18px;
}
.byn-agent-showcase__kpi{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.06);
  border-radius:10px;
  padding:12px;text-align:center;
}
.byn-agent-showcase__kpi-num{
  font-size:20px;font-weight:900;
  color:#fff;letter-spacing:-.5px;
}
.byn-agent-showcase__kpi-label{
  font-size:10px;color:#4B5563;
  margin-top:3px;font-weight:600;
  text-transform:uppercase;letter-spacing:.4px;
}
.byn-agent-showcase__scores{
  display:flex;
  flex-direction:column;gap:6px;
}
.byn-score-row{
  display:flex;align-items:center;gap:10px;
}
.byn-score-label{
  font-size:11px;color:#6B7280;
  font-weight:600;width:60px;flex-shrink:0;
}
.byn-score-bar{
  flex:1;height:5px;
  background:rgba(255,255,255,.08);
  border-radius:3px;overflow:hidden;
}
.byn-score-fill{
  height:100%;border-radius:3px;
  background:linear-gradient(90deg,var(--byn-primary),var(--byn-primary-2));
}
.byn-score-fill--green{
  background:linear-gradient(90deg,#10b981,#34d399);
}
.byn-score-pct{
  font-size:11px;color:var(--byn-primary-3);
  font-weight:700;width:36px;text-align:right;flex-shrink:0;
}

/* ─── Promo banner ─── */
.byn-promo{
  background:linear-gradient(135deg,#1a0a3d 0%,#0D1321 50%,#0a1628 100%);
  border-radius:24px;
  margin:0 5%;
  padding:56px 5%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:40px;
  position:relative;
  overflow:hidden;
  border:1px solid rgba(93,65,255,.2);
}
.byn-promo::before{
  content:'';
  position:absolute;
  top:-80px;left:-80px;
  width:300px;height:300px;
  background:radial-gradient(circle,rgba(93,65,255,.3),transparent 70%);
}
.byn-promo__left{position:relative;z-index:1}
.byn-promo__left h3{
  font-size:clamp(22px,3vw,34px);
  font-weight:900;color:#fff;
  letter-spacing:-1px;margin-bottom:12px;
}
.byn-promo__left p{
  color:#4B5563;font-size:15px;
  line-height:1.65;max-width:480px;
}
.byn-promo__right{
  display:flex;gap:12px;
  flex-shrink:0;
  position:relative;z-index:1;
}

/* ─── Footer ─── */
.byn-footer{
  background:#060a14;
  color:#fff;
  padding:72px 5% 32px;
}
.byn-footer__grid{
  display:grid;
  grid-template-columns:1.8fr 1fr 1fr 1fr 1fr;
  gap:40px;
  margin-bottom:56px;
  padding-bottom:56px;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.byn-footer__brand p{
  color:#374151;font-size:13px;
  line-height:1.75;margin-top:14px;
  max-width:220px;
}
.byn-footer__slogan{
  margin-top:18px;
  display:flex;gap:6px;
  flex-wrap:wrap;
}
.byn-footer__slogan span{
  font-size:10px;font-weight:800;
  letter-spacing:.8px;
  color:var(--byn-primary-2);
  border:1px solid rgba(93,65,255,.25);
  padding:4px 11px;border-radius:50px;
}
.byn-footer__social{
  display:flex;gap:8px;margin-top:20px;
}
.byn-footer__social a{
  width:34px;height:34px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  border-radius:8px;
  display:grid;place-items:center;
  cursor:pointer;transition:.2s;
  font-size:14px;text-decoration:none;
  color:#fff;
}
.byn-footer__social a:hover{
  background:rgba(93,65,255,.2);
  border-color:rgba(93,65,255,.4);
}
.byn-footer__col h4{
  font-size:11px;font-weight:800;
  color:rgba(255,255,255,.9);
  margin-bottom:18px;
  letter-spacing:.6px;text-transform:uppercase;
}
.byn-footer__col a{
  display:flex;align-items:center;gap:6px;
  color:#374151;font-size:13px;
  text-decoration:none;margin-bottom:11px;
  transition:.2s;font-weight:500;
}
.byn-footer__col a:hover{color:var(--byn-primary-3)}
.byn-footer__col a .byn-fdot{
  width:5px;height:5px;
  border-radius:50%;
  background:var(--byn-primary);
  opacity:0;transition:.2s;
  flex-shrink:0;
}
.byn-footer__col a:hover .byn-fdot{opacity:1}
.byn-footer__bottom{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  flex-wrap:wrap;
}
.byn-footer__copy{
  color:#1F2937;font-size:13px;
}
.byn-footer__links{
  display:flex;gap:20px;
  flex-wrap:wrap;
}
.byn-footer__links a{
  color:#1F2937;font-size:13px;
  text-decoration:none;transition:.2s;
}
.byn-footer__links a:hover{color:var(--byn-primary-3)}

/* ============================================================
   RESPONSIVE COMPONENTS
   ============================================================ */
@media(max-width:767px){
  .byn-grid,
  .byn-grid--4,
  .byn-cities-grid,
  .byn-actors-grid,
  .byn-tools-grid,
  .byn-agents-grid{
    grid-template-columns:1fr;
  }
  .byn-promo{flex-direction:column;text-align:center;padding:40px 5%}
  .byn-promo__right{flex-direction:column;width:100%}
  .byn-footer__grid{grid-template-columns:1fr;gap:32px;text-align:center}
  .byn-footer__brand p{max-width:none}
  .byn-footer__social{justify-content:center}
  .byn-sort-bar{flex-direction:column;gap:12px;align-items:flex-start}
  .byn-filters__inner{flex-direction:column;align-items:stretch}
  .byn-type-tabs{overflow-x:auto;flex-wrap:nowrap}
}

@media(min-width:768px) and (max-width:1199px){
  .byn-grid--4{grid-template-columns:repeat(2,1fr)}
  .byn-cities-grid{grid-template-columns:repeat(2,1fr)}
  .byn-actors-grid{grid-template-columns:repeat(2,1fr)}
  .byn-tools-grid{grid-template-columns:1fr}
  .byn-agents-grid{grid-template-columns:repeat(2,1fr)}
  .byn-footer__grid{grid-template-columns:1.5fr 1fr 1fr 1fr}
}
