/* HexaMole secondary pages — shared header dimensions match index.html */
:root{color-scheme:light;--ink:#202735;--muted:#687282;--line:#e2e6eb;--blue:#235ed3}
*{box-sizing:border-box}
html{min-height:100%;scroll-behavior:smooth}
body{margin:0;min-height:100dvh;display:flex;flex-direction:column;background:#fff;color:var(--ink);font:14px/1.5 Arial,Helvetica,sans-serif}
a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
.skip{position:absolute;left:-9999px;z-index:10}.skip:focus{left:10px;top:10px;padding:10px;background:#fff;border:1px solid var(--blue)}
.shell{width:min(1740px,calc(100% - 64px));margin-inline:auto}
/* This is the same header geometry, icon and type scale used on the Resources page. */
.site-head{border-bottom:1px solid var(--line);flex:none}
.head-inner{min-height:67px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.identity{display:flex;align-items:center;gap:10px;min-width:0;flex-shrink:0;color:var(--ink)}
.identity:hover{text-decoration:none}
.identity img{display:block;width:43px;height:43px;object-fit:contain}
.identity-text{display:flex;flex-direction:column;gap:1px;line-height:1.08}
.identity-text strong{font-size:22px;letter-spacing:-.5px;font-weight:700;color:#182b43}
.identity-text small{font-size:11px;color:var(--muted)}
.main-nav{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:3px 18px;font-size:13px}
.main-nav a,.main-nav .nav-soon{padding:7px 0;white-space:nowrap;color:#424b58}
.main-nav a:hover,.main-nav a[aria-current=page]{color:var(--blue);text-decoration:none}
.main-nav a[aria-current=page]{font-weight:650}
.nav-soon{opacity:.55}.nav-soon small{font-size:9px;margin-left:3px}
.page-content{width:min(1010px,100%);margin:0 auto;flex:1;padding:35px 0 54px}
.page-content h1{font-size:31px;line-height:1.18;letter-spacing:-.6px;margin:0 0 13px;font-weight:670}
.page-lead{font-size:15.5px;line-height:1.62;color:#414e5d;max-width:850px;margin:0 0 15px}
.eyebrow{text-transform:uppercase;letter-spacing:1.15px;font-size:11px;font-weight:700;color:#6a7686;margin:0 0 9px}
.content-section{border-top:1px solid var(--line);margin-top:26px;padding-top:23px}
.content-section h2{font-size:18px;font-weight:680;letter-spacing:-.25px;margin:0 0 12px}
.content-section p{font-size:14px;line-height:1.72;color:#455264;margin:0 0 10px;max-width:900px}
.profile-link{font-size:13px;display:inline-block;margin:0 0 5px;font-weight:600}
.course-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:30px;max-width:910px}
.course-list li{border-bottom:1px solid #edf0f3;padding:8px 0;font-size:13.5px;color:#374456}
.pub-list{list-style:none;margin:2px 0 13px;padding:0}
.pub-list li{padding:11px 0;border-bottom:1px solid #edf0f3}
.pub-list a{font-size:13.5px;font-weight:600}
.pub-list span{display:block;margin-top:3px;color:#768291;font-size:12px}
.more-link{font-size:13px;font-weight:600}
.contact-main{width:min(1050px,100%);margin:0 auto;flex:1;display:grid;grid-template-columns:minmax(230px,.75fr) minmax(0,1fr);gap:55px;padding:45px 0 70px;align-content:start}
.contact-intro h1{font-size:31px;line-height:1.15;letter-spacing:-.6px;margin:0 0 15px}
.contact-intro p{color:#4d5b6a;font-size:14.5px;line-height:1.65}
.contact-intro .direct{margin-top:25px;font-size:13px}
.contact-form{padding:24px;border:1px solid var(--line);border-radius:10px;background:#fff}
.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.field{display:flex;flex-direction:column;gap:6px;margin-bottom:17px}
.field label{font-size:13px;font-weight:650;color:#344254}
.field .required{color:#8e3a3a}
.field input,.field textarea{width:100%;border:1px solid #cad3df;border-radius:6px;padding:10px 12px;background:#fff;color:#202735;font:14px/1.4 Arial,Helvetica,sans-serif}
.field textarea{resize:vertical;min-height:160px}
.form-note{font-size:12px;line-height:1.55;color:#6c7888;margin:0 0 14px}
.submit-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.submit-button{border:1px solid #215ed4;background:#215ed4;color:#fff;font:600 14px Arial,Helvetica,sans-serif;padding:11px 20px;border-radius:6px;cursor:pointer}
.submit-button:hover{background:#174cb8}
.submit-button:disabled{opacity:.55;cursor:progress}
.form-status{margin-top:14px;font-size:12.5px;color:#536172;min-height:19px}
.form-status.error{color:#9c3434}
.form-status.success{color:#276044}
.honeypot{position:absolute!important;left:-10000px!important;opacity:0!important}
.site-foot{margin-top:auto;border-top:1px solid var(--line);flex:none}
.foot-inner{min-height:36px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;color:#838d9a}
.foot-links{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.foot-links a{color:inherit}.foot-links a:hover{color:var(--blue)}
@media(max-width:760px){.shell{width:calc(100% - 32px)}.head-inner{flex-direction:column;align-items:flex-start;padding:11px 0;gap:4px}.main-nav{justify-content:flex-start;gap:3px 15px}.page-content{padding:25px 0 40px}.contact-main{grid-template-columns:1fr;gap:16px;padding:25px 0 40px}.contact-intro .direct{margin-top:8px}}
@media(max-width:460px){.identity img{width:38px;height:38px}.identity-text strong{font-size:20px}.main-nav{font-size:12px;gap:2px 12px}.course-list{grid-template-columns:1fr}.form-row{grid-template-columns:1fr;gap:0}.contact-form{padding:17px}.foot-inner{align-items:flex-start;flex-direction:column;gap:5px;padding:9px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Match the live homepage header at every responsive breakpoint. */
@media (max-height:790px) and (min-width:900px){.head-inner{min-height:58px}.identity img{width:38px;height:38px}}
@media (max-width:899px){.shell{width:calc(100% - 32px)}}
@media (max-width:760px){.head-inner{align-items:flex-start;flex-direction:column;gap:8px;padding:12px 0}.main-nav{justify-content:flex-start;gap:3px 14px}}
@media (max-width:510px){.main-nav{font-size:12px;gap:3px 11px}.identity-text strong{font-size:20px}}
