:root{--navy:#063675;--deep:#031d4c;--primary:#075cca;--accent:#08a9e8;--sky:#72d9ff;--silver:#e8f0f7;--bg:#f4f9fd;--text:#0a3268}
body{background:linear-gradient(180deg,#fff 0,#f4f9fd 46%,#eef7fd 100%);color:var(--text)}
.site-header{background:#ffffffed;border-bottom:1px solid #d7ebfa;box-shadow:0 8px 28px #075cca16}
.brand{color:var(--deep)}
.brand small{color:var(--primary)}
.main-nav a{color:#0a3268}
.main-nav a:hover{color:var(--accent)}
.pps-button{background:linear-gradient(135deg,var(--primary),var(--accent));box-shadow:0 9px 25px #0868c93c}
.pps-button:hover{background:linear-gradient(135deg,#074f9b,#0797d1)}
.campaign-hero{background-image:var(--hero),radial-gradient(circle at 70% 25%,#55c9ff55,transparent 33%),linear-gradient(115deg,#061e52,#075cae 52%,#08a9e8)}
.hero-shade{background:linear-gradient(90deg,#041943ee 0,#063477d8 48%,#087dc055)}
.hero-copy h1 em,.section-heading em,.section-heading small{color:#72d9ff}
.section-heading>i{background:linear-gradient(90deg,var(--primary),var(--accent))}
.join-section{position:relative;background:radial-gradient(circle at 8% 15%,#65cfff18,transparent 25%),linear-gradient(180deg,#f8fcff,#eef7fd)}
.why-panel>.lead{color:#55708e}
.feature>span{background:linear-gradient(145deg,var(--primary),var(--accent));box-shadow:0 7px 18px #0868c932}
.feature{border-color:#cfe5f6}
.feature h3{color:#073b7c}
.feature p{color:#5a7290}
.candidate-visual{position:relative;width:400px;height:455px;border-radius:32px;overflow:hidden;border:6px solid #ffffffdd;background:#fff;box-shadow:0 30px 80px #001c4e;isolation:isolate}
.candidate-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,#041d55e8 100%);z-index:1}
.candidate-photo{width:100%;height:100%;object-fit:cover;object-position:center top}
.candidate-caption{position:absolute;right:18px;left:18px;bottom:16px;z-index:2;display:flex;align-items:center;gap:12px;color:#fff}
.candidate-caption>img{width:68px;height:68px;object-fit:cover;border-radius:50%;background:#fff;border:3px solid #64d5ff}
.candidate-caption div{display:flex;flex-direction:column}
.candidate-caption strong{font-size:1rem}
.candidate-caption span{font-size:.75rem;color:#c9edff}
.form-card{border:1px solid #cfe5f6;border-top:4px solid var(--accent);border-radius:14px;box-shadow:0 18px 55px #075cca14}
.fields input,.fields select{background:#fbfdff;border-color:#cbdff0;color:#0a3268}
.fields input:focus,.fields select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #08a9e81c}
.fields label{color:#0b3d76}
.fields b{color:var(--primary)}
.privacy input{accent-color:var(--primary)}
.secure{color:#55708e}
.latest{background:linear-gradient(180deg,#fff,#f2f9fe)}
.posts-grid article{border-color:#d3e7f6;box-shadow:0 13px 38px #075cca10}
.posts-grid time{color:var(--primary)}
.posts-grid h2,.posts-grid h3{color:#073b7c}
.site-footer{background:linear-gradient(135deg,#041d4e,#075aa4)}
.contact-item{border-color:#61c8ff25}
.socials a{border-color:#77d8ff;color:#fff}
.page-card{border-color:#cfe5f6;box-shadow:0 14px 42px #075cca10}
.notice.error{background:#fff1f1;color:#8a1c28}
.leadership-section{padding:70px 0;background:#fff;position:relative;overflow:hidden}
.leadership-section:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 8% 8%,#08a9e810,transparent 28%),radial-gradient(circle at 92% 90%,#075cca0e,transparent 28%);pointer-events:none}
.leadership-grid{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.leader-card{background:#fff;border:1px solid #cfe5f6;border-radius:18px;overflow:hidden;box-shadow:0 16px 45px #075cca12;transition:.25s}
.leader-card:hover{transform:translateY(-6px);box-shadow:0 22px 55px #075cca20}
.leader-card.featured{border-color:#46c5f2;box-shadow:0 18px 52px #08a9e824}
.leader-photo{position:relative;height:360px;overflow:hidden;background:#eaf6fd}
.leader-photo>img{width:100%;height:100%;object-fit:cover;object-position:center top}
.leader-photo:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#031d4cb5)}
.leader-photo>span{position:absolute;left:16px;bottom:15px;z-index:2;width:68px;height:68px;border-radius:50%;padding:4px;background:#fff;border:3px solid var(--accent);box-shadow:0 6px 20px #031d4c42}
.leader-photo>span img{width:100%;height:100%;border-radius:50%;object-fit:cover}
.leader-info{padding:22px;text-align:center}
.leader-info small{color:var(--primary);font-weight:800}
.leader-info h3{font-size:1.25rem;color:var(--deep);margin:7px 0}
.leader-info p{font-size:.84rem;color:#5a7290;line-height:1.8;margin:0}
@media(max-width:980px){
  .hero-inner{flex-direction:column;justify-content:center;gap:28px;padding:42px 0}
  .hero-copy{order:1;text-align:center}
  .candidate-visual{display:block;order:2;width:min(100%,350px);height:390px}
  .campaign-hero,.hero-inner{min-height:auto}
  .leadership-grid{grid-template-columns:repeat(2,1fr)}
  .leader-card:last-child{grid-column:1/-1;max-width:460px;width:100%;margin:auto}
}
@media(max-width:640px){
  .campaign-hero{background-image:radial-gradient(circle at 70% 20%,#55c9ff44,transparent 35%),linear-gradient(155deg,#061e52,#075cae 60%,#08a9e8)}
  .hero-inner{padding:32px 0 38px;gap:22px}
  .hero-copy h1{font-size:2.35rem;line-height:1.35}
  .hero-copy p{font-size:.95rem;line-height:1.85}
  .hero-copy .pps-button{width:100%;max-width:310px}
  .candidate-visual{width:min(100%,310px);height:345px;border-width:4px;border-radius:24px}
  .candidate-caption{right:12px;left:12px;bottom:12px}
  .candidate-caption>img{width:55px;height:55px}
  .candidate-caption strong{font-size:.9rem}
  .candidate-caption span{font-size:.65rem}
  .join-grid{display:flex;flex-direction:column}
  .form-card{width:100%;padding:20px 14px}
  .fields{grid-template-columns:1fr;gap:14px}
  .fields input,.fields select{font-size:16px}
  .feature{padding:17px 0}
  .feature>span{width:50px;height:50px;flex-basis:50px}
  .contact-grid{grid-template-columns:1fr}
  .contact-item{padding:18px 8px}
  .leadership-section{padding:48px 0}
  .leadership-grid{grid-template-columns:1fr}
  .leader-card:last-child{grid-column:auto;max-width:none}
  .leader-photo{height:390px}
}
