/* Common mobile-first foundation; component layouts expand at tablet/desktop widths. */
:root{--jf-font-body:'Jost','Segoe UI',sans-serif;--jf-font-heading:'Exo','Segoe UI',sans-serif;--jf-green:#187853;--jf-yellow-soft:#fff8d8;--jf-navy:#071a2c;--jf-sky:#70c3ee;--jf-gap:clamp(16px,3vw,32px)}
html{scroll-padding-top:90px;-webkit-text-size-adjust:100%}
body{font-family:var(--jf-font-body)!important;-webkit-font-smoothing:antialiased}
body :is(h1,h2,h3,h4){font-family:var(--jf-font-heading)!important;text-wrap:balance}
body :is(button,input,select,textarea){font-family:var(--jf-font-body)!important}
*,*::before,*::after{box-sizing:border-box}
img,video{max-width:100%}img{height:auto}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:3px solid #70c3ee;outline-offset:4px}
main :is(p,li,h1,h2,h3),.jx-content{overflow-wrap:break-word}
[hidden]{display:none!important}
[data-table-scroll]{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain}
[data-table-scroll] table{min-width:560px;width:100%}
.ins-page,.partner-directory{font-family:var(--jf-font-body)!important}
.ins-page :is(section,article,aside),.partner-directory :is(section,article,aside),.jx-content>*{min-width:0}
.jx-content .jx-grid{min-width:0}.jx-input,.jx-select,.jx-textarea{max-width:100%}
/* A continuous logo ribbon, without individual card surfaces. */
body .j-partners{padding:30px 0;border:0;background:#fff}
body .j-partners .j-logo-set{align-items:center;gap:42px;padding-right:42px}
body .j-partners .j-logo-card{flex:0 0 160px;width:160px;height:80px;padding:8px;border:0;border-radius:0;background:transparent;box-shadow:none}
body .j-partners .j-logo-card img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
@media(max-width:600px){body .j-partners{padding:22px 0}body .j-partners .j-logo-set{gap:26px;padding-right:26px}body .j-partners .j-logo-card{flex-basis:130px;width:130px;height:68px}}
.sf-answer{overflow-wrap:anywhere}.sf-faq-item summary{min-width:0}.sf-plus{flex-shrink:0}
@media(max-width:980px){.auth-shell{grid-template-columns:minmax(0,1fr)!important;min-height:0!important}.auth-aside{min-width:0}.auth-main{min-width:0}}
@media(max-width:767px){
 body :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){font-size:16px!important}
 body :is(button,.j-btn,.ins-btn,.pd-btn,.jx-btn,.mode-tab){min-height:44px}
 .j-nav-cta{display:none!important}.j-menu-toggle{display:flex!important;min-width:44px}
 .j-wrap,.ins-wrap,.pd-wrap{width:calc(100% - 32px)}
 .j-story-grid,.j-message-grid,.j-section-head,.j-profile-grid,.j-experience-grid,.ins-hero,.pd-hero,.ins-context,.ins-network{grid-template-columns:minmax(0,1fr)!important;gap:28px}
 .j-section,.j-landmarks{padding-block:56px}.j-story h2,.j-section-title{font-size:clamp(31px,8vw,43px)}
 .j-hero h1{font-size:clamp(39px,10vw,60px)}
 .ins-metrics,.ins-objectives,.pd-grid,.ins-documents{grid-template-columns:minmax(0,1fr)}
 .pd-toolbar,.ins-section-head{grid-template-columns:minmax(0,1fr)}
 .ins-hero h1,.pd-hero h1{font-size:clamp(36px,10vw,48px)}
 .ins-logos{grid-template-columns:minmax(0,1fr)}
 .jx-topbar{padding-inline:14px}.jx-crumbs{min-width:0}.jx-topbar-actions{flex-shrink:0}.jx-content{padding:20px 14px 40px}
 .jx-cols-2,.jx-cols-3,.jx-cols-4,.jx-cols-main{grid-template-columns:minmax(0,1fr)!important}
 .jx-page-head,.jx-hero,.profil-header{flex-wrap:wrap;gap:18px}.jx-page-actions{flex-wrap:wrap}
 .auth-shell{width:100%!important;grid-template-columns:minmax(0,1fr)!important;margin:0!important;border-radius:0!important}
 .auth-aside{min-height:0!important;padding:24px!important}.auth-aside .aside-copy{margin-block:24px!important}.auth-main{min-width:0;padding:24px 18px!important}
 .auth-aside h1{font-size:30px!important}.auth-brand img{max-width:100px}.auth-main-header{justify-content:center}.form-row,.pform-row{grid-template-columns:minmax(0,1fr)!important}
}
@media(min-width:768px) and (max-width:1100px){
 .j-wrap,.ins-wrap,.pd-wrap{width:calc(100% - 48px)}
 .ins-metrics,.ins-objectives,.pd-grid,.ins-logos,.jx-cols-3,.jx-cols-4{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .ins-documents{grid-template-columns:repeat(2,minmax(0,1fr))}.jx-content{padding:26px 24px 48px}
}
@media(hover:hover){.j-btn,.jx-btn,.ins-btn,.pd-btn{transition:background .2s,box-shadow .2s,transform .2s}.j-btn:hover,.jx-btn:hover{transform:translateY(-2px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
