/* Ported from samarthivf.com (home-map). */

#sivf2-root{all:unset;display:block;font-family:'Montserrat',sans-serif!important;line-height:1.5!important;box-sizing:border-box!important;}
#sivf2-root *,#sivf2-root *::before,#sivf2-root *::after{box-sizing:border-box!important;}
#sivf2-root a,#sivf2-root a:hover,#sivf2-root a:visited{text-decoration:none!important;color:inherit!important;}
#sivf2-root .sivf2__sec{padding:60px 20px 50px;display:flex;flex-direction:column;align-items:center;width:100%;}
#sivf2-root .sivf2__hdr{text-align:center;margin-bottom:36px;}
#sivf2-root .sivf2__eyebrow{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#8b2b89;background:rgba(139,43,137,.1);padding:5px 15px;border-radius:100px;margin-bottom:12px;}
#sivf2-root .sivf2__hdr h2{font-size:clamp(1.4rem,4vw,2.4rem);font-weight:800;color:#2a1840;line-height:1.2;margin:0 0 8px;padding:0;}
#sivf2-root .sivf2__hdr p{font-size:.9rem;color:#563084;opacity:.8;margin:0;padding:0;}
#sivf2-root .sivf2__wrap{position:relative;width:100%;max-width:640px;border-radius:20px;overflow:hidden;box-shadow:0 20px 60px rgba(86,48,132,.15);background:#f0e6ff;touch-action:manipulation;}
#sivf2-root .sivf2__svg{width:100%;height:auto;display:block;}
#sivf2-root .sivf2__state{fill:#e6d5ff;stroke:#c4a0f5;stroke-width:.3;cursor:pointer;transition:fill .2s ease;}
#sivf2-root .sivf2__state:hover{fill:#d4b3ff;}
#sivf2-root .sivf2__state--sel{fill:#bf95ff!important;stroke:#8b2b89!important;stroke-width:.6!important;filter:url(#sivf2-shadow);}
#sivf2-root .sivf2__backbtn{position:absolute;top:12px;left:12px;z-index:600;background:#fff;border:1.5px solid #e0ccff;border-radius:10px;padding:7px 13px;font-size:.74rem;font-weight:600;color:#563084;cursor:pointer;display:flex;align-items:center;gap:5px;box-shadow:0 2px 10px rgba(139,43,137,.12);opacity:0;pointer-events:none;transition:opacity .2s,background .15s;font-family:'Montserrat',sans-serif;line-height:1;border-style:solid;}
#sivf2-root .sivf2__backbtn--on{opacity:1!important;pointer-events:auto!important;}
#sivf2-root .sivf2__backbtn:hover{background:#f3eeff;}
#sivf2-root .sivf2__hint{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);font-size:.68rem;color:#8b2b89;background:rgba(255,255,255,.9);padding:4px 14px;border-radius:100px;pointer-events:none;white-space:nowrap;z-index:10;transition:opacity .3s;box-shadow:0 2px 8px rgba(139,43,137,.1);}
#sivf2-root .sivf2__hint--off{opacity:0!important;}
#sivf2-root .sivf2__badge{position:absolute;bottom:12px;right:12px;background:#fff;border:2px solid #e0ccff;border-radius:14px;padding:10px 14px;text-align:center;box-shadow:0 4px 16px rgba(139,43,137,.12);z-index:10;}
#sivf2-root .sivf2__badge-num{font-size:1.7rem;font-weight:900;color:#563084;line-height:1;display:block;}
#sivf2-root .sivf2__badge-lbl{font-size:.6rem;color:#8b2b89;line-height:1.4;margin-top:2px;display:block;}
#sivf2-root .sivf2__loader{position:absolute;inset:0;z-index:400;background:#f0e6ff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;transition:opacity .4s;}
#sivf2-root .sivf2__loader--off{opacity:0!important;pointer-events:none!important;}
#sivf2-root .sivf2__spin{width:30px;height:30px;border-radius:50%;border:3px solid #e0ccff;border-top-color:#8b2b89;animation:sivf2Spin .7s linear infinite;}
#sivf2-root .sivf2__ltxt{font-size:.72rem;color:#8b2b89;}
@keyframes sivf2Spin{to{transform:rotate(360deg);}}
#sivf2-root .sivf2__pulse{transform-box:fill-box;transform-origin:center;}
@media(hover:hover){#sivf2-root .sivf2__pulse{animation:sivf2Pulse 2.4s ease-in-out infinite;}}
@keyframes sivf2Pulse{0%,100%{transform:scale(1);opacity:.4;}50%{transform:scale(2.3);opacity:.06;}}
#sivf2-root .sivf2__pop{position:absolute;pointer-events:auto;opacity:0;transform:translateY(8px) scale(.94);transition:opacity .18s,transform .18s;z-index:700;min-width:210px;}
#sivf2-root .sivf2__pop--on{opacity:1!important;transform:translateY(0) scale(1)!important;}
#sivf2-root .sivf2__pop-card{background:rgba(255,255,255,.98);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1.5px solid rgba(196,160,240,.7);border-radius:16px;padding:10px 4px 6px;box-shadow:0 12px 40px rgba(139,43,137,.22);overflow:hidden;}
#sivf2-root .sivf2__pop-hdr{display:flex;align-items:center;gap:8px;padding:0 12px 8px;border-bottom:1px solid rgba(196,160,240,.3);margin-bottom:4px;}
#sivf2-root .sivf2__pop-ico{width:24px;height:24px;border-radius:6px;flex-shrink:0;background:linear-gradient(135deg,#8b2b89,#563084);display:flex;align-items:center;justify-content:center;}
#sivf2-root .sivf2__pop-title{font-size:.74rem;font-weight:700;color:#563084;text-transform:uppercase;letter-spacing:.07em;display:block;}
#sivf2-root .sivf2__pop-sub{font-size:.63rem;color:#8b2b89;display:block;}
#sivf2-root .sivf2__ci{display:flex;align-items:center;gap:9px;padding:7px 12px;border-radius:8px;cursor:pointer;transition:background .14s,transform .12s;}
#sivf2-root .sivf2__ci:hover{background:rgba(139,43,137,.08);transform:translateX(2px);}
#sivf2-root .sivf2__dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;}
#sivf2-root .sivf2__ci--main .sivf2__dot{background:#563084;box-shadow:0 0 0 3px rgba(91,33,182,.18);}
#sivf2-root .sivf2__ci--branch .sivf2__dot{background:#8b2b89;box-shadow:0 0 0 3px rgba(139,43,137,.18);}
#sivf2-root .sivf2__ctx{flex:1;min-width:0;}
#sivf2-root .sivf2__cn{font-size:.8rem;font-weight:600;color:#2a1840;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
#sivf2-root .sivf2__cl{font-size:.65rem;color:#8b2b89;display:block;margin-top:1px;}
#sivf2-root .sivf2__arr{font-size:.7rem;color:#a78bfa;margin-left:auto;flex-shrink:0;transition:transform .12s;}
#sivf2-root .sivf2__ci:hover .sivf2__arr{transform:translateX(3px);}
@media(max-width:600px){
  #sivf2-root .sivf2__sec{padding:32px 12px 28px;}
  #sivf2-root .sivf2__hdr{margin-bottom:18px;}
  #sivf2-root .sivf2__badge{display:none;}
  #sivf2-root .sivf2__hint{font-size:.6rem;padding:3px 10px;}
  #sivf2-root .sivf2__backbtn{padding:6px 10px;font-size:.68rem;}
  #sivf2-root .sivf2__pop{
    position:fixed!important;
    bottom:80px!important;
    top:auto!important;
    left:50%!important;
    transform:translateX(-50%)!important;
    width:92vw!important;
    max-width:360px!important;
    min-width:unset!important;
    z-index:9999!important;
  }
  #sivf2-root .sivf2__pop-card{
    width:100%!important;
    border-radius:16px!important;
  }
  #sivf2-root .sivf2__cn{
    white-space:normal!important;
    font-size:.78rem!important;
  }
  #sivf2-root .sivf2__pop-hdr{
    padding:0 12px 8px!important;
  }
}
