/* Shittu Adeyemi Moses (Author) | Esther Oduntan Research Portfolio */
/* ESTHER ODUNTAN · CONTACT PAGE · Classic editorial revision, 22 October 2026 */
body.eo-contact-page {background:#fffdfa;}
.eo-contact-page .eo-classic-banner {
  min-height:192px;
  padding:25px 0 26px;
  position:relative;
  isolation:isolate;
  background:#fbf8f2;
  background-image:linear-gradient(107deg,#fdfbf7 0%,#faf5eb 100%);
  border-bottom:1px solid #eadfce;
  overflow:hidden;
}
.eo-contact-page .eo-classic-banner::before {display:none;}
.eo-contact-page .eo-classic-banner .esther-oduntan-research-hero-inner{position:relative;z-index:2;}
.eo-contact-page .eo-classic-banner .esther-oduntan-eyebrow{color:#a87737;letter-spacing:.2em;font-size:11px;margin-bottom:8px;}
.eo-contact-page .eo-classic-banner h1{font:700 clamp(40px,5vw,62px)/1.09 "Lora",Georgia,serif;letter-spacing:-.06em;color:#0d2b50;margin:0;}
.eo-contact-page .eo-classic-banner h1 em{color:#b78645;font-style:normal;}
.eo-classic-banner-mark{position:absolute;right:max(7%,calc((100vw - 1250px)/2));top:-64px;font:700 270px/1 Georgia,serif;letter-spacing:-.11em;color:rgba(177,131,63,.075);pointer-events:none;white-space:nowrap;}
.eo-classic-banner-mark span{font-style:italic;}
.eo-contact-page .eo-classic-section{padding:53px 0 72px;}
.eo-contact-page .eo-classic-section *{box-sizing:border-box;}
.eo-classic-opening{display:flex;gap:50px;justify-content:space-between;align-items:end;padding:0 0 30px;border-bottom:1px solid #d9dfdf;margin-bottom:32px;}
.eo-classic-opening>div{min-width:0;}
.eo-classic-eyebrow,.eo-classic-smallcap{font:750 10.5px/1.5 "Manrope",Arial,sans-serif;letter-spacing:.17em;color:#ad7c3f;text-transform:uppercase;margin:0;}
.eo-classic-eyebrow span{margin-inline:10px;color:#bdbaa9;}
.eo-classic-opening h2{font:700 clamp(28px,3.1vw,42px)/1.23 "Lora",Georgia,serif;letter-spacing:-.04em;margin:10px 0 0;color:#112e51;}
.eo-classic-opening h2 em,.eo-classic-profiles-heading em{font-style:normal;color:#b4813e;}
.eo-classic-opening>p{font:400 14px/1.75 "Manrope",Arial,sans-serif;color:#66788c;width:min(315px,32%);margin:0 0 2px;text-align:left;}
.eo-classic-two-column{display:grid;grid-template-columns:minmax(0,.91fr) minmax(0,1.09fr);gap:clamp(28px,4vw,62px);align-items:start;}
.eo-classic-correspondence{min-width:0;}
.eo-classic-person{display:grid;grid-template-columns:42% minmax(0,1fr);gap:25px;align-items:center;padding-bottom:29px;border-bottom:1px solid #e4e1da;}
.eo-classic-person>img{display:block;width:100%;height:275px;object-fit:cover;object-position:center 30%;border-radius:2px;filter:saturate(.92);box-shadow:6px 6px 0 #f0e5d6;}
.eo-classic-person-intro{min-width:0;}
.eo-classic-person-intro h3{font:700 clamp(31px,3.4vw,48px)/1.11 "Lora",Georgia,serif;letter-spacing:-.052em;color:#102e51;margin:13px 0 15px;}
.eo-classic-person-intro h3 em{font-style:normal;color:#b7833e;}
.eo-classic-person-intro>p:last-child{font:500 13px/1.7 "Manrope",Arial,sans-serif;color:#657789;margin:0;}
.eo-classic-direct{padding-top:23px;}
.eo-classic-direct>.eo-classic-smallcap{margin-bottom:12px;}
.eo-classic-contact-entry{display:grid;grid-template-columns:155px minmax(0,1fr);gap:15px;align-items:baseline;padding:13px 0;border-bottom:1px solid #e7e5e0;}
.eo-classic-contact-entry>span{font:700 11px/1.5 "Manrope",Arial,sans-serif;color:#7e8791;}
.eo-classic-contact-entry a{font:600 clamp(13px,1.1vw,15px)/1.55 "Manrope",Arial,sans-serif;color:#153657;text-decoration:none;overflow-wrap:anywhere;}
.eo-classic-contact-entry a:hover,.eo-classic-contact-entry a:focus-visible{color:#9d6d30;text-decoration:underline;text-underline-offset:4px;}
.eo-classic-contact-entry a span{color:#ad7d42;font-size:17px;margin-left:4px;}
.eo-classic-other-channels{margin-top:20px;border-top:1px solid #e8e5df;padding-top:13px;}
.eo-classic-other-channels summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;color:#3d546c;font:700 12px/1.4 "Manrope",Arial,sans-serif;}
.eo-classic-other-channels summary::-webkit-details-marker{display:none;}
.eo-classic-other-channels summary span{font-size:22px;color:#bd8c4d;}
.eo-classic-other-channels[open] summary span{transform:rotate(45deg);}
.eo-classic-other-content{padding:16px 0 4px;display:grid;gap:16px;}
.eo-classic-other-content>div{display:grid;gap:4px;min-width:0;}
.eo-classic-other-content small{color:#a47f51;font:700 10px/1.4 "Manrope",Arial,sans-serif;letter-spacing:.13em;}
.eo-classic-other-content a,.eo-classic-other-content span{color:#34516e;text-decoration:none;font:500 12px/1.6 "Manrope",Arial,sans-serif;overflow-wrap:anywhere;}
.eo-classic-other-content a:hover{text-decoration:underline;}
.eo-classic-write{background:#f9f6f0;padding:37px clamp(23px,3.2vw,48px) 42px;border-top:2px solid #b8894b;min-width:0;}
.eo-classic-write-head{margin-bottom:23px;}
.eo-classic-write-head h3{font:700 clamp(30px,3vw,40px)/1.2 "Lora",Georgia,serif;letter-spacing:-.045em;color:#102d50;margin:10px 0 7px;}
.eo-classic-write-head>p:last-child{font:400 13px/1.7 "Manrope",Arial,sans-serif;color:#647488;margin:0;}
.eo-contact-page #eo-contact-enquiry-form{display:grid;gap:18px;}
.eo-classic-form-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px;}
.eo-classic-field{min-width:0;display:flex;flex-direction:column;gap:8px;}
.eo-contact-page .eo-classic-field label{font:700 11px/1.4 "Manrope",Arial,sans-serif;color:#163859;letter-spacing:.02em;}
.eo-contact-page .eo-classic-field label span{color:#b17d3e;}
.eo-contact-page #eo-contact-enquiry-form :is(input,select,textarea){width:100%;min-width:0;max-width:100%;font:400 14px/1.5 "Manrope",Arial,sans-serif;background:transparent;border:0;border-radius:0;border-bottom:1px solid #b8c2c7;color:#183853;min-height:43px;padding:8px 3px 11px 0;outline:0;box-shadow:none;transition:border-color .16s;}
.eo-contact-page #eo-contact-enquiry-form :is(input,select,textarea)::placeholder{color:#82919c;opacity:1;}
.eo-contact-page #eo-contact-enquiry-form :is(input,select,textarea):focus-visible{border-bottom:2px solid #b7843c;box-shadow:none;outline:0;}
.eo-contact-page #eo-contact-enquiry-form select{cursor:pointer;}
.eo-contact-page #eo-contact-enquiry-form textarea{resize:vertical;min-height:120px;}
.eo-classic-form-foot{display:flex;align-items:center;gap:19px;flex-wrap:wrap;margin-top:3px;}
.eo-classic-send{border:0;background:#113456;color:#fff;display:flex;align-items:center;justify-content:center;gap:29px;font:700 13px/1.2 "Manrope",Arial,sans-serif;cursor:pointer;padding:16px 19px 16px 23px;white-space:nowrap;transition:background .2s,transform .2s;}
.eo-classic-send span{font-size:20px;color:#efd09e;}
.eo-classic-send:hover,.eo-classic-send:focus-visible{background:#245075;transform:translateY(-1px);}
.eo-classic-form-note{font:400 11px/1.55 "Manrope",Arial,sans-serif;color:#7c878f;margin:0;flex:1 1 170px;}
.eo-classic-profiles{margin-top:55px;padding-top:28px;border-top:1px solid #e0e1dd;}
.eo-classic-profiles-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:18px;}
.eo-classic-profiles-heading h2{font:700 clamp(27px,2.7vw,35px)/1.25 "Lora",Georgia,serif;letter-spacing:-.04em;color:#112f50;margin:7px 0 0;}
.eo-classic-profiles-heading>p{color:#7b8895;font:400 12px/1.6 "Manrope",Arial,sans-serif;margin:0 0 4px;}
.eo-classic-profile-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 25px;}
.eo-classic-profile-links a{border-bottom:1px solid #e3e4e3;min-width:0;text-decoration:none;padding:17px 1px;display:flex;align-items:center;justify-content:space-between;gap:14px;color:#1c3a58;font:650 13px/1.4 "Manrope",Arial,sans-serif;}
.eo-classic-profile-links a .eo-classic-profile-arrow{font:400 18px/1 Georgia,serif;color:#b98c51;transition:transform .2s;}
.eo-classic-profile-links a:hover{color:#b7843d;}
.eo-classic-profile-links a:hover .eo-classic-profile-arrow{transform:translate(2px,-2px);}
.eo-classic-section a:focus-visible,.eo-classic-section summary:focus-visible,.eo-classic-section button:focus-visible{outline:2px solid #c59451;outline-offset:4px;}
@media(max-width:1080px){
  .eo-classic-two-column{gap:26px;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);}
  .eo-classic-person{gap:18px;}
  .eo-classic-contact-entry{grid-template-columns:115px minmax(0,1fr);gap:10px;}
  .eo-classic-form-pair{grid-template-columns:1fr;gap:18px;}
}
@media(max-width:850px){
  .eo-classic-two-column{grid-template-columns:1fr;gap:34px;}
  .eo-classic-person{grid-template-columns:minmax(140px,35%) minmax(0,1fr);max-width:620px;}
  .eo-classic-contact-entry{grid-template-columns:165px minmax(0,1fr);}
  .eo-classic-form-pair{grid-template-columns:repeat(2,minmax(0,1fr));}
  .eo-classic-opening>p{width:min(270px,36%);}
}
@media(max-width:600px){
  .eo-contact-page .eo-classic-banner{min-height:142px;padding:20px 0 22px;}
  .eo-contact-page .eo-classic-banner h1{font-size:clamp(31px,8vw,39px);}
  .eo-classic-banner-mark{font-size:164px;top:-33px;right:2%;}
  .eo-contact-page .eo-classic-section{padding:34px 0 48px;}
  .eo-classic-opening{display:block;margin-bottom:25px;padding-bottom:23px;}
  .eo-classic-opening h2{font-size:clamp(28px,8vw,36px);}
  .eo-classic-opening>p{width:auto;max-width:360px;font-size:13px;margin-top:13px;}
  .eo-classic-person{grid-template-columns:39% minmax(0,1fr);gap:15px;padding-bottom:24px;}
  .eo-classic-person>img{height:205px;}
  .eo-classic-person-intro h3{font-size:clamp(26px,7.1vw,35px);margin:9px 0 10px;}
  .eo-classic-person-intro>p:last-child{font-size:11px;line-height:1.5;}
  .eo-classic-smallcap,.eo-classic-eyebrow{font-size:9px;}
  .eo-classic-contact-entry{grid-template-columns:1fr;gap:4px;padding:10px 0;}
  .eo-classic-contact-entry a{font-size:14px;}
  .eo-classic-write{padding:26px 20px 30px;}
  .eo-classic-write-head h3{font-size:31px;}
  .eo-classic-form-pair{grid-template-columns:1fr;gap:17px;}
  .eo-classic-profiles{margin-top:37px;padding-top:24px;}
  .eo-classic-profiles-heading{display:block;}
  .eo-classic-profiles-heading>p{margin:10px 0 0;}
  .eo-classic-profile-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;}
  .eo-classic-profile-links a{font-size:12px;padding:15px 0;}
}
@media(max-width:340px){.eo-classic-profile-links{grid-template-columns:1fr}.eo-classic-person-intro h3{font-size:25px}.eo-classic-person{grid-template-columns:43% minmax(0,1fr);}}
@media(prefers-reduced-motion:reduce){.eo-classic-profile-links a .eo-classic-profile-arrow,.eo-classic-send{transition:none;}}

/* Refinements: portrait byline and icon-led contact directory — 22 Oct 2026 */
.eo-classic-person-intro .eo-classic-person-name {
  display:flex;
  flex-direction:column;
  gap:0;
  font-size:clamp(28px,2.55vw,37px);
  line-height:1.14;
  letter-spacing:-.047em;
  margin:10px 0 13px;
}
.eo-classic-person-name>span {display:block;min-width:0;}
.eo-classic-person-name .eo-classic-name-last {white-space:nowrap;}
.eo-classic-person-name .eo-classic-name-last em {color:#b7833e;font-style:normal;}
.eo-classic-person-name .eo-classic-name-last small {
  font:700 .42em/1.2 "Manrope",Arial,sans-serif;
  letter-spacing:.035em;
  color:#19395d;
  vertical-align:baseline;
  margin-left:2px;
}
.eo-classic-contact-entry .eo-classic-detail-label {
  display:flex;align-items:center;gap:7px;
}
.eo-classic-detail-label svg {width:15px;height:15px;flex:0 0 15px;color:#ad804d;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
.eo-classic-profile-links a .eo-classic-profile-label {display:flex;align-items:center;gap:12px;min-width:0;}
.eo-classic-profile-label>span {min-width:0;}
.eo-classic-profile-links a .eo-classic-profile-icon {
  width:31px;height:31px;flex:0 0 31px;
  box-sizing:border-box;padding:7px;border-radius:50%;
  border:1px solid #e8d9c2;background:#fbf5ec;
  color:#ac7c40;fill:none;stroke:currentColor;stroke-width:1.7;
  stroke-linecap:round;stroke-linejoin:round;
  transition:background .2s, color .2s;
}
.eo-classic-profile-links a:hover .eo-classic-profile-icon,
.eo-classic-profile-links a:focus-visible .eo-classic-profile-icon{background:#ead7b7;color:#0e3558;}
.eo-classic-profile-links a {gap:10px;}
@media(max-width:1080px){
 .eo-classic-person-intro .eo-classic-person-name{font-size:clamp(25px,2.6vw,34px);}
 .eo-classic-contact-entry .eo-classic-detail-label{gap:6px;}
}
@media(max-width:600px){
 .eo-classic-person-intro .eo-classic-person-name{font-size:clamp(23px,6.1vw,30px);line-height:1.12;margin:9px 0 10px;}
 .eo-classic-profile-links a .eo-classic-profile-label{gap:9px;}
 .eo-classic-profile-links a .eo-classic-profile-icon{width:28px;height:28px;flex-basis:28px;padding:6px;}
}
@media(max-width:340px){
 .eo-classic-person-intro .eo-classic-person-name{font-size:22px;letter-spacing:-.06em;}
 .eo-classic-profile-links a {font-size:12px;}
}

/* Contact-page editorial copy refinement — updated captions and removed helper text. */
.eo-classic-opening {gap:0;}
.eo-classic-write-head h3 {margin-bottom:0;}
.eo-classic-profiles-heading {gap:0;}
.eo-classic-form-note:empty {display:none;}


/* Clear, conventional editorial typography for the Contact page. */
.eo-contact-page .eo-classic-opening {
  padding-bottom:22px;
  margin-bottom:30px;
  align-items:center;
}
.eo-contact-page .eo-classic-opening h2 {
  font:700 clamp(25px,2.2vw,31px)/1.28 "Manrope",Arial,sans-serif;
  letter-spacing:-.024em;
  color:#123351;
  margin:0;
  text-wrap:balance;
}
.eo-contact-page .eo-classic-write-head {margin-bottom:23px;}
.eo-contact-page .eo-classic-write-head h3 {
  font:700 clamp(21px,1.9vw,25px)/1.3 "Manrope",Arial,sans-serif;
  letter-spacing:-.025em;
  color:#123351;
  margin:0;
}
.eo-contact-page .eo-classic-profiles-heading {
  margin-bottom:13px;
}
.eo-contact-page .eo-classic-profiles-heading h2 {
  font:700 clamp(23px,2.1vw,29px)/1.28 "Manrope",Arial,sans-serif;
  letter-spacing:-.024em;
  color:#123351;
  margin:0;
  text-wrap:balance;
}
@media(max-width:600px) {
  .eo-contact-page .eo-classic-opening {padding-bottom:18px;margin-bottom:23px;}
  .eo-contact-page .eo-classic-opening h2 {font-size:25px;}
  .eo-contact-page .eo-classic-profiles-heading h2 {font-size:23px;}
  .eo-contact-page .eo-classic-write-head h3 {font-size:22px;}
}

/* Portrait byline: one complete name line on desktop, tablet, and mobile.
   The mobile photo stacks above the heading so readability is not sacrificed. */
.eo-contact-page .eo-classic-person-intro .eo-classic-person-name {
  display:block;
  white-space:nowrap;
  font:700 clamp(23px,2.2vw,32px)/1.18 "Lora",Georgia,serif;
  letter-spacing:-.047em;
  margin:12px 0 0;
}
.eo-contact-page .eo-classic-person-name > span {display:inline;}
.eo-contact-page .eo-classic-person-name em {color:#b7833e;font-style:normal;}
.eo-contact-page .eo-classic-person-name small {
  font:700 .48em/1.15 "Manrope",Arial,sans-serif;
  letter-spacing:.015em;
  color:#19395d;
  white-space:nowrap;
}
@media (max-width:1080px) {
  .eo-contact-page .eo-classic-person {grid-template-columns:36% minmax(0,1fr);gap:18px;}
  .eo-contact-page .eo-classic-person-intro .eo-classic-person-name {font-size:clamp(23px,2.5vw,28px);}
}
@media (max-width:850px) {
  .eo-contact-page .eo-classic-person {grid-template-columns:35% minmax(0,1fr);}
  .eo-contact-page .eo-classic-person-intro .eo-classic-person-name {font-size:clamp(24px,3.6vw,29px);}
}
@media (max-width:600px) {
  .eo-contact-page .eo-classic-person {
    grid-template-columns:1fr;
    justify-items:start;
    gap:18px;
    padding-bottom:25px;
  }
  .eo-contact-page .eo-classic-person > img {
    width:min(100%,226px);
    height:220px;
    object-fit:cover;
  }
  .eo-contact-page .eo-classic-person-intro {width:100%;}
  .eo-contact-page .eo-classic-person-intro .eo-classic-person-name {
    font-size:clamp(26px,7vw,30px);
    margin:6px 0 0;
  }
}
@media (max-width:340px) {
  .eo-contact-page .eo-classic-person-intro .eo-classic-person-name {font-size:25px;letter-spacing:-.054em;}
}


/* CONTACT PAGE — quieter, cleaner separation (22 October 2026)
   Remove redundant full-width rules; use spacing and the existing warm form
   panel to distinguish content instead. Keep actual form control underlines. */
.eo-contact-page .eo-classic-opening {
  border-bottom:0;
  padding-bottom:0;
  margin-bottom:28px;
}
.eo-contact-page .eo-classic-person {
  border-bottom:0;
  padding-bottom:18px;
}
.eo-contact-page .eo-classic-direct {
  padding-top:11px;
}
.eo-contact-page .eo-classic-contact-entry {
  border-bottom:0;
  padding-block:11px;
}
.eo-contact-page .eo-classic-other-channels {
  border-top:0;
  margin-top:9px;
  padding-top:10px;
}
.eo-contact-page .eo-classic-write {
  border-top:0;
  border-radius:3px;
}
.eo-contact-page .eo-classic-profiles {
  border-top:0;
  padding-top:0;
  margin-top:42px;
}
@media(max-width:600px) {
  .eo-contact-page .eo-classic-opening {margin-bottom:23px;padding-bottom:0;}
  .eo-contact-page .eo-classic-person {padding-bottom:11px;}
  .eo-contact-page .eo-classic-direct {padding-top:10px;}
  .eo-contact-page .eo-classic-contact-entry {padding-block:9px;}
  .eo-contact-page .eo-classic-profiles {margin-top:34px;}
}
