/* Law United universal design foundation. Loaded last while pages migrate. */
:root {
  --font-ui: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-editorial: Georgia, "Times New Roman", serif;
  --color-ink: #172720; --color-ink-soft: #31443c; --color-muted: #68746e;
  --color-muted-light: #7b857f; --color-canvas: #f4f1e9; --color-surface: #fffdfa;
  --color-surface-soft: #f7f7f2; --color-primary: #153f33; --color-primary-hover: #23644f;
  --color-primary-soft: #e8efea; --color-border: #deddd5; --color-border-strong: #c8d0ca;
  --color-accent: #c19752; --color-danger: #9c493c;
  --text-display: clamp(2.125rem, 3vw, 3rem); --text-page-title: clamp(1.875rem, 2.35vw, 2.375rem);
  --text-section-title: clamp(1.5rem, 1.8vw, 1.75rem); --text-card-title: 1.3125rem;
  --text-body-large: 1.125rem; --text-body: 1rem; --text-supporting: .875rem;
  --text-meta: .75rem; --text-label: .6875rem;
  --space-1: .25rem; --space-2: .5rem; --space-3: .75rem; --space-4: 1rem;
  --space-5: 1.25rem; --space-6: 1.5rem; --space-8: 2rem; --space-10: 2.5rem;
  --radius-control: .5rem; --radius-card: .75rem; --radius-panel: .875rem;
  --shadow-card: 0 .5rem 1.875rem rgba(25,45,36,.07); --shadow-raised: 0 1rem 2.5rem rgba(20,49,39,.11);
  --control-height: 2.75rem; --page-max: 92.5rem; --page-gutter: clamp(1rem, 2.2vw, 2rem);
}
html{font-size:100%;text-size-adjust:100%;-webkit-text-size-adjust:100%}
body{background:var(--color-canvas);color:var(--color-ink);font-family:var(--font-ui);font-size:var(--text-supporting);line-height:1.5;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
button,input,select,textarea{color:inherit;font-family:var(--font-ui)}
button,[role="button"],a{-webkit-tap-highlight-color:transparent}
.primary-btn,.outline-btn{min-height:var(--control-height);border-radius:var(--radius-control)}
.card,.rail-card{border-color:var(--color-border);border-radius:var(--radius-card);background-color:var(--color-surface)}
.eyebrow,.nav-group-label{color:#876f4d;font-family:var(--font-ui);font-size:var(--text-label);font-weight:800;line-height:1.25;letter-spacing:.105rem}
.new-label,.drafting-assistant-badge{min-height:1.25rem;display:inline-flex;align-items:center;font-size:.625rem;line-height:1}
.welcome h1,.feed-heading h2,.rail-card h3,.modal-head h2{font-family:var(--font-editorial)}
.search,.composer-prompt,input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]),select{min-height:var(--control-height);border-radius:var(--radius-control)}
:where(button,a,input,select,textarea,[tabindex]):focus-visible{outline:.125rem solid var(--color-primary-hover);outline-offset:.1875rem}
input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:#5f8274;box-shadow:0 0 0 .1875rem rgba(35,100,79,.12)}
@media(max-width:800px){:root{--control-height:2.75rem;--text-card-title:1.1875rem}button,[role="button"]{min-height:2.75rem}.icon-btn,.account-menu-toggle,.more,.connect-btn{min-width:2.75rem;min-height:2.75rem;flex:0 0 2.75rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
/* Shared Jobs and Events directory template. */
:is(.jobs-page,.events-page){max-width:var(--page-max);padding:2rem var(--page-gutter) 5rem}
:is(.jobs-hero,.events-hero){min-height:16.25rem;margin-bottom:1.25rem;padding:2.5rem 3rem;border-radius:var(--radius-panel);box-shadow:0 1.25rem 3.25rem rgba(19,49,39,.14)}
:is(.jobs-hero,.events-hero) h1{margin:.5rem 0 .875rem;font-family:var(--font-editorial);font-size:clamp(2.25rem,2.5vw,2.625rem);font-weight:400;line-height:1.06;letter-spacing:-.045rem}
:is(.jobs-hero,.events-hero)>div>p:last-child{max-width:39rem;margin-bottom:0;color:#d2ded9;font-family:var(--font-ui);font-size:.8125rem;line-height:1.6}
:is(.career-stats,.events-stats){gap:1.5rem}
:is(.career-stats,.events-stats) div{padding-left:1rem}
:is(.career-stats,.events-stats) strong{font-family:var(--font-editorial);font-size:1.375rem}
:is(.career-stats,.events-stats) span{font-family:var(--font-ui);font-size:.625rem;line-height:1.3;letter-spacing:.06rem;text-transform:uppercase}
:is(.jobs-hero-action,.events-hero-action){top:1.5rem;right:1.75rem;min-height:3rem;padding-inline:1.25rem;border-radius:var(--radius-control);font-size:.875rem}
:is(.jobs-page .jobs-toolbar,.events-toolbar){min-height:4.5rem;padding:.875rem 1.125rem;gap:.75rem;border-color:var(--color-border);border-radius:var(--radius-control) var(--radius-control) 0 0;background:rgba(255,253,250,.97);box-shadow:0 .3125rem 1.25rem rgba(25,45,36,.04)}
.jobs-page .jobs-toolbar{grid-template-columns:minmax(18rem,1fr) minmax(13rem,18rem) auto}
.events-toolbar{display:grid;grid-template-columns:minmax(18rem,1fr) minmax(12rem,16rem) minmax(10rem,13rem);align-items:center}
:is(.job-search,.event-search),:is(.jobs-page .jobs-toolbar,.events-toolbar) select{height:var(--control-height);min-height:var(--control-height);border-color:var(--color-border);border-radius:var(--radius-control);background:#fff}
:is(.job-search,.event-search) input{min-height:0;font-size:.875rem}
:is(.jobs-page .jobs-body,.events-body){height:40.625rem;border-color:var(--color-border);border-radius:0 0 var(--radius-card) var(--radius-card);box-shadow:var(--shadow-card)}
:is(.jobs-page .jobs-body,.events-body){grid-template-columns:minmax(19rem,22.5rem) minmax(0,1fr)}
:is(.jobs-list,.events-list){background:var(--color-surface-soft);scrollbar-width:thin;scrollbar-color:#aab1ad transparent}
:is(.job-card,.event-card-row){padding:1.125rem 1.25rem}
:is(.job-card,.event-card-row):hover,:is(.job-card,.event-card-row).active{background:var(--color-surface);box-shadow:inset .25rem 0 var(--color-accent)}
:is(.job-card h3,.event-card-copy h3){font-family:var(--font-editorial);font-size:1rem;line-height:1.35}
:is(.job-card p,.event-card-copy>span){font-family:var(--font-ui);font-size:.6875rem;line-height:1.45}
:is(.job-card footer,.event-card-copy footer){font-family:var(--font-ui);font-size:.625rem}
:is(.job-pill,.event-card-copy footer i,.event-format){font-family:var(--font-ui);font-size:.625rem;line-height:1.2}
:is(.job-detail,.event-detail){padding:2rem 2.5rem 3.5rem}
:is(.jobs-page .job-detail h1,.event-detail-card h1){font-family:var(--font-editorial);font-size:clamp(1.875rem,2.15vw,2.25rem);font-weight:400;line-height:1.12;letter-spacing:-.025rem}
:is(.job-detail-copy,.event-description){max-width:49rem;color:var(--color-ink-soft);font-family:var(--font-editorial);font-size:.875rem;line-height:1.72}
.event-facts small{font-size:.625rem}.event-facts strong{font-size:.75rem}.event-facts em{font-size:.6875rem}
.events-hero::after{content:"\00b6"}

@media(max-width:1000px) and (min-width:801px){
  :is(.jobs-page,.events-page){padding-inline:1.375rem}
  :is(.jobs-hero,.events-hero){padding:2rem}
  :is(.jobs-hero,.events-hero) h1{font-size:2.125rem}
  :is(.jobs-page .jobs-body,.events-body){grid-template-columns:18.75rem minmax(0,1fr)}
  :is(.job-detail,.event-detail){padding:1.625rem 1.75rem 3rem}
}

@media(max-width:800px){
  :is(.jobs-page,.events-page){padding:0 .75rem 5.375rem}
  :is(.jobs-hero,.events-hero){min-height:15rem;margin-bottom:.75rem;padding:1.375rem 1.25rem;border-radius:var(--radius-card)}
  :is(.jobs-hero,.events-hero) h1{margin:.375rem 0 .625rem;font-size:1.875rem;line-height:1.08;letter-spacing:-.025rem}
  :is(.jobs-hero,.events-hero)>div>p:last-child{font-family:var(--font-ui);font-size:.75rem;line-height:1.5}
  :is(.career-stats,.events-stats){display:none;margin-top:1.125rem;gap:1.125rem}
  :is(.career-stats,.events-stats) div{padding-left:0;border-left:0}
  :is(.career-stats,.events-stats) div:nth-child(n+2){display:none}
  :is(.jobs-hero-action,.events-hero-action){position:static;width:100%;min-height:2.875rem;margin-top:1rem}
  :is(.jobs-page .jobs-toolbar,.events-toolbar){position:sticky;top:7.625rem;z-index:16;display:grid;grid-template-columns:1fr 1fr;margin:0;padding:.625rem;gap:.5rem;border:1px solid #d6ddd8;border-radius:var(--radius-card);background:rgba(255,253,250,.97);box-shadow:0 .5rem 1.5rem rgba(18,49,39,.09);backdrop-filter:blur(.875rem)}
  :is(.job-search,.event-search){grid-column:1/-1;height:3rem;min-height:3rem;padding-inline:.875rem}
  :is(.jobs-page .jobs-toolbar,.events-toolbar) select{width:100%;min-width:0;height:2.75rem;min-height:2.75rem;font-size:.8125rem}
  .jobs-page .jobs-toolbar>button{display:none}
  :is(.jobs-page-top,.events-page-top)>button:first-child{min-height:2.75rem}
  .event-type-strip button{min-height:2.75rem}
  .events-body{display:block;height:auto;margin-top:.75rem;overflow:visible;border:0;background:transparent;box-shadow:none}
  .events-list{display:flex;height:auto;max-height:none;overflow-x:auto;overflow-y:hidden;border:0;border-bottom:1px solid var(--color-border);scroll-snap-type:x proximity}
  .event-card-row{flex:0 0 16.25rem;min-height:9.25rem;padding:1rem;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);scroll-snap-align:start}
  .event-card-row+.event-card-row{margin-left:.625rem}
  .event-card-copy>small,.event-card-copy>b,.event-card-copy>span,.event-card-copy footer{display:block}
  .event-card-copy h3{font-size:1rem}
  .event-detail{min-height:32rem;padding:1.5rem .375rem 4rem}
  .event-detail-card header{flex-direction:column}
  .event-detail-card h1{font-size:1.6875rem}
  .event-facts{grid-template-columns:1fr}
  .event-description{font-size:.875rem;line-height:1.68}
}
@media(max-width:480px){:is(.jobs-hero,.events-hero){min-height:17.625rem}}

/* Shared Firms and Colleges card-directory template. */
:is(.firms-page,.colleges-page){max-width:none;padding:2rem var(--page-gutter) 5rem;background:var(--color-canvas)}
:is(.firms-directory,.colleges-directory,.firm-detail,.college-detail){width:100%;max-width:var(--page-max);margin-inline:auto}
:is(.firms-hero,.colleges-hero){min-height:16.25rem;grid-template-columns:minmax(0,1.45fr) minmax(17rem,.75fr);gap:3rem;align-items:end;padding:2.5rem 3rem;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-panel);box-shadow:0 1.25rem 3.25rem rgba(19,49,39,.14)}
:is(.firms-hero,.colleges-hero) h1{margin:.5rem 0 .875rem;font-family:var(--font-editorial);font-size:clamp(2.25rem,2.5vw,2.625rem);font-weight:400;line-height:1.06;letter-spacing:-.045rem}
:is(.firms-hero,.colleges-hero)>div>p:last-child{max-width:39rem;margin-bottom:0;color:#d2ded9;font-family:var(--font-ui);font-size:.8125rem;line-height:1.6}
:is(.firms-hero,.colleges-hero) label{width:100%;height:3rem;min-height:3rem;padding-inline:1rem;border-radius:var(--radius-control);font-family:var(--font-ui);font-size:.875rem;box-shadow:0 .5rem 1.5rem rgba(6,34,26,.13)}
:is(.firms-hero,.colleges-hero) input{min-height:0;font-family:var(--font-ui);font-size:.875rem}
:is(.firms-directory-head,.colleges-directory-head){margin:2rem 0 1rem}
:is(.firms-directory-head,.colleges-directory-head) h2{margin:.25rem 0 0;font-family:var(--font-editorial);font-size:1.75rem;font-weight:400;line-height:1.15}
:is(.firm-card-grid,.college-card-grid){grid-template-columns:repeat(3,minmax(0,1fr));gap:1.125rem;justify-content:stretch}
:is(.firm-card,.college-card){min-height:18.75rem;border-color:var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card)}
:is(.firm-card,.college-card):hover{transform:translateY(-.1875rem);border-color:var(--color-border-strong);box-shadow:var(--shadow-raised)}
:is(.firm-card-cover,.college-card-cover){height:6rem}
:is(.firm-card-body,.college-card-body){padding:0 1.25rem 1.25rem}
:is(.firm-logo,.college-logo){width:4.5rem;height:4.5rem;margin-top:-2.25rem;border-width:.3125rem}
:is(.firm-card h3,.college-card h3){margin:.875rem 0 .375rem;font-family:var(--font-editorial);font-size:1.25rem;font-weight:400;line-height:1.22}
:is(.firm-card p,.college-card-body>p:not(.eyebrow)){min-height:2.5rem;color:var(--color-muted);font-family:var(--font-ui);font-size:.75rem;line-height:1.5}
:is(.firm-card-meta,.college-card-meta){font-family:var(--font-ui);font-size:.6875rem;line-height:1.4}
:is(.firm-card-practice,.college-programmes){margin-top:1rem;padding-top:.75rem}
:is(.firm-card-practice,.college-programmes span){font-family:var(--font-ui);font-size:.625rem;line-height:1.3}
:is(.firm-profile-name h1,.college-profile-identity h1){font-family:var(--font-editorial);font-size:clamp(1.875rem,2.3vw,2.375rem);font-weight:400;line-height:1.12}
:is(.firm-panel,.college-panel){padding:1.5rem;border-color:var(--color-border);border-radius:var(--radius-card);box-shadow:0 .375rem 1.5rem rgba(25,45,36,.045)}
:is(.firm-panel,.college-panel) h2{font-family:var(--font-editorial);font-size:1.5rem;font-weight:400}
:is(.firm-about-copy,.college-about){color:var(--color-ink-soft);font-family:var(--font-editorial);font-size:.9375rem;line-height:1.72}

@media(min-width:1001px){
  :is(.firms-page,.colleges-page){position:relative}
  :is(.firms-page-top,.colleges-page-top){position:relative;top:auto;z-index:5;width:100%;height:0;min-height:0;margin:0;border:0;padding:0;background:transparent;box-shadow:none;backdrop-filter:none}
  :is(.firms-page-top,.colleges-page-top) .primary-btn{position:absolute;top:1.5rem;right:calc(var(--page-gutter) + .25rem);z-index:3;min-height:3rem;padding-inline:1.25rem;border:1px solid rgba(255,255,255,.2);box-shadow:0 .625rem 1.5625rem rgba(4,27,20,.24)}
}

@media(max-width:1100px) and (min-width:801px){
  :is(.firms-hero,.colleges-hero){grid-template-columns:1fr;gap:1.5rem;padding:2rem}
  :is(.firm-card-grid,.college-card-grid){grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:800px){
  :is(.firms-page,.colleges-page){padding:1.125rem .75rem 5.375rem}
  :is(.firms-page-top,.colleges-page-top)>button:first-child{min-height:2.75rem}
  :is(.firms-page-top,.colleges-page-top) .primary-btn{min-height:2.75rem;padding-inline:.75rem;font-size:.75rem}
  :is(.firms-hero,.colleges-hero){min-height:15rem;grid-template-columns:1fr;gap:1.125rem;padding:1.375rem 1.25rem;border-radius:var(--radius-card)}
  :is(.firms-hero,.colleges-hero) h1{margin:.375rem 0 .625rem;font-size:1.875rem;line-height:1.08;letter-spacing:-.025rem}
  :is(.firms-hero,.colleges-hero)>div>p:last-child{font-size:.75rem;line-height:1.5}
  :is(.firms-hero,.colleges-hero) label{height:2.75rem;min-height:2.75rem}
  :is(.firms-directory-head,.colleges-directory-head){margin:1.5rem 0 .875rem}
  :is(.firms-directory-head,.colleges-directory-head) h2{font-size:1.5rem}
  :is(.firm-card-grid,.college-card-grid){grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
  :is(.firm-card,.college-card){min-height:0}
  :is(.firm-card h3,.college-card h3){font-size:1.125rem}
  :is(.firm-profile-grid,.college-profile-grid){grid-template-columns:1fr}
}

@media(max-width:560px){
  :is(.firms-hero,.colleges-hero){min-height:19rem}
  :is(.firm-card-grid,.college-card-grid){grid-template-columns:1fr}
  :is(.firm-card,.college-card){min-height:18rem}
  :is(.firm-profile-identity,.college-profile-identity){display:block;padding:0 1.25rem 1.5rem}
  :is(.firm-profile-name h1,.college-profile-identity h1){font-size:1.875rem}
}
/* Card-directory content-safe hero heights. */
@media(max-width:1100px) and (min-width:801px){:is(.firms-hero,.colleges-hero){min-height:18.75rem}}
@media(max-width:800px) and (min-width:561px){:is(.firms-hero,.colleges-hero){min-height:15.625rem}}
@media(max-width:560px){:is(.firms-hero,.colleges-hero){min-height:19.375rem}}
/* Shared Profile and Article reading hierarchy. The editor is intentionally excluded. */
:is(.profile-page,.article-page){color:var(--color-ink)}
.profile-page{max-width:var(--page-max);padding:2rem var(--page-gutter) 5rem}
:is(.profile-page-top,.article-topbar){min-height:4rem;height:4rem;border-bottom:1px solid var(--color-border);background:rgba(255,253,250,.96);box-shadow:0 .375rem 1.375rem rgba(24,44,36,.045)}
.profile-page-top>div,.article-topbar>div{gap:.5rem}
:is(.profile-page-top,.article-topbar) :is(.outline-btn,.primary-btn){min-height:2.75rem;border-radius:var(--radius-control);font-size:.8125rem}
.dossier-hero{margin-bottom:1.25rem;border:1px solid var(--color-border);border-radius:var(--radius-panel);box-shadow:0 1rem 2.75rem rgba(21,50,40,.1)}
.dossier-cover{height:11rem}
.dossier-identity{padding:0 2rem 1.5rem}
.dossier-avatar{width:6.5rem;height:6.5rem;margin-top:-3.125rem;border-width:.375rem}
.dossier-name{padding:1rem 0 0 1.25rem}
.name-row h1{font-family:var(--font-editorial);font-size:2rem;font-weight:400;line-height:1.12;letter-spacing:-.025rem}
.dossier-name>p{margin:.375rem 0 .625rem;font-family:var(--font-ui);font-size:.9375rem;line-height:1.45}
.identity-chip{font-family:var(--font-ui);font-size:.625rem;line-height:1.2}
.identity-meta{gap:1rem;font-family:var(--font-ui);font-size:.75rem;line-height:1.4}
.dossier-stats{padding:.875rem 2rem;gap:2.5rem}
.dossier-stats div{padding-right:2.5rem}
.dossier-stats strong{font-family:var(--font-editorial);font-size:1.375rem}
.dossier-stats span{font-family:var(--font-ui);font-size:.6875rem}
.dossier-grid{grid-template-columns:13.75rem minmax(27.5rem,1fr) 18.75rem;gap:1.125rem}
:is(.left-profile-card,.completeness-card,.profile-section-nav,.profile-privacy,.dossier-card){border-color:var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:0 .3125rem 1.25rem rgba(25,45,36,.04)}
.dossier-card{padding:1.375rem}
.section-heading{margin-bottom:.875rem}
.section-heading h2{font-family:var(--font-editorial);font-size:1.3125rem;font-weight:400;line-height:1.2}
.long-value,.profile-value.long-value{font-family:var(--font-editorial);font-size:.9375rem;line-height:1.72}
.profile-section-nav a{min-height:2.25rem;align-items:center;font-size:.75rem}
.left-profile-card h3{font-family:var(--font-editorial);font-size:1.125rem}
.left-profile-card p{font-size:.75rem}.availability{font-size:.6875rem;line-height:1.35}
.left-profile-card .primary-btn{min-height:2.75rem;font-size:.75rem}
.completeness-card h4{font-family:var(--font-editorial);font-size:.875rem}.completeness-card p{font-size:.6875rem}
.profile-privacy strong{font-size:.75rem}.profile-privacy small{font-size:.6875rem;line-height:1.35}
.details-card label{font-size:.6875rem}.details-card .profile-value{font-size:.8125rem}
.tag-list span{font-size:.6875rem}.dossier-card>p{font-size:.8125rem}

.article-topbar{max-width:var(--page-max);padding-inline:var(--page-gutter)}
.article-hero{padding:3.25rem var(--page-gutter) 3rem}
.article-hero::after{content:"\00a7"}
.article-hero-inner{max-width:52rem}
.article-kicker{font-family:var(--font-ui);font-size:.6875rem;line-height:1.3}
.article-hero h1{margin:1.125rem 0 1rem;font-family:var(--font-editorial);font-size:var(--text-display);font-weight:400;line-height:1.08;letter-spacing:-.055rem}
.article-hero>div>p{max-width:46rem;font-family:var(--font-editorial);font-size:1.0625rem;line-height:1.55}
.article-byline{margin-top:1.5rem}.article-byline span,.article-published{font-family:var(--font-ui);font-size:.75rem}
.article-layout{max-width:var(--page-max);grid-template-columns:12rem minmax(31.25rem,45rem) 15rem;gap:2rem;padding:2.5rem var(--page-gutter) 5rem;justify-content:center}
:is(.article-author-card,.article-side-card,.article-contents){padding:1rem;border-color:var(--color-border);border-radius:var(--radius-card);background:var(--color-surface)}
.article-author-card h3{font-family:var(--font-editorial);font-size:1rem}.article-author-card>p:not(.eyebrow){font-size:.6875rem;line-height:1.4}
.article-contents a{min-height:2.25rem;display:flex;align-items:center;font-size:.75rem;line-height:1.35}
.article-content{padding:3rem 3.5rem;border-color:var(--color-border);border-radius:var(--radius-card);font-family:var(--font-editorial);font-size:1.0625rem;line-height:1.78;box-shadow:var(--shadow-card)}
.article-deck{margin-bottom:2rem;padding-bottom:1.75rem;font-size:1.25rem;line-height:1.55}
.article-content h2{margin:2.5rem 0 .875rem;font-family:var(--font-editorial);font-size:1.75rem;line-height:1.22}
.article-content h3{margin:1.75rem 0 .5rem;font-family:var(--font-editorial);font-size:1.25rem;line-height:1.3}
.article-content blockquote{margin:2rem -1rem;padding:1.5rem 1.75rem;font-size:1.25rem;line-height:1.5}
.article-side-card{font-size:.75rem}.article-side-card li{font-size:.75rem;line-height:1.5}
.discussion-card strong{font-family:var(--font-editorial);font-size:1rem}
.discussion-card .primary-btn{font-size:.75rem}

@media(max-width:1180px) and (min-width:821px){
  .dossier-grid{grid-template-columns:13rem minmax(25rem,1fr)}
  .dossier-side{grid-column:2}
  .article-layout{grid-template-columns:11rem minmax(28rem,44rem)}
}

@media(max-width:820px){
  .profile-page{padding:1.125rem .875rem 4.5rem}
  :is(.profile-page-top,.article-topbar)>button:first-child{min-height:2.75rem}
  .profile-page-top{overflow-x:auto}.profile-page-top>div{flex:none}
  .dossier-cover{height:7.75rem}.dossier-identity{padding:0 1rem 1.125rem}
  .dossier-avatar{width:5.25rem;height:5.25rem;margin-top:-2.5rem}
  .dossier-name{padding:.625rem 0 0 .75rem}.name-row h1{font-size:1.5rem}
  .dossier-name>p{font-size:.8125rem}.identity-meta{font-size:.75rem}
  .dossier-stats{padding:.75rem;gap:.375rem;justify-content:space-around}.dossier-stats div{padding:0;border:0}
  .dossier-grid{grid-template-columns:1fr}.dossier-card{padding:1.125rem}
  .dossier-left,.dossier-side{position:static;max-height:none}
  .article-hero{padding:2.25rem 1.125rem 2rem}.article-hero h1{font-size:2.125rem;letter-spacing:-.035rem}
  .article-hero>div>p{font-size:.9375rem}.article-published{display:none}
  .article-layout{display:block;padding:1.25rem .875rem 4.5rem}
  .article-left{position:static}.article-author-card{display:none}
  .article-contents{padding:.75rem;gap:1rem;overflow-x:auto}.article-contents a{min-height:2.75rem;white-space:nowrap}
  .article-content{padding:1.75rem 1.25rem;font-size:1rem;line-height:1.72}
  .article-deck{font-size:1.125rem}.article-content h2{font-size:1.5rem}.article-content h3{font-size:1.125rem}
  .article-content blockquote{margin:1.75rem -.5rem;padding:1.25rem;font-size:1.125rem}
}

@media(max-width:480px){
  .profile-page{padding-inline:.625rem}.profile-page-top>div{max-width:75vw}
  .profile-page-top :is(.outline-btn,.primary-btn){font-size:.6875rem;padding-inline:.625rem}
  .dossier-name{min-width:0}.name-row{display:block}.identity-chip{display:inline-flex;margin-top:.25rem}
  .dossier-left,.dossier-side{display:flex}.dossier-card{padding:1rem}
  .article-hero h1{font-size:2rem}.article-content{padding:1.5rem 1rem}
}
/* Dark promotional rail-card exception. */
.rail-card.event-card{background:var(--color-primary);border-color:var(--color-primary);color:#f9f6ed}
.rail-card.event-card .eyebrow{color:#d6b778}
.rail-card.event-card h3{color:#f9f6ed}
.rail-card.event-card p{color:#cbd5d0}
.rail-card.event-card .outline-btn{border-color:#b7c9c0;background:transparent;color:#fff}
.rail-card.event-card .outline-btn:hover{background:rgba(255,255,255,.1)}
/* Thin sidebar scrollbar with a visual overflow cue. */
.sidebar-with-assistant{position:relative}.sidebar-with-assistant .side-nav{scrollbar-width:none;box-shadow:inset 0 -1.25rem 1rem -1.15rem rgba(20,55,44,.38)}
.sidebar-with-assistant .side-nav::-webkit-scrollbar{display:none;width:0;height:0}
.sidebar-with-assistant .side-nav::-webkit-scrollbar-track{background:transparent}
.sidebar-with-assistant .side-nav::-webkit-scrollbar-thumb{background:transparent}.sidebar-scroll-indicator{position:absolute;right:12px;z-index:3;width:2px;border-radius:999px;background:rgba(71,101,90,.58);pointer-events:none;transition:top .05s linear}.sidebar-scroll-indicator[hidden]{display:none}

/* Universal directory search-icon geometry. */
:is(.job-search,.event-search,.firms-hero label,.colleges-hero label)>svg{width:1.125rem;height:1.125rem;min-width:1.125rem;flex:0 0 1.125rem;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}
/* Opaque sticky directory filters prevent content bleed-through. */
:is(.jobs-page .jobs-toolbar,.events-toolbar){background:var(--paper);backdrop-filter:none;box-shadow:0 .625rem 1.5rem rgba(18,49,39,.12)}
/* Universal desktop sidebar geometry. */
:root{--desktop-header-height:4.625rem;--desktop-rail-gap:1.5rem;--desktop-rail-bottom:1rem;--desktop-rail-top:calc(var(--desktop-header-height) + var(--desktop-rail-gap));--desktop-rail-height:calc(100vh - var(--desktop-rail-top) - var(--desktop-rail-bottom))}
@media(min-width:1001px){
  .app-shell{min-height:calc(100vh - var(--desktop-header-height));padding-top:var(--desktop-rail-gap);padding-bottom:var(--desktop-rail-bottom)}
  :is(.profile-page,.jobs-page,.events-page,.firms-page,.colleges-page){padding-bottom:1.5rem}
  :is(.article-layout,.article-editor-shell){padding-bottom:1.5rem}
  .sidebar.sidebar-with-assistant{top:var(--desktop-rail-top);height:var(--desktop-rail-height);max-height:var(--desktop-rail-height)}
  .right-rail .event-card{top:var(--desktop-rail-top)}
  @media(min-width:1351px){body:not(.profile-view):not(.jobs-view):not(.events-view):not(.firms-view):not(.colleges-view):not(.article-view):not(.article-editor-view) .app-shell>.sidebar.sidebar-with-assistant{position:fixed;left:max(var(--site-gutter),calc((100vw - var(--site-frame))/2 + var(--site-gutter)));width:240px}body:not(.profile-view):not(.jobs-view):not(.events-view):not(.firms-view):not(.colleges-view):not(.article-view):not(.article-editor-view) .app-shell>.feed{grid-column:2}body:not(.profile-view):not(.jobs-view):not(.events-view):not(.firms-view):not(.colleges-view):not(.article-view):not(.article-editor-view) .app-shell>.right-rail{grid-column:3}}
  body:is(.profile-view,.jobs-view,.events-view,.firms-view,.colleges-view,.article-view,.article-editor-view) .app-shell{min-height:calc(100vh - var(--desktop-header-height));padding-top:var(--desktop-rail-gap);padding-bottom:var(--desktop-rail-bottom)}
  body:is(.profile-view,.jobs-view,.events-view,.firms-view,.colleges-view,.article-view,.article-editor-view) .app-shell>.sidebar.sidebar-with-assistant{height:var(--desktop-rail-height);max-height:var(--desktop-rail-height)}
}






/* Jobs search is one compound control: never draw a second input box inside it. */
.jobs-page .job-search>input,
.jobs-page .job-search>input:hover,
.jobs-page .job-search>input:focus,
.jobs-page .job-search>input:focus-visible{
  width:100%;min-width:0;height:100%;padding:0;
  border:0!important;border-radius:0!important;outline:0!important;
  background:transparent!important;box-shadow:none!important;appearance:none;
}
.jobs-page .job-search:focus-within{border-color:#6f9385;box-shadow:0 0 0 3px rgba(37,105,82,.12)}

/* Align the careers hero with the top of the shared desktop sidebar. */
@media(min-width:1001px){:is(.jobs-page,.events-page){padding-top:var(--desktop-rail-gap);padding-bottom:var(--desktop-rail-bottom)}}

/* Directional sidebar overflow cues: each shadow exists only while more content remains that way. */
.sidebar-with-assistant .side-nav{box-shadow:none;transition:box-shadow .16s ease}
.sidebar-with-assistant .side-nav.can-scroll-up{box-shadow:inset 0 1.25rem 1rem -1.15rem rgba(20,55,44,.32)}
.sidebar-with-assistant .side-nav.can-scroll-down{box-shadow:inset 0 -1.25rem 1rem -1.15rem rgba(20,55,44,.32)}
.sidebar-with-assistant .side-nav.can-scroll-up.can-scroll-down{box-shadow:inset 0 1.25rem 1rem -1.15rem rgba(20,55,44,.32),inset 0 -1.25rem 1rem -1.15rem rgba(20,55,44,.32)}
.sidebar-with-assistant .side-nav{transition:none}
