.iffs-ambassadors{--mj-teal:#009c90;--mj-teal-dark:#007d74;--mj-ink:#192b2a;--mj-muted:#5b6d6b;--mj-border:#d9e7e4;width:100%;font:inherit;color:var(--mj-ink)}
.iffs-ambassadors *{box-sizing:border-box}
.iffs-ambassadors-map{width:100%;height:min(68vh,620px);min-height:400px;border:1px solid var(--mj-border);border-radius:14px;overflow:hidden;background:#eaf4f2;box-shadow:0 12px 36px rgba(0,75,69,.08)}
.iffs-ambassadors .mapboxgl-popup{max-width:min(360px,calc(100vw - 34px))!important}
.iffs-ambassadors .mapboxgl-popup-content{position:relative;width:min(340px,calc(100vw - 46px));max-height:min(72vh,430px);padding:14px!important;border-radius:12px;overflow:hidden}
.iffs-ambassadors .mapboxgl-popup-close-button{position:absolute!important;top:8px!important;right:8px!important;left:auto!important;bottom:auto!important;width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;max-width:28px!important;max-height:28px!important;margin:0!important;padding:0!important;border:0!important;border-radius:50%!important;background:rgba(25,43,42,.88)!important;color:#fff!important;font-family:Arial,sans-serif!important;font-size:21px!important;font-weight:400!important;line-height:28px!important;letter-spacing:0!important;text-indent:0!important;text-align:center!important;text-transform:none!important;display:block!important;box-shadow:none!important;transform:none!important;appearance:none!important;-webkit-appearance:none!important;cursor:pointer!important;z-index:3!important}
.iffs-ambassadors .mapboxgl-popup-close-button:hover,.iffs-ambassadors .mapboxgl-popup-close-button:focus{width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;margin:0!important;padding:0!important;background:#192b2a!important;color:#fff!important;box-shadow:none!important;transform:none!important;outline:2px solid rgba(0,156,144,.24)!important;outline-offset:2px!important}
.iffs-ambassadors-popup{max-height:min(60vh,330px);overflow:auto;padding-right:2px}
.iffs-ambassador-card{display:block}
.iffs-ambassador-header{display:grid;grid-template-columns:56px minmax(0,1fr);gap:11px;align-items:start;margin-bottom:9px}
.iffs-ambassador-header.no-photo{grid-template-columns:1fr}
.iffs-ambassador-photo-slot{width:56px;height:56px;border:1px solid var(--mj-border);border-radius:50%;overflow:hidden;background:#fff}
.iffs-ambassador-photo{width:100%;height:100%;object-fit:cover}
.iffs-ambassador-heading{min-width:0}
.iffs-ambassador-heading h3{margin:0 34px 4px 0;font-size:1.06rem;line-height:1.25;color:#111!important}
.iffs-ambassador-country{display:flex;align-items:center;gap:6px;margin:0;color:var(--mj-teal)!important;font-weight:700;font-size:.9rem}
.iffs-ambassador-flag{font-size:1.15rem;line-height:1;filter:saturate(.95)}
.iffs-ambassador-flag-image{width:22px;height:15px;object-fit:cover;border:1px solid rgba(0,0,0,.12);box-shadow:0 0 0 1px rgba(255,255,255,.5);flex:0 0 auto}
.iffs-ambassador-role{margin:0 0 7px;color:#111!important;font-size:.9rem;line-height:1.35}
.iffs-ambassador-type{display:inline-block;margin:5px 0 0;padding:3px 7px;border-radius:999px;background:rgba(0,156,144,.10);color:var(--mj-teal-dark);font-size:.74rem;font-weight:700;line-height:1.2}
.iffs-ambassador-description p,.iffs-ambassador-contact{margin:6px 0;line-height:1.45}
.iffs-ambassador-contact a{color:var(--mj-teal)!important;font-weight:600;overflow-wrap:anywhere}
.iffs-ambassador-video{width:100%;aspect-ratio:16/9;margin:10px 0;overflow:hidden;border-radius:8px;background:#000}
.iffs-ambassador-video iframe{width:100%;height:100%;border:0}
.iffs-ambassadors-directory{margin-top:28px}
.iffs-ambassadors-search-label{display:block;max-width:560px;font-weight:700;color:var(--mj-teal)}
.iffs-ambassadors-search{display:block;width:100%;height:48px;margin-top:8px;padding:10px 15px;border:1px solid #b7ceca;border-radius:9px}
.iffs-ambassadors-count{color:var(--mj-muted);font-size:.9rem}
.iffs-ambassadors-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:16px}
.iffs-ambassador-entry{border:1px solid var(--mj-border);border-radius:11px;padding:18px;background:#fff}
@media(max-width:650px){.iffs-ambassadors-map{min-height:320px;height:54vh}.iffs-ambassadors-list{grid-template-columns:1fr}}
