:root{--navy:#132149;--blue:#293478;--yellow:#ffdf37;--muted:#58657e;--light:#f2f4f8;--line:#dce1eb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--navy);font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.65}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid #aa7700;outline-offset:6px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.12;letter-spacing:-.035em}p+p{margin-top:1rem}h2{font-size:clamp(2rem,4.4vw,3.6rem)}h3{font-size:1.45rem}img{display:block;width:100%;object-fit:cover}.skip{position:fixed;top:-100px;background:var(--yellow);padding:12px;z-index:10}.skip:focus{top:5px}header{min-height:92px;padding:18px max(5%,calc((100% - 1240px)/2));display:flex;align-items:center;justify-content:space-between;gap:24px;background:white;position:sticky;top:0;z-index:5;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font-weight:800;font-size:19px;line-height:1.15;letter-spacing:.01em}.brand-pro{background:var(--yellow);padding:12px 8px;font-size:24px;letter-spacing:-.04em}.brand small{display:block;font-size:10px;letter-spacing:.09em;margin-top:6px}nav{display:flex;gap:28px;align-items:center;font-size:15px;font-weight:700}.nav-pdf{border:1px solid var(--line);padding:10px 16px}.hero{background:var(--navy);color:white}.hero-inner{max-width:1240px;margin:auto;padding:64px 0 26px}.eyebrow{text-transform:uppercase;font-size:13px;font-weight:800;letter-spacing:.12em;display:flex;align-items:center;gap:10px;margin-bottom:20px}.eyebrow:before{content:'';height:8px;width:8px;flex-shrink:0;background:var(--yellow)}.hero .eyebrow{color:var(--yellow)}.hero-name{font-size:15px;font-weight:700;letter-spacing:.025em;margin-bottom:26px}.hero h1{font-size:clamp(2.7rem,5.4vw,4.8rem);line-height:1.09;max-width:1000px}.hero h1 span{color:var(--yellow);font-size:.82em}.actions{display:flex;gap:30px;align-items:center;margin-top:36px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:15px 22px;font-size:15px;font-weight:700;min-height:52px}.yellow{background:var(--yellow);color:var(--navy)}.button:hover{filter:brightness(.95);text-decoration:none}.hero-link{font-size:15px;font-weight:bold}.hero-bottom{display:flex;justify-content:space-between;align-items:end;gap:24px;border-top:1px solid #ffffff40;margin-top:60px;padding-top:22px;font-size:14px}.hero-bottom strong{font-size:20px}.hero-caption{text-align:right;color:#e1e5ef;font-size:12px}.section{max-width:1240px;margin:auto;padding:92px 0}.section-heading{margin-bottom:45px}.section-heading>p:last-child{margin-top:20px;color:var(--muted)}.overview{display:grid;grid-template-columns:1fr 1fr;gap:70px}.overview>div{position:relative;border-top:3px solid var(--navy);padding-top:28px}.section-num{float:right;font-size:36px;color:#aab2c3;line-height:1}.overview h3{font-size:28px;margin-bottom:16px}.overview p{max-width:460px;color:var(--muted);min-height:60px}.overview ul{list-style:none;padding:0;margin:25px 0 0}.overview li{border-bottom:1px solid var(--line)}.overview a{display:flex;justify-content:space-between;gap:15px;padding:13px 0;font-size:16px;font-weight:600}.projects-section{background:var(--light)}.project-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:40px}.project-heading>p{color:var(--muted)}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:start}.project{background:white;border:1px solid var(--line);height:100%;scroll-margin-top:120px}.project figure img{aspect-ratio:16/10;height:auto}.project figcaption{font-size:11px;line-height:1.4;color:var(--muted);padding:9px 15px;border-bottom:1px solid var(--line)}.project-body{padding:28px}.project .eyebrow{font-size:11px;letter-spacing:.09em;margin-bottom:16px}.project h3{margin-bottom:18px;font-size:23px}.project-body>p:last-child{font-size:16px;color:var(--muted)}.principle{background:var(--navy);color:white}.principle .section{display:grid;grid-template-columns:1.7fr 1fr;gap:24px 70px}.principle .eyebrow{grid-column:1/-1}.principle h2{line-height:1.2}.principle h2 span{color:var(--yellow)}.principle .section>p:last-child{align-self:end;max-width:370px;color:#d2d9eb;font-size:22px}.candidates{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:38px 28px}.portrait{position:relative;background:var(--light)}.portrait img{aspect-ratio:1/1;height:auto;object-position:center 25%}.portrait span{position:absolute;bottom:0;left:0;width:48px;height:48px;background:var(--yellow);display:grid;place-items:center;font-size:22px;font-weight:bold}.candidates h3{font-size:22px;margin:18px 0 7px}.candidates p{font-size:16px;color:var(--muted)}.download{padding:48px;background:var(--light);display:grid;grid-template-columns:1.5fr 1fr;gap:60px;border-top:4px solid var(--yellow)}.download h2{font-size:38px}.download p:last-child{color:var(--muted);max-width:540px;margin-top:20px}.download-actions{display:flex;flex-direction:column;justify-content:center;gap:12px}.outline{border:1px solid var(--navy)}.download-actions>a:last-child{font-size:14px;text-align:center;padding-top:8px}.vote{display:grid;grid-template-columns:1fr 1fr;gap:70px}.date{font-size:30px;font-weight:bold;margin:24px 0}.times{display:flex;gap:35px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;margin-bottom:25px}.times span,.times strong{display:block}.times span{font-size:15px;color:var(--muted)}.times strong{font-size:28px}.ballot{border:1px solid var(--line);padding:32px}.ballot h3{font-size:26px;margin-bottom:20px}.ballot p{font-size:15px}.ballot-example{display:flex;gap:15px;align-items:center;background:var(--light);padding:20px;margin:25px 0;font-size:14px;line-height:1.5}.ballot-example>span{border:2px solid var(--navy);font-size:36px;line-height:32px;height:36px;width:36px;flex-shrink:0;text-align:center}details{margin-top:22px;border-top:1px solid var(--line);padding-top:16px}summary{cursor:pointer;font-size:15px;font-weight:bold}details p{margin-top:15px}footer{background:var(--navy);color:white;padding:35px max(5%,calc((100% - 1240px)/2));display:flex;justify-content:space-between;align-items:center;gap:30px}footer .brand-pro{color:var(--navy)}footer>a:last-child{font-size:14px}@media(max-width:1380px){.section,.hero-inner{margin-left:5%;margin-right:5%}}@media(max-width:980px){nav{gap:16px}.nav-pdf{display:none}.project-grid{grid-template-columns:repeat(2,1fr)}.overview,.vote{gap:35px}.hero-inner{padding-top:45px}.download{gap:30px}.principle .section{gap:24px 30px}.section{padding-top:65px;padding-bottom:65px}}@media(max-width:640px){html{scroll-padding-top:125px}header{padding:13px 5%;display:block}.brand{font-size:16px}.brand-pro{font-size:21px;padding:9px 7px}.brand small{font-size:9px}nav{margin-top:12px;justify-content:space-between;gap:12px;font-size:14px}.hero{background:var(--navy);color:white}.hero-inner{padding-top:34px}.hero-name{font-size:13px}.hero h1{font-size:40px}.hero h1 span{font-size:.85em;display:block;margin-top:12px}.eyebrow{font-size:11px}.actions{gap:18px;align-items:start;flex-direction:column;margin-top:28px}.hero-bottom{margin-top:32px;align-items:start;flex-direction:column;gap:16px}.hero-caption{text-align:left;font-size:11px}.section{padding-top:52px;padding-bottom:52px}.overview,.project-grid,.vote,.download,.principle .section{grid-template-columns:1fr}.overview{gap:36px}.overview p{min-height:0}.project-heading{align-items:start;flex-direction:column;gap:14px}.project-heading h2{font-size:34px}.project-grid{gap:18px}.project-body{padding:25px}.principle .section>p:last-child{font-size:19px}.candidates{grid-template-columns:repeat(2,1fr);gap:28px 16px}.candidates h3{font-size:17px;line-height:1.25;letter-spacing:-.02em}.candidates p{font-size:14px}.portrait span{width:36px;height:36px;font-size:18px}.download{padding:28px;gap:28px}.download h2{font-size:31px}.ballot{padding:24px}.date{font-size:27px}.times{gap:28px}.ballot-example{padding:15px;font-size:12px}footer{align-items:start;flex-direction:column}.project figcaption{font-size:11px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Facebook identity: preserve the supplied artwork without an overlay. */
:root{--navy:#062951;--yellow:#ffc400}
header{padding-top:5px;padding-bottom:5px;min-height:100px}
.facebook-logo{width:152px;height:104px;object-fit:cover;object-position:center 55%}
.facebook-cover{width:100%;height:auto;aspect-ratio:2055/765;object-fit:contain;background:white}
.hero-inner{padding-top:40px;padding-bottom:30px}
.hero h1{font-size:clamp(2.7rem,4.7vw,4rem)}
.hero-bottom{margin-top:35px}
footer .brand{background:white}
footer .facebook-logo{width:180px;height:128px}
@media(min-width:1000px){.hero-inner{position:relative}.hero-bottom{position:absolute;right:0;bottom:35px;border:0;text-align:right}.hero .actions{margin-top:28px}}
@media(max-width:640px){header{display:flex;flex-wrap:wrap;gap:0;padding-top:2px;padding-bottom:10px}.facebook-logo{width:123px;height:84px}nav{width:100%;margin-top:0}.hero-inner{padding-top:28px}.hero h1{font-size:36px}.facebook-cover{min-height:0}.hero-bottom{text-align:left}.hero-name{font-size:13px}}
/* Blend the cover's blue wave into the same continuous hero surface. */
.hero{background:#062951}
.facebook-cover{background:transparent;mask-image:linear-gradient(to bottom,#000 0%,#000 68%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 68%,transparent 100%)}
.hero-inner{padding-top:12px}
@media(max-width:640px){.hero-inner{padding-top:16px}}
/* End the cover above its lower white wave; lift the text into that space. */
.facebook-cover{mask-image:linear-gradient(to bottom,#000 0%,#000 58%,transparent 76%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 58%,transparent 76%);margin-bottom:-8.94vw}
.hero-inner{position:relative;padding-top:24px}
@media(max-width:640px){.hero-inner{padding-top:20px}}
/* Consistent circular candidate portraits. */
.candidates li{text-align:center}
.portrait{width:min(100%,280px);aspect-ratio:1;margin:auto;background:transparent}
.portrait img{width:100%;height:100%;aspect-ratio:1;object-fit:cover;object-position:center;border-radius:50%;background:#e8eef5;border:5px solid #e8eef5}
.portrait span{left:8%;bottom:2%;border-radius:50%;border:3px solid white}
@media(max-width:640px){.portrait img{border-width:3px}.portrait span{left:0;bottom:0}}
/* Approved cover and compact introduction. */
.facebook-cover{mask-image:none;-webkit-mask-image:none;margin-bottom:0;aspect-ratio:auto;height:auto}
.hero-inner{display:grid;grid-template-columns:1fr auto;gap:18px 40px;padding-top:24px;padding-bottom:30px}
.hero h1.eyebrow{font-size:15px;line-height:1.4;letter-spacing:.12em;margin:0;grid-column:1}
.hero .actions{margin:0;grid-column:1}
.hero .hero-bottom{position:static;grid-column:2;grid-row:1/3;align-self:center;margin:0;padding:0;border:0;text-align:right}
@media(max-width:640px){.hero-inner{grid-template-columns:1fr;gap:20px;padding:24px 0}.hero h1.eyebrow{font-size:13px}.hero .actions{flex-direction:row;flex-wrap:wrap;align-items:center;gap:18px}.hero .hero-bottom{grid-column:1;grid-row:auto;text-align:left}.hero .button{padding:12px 16px}}
.hero{background:#022b56}

/* Horizontal header identity, shown in full at every screen size. */
header .header-logo{display:block;width:350px;max-width:100%;height:auto;aspect-ratio:3/1;object-fit:contain}
header .brand{min-width:0;flex-shrink:1}
@media(max-width:640px){header .header-logo{width:270px}header{row-gap:8px;padding-top:6px;padding-bottom:12px}}

footer{justify-content:flex-end;align-items:flex-end}
