/* Shared fluid public shell */
.ic-public .ic-container,.ic-public .wrap,body:has(.public-site-header)>.wrap,body:has(.public-site-header) main .wrap{width:100%!important;max-width:none!important;margin-inline:0!important;padding-inline:clamp(16px,2.5vw,48px)!important}
.public-site-header{border-top:3px solid transparent!important;border-bottom:1px solid rgba(88,65,145,.12)!important;background:linear-gradient(110deg,rgba(250,247,255,.97),rgba(241,250,248,.97)) padding-box,linear-gradient(90deg,#7448e8,#36bea0,#b99af8) border-box!important;box-shadow:0 9px 30px rgba(54,38,94,.075)!important;backdrop-filter:blur(22px) saturate(155%)}
.public-site-header>.wrap{width:100%!important;max-width:none!important;height:76px!important;margin:0!important;padding:0 clamp(20px,3.2vw,62px)!important;gap:clamp(24px,3vw,54px)!important}
.public-site-header .logo{display:flex!important;align-items:center!important;letter-spacing:-.035em}
.public-site-header .logo:before{content:"✦";display:grid;width:32px;height:32px;flex:0 0 32px;margin-right:10px;place-items:center;border-radius:10px;background:linear-gradient(135deg,#7145e4,#9c78f2);box-shadow:0 7px 18px rgba(113,69,228,.25);color:#fff;font:17px Arial,sans-serif}
.ic-public .public-site-header .links{gap:clamp(15px,1.55vw,29px)!important}
.ic-public .public-site-header .links>a:not(.public-join){position:relative;padding:9px 0!important}
.ic-public .public-site-header .links>a:not(.public-join):after{content:"";position:absolute;right:50%;bottom:2px;left:50%;height:2px;border-radius:5px;background:linear-gradient(90deg,#7145e4,#35bda0);transition:.22s}
.ic-public .public-site-header .links>a:hover:after,.ic-public .public-site-header .links>a.active:after{right:0;left:0;bottom:2px}
.ic-public .public-site-header .public-nav-search{height:42px!important;border-color:#ded7e8!important;border-radius:13px!important;background:rgba(249,247,253,.9)!important;box-shadow:inset 0 1px 0 #fff}
.ic-public .public-site-header .links .public-join{padding:11px 20px!important;border-radius:12px!important;box-shadow:0 9px 21px rgba(105,62,213,.22)}
.ic-public .ic-reference-footer .ic-footer-inner{width:100%!important;max-width:none!important;padding:34px clamp(20px,3vw,58px) 0!important}
.public-site-header .public-nav-search,.public-site-header .public-mobile-search{display:none!important}
@media(max-width:1100px){.ic-public .public-site-header{background:linear-gradient(110deg,rgba(250,247,255,.97),rgba(241,250,248,.97))!important}.ic-public .public-site-header>.wrap{height:68px!important;padding:0 20px!important}.ic-public .public-site-header .logo{color:#07194b!important}.ic-public .public-compact-account{border-color:#dcd3ef;background:#f7f3ff;color:#6540d5;box-shadow:0 5px 14px rgba(57,39,99,.1)}.ic-public .public-app-bell{color:#6040be}.ic-public .public-menu-toggle{background:linear-gradient(135deg,#eee7ff,#e5f7f2);box-shadow:0 5px 14px rgba(65,43,118,.1)}}
@media(max-width:720px){.ic-public .ic-container,.ic-public .wrap,body:has(.public-site-header) main .wrap{padding-inline:12px!important}.public-site-header>.wrap{height:60px!important;padding:0 12px!important}.public-site-header .logo:before{width:28px;height:28px;flex-basis:28px;margin-right:7px;border-radius:9px;font-size:14px}.public-site-header .logo{font-size:18px!important}.public-compact-account{width:36px;height:36px}.public-account-menu{top:60px}.ic-public .ic-reference-footer .ic-footer-inner{padding:26px 16px 0!important}}
@media(max-width:1100px){.public-site-header{background:linear-gradient(110deg,rgba(250,247,255,.97),rgba(241,250,248,.97))!important}.public-site-header>.wrap{height:68px!important;padding:0 20px!important}.public-site-header .logo{color:#07194b!important}.public-compact-account{border-color:#dcd3ef!important;background:#f7f3ff!important;color:#6540d5!important}.public-app-bell{color:#6040be!important}.public-menu-toggle{background:linear-gradient(135deg,#eee7ff,#e5f7f2)!important}}
@media(min-width:721px) and (max-width:1100px){.public-compact-menu{top:68px!important;right:18px!important;left:auto!important;width:300px!important;padding:12px!important;border:1px solid #e4ddec!important;border-radius:0 0 14px 14px!important;background:#fff!important}.public-compact-menu nav{display:flex!important;flex-direction:column!important;gap:0!important}.public-compact-menu a{min-height:43px!important;padding:0 14px!important;border:0!important;border-radius:8px!important;background:transparent!important}.public-compact-menu a:hover,.public-compact-menu a.active{background:#f2edff!important;color:#6540d5!important}}
@media(max-width:720px){.public-compact-menu a.active{background:#f2edff!important;color:#6540d5!important}}

/* Universal public inner-page banner */
.public-inner-hero{position:relative;isolation:isolate;min-height:330px;overflow:hidden;background:linear-gradient(118deg,#f8f5ff 0%,#eef8f6 48%,#e7efff 100%);border-bottom:1px solid #dcd7e8;color:#07194b}
.public-inner-hero:before{content:"";position:absolute;z-index:-2;inset:0;background:radial-gradient(circle at 11% 15%,rgba(130,79,236,.18),transparent 25%),radial-gradient(circle at 82% 72%,rgba(51,190,160,.18),transparent 27%)}
.public-inner-hero:after{content:"";position:absolute;z-index:-1;right:-8%;top:-55%;width:48%;aspect-ratio:1;border:1px solid rgba(104,70,191,.12);border-radius:50%;box-shadow:0 0 0 55px rgba(113,69,228,.035),0 0 0 110px rgba(53,190,160,.025)}
.public-inner-hero__inner{position:relative;min-height:330px;display:flex;align-items:center;padding-top:50px!important;padding-bottom:50px!important}
.public-inner-hero__copy{position:relative;z-index:2;width:min(760px,68%)}.public-inner-hero .eyebrow{margin-bottom:13px;color:#6840d8;font-size:12px;font-weight:850;letter-spacing:.16em;text-transform:uppercase}.public-inner-hero h1{max-width:850px;margin:0;color:#050b56;font-size:clamp(42px,4.7vw,70px);line-height:1.01;letter-spacing:-.055em}.public-inner-hero p{max-width:720px;margin:18px 0 0;color:#52617d;font-size:clamp(14px,1.3vw,18px);line-height:1.65}.public-inner-hero .actions{margin-top:25px}.public-inner-hero .button{border-radius:11px;background:linear-gradient(120deg,#7044df,#8b65ec);box-shadow:0 10px 24px rgba(101,61,205,.2)}.public-inner-hero .button.light{border:1px solid #d9d2e4;background:rgba(255,255,255,.82);box-shadow:none;color:#07194b}
.public-inner-hero__art{position:absolute;right:5%;top:50%;width:245px;height:210px;transform:translateY(-50%)}.public-inner-hero__art i{position:absolute;border-radius:24px;transform:rotate(12deg)}.public-inner-hero__art i:nth-child(1){inset:18px 5px 5px 35px;background:linear-gradient(145deg,#7044df,#9d7af0);box-shadow:0 24px 45px rgba(79,45,165,.2)}.public-inner-hero__art i:nth-child(2){inset:0 42px 42px 0;border:1px solid rgba(255,255,255,.7);background:linear-gradient(145deg,rgba(255,255,255,.82),rgba(209,244,236,.8));transform:rotate(-8deg)}.public-inner-hero__art i:nth-child(3){right:-13px;bottom:8px;width:74px;height:74px;border:14px solid rgba(53,190,160,.35);border-radius:50%;transform:none}.public-inner-hero__art span{position:absolute;z-index:2;left:82px;top:67px;display:grid;width:82px;height:82px;place-items:center;border:1px solid rgba(255,255,255,.8);border-radius:24px;background:rgba(255,255,255,.88);box-shadow:0 14px 30px rgba(32,27,71,.15);color:#6840d8;font:800 25px "DM Sans",sans-serif}
.public-directory-banner{margin-inline:calc(clamp(16px,2.5vw,48px)*-1);min-height:310px}.public-directory-banner .public-inner-hero__inner{min-height:310px;padding-inline:clamp(16px,2.5vw,48px)!important}.public-directory-banner .ic-breadcrumb{margin:0 0 14px;color:#697590}.public-directory-tools{position:relative;z-index:3;width:min(520px,42%);margin-left:auto;margin-right:230px}.public-directory-tools .ic-directory-search{width:100%;background:rgba(255,255,255,.92);box-shadow:0 12px 30px rgba(44,32,81,.09)}.public-directory-tools>b{display:inline-flex;align-items:center;gap:6px;margin-top:12px;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.7);color:#6840d8;font-size:13px}.public-directory-tools>b small{color:#68758c;font-size:12px}
.public-directory-banner~.ic-directory-layout{margin-top:28px}
@media(max-width:1100px){.public-inner-hero__copy{width:64%}.public-inner-hero__art{right:2%;transform:translateY(-50%) scale(.82)}.public-directory-tools{width:42%;margin-right:165px}}
@media(max-width:720px){.public-inner-hero,.public-inner-hero__inner{min-height:280px}.public-inner-hero__inner{align-items:flex-start;flex-direction:column;padding-top:30px!important;padding-bottom:34px!important}.public-inner-hero__copy{width:100%}.public-inner-hero h1{max-width:88%;font-size:38px}.public-inner-hero p{max-width:88%;margin-top:12px;font-size:13px}.public-inner-hero__art{right:-40px;top:41%;transform:translateY(-50%) scale(.52);opacity:.7}.public-inner-hero .actions{position:relative;z-index:3;margin-top:20px}.public-directory-banner{min-height:320px;margin-inline:-12px}.public-directory-banner .public-inner-hero__inner{min-height:320px;padding-inline:16px!important}.public-directory-banner .public-inner-hero__copy{width:100%}.public-directory-tools{width:100%;margin:24px 0 0}.public-directory-tools .ic-directory-search{height:49px}.public-directory-tools>b{display:none}.public-directory-banner .public-inner-hero__art{top:29%;right:-57px}.public-directory-banner~.ic-directory-layout{margin-top:16px}}

/* Public sign-in chooser */
.public-login-choice[hidden]{display:none!important}.public-login-choice{position:fixed;z-index:2000;inset:0;display:grid;place-items:center;padding:18px;font-family:"DM Sans",sans-serif}.public-login-choice__backdrop{position:absolute;inset:0;border:0;background:rgba(5,10,43,.58);backdrop-filter:blur(9px)}.public-login-choice>section{position:relative;width:min(570px,100%);padding:34px;border:1px solid rgba(255,255,255,.75);border-radius:25px;background:radial-gradient(circle at 95% 0,rgba(190,241,229,.9),transparent 30%),linear-gradient(145deg,#fff,#f5f0ff);box-shadow:0 35px 90px rgba(7,15,58,.28);color:#07194b}.public-login-choice__close{position:absolute;right:18px;top:17px;width:36px;height:36px;border:0;border-radius:11px;background:#eee8ff;color:#6840d8;font-size:23px;cursor:pointer}.public-login-choice__kicker{color:#7045df;font-size:12px;font-weight:850;letter-spacing:.15em;text-transform:uppercase}.public-login-choice h2{max-width:410px;margin:10px 0 8px;font:700 31px/1.08 "Playfair Display",serif;letter-spacing:-.035em}.public-login-choice>section>p{margin:0 0 23px;color:#68758c;font-size:12px}.public-login-choice>section>div{display:grid;gap:10px}.public-login-choice>section>div>a{display:grid;grid-template-columns:46px 1fr auto;align-items:center;gap:13px;min-height:78px;padding:12px 15px;border:1px solid #e0d9eb;border-radius:15px;background:rgba(255,255,255,.88);color:#07194b;text-decoration:none;transition:.2s}.public-login-choice>section>div>a:hover{border-color:#9c7bec;transform:translateY(-2px);box-shadow:0 12px 28px rgba(71,43,137,.1)}.public-login-choice i{display:grid;width:46px;height:46px;place-items:center;border-radius:13px;background:linear-gradient(135deg,#7145e4,#9671ed);color:#fff;font-style:normal;font-size:18px}.public-login-choice>section>div>a:nth-child(2) i{background:linear-gradient(135deg,#1aa989,#50cdb1)}.public-login-choice b,.public-login-choice small{display:block}.public-login-choice b{font-size:14px}.public-login-choice small{margin-top:5px;color:#6d7890;font-size:12px}.public-login-choice em{color:#7045df;font-size:20px;font-style:normal}.public-login-choice footer{margin-top:22px;color:#68758c;font-size:12px;text-align:center}.public-login-choice footer a{color:#6840d8;font-weight:800}.public-login-choice-open{overflow:hidden!important}@media(max-width:520px){.public-login-choice>section{padding:29px 18px 22px;border-radius:21px}.public-login-choice h2{font-size:27px}.public-login-choice>section>div>a{grid-template-columns:42px 1fr auto;padding:10px}.public-login-choice i{width:42px;height:42px}}
