/* Independent faculty site · UA-inspired Crimson Flame #9E1B32,
   Capstone Gray #828A8F, Victory White; no institutional logos reproduced. */
:root { --crimson:#9e1b32; --crimson-deep:#721225; --crimson-ink:#4a0e1b; --gray:#828a8f; --ink:#22252b; --muted:#58606a; --line:#e8e4e2; --paper:#ffffff; --warm:#f8f6f4; --shadow:0 14px 45px rgba(40,22,27,.07); --radius:16px; }
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.72 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased} img{max-width:100%;height:auto} a{color:var(--crimson);text-underline-offset:3px} a:hover{color:var(--crimson-deep)} a:focus-visible,summary:focus-visible{outline:3px solid #d99b7e;outline-offset:4px;border-radius:2px} h1,h2,h3,h4{line-height:1.2;letter-spacing:-.035em;margin:0 0 .7em} h1,h2{font-family:Georgia,"Times New Roman",serif} h1{font-size:clamp(2.7rem,5vw,4.6rem)}h2{font-size:clamp(1.75rem,3vw,2.55rem)}h3{font-size:1.2rem}p{margin:0 0 1.15rem} .container{width:min(1100px,calc(100% - 44px));margin-inline:auto}.skip-link{position:absolute;top:-100px;left:8px;padding:10px 16px;background:#fff;z-index:999}.skip-link:focus{top:8px}.top-rule{height:5px;background:var(--crimson)}
.site-header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}.nav-wrap{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:24px;width:min(1220px,calc(100% - 44px));margin:auto}.identity{display:flex;align-items:center;gap:13px;text-decoration:none;color:var(--ink);flex-shrink:0}.identity:hover{color:var(--ink)}.identity-monogram{background:var(--crimson);color:white;display:grid;place-items:center;width:44px;height:44px;border-radius:11px;font:bold 21px Georgia,serif;letter-spacing:-.08em}.identity-dot{color:#e2bbc3}.identity-copy{display:flex;flex-direction:column;line-height:1.3}.identity-copy strong{font-size:1rem;letter-spacing:-.02em}.identity-copy small{font-size:.69rem;color:var(--muted);margin-top:4px}.desktop-nav{display:flex;gap:19px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.desktop-nav a{white-space:nowrap;font-size:.82rem;font-weight:700;text-decoration:none;color:#414148;letter-spacing:.005em;padding:12px 0;border-bottom:2px solid transparent}.desktop-nav a:hover,.desktop-nav a[aria-current=page]{color:var(--crimson);border-color:var(--crimson)}.mobile-menu{display:none;position:relative}.mobile-menu summary{cursor:pointer;font-weight:700;color:var(--crimson);list-style:none;padding:9px}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu nav{position:absolute;right:0;top:100%;width:min(280px,80vw);display:grid;background:white;padding:12px;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.mobile-menu nav a{text-decoration:none;padding:10px 12px;color:var(--ink);font-weight:650}.mobile-menu nav a[aria-current=page]{color:var(--crimson);background:var(--warm)}
.eyebrow,.section-label{display:inline-block;color:var(--crimson);font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;margin:0 0 18px}.intro{max-width:850px;color:var(--muted);font-size:1.12rem;line-height:1.7}.interior-heading{padding:75px 0 58px;background:linear-gradient(125deg,#fff 0%,#fbf8f7 72%,#f7edef 100%);border-bottom:1px solid var(--line)}.interior-heading h1{margin:0 0 16px;color:var(--crimson-ink)}.interior-heading .intro{margin:0}.content-prose{padding:55px 0 100px;max-width:1050px;min-height:40vh}.content-prose h2{margin:2.1rem 0 1rem;color:var(--crimson-ink)}.content-prose h2:first-child{margin-top:0}.content-prose h3{margin:1.5rem 0 .55rem}.content-prose li{margin:0 0 8px}.content-prose ul{padding-left:22px}.content-prose hr{border:0;border-top:1px solid var(--line);margin:35px 0}.content-prose blockquote{border-left:4px solid var(--crimson);background:var(--warm);padding:18px 22px;margin:25px 0}.content-prose blockquote p:last-child{margin-bottom:0}
.hero{background:radial-gradient(circle at 90% 8%,rgba(255,255,255,.12),transparent 34%),linear-gradient(118deg,#4b0f20 0%,#7a1730 54%,#a72945 100%);color:#fff;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;pointer-events:none;inset:auto -150px -260px auto;width:620px;height:620px;border:1px solid rgba(255,255,255,.12);border-radius:50%;box-shadow:0 0 0 80px rgba(255,255,255,.025),0 0 0 180px rgba(255,255,255,.022)}.hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:1.4fr .72fr;gap:66px;align-items:center;padding:102px 0 100px}.hero .eyebrow{color:#ffdfe5}.hero h1{font-size:clamp(3.35rem,6.4vw,5.9rem);color:white;margin:0 0 10px;letter-spacing:-.045em}.hero h1 span{color:#f0c6cf}.hero-role{font-size:1.2rem;font-weight:600;margin:0 0 20px;color:#ffe8ec}.hero-description{font-size:1.1rem;line-height:1.85;color:#f8ebed;max-width:690px;margin-bottom:30px}.hero-photo-wrap{max-width:310px;margin:auto;position:relative}.hero-photo{width:100%;aspect-ratio:4/4.7;object-fit:cover;object-position:center top;display:block;border-radius:18px;box-shadow:0 24px 65px rgba(12,0,8,.26);background:#f3f3f3}.hero-photo-caption{text-align:center;font-size:.77rem;color:#f5ced6;margin-top:16px}.button-row{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:7px;padding:12px 20px;text-decoration:none;font-size:.88rem;font-weight:800;line-height:1.5;border:1px solid transparent;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-2px)}.btn-light{color:var(--crimson-ink);background:white}.btn-light:hover{background:#fae9ed;color:var(--crimson-ink)}.btn-outline{color:white;border-color:rgba(255,255,255,.58)}.btn-outline:hover{background:white;color:var(--crimson-ink)}.btn-crimson{background:var(--crimson);color:white}.btn-crimson:hover{background:var(--crimson-deep);color:white}
.home-section{padding:79px 0}.home-section.alt{background:var(--warm)}.home-section h2{color:var(--crimson-ink)}.section-header{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:29px}.section-header h2{margin:0}.text-link{text-decoration:none;font-size:.89rem;font-weight:750;white-space:nowrap}.text-link:after{content:"  →"}.two-up{display:grid;grid-template-columns:1.27fr .73fr;gap:50px;align-items:start}.lede-copy{font-size:1.09rem;max-width:720px;color:#39404a;line-height:1.9}.aside-note{background:var(--warm);padding:29px;border-radius:var(--radius);border-top:4px solid var(--crimson)}.aside-note h3{margin:0 0 15px;font-family:Georgia,serif;color:var(--crimson-ink)}.aside-note a{display:block;margin:9px 0;font-size:.91rem;font-weight:650;text-decoration:none}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.tile{background:white;border:1px solid #e7e3e2;border-radius:var(--radius);padding:29px 25px;box-shadow:0 6px 24px rgba(40,22,27,.03);transition:transform .2s,box-shadow .2s}.tile:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.tile .card-index{font-size:.75rem;font-weight:800;color:var(--crimson);letter-spacing:.12em}.tile h3{font-family:Georgia,serif;font-size:1.26rem;margin:20px 0 12px;color:var(--crimson-ink)}.tile p{font-size:.92rem;color:var(--muted);margin:0}.tile a{display:inline-block;margin-top:16px;font-size:.85rem;font-weight:750;text-decoration:none}.publication-list{display:grid;gap:12px}.publication-entry{border:1px solid var(--line);background:white;border-radius:12px;padding:21px 24px;display:grid;grid-template-columns:66px 1fr;gap:15px;align-items:start}.publication-year{font-weight:850;color:var(--crimson);font-size:.89rem}.publication-entry h3{font-size:1.01rem;letter-spacing:0;font-family:inherit;line-height:1.48;margin:0 0 5px}.publication-entry h3 a{text-decoration:none;color:var(--ink)}.publication-entry h3 a:hover{color:var(--crimson)}.publication-entry p{color:var(--muted);font-size:.84rem;margin:0}.news-feed{display:grid;gap:0;border-top:1px solid var(--line)}.news-row{display:grid;grid-template-columns:125px 1fr;gap:20px;padding:19px 0;border-bottom:1px solid var(--line);font-size:.95rem}.news-date{color:var(--crimson);font-weight:800;font-size:.85rem}.news-row p{margin:0}.cta-band{background:var(--crimson-ink);color:white;padding:47px 0}.cta-content{display:flex;align-items:center;justify-content:space-between;gap:25px}.cta-band h2{color:#fff;margin:0 0 7px;font-size:2rem}.cta-band p{color:#edd8df;margin:0}
.content-prose .mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:24px 0 38px}.content-prose .info-card{background:var(--warm);border:1px solid var(--line);border-radius:13px;padding:25px}.content-prose .info-card h3{margin:4px 0 12px;color:var(--crimson-ink)}.content-prose .info-card p:last-child{margin-bottom:0}.pub-item{padding:24px 0;border-bottom:1px solid var(--line)}.pub-item h3{font-size:1.08rem;letter-spacing:0;line-height:1.45;margin:0 0 9px}.pub-item .authors{margin:0 0 6px;font-size:.91rem;color:var(--muted)}.pub-item .venue{font-size:.88rem;margin:0 0 10px;font-weight:700;color:var(--crimson)}.pub-item .links{font-size:.86rem;margin:0}.pub-item .links a{margin-right:14px;font-weight:700}.kicker{color:var(--crimson);font-size:.76rem;text-transform:uppercase;letter-spacing:.13em;font-weight:800;margin:0 0 8px}.timeline-item{display:grid;grid-template-columns:115px 1fr;gap:24px;padding:22px 0;border-bottom:1px solid var(--line)}.timeline-item time{color:var(--crimson);font-weight:800}.timeline-item h3{margin:0 0 7px}.timeline-item p:last-child{margin:0}.callout{border-left:4px solid var(--crimson);background:var(--warm);border-radius:0 10px 10px 0;padding:22px 26px;margin:28px 0}.callout p:last-child{margin-bottom:0}.muted{color:var(--muted)}.profile-card{display:flex;align-items:center;gap:22px;background:var(--warm);border:1px solid var(--line);border-radius:14px;padding:24px;margin:24px 0}.profile-card img{width:110px;height:125px;border-radius:9px;object-fit:cover;object-position:top}.profile-card h3{margin:0 0 5px}.profile-card p{margin:0}.contact-list{list-style:none;padding:0!important}.contact-list li{padding:14px 0;border-bottom:1px solid var(--line)}.site-footer{background:#252229;color:#f6f1f3;padding:50px 0 26px}.footer-grid{display:flex;align-items:start;justify-content:space-between;gap:30px}.footer-grid strong{display:block;margin-bottom:8px;font-size:1.05rem}.footer-grid span{display:block;color:#c7c4c7;font-size:.81rem}.footer-links{display:flex;gap:22px;flex-wrap:wrap}.footer-links a{color:#f7eaee;text-decoration:none;font-size:.82rem;font-weight:700}.footer-links a:hover{text-decoration:underline}.footer-bottom{margin-top:40px;padding-top:19px;border-top:1px solid #4d474c;color:#b5b0b4;font-size:.75rem;display:flex;justify-content:space-between;gap:20px}
@media(max-width:1150px){.desktop-nav{gap:12px}.desktop-nav a{font-size:.76rem}.identity-copy small{font-size:.62rem}}@media(max-width:970px){.desktop-nav{display:none}.mobile-menu{display:block}.hero-inner{gap:34px}}@media(max-width:700px){.container,.nav-wrap{width:min(100% - 34px,1100px)}.nav-wrap{min-height:75px}.identity-copy small{max-width:200px;line-height:1.25}.hero-inner{grid-template-columns:1fr;padding:60px 0 62px;gap:40px}.hero-photo-wrap{grid-row:1;max-width:220px;margin:0 14px}.hero h1{font-size:3.2rem}.hero-description{font-size:1rem}.home-section{padding:55px 0}.two-up,.card-grid,.content-prose .mini-grid{grid-template-columns:1fr}.two-up{gap:22px}.section-header{align-items:start;flex-direction:column}.publication-entry{grid-template-columns:1fr;gap:3px}.news-row{grid-template-columns:1fr;gap:3px}.cta-content,.footer-grid{align-items:start;flex-direction:column}.interior-heading{padding:50px 0 43px}.content-prose{padding:38px 0 70px}.timeline-item{grid-template-columns:1fr;gap:4px}.footer-bottom{flex-direction:column}.profile-card{align-items:start}.footer-links{gap:16px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.tile,.btn{transition:none}}
/* Research illustrations */
.research-illustration{margin:0 0 2rem;background:#f7f4f4;border-radius:16px;overflow:hidden;border:1px solid #e8e4e2}.research-illustration img{width:100%;display:block;max-height:390px;object-fit:cover}.research-illustration figcaption{padding:12px 20px;color:#58606a;font-size:.83rem}.research-cards .tile{padding:0 0 26px;overflow:hidden}.research-cards .tile-art{width:100%;height:150px;object-fit:cover;display:block;margin:0 0 24px}.research-cards .tile .card-index,.research-cards .tile h3,.research-cards .tile p,.research-cards .tile>a{margin-left:25px;margin-right:25px}.research-cards .tile .card-index{display:block}

.collaborator-card img{display:block;width:104px;height:104px;border-radius:50%;object-fit:cover;object-position:center top;border:3px solid #fff;box-shadow:0 0 0 2px #e3ccd3;margin:0 0 15px}.research-cards .tile-art{height:210px;object-fit:cover}.research-cards .tile{border-color:#e5d5db}

/* Awards page */
.award-spotlight{border:1px solid #e9d9df;border-top:5px solid #9e1b32;border-radius:15px;padding:clamp(22px,4vw,38px);background:linear-gradient(130deg,#fff,#fbf5f7)}.award-spotlight h2{margin:0 0 22px!important}.award-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:22px 0 26px}.award-metrics>div{padding:18px;background:#fff;border:1px solid #eadfe2;border-radius:11px;display:flex;flex-direction:column;gap:4px}.award-metrics span{font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:#59616b;font-weight:700}.award-metrics strong{font-size:2rem;line-height:1.2;color:#9e1b32}.award-metrics small{color:#5b606b;font-size:.78rem}.award-sources a{margin-right:18px;font-weight:700}.award-team{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin:25px 0 38px}.award-person{border:1px solid #e6dfe2;border-radius:14px;overflow:hidden;background:#fff}.award-person img{width:100%;aspect-ratio:5/4;object-fit:cover;object-position:center 24%;display:block;background:#f4eff0}.award-person>div{padding:21px}.award-person h3{margin:0 0 7px!important;color:#4a0e1b}.award-person p{font-size:.88rem}.award-person .award-role{font-weight:800;color:#9e1b32}.award-person a{font-size:.84rem;font-weight:700}@media(max-width:700px){.award-team,.award-metrics{grid-template-columns:1fr}.award-person img{max-height:270px}}


/* Homepage hero: mobile-first portrait and text layout */
.hero-photo-wrap{width:min(100%,310px);max-width:310px;min-width:0;margin-inline:auto}

.hero-photo{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;object-position:center 20%;border-radius:14px}
.hero-photo-caption{display:none}
.hero-inner>div{min-width:0}
.hero h1{overflow-wrap:normal}
@media(max-width:700px){
  .hero-inner{display:flex;flex-direction:column;align-items:stretch;gap:25px;padding:38px 0 48px}
  .hero-photo-wrap{order:0;width:clamp(164px,48vw,220px);max-width:220px;margin:0 auto}
  .hero-inner>div:first-child{order:1;text-align:center;width:100%}
  .hero .eyebrow{font-size:.66rem;line-height:1.55;letter-spacing:.1em;margin-bottom:12px}
  .hero h1{font-size:clamp(2.65rem,11vw,3.55rem);line-height:1.08;margin-bottom:12px}
  .hero-role{font-size:1rem;line-height:1.5;margin-bottom:14px}
  .hero-description{font-size:.97rem;line-height:1.65;max-width:34rem;margin:0 auto 22px}
  .hero .button-row{justify-content:center;gap:9px}
  .hero .btn{font-size:.83rem;padding:10px 14px}
}
@media(max-width:390px){
  .hero h1{font-size:2.55rem}
  .hero .btn{width:100%}
}


/* Unified homepage hero on desktop, tablet and mobile */
.hero-inner{display:grid;grid-template-columns:minmax(0,310px) minmax(0,1fr);align-items:center;gap:clamp(30px,5vw,72px);padding:clamp(55px,7vw,95px) 0}
.hero-photo-wrap{grid-column:1;grid-row:1;width:100%;max-width:310px;margin:0}
.hero-inner>div:first-child{grid-column:2;grid-row:1;min-width:0;text-align:left}
.hero-photo-caption{display:none!important}
.hero-photo{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;object-position:center 20%;border-radius:14px}
.hero h1{font-size:clamp(2.7rem,5vw,4.65rem);line-height:1.09}
.hero-description{font-size:clamp(.98rem,1.4vw,1.1rem);line-height:1.7}
.hero .button-row{justify-content:flex-start}
@media(max-width:700px){
 .hero-inner{display:flex;flex-direction:column;align-items:center;gap:25px;padding:38px 0 48px}
 .hero-photo-wrap{order:0;width:clamp(164px,48vw,220px);max-width:220px;margin:0 auto}
 .hero-inner>div:first-child{order:1;text-align:center;width:100%}
 .hero h1{font-size:clamp(2.65rem,10vw,3.55rem)}
 .hero-description{max-width:34rem;margin:0 auto 22px}
 .hero .button-row{justify-content:center}
}
\n.hero-photo-wrap::before,.hero-photo-wrap::after{content:none!important;display:none!important;border:0!important;box-shadow:none!important}\n