/* Board of directors 2026. Uses the existing public club style and chrome. */
.board-page{overflow-x:clip}
.board-shell{margin-bottom:68px}
.board-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.48fr) minmax(0,.52fr);min-height:322px;overflow:hidden;border:1px solid #284e5b;border-radius:23px;background:radial-gradient(circle at 22% 5%,#295e64 0%,transparent 45%),linear-gradient(120deg,#193d59 0%,#173a5e 59%,#194b45 100%);box-shadow:0 16px 41px #143f4a18;color:white}
.board-hero::after{content:"";position:absolute;left:42%;bottom:-160px;width:330px;height:330px;border:1px solid #ffffff16;border-radius:50%;pointer-events:none}
.board-hero-copy{position:relative;z-index:1;padding:42px 40px}
.board-hero-eyebrow{display:flex;align-items:center;gap:9px;margin:0 0 17px;color:#b4dbce;font-size:10px;font-weight:850;letter-spacing:1.5px;line-height:1.5}
.board-eyebrow-dot{width:8px;height:8px;border-radius:50%;background:#8bcaaa;box-shadow:0 0 0 5px #8bcaaa20}
.board-hero h1{margin:0 0 15px;color:#fff;font-size:clamp(33px,4vw,48px);font-weight:820;letter-spacing:-1.8px;line-height:1.1;text-wrap:balance}
.board-hero h1 span{color:#9bd9bc}
.board-hero-copy>p:not(.board-hero-eyebrow){max-width:690px;color:#d3e3e9;font-size:13px;line-height:1.8;margin:0 0 22px}
.board-hero-action{display:inline-flex;align-items:center;gap:10px;min-height:42px;padding:10px 16px;border:1px solid #addbc4;border-radius:10px;background:#e4f4e9;color:#175840!important;font-size:12px;font-weight:800;text-decoration:none;transition:transform .18s,background .18s}
.board-hero-action svg{width:16px;height:16px}
.board-hero-action:hover{transform:translateY(-2px);background:#fff}
.board-hero-facts{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:0;margin:20px 20px 20px 0;padding:22px;border:1px solid #ffffff32;border-radius:16px;background:#ffffff0e;text-align:center;backdrop-filter:blur(3px)}
.board-facts-tag{color:#bcd7d6;font-size:9px;font-weight:850;letter-spacing:1.5px}
.board-hero-year{display:block;margin:5px 0 16px;color:white;font-size:clamp(46px,5vw,72px);font-weight:850;letter-spacing:-2.7px;line-height:1}
.board-facts-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 6px;padding-top:17px;width:100%;border-top:1px solid #ffffff2f;color:#d1e4e7}
.board-facts-list span{font-size:10px;line-height:1.35}
.board-facts-list strong{display:block;color:white;font-size:19px;font-weight:750}
.board-club-nav{margin-top:18px;margin-bottom:18px}
.board-jump-nav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 37px;padding:13px 15px;border:1px solid #dce6e9;border-radius:13px;background:#fff}
.board-jump-nav a{display:inline-flex;justify-content:space-between;align-items:center;gap:9px;min-height:36px;padding:8px 12px;border:1px solid #e1e9ed;border-radius:8px;background:#f8fbfa;color:#4b6675;font-size:11px;font-weight:750;text-decoration:none;transition:background .16s,border-color .16s}
.board-jump-nav a:hover{background:#e9f6ee;border-color:#b4dbc6;color:#245f43}
.board-jump-nav a span{color:#7994a4;font-size:10px;font-variant-numeric:tabular-nums}
.board-section{margin:0 0 47px;scroll-margin-top:22px}
.board-section--secondary{padding-top:32px;border-top:1px solid #d8e5e6}
.board-section-heading{display:flex;align-items:center;gap:22px;margin-bottom:20px}
.board-section-heading>div{max-width:720px}
.board-section-eyebrow{color:#3a8262;font-size:10px;font-weight:850;letter-spacing:1.55px}
.board-section-heading h2{margin:7px 0 6px;color:#173a5e;font-size:clamp(25px,3vw,32px);line-height:1.2;letter-spacing:-.75px;font-weight:800}
.board-section-heading p{margin:0;color:#657b8c;font-size:12px;line-height:1.7}
.board-section-line{height:1px;flex:1;background:linear-gradient(90deg,#cce1d7,transparent)}
.board-subsection-heading{margin:23px 0 13px;color:#27576b;font-size:14px;font-weight:800;letter-spacing:-.2px}
.board-subsection-heading--secondary{margin-top:26px}
.board-grid{display:grid;gap:15px;align-items:stretch}
.board-grid--officers{grid-template-columns:repeat(3,minmax(0,1fr))}
.board-grid--directors{grid-template-columns:repeat(4,minmax(0,1fr))}
.board-grid--support{grid-template-columns:repeat(2,minmax(0,1fr))}
.board-person{display:flex;flex-direction:column;min-width:0;border:1px solid #dae5e7;border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 6px 20px #1b425a0b;transition:transform .18s,border-color .18s,box-shadow .18s}
.board-person:hover{transform:translateY(-3px);border-color:#a7cbbb;box-shadow:0 15px 29px #17455418}
.board-person-portrait{display:flex;justify-content:center;align-items:flex-end;position:relative;height:230px;min-width:0;overflow:hidden;padding:12px 12px 0;background:radial-gradient(circle at 50% 32%,#fbfdfd,#ebf1ef 65%,#e2ece7)}
.board-person-portrait::before{content:"";position:absolute;top:27px;left:50%;transform:translateX(-50%);width:155px;height:155px;border-radius:50%;border:1px solid #d2e4dc}
.board-person-portrait img{position:relative;z-index:1;display:block;width:100%;height:100%;min-width:0;max-width:100%;object-fit:contain;object-position:center bottom}
.board-portrait-year{position:absolute;top:15px;right:15px;z-index:2;padding:5px 8px;border-radius:6px;background:#ffffffc7;color:#63887b;font-size:9px;font-weight:850;letter-spacing:1px}
.board-person-content{flex:1;display:flex;align-items:flex-start;flex-direction:column;padding:20px 21px 22px}
.board-person-role{display:inline-flex;align-items:center;justify-content:center;margin-bottom:9px;padding:5px 10px;border-radius:7px;background:#eaf5ed;color:#286648;font-size:10px;font-weight:800;line-height:1.4}
.board-person-name{margin:0 0 10px;color:#173a5e;font-size:19px;font-weight:800;letter-spacing:-.48px;line-height:1.25}
.board-person-bio{margin:0;color:#617686;font-size:12px;line-height:1.8;overflow-wrap:anywhere}
.board-person--officer .board-person-portrait{height:252px;background:radial-gradient(circle at 50% 45%,#f2faf5 0%,#dcece5 100%)}
.board-person--officer:first-child{border-color:#c2ddcf}
.board-person--officer:first-child .board-person-role{background:#276e4d;color:#fff}
.board-person--officer:first-child .board-portrait-year{color:#286648}
.board-person--officer .board-person-name{font-size:21px}
.board-person--officer .board-person-content{padding:21px 23px 25px}
.board-person--director .board-person-portrait{height:201px}
.board-person--director .board-person-content{padding:18px 17px 20px}
.board-person--director .board-person-name{font-size:17px}
.board-person--director .board-person-bio{font-size:11.5px}
.board-person--support{display:grid;grid-template-columns:155px minmax(0,1fr);min-height:180px}
.board-person--support .board-person-portrait{height:100%;min-height:185px;padding:9px 5px 0}
.board-person--support .board-person-portrait::before{width:110px;height:110px;top:29px}
.board-person--support .board-portrait-year{top:10px;right:8px}
.board-person--support .board-person-content{justify-content:center;padding:20px 19px}
.board-person--support .board-person-name{font-size:18px}
.board-person--support .board-person-bio{font-size:12px}
.board-contact{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:27px 30px;border-radius:17px;border:1px solid #cce4d3;background:linear-gradient(110deg,#e9f5ed,#f7fbf8)}
.board-contact-label{color:#3b8162;font-size:10px;font-weight:850;letter-spacing:1.3px}
.board-contact h2{margin:7px 0 7px;color:#214b38;font-size:22px;line-height:1.28;letter-spacing:-.5px}
.board-contact p{margin:0;color:#5f796e;font-size:12px;line-height:1.7}
.board-contact>a{display:inline-flex;align-items:center;justify-content:center;gap:10px;flex:none;min-height:45px;padding:12px 18px;border-radius:10px;background:#26754e;color:#fff;text-decoration:none;font-size:12px;font-weight:800}
.board-contact>a:hover{background:#175f3d}
.board-contact>a svg{width:17px;height:17px}
.board-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:950px){
 .board-hero{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
 .board-hero-copy{padding:34px 30px}
 .board-grid--directors{grid-template-columns:repeat(2,minmax(0,1fr))}
 .board-person--director .board-person-portrait{height:234px}
 .board-person--director .board-person-name{font-size:19px}
 .board-person--director .board-person-bio{font-size:12px}
}
@media(max-width:720px){
 .board-hero{grid-template-columns:1fr}
 .board-hero-copy{padding:29px 26px 16px}
 .board-hero-facts{margin:8px 25px 25px;padding:18px}
 .board-hero-year{font-size:49px;margin-bottom:10px}
 .board-grid--officers{grid-template-columns:repeat(2,minmax(0,1fr))}
 .board-grid--support{grid-template-columns:1fr}
 .board-jump-nav{margin-bottom:27px}
 .board-person--officer .board-person-portrait{height:225px}
}
@media(max-width:520px){
 .board-hero-copy{padding:28px 20px 13px}
 .board-hero h1{font-size:34px}
 .board-hero-copy>p:not(.board-hero-eyebrow){font-size:12px}
 .board-hero-facts{margin:10px 15px 17px;padding:17px}
 .board-hero-year{font-size:43px}
 .board-jump-nav{gap:7px;padding:10px}
 .board-jump-nav a{flex:1 1 calc(50% - 7px);padding:8px 9px;font-size:10px}
 .board-grid--officers,.board-grid--directors{grid-template-columns:1fr}
 .board-person--officer .board-person-portrait,.board-person--director .board-person-portrait{height:265px}
 .board-person--director .board-person-name{font-size:19px}
 .board-person--director .board-person-content{padding:20px 21px}
 .board-person--support{grid-template-columns:125px minmax(0,1fr);min-height:157px}
 .board-person--support .board-person-portrait{min-height:160px}
 .board-person--support .board-person-content{padding:14px 13px}
 .board-person--support .board-person-name{font-size:16px}
 .board-person--support .board-person-bio{font-size:11px}
 .board-contact{align-items:stretch;flex-direction:column;padding:23px}
 .board-contact>a{align-self:flex-start}
}
@media(max-width:345px){
 .board-person--support{grid-template-columns:105px minmax(0,1fr)}
 .board-person--support .board-person-content{padding:11px 10px}
 .board-person--support .board-person-name{font-size:15px}
 .board-person--support .board-person-role{font-size:9px}
 .board-hero h1{font-size:29px}
}
@media(prefers-reduced-motion:reduce){.board-person,.board-hero-action{transition:none}.board-person:hover,.board-hero-action:hover{transform:none}}
@media print{.board-person{break-inside:avoid;box-shadow:none}.board-hero{min-height:auto}.board-hero-action,.board-jump-nav{display:none}}
