/* ===== NOMAD Holidays — «Рекомендуемые агентства» ===== */

/* filter bar */
.ag-filter{background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow-md);padding:22px;margin-top:-70px;position:relative;z-index:20}
.ag-filter-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;align-items:end}
.ag-filter .field{margin:0}
.ag-filter-actions{display:flex;gap:10px;margin-top:16px;justify-content:flex-end}
@media(max-width:960px){.ag-filter-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.ag-filter{margin-top:-40px}.ag-filter-grid{grid-template-columns:1fr}.ag-filter-actions{flex-direction:column}.ag-filter-actions .btn{width:100%}}

/* agencies grid */
.ag-count{font-size:14px;color:var(--gray-mid);font-weight:500;margin-bottom:20px}
.ag-count b{color:var(--navy)}
.ag-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media(max-width:1000px){.ag-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.ag-grid{grid-template-columns:1fr}}
.agc{background:#fff;border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;transition:transform .3s var(--ease),box-shadow .3s}
.agc:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}
.agc-top{display:flex;gap:14px;align-items:center;padding:20px 22px 16px}
.agc-logo{width:58px;height:58px;border-radius:14px;background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:20px;flex:0 0 auto;letter-spacing:.02em}
.agc-head h3{font-size:17px;margin-bottom:3px;line-height:1.25}
.agc-city{font-size:13px;color:var(--gray-mid);display:flex;align-items:center;gap:6px}
.agc-city svg{width:14px;height:14px;color:var(--blue)}
.agc-badges{display:flex;flex-wrap:wrap;gap:6px;padding:0 22px 14px}
.agc-badge{font-size:11px;font-weight:600;padding:4px 10px;border-radius:999px;display:inline-flex;align-items:center;gap:5px}
.agc-badge svg{width:12px;height:12px}
.agc-badge.rec{background:#eaf1fb;color:var(--navy)}
.agc-badge.verified{background:#eefaf2;color:#1f8a4c}
.agc-badge.popular{background:#fdf2e6;color:#b9761a}
.agc-badge.online{background:#eaf6fd;color:#1f7fb0}
.agc-desc{font-size:13.5px;color:var(--gray-dark);line-height:1.6;padding:0 22px 14px}
.agc-info{padding:0 22px 16px;display:flex;flex-direction:column;gap:8px;border-bottom:1px solid var(--line);margin-bottom:16px}
.agc-info .r{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--black)}
.agc-info .r svg{width:15px;height:15px;color:var(--blue);flex:0 0 auto}
.agc-info .r a:hover{color:var(--blue)}
.agc-services{display:flex;flex-wrap:wrap;gap:6px;padding:0 22px 18px}
.agc-svc{font-size:11.5px;font-weight:600;color:var(--navy);background:var(--bg-1);padding:5px 11px;border-radius:999px}
.agc-actions{margin-top:auto;padding:0 18px 18px;display:flex;gap:8px}
.agc-actions .btn{flex:1;padding:10px 8px;font-size:13px;justify-content:center}
.agc-actions .btn svg{width:15px;height:15px}
.agc-actions .btn.icon-only{flex:0 0 auto;width:44px;padding:10px 0}
.ag-empty{display:none;text-align:center;padding:60px 20px;color:var(--gray-mid)}
.ag-empty.show{display:block}
.ag-empty .ee-ic{width:70px;height:70px;border-radius:50%;background:var(--bg-1);color:var(--gray-light);display:flex;align-items:center;justify-content:center;margin:0 auto 18px}
.ag-empty .ee-ic svg{width:34px;height:34px}
.ag-empty h3{font-size:19px;color:var(--navy);margin-bottom:8px}

/* map section */
.ag-map-wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:24px;align-items:stretch}
.ag-map-list{display:flex;flex-direction:column;gap:10px;max-height:520px;overflow-y:auto;padding-right:4px}
.ag-map-item{text-align:left;background:#fff;border:1.5px solid var(--line);border-radius:16px;padding:16px 18px;transition:.22s;width:100%}
.ag-map-item:hover{border-color:var(--blue)}
.ag-map-item.active{border-color:var(--navy);box-shadow:var(--shadow-sm)}
.ag-map-item b{font-size:15px;color:var(--navy);display:block;margin-bottom:4px}
.ag-map-item span{font-size:12.5px;color:var(--gray-dark);display:flex;align-items:center;gap:6px}
.ag-map-item span svg{width:13px;height:13px;color:var(--blue)}
.ag-map-canvas{border-radius:22px;overflow:hidden;position:relative;min-height:520px;background:linear-gradient(135deg,#dde8f5,#eaf2fb);border:1px solid var(--line)}
.ag-map-canvas .amc-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.42;mix-blend-mode:multiply}
.ag-map-canvas .amc-grid{position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:46px 46px;opacity:.5}
.ag-map-canvas .amc-note{position:absolute;left:50%;bottom:24px;transform:translateX(-50%);background:rgba(255,255,255,.94);border-radius:12px;padding:12px 18px;font-size:12.5px;color:var(--gray-dark);box-shadow:var(--shadow-sm);max-width:80%;text-align:center;display:flex;align-items:center;gap:8px}
.ag-map-canvas .amc-note svg{width:16px;height:16px;color:var(--blue);flex:0 0 auto}
.amc-pin{position:absolute;width:16px;height:16px;border-radius:50%;background:var(--blue);border:3px solid #fff;box-shadow:0 4px 10px rgba(41,59,143,.3);transform:translate(-50%,-50%);transition:.2s}
.amc-pin.active{background:var(--navy);transform:translate(-50%,-50%) scale(1.4)}
@media(max-width:880px){.ag-map-wrap{grid-template-columns:1fr}.ag-map-canvas{order:-1;min-height:340px}.ag-map-list{max-height:none;flex-direction:row;overflow-x:auto;padding-bottom:6px}.ag-map-item{flex:0 0 240px}}

/* why / how cards */
.why-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
@media(max-width:1000px){.why-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.why-grid{grid-template-columns:1fr}}
.why-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:var(--shadow-sm);text-align:center;transition:transform .3s var(--ease),box-shadow .3s}
.why-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}
.why-card .wc-ic{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,#eaf6fd,#e7ecfa);color:var(--navy);display:flex;align-items:center;justify-content:center;margin:0 auto 14px}
.why-card .wc-ic svg{width:25px;height:25px}
.why-card h3{font-size:14.5px;line-height:1.35}

.how-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
@media(max-width:1000px){.how-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.how-grid{grid-template-columns:1fr}}
.how-item{display:flex;gap:13px;align-items:flex-start;background:var(--bg-1);border-radius:16px;padding:18px}
.how-item .hi-n{width:34px;height:34px;border-radius:10px;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;flex:0 0 auto}
.how-item p{font-size:13.5px;color:var(--gray-dark);line-height:1.5;padding-top:5px}

/* help form */
.help-wrap{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:start}
.help-form{background:#fff;border:1px solid var(--line);border-radius:24px;padding:clamp(24px,3vw,36px);box-shadow:var(--shadow-sm)}
.help-form .reg-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.help-form .field.full{grid-column:1/-1}
.help-form .btn{width:100%;height:52px;margin-top:8px}
.help-success{display:none;text-align:center;padding:clamp(30px,4vw,50px) 20px}
.help-success.show{display:block;animation:fade .5s var(--ease)}
.help-success .hs-ic{width:76px;height:76px;border-radius:50%;background:#eefaf2;color:#1f8a4c;display:flex;align-items:center;justify-content:center;margin:0 auto 18px}
.help-success .hs-ic svg{width:38px;height:38px}
.help-success h3{font-size:22px;margin-bottom:10px}
.help-success p{font-size:15px;color:var(--gray-dark);max-width:400px;margin:0 auto}
.help-side h2{font-size:clamp(24px,2.8vw,34px);margin:14px 0 14px}
.help-side>p{font-size:15px;color:var(--gray-dark);line-height:1.7;margin-bottom:22px}
.help-points{display:flex;flex-direction:column;gap:14px}
.help-point{display:flex;gap:12px;align-items:center;font-size:14.5px;font-weight:500;color:var(--black)}
.help-point .hp{width:40px;height:40px;border-radius:11px;background:#fff;color:var(--navy);display:flex;align-items:center;justify-content:center;flex:0 0 auto;box-shadow:var(--shadow-sm)}
.help-point .hp svg{width:19px;height:19px}
@media(max-width:880px){.help-wrap{grid-template-columns:1fr}}
@media(max-width:520px){.help-form .reg-grid{grid-template-columns:1fr}}
