@font-face{font-family:Caslon;src:url('assets/libre-caslon-display.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:DM;src:url('assets/dm-sans-regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:DM;src:url('assets/dm-sans-bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
:root{--wine:#592737;--wine-deep:#40202b;--paper:#f7f3eb;--ink:#322b2c;--muted:#66595b;--rose:#edc6b4;--line:#d7ccc3;--white:#fffdf8;--serif:Caslon,Georgia,serif;--sans:DM,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px;scrollbar-color:var(--wine) var(--paper)}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 var(--sans);-webkit-font-smoothing:antialiased}::selection{background:var(--wine);color:var(--paper)}a{color:inherit;text-underline-offset:5px}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #ab663c;outline-offset:6px}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.05;letter-spacing:-.025em;text-wrap:balance}p{text-wrap:pretty}em{font-style:normal;color:var(--wine)}.skip{position:fixed;top:-80px;left:16px;background:var(--wine);color:white;padding:12px;z-index:20}.skip:focus{top:10px}.draft-notice{padding:7px 6%;display:flex;gap:20px;justify-content:space-between;background:var(--wine-deep);color:var(--paper);font-size:11px;letter-spacing:.055em}.draft-notice>span{color:#ecdace}.site-header{max-width:1440px;margin:auto;padding:23px 6%;display:flex;align-items:center;justify-content:space-between;gap:32px;border-bottom:1px solid var(--line)}.brand{text-decoration:none;display:flex;flex-direction:column}.brand-name{font-family:var(--serif);color:var(--wine);font-size:39px;line-height:1.05;letter-spacing:-.025em}.brand-period{color:#a1694f}.brand-office{font-size:10px;text-transform:uppercase;letter-spacing:.13em;margin-top:6px}.site-header nav{display:flex;align-items:center;gap:30px;font-size:13px}.site-header nav a{text-decoration:none}.site-header nav a:hover,.site-header nav a[aria-current]{text-decoration:underline}.nav-contact{display:flex;align-items:center;gap:16px;border:1px solid var(--wine);padding:12px 18px;color:var(--wine)}.menu-toggle{display:none}.hero{padding:58px 6% 0;max-width:1440px;margin:auto;display:grid;grid-template-columns:1.1fr 1fr;column-gap:8%;position:relative}.hero h1{font-size:clamp(64px,6.5vw,94px);line-height:.98;letter-spacing:-.035em}.hero h1 em{color:var(--wine)}.hero-intro{max-width:460px;font-size:16px;line-height:1.75;margin:25px 0 24px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:16px 22px;font-weight:700;font-size:13px;text-decoration:none;min-height:54px;transition:background .2s,color .2s}.button-dark{background:var(--wine);color:var(--white)}.button-dark:hover{background:var(--wine-deep)}.button-light{background:var(--paper);color:var(--wine)}.button-light:hover{background:var(--rose)}.hero-portrait{position:relative;padding-top:12px;align-self:start}.portrait-window{height:510px;overflow:hidden;border-radius:240px 240px 0 0;background:#b6a388}.portrait-window img{width:100%;height:100%;object-fit:cover;object-position:46% center;display:block}.portrait-signature{position:absolute;right:-20px;bottom:60px;background:var(--wine);color:var(--paper);padding:24px 28px;font:30px/1.1 var(--serif);border-radius:90px 90px 0 0;min-width:190px;text-align:center;transform:rotate(4deg)}.hero-portrait figcaption{font-size:10px;color:var(--muted);margin-top:10px}.hero-portrait figcaption a{text-decoration:none}.hero-portrait figcaption a:hover{text-decoration:underline}.hero-foot{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:22px 0;margin-top:45px;font-size:13px}.hero-foot p{font-weight:700}.hero-foot p span{display:block;font-size:11px;font-weight:400;color:var(--muted);margin-top:2px}.hero-foot>a{display:grid;grid-template-columns:1fr 25px;column-gap:30px;font-size:11px;text-decoration:none;color:var(--muted)}.hero-foot strong{grid-column:1;font-size:14px;color:var(--wine)}.hero-foot svg{grid-column:2;grid-row:1/3;align-self:center;color:var(--wine)}.belief{background:var(--wine);color:var(--paper);padding:64px 6% 72px;text-align:center}.belief-mark{margin:0 auto 25px;width:36px;height:45px;color:var(--rose)}.belief-mark svg{width:36px;height:45px;stroke-width:2}.belief h2{font-size:clamp(36px,4.4vw,62px)}.belief h2 em{color:var(--rose)}.belief p{max-width:670px;margin:25px auto 0;color:#f0dfd7;font-size:16px;line-height:1.8}.section-wrap{padding:94px 6%;max-width:1440px;margin:0 auto}.about{display:grid;grid-template-columns:1fr 1.15fr;gap:10%;border-bottom:1px solid var(--line)}h2{font-size:clamp(40px,4.3vw,62px)}.text-link{display:inline-flex;align-items:center;gap:15px;font-size:12px;margin-top:28px;color:var(--wine)}.about-story p{margin-bottom:20px;font-size:15px;line-height:1.85}.about-story .lead{font-size:21px;line-height:1.6}.personal-signoff{border-top:1px solid var(--line);margin-top:30px;padding-top:22px;display:flex;flex-direction:column}.personal-signoff span:first-child{font:36px/1.15 var(--serif);color:var(--wine)}.personal-signoff span:last-child{font-size:11px;color:var(--muted);margin-top:7px}.priorities{padding-bottom:70px}.priorities-intro{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:40px}.priorities-intro p{font-size:14px;line-height:1.8;color:var(--muted)}.priority{display:grid;grid-template-columns:1fr 1.15fr;gap:10%;padding:35px 0;border-top:1px solid var(--line)}.priority h3{font-size:38px;line-height:1.14;color:var(--wine)}.priority p{font-size:15px;line-height:1.8}.priority .commitment{margin-top:17px;font-weight:700;font-size:14px}.role-note{font-size:12px;line-height:1.8;color:var(--muted);max-width:760px;padding-top:18px;border-top:1px solid var(--line)}.care{background:#ebdfd2;display:grid;grid-template-columns:1fr 1.15fr;gap:10%;padding-top:65px;padding-bottom:65px}.care p{font-size:15px;line-height:1.8;margin-bottom:18px}.care p:last-child{margin:0}.care h2{font-size:clamp(38px,4.2vw,59px)}.election{display:grid;grid-template-columns:1fr 1.7fr;gap:9%;align-items:center}.election-date{padding:35px;border:1px solid #bca59a;color:var(--wine);display:flex;flex-direction:column;align-items:center;font-size:16px;max-width:300px}.election-date strong{font:clamp(110px,13vw,180px)/1.1 var(--serif);letter-spacing:-.035em}.election-date span:last-child{border-top:1px solid #bca59a;padding-top:12px;align-self:stretch;text-align:center}.election-info h2{margin-bottom:24px}.election-info p{font-size:14px;margin-bottom:16px;line-height:1.8}.election-links{display:flex;flex-wrap:wrap;gap:14px 30px;margin-top:26px}.election-links a{display:flex;align-items:center;gap:10px;color:var(--wine);font-weight:700;font-size:12px;min-height:44px}.election-links svg{width:18px}.contact{background:var(--wine);color:var(--paper);display:flex;align-items:center;justify-content:space-between;gap:55px;padding-top:72px;padding-bottom:72px}.contact h2{font-size:clamp(40px,4.5vw,63px)}.contact p{font-size:15px;color:#f0dfd7;margin-top:25px}.contact-actions{display:flex;flex-direction:column;align-items:start;gap:17px;min-width:290px}.contact-actions .button{min-width:260px}.volunteer-link{font-size:13px;color:var(--paper);min-height:35px;display:flex;align-items:center}.email-address{font-size:12px;color:#e7cbbb}.site-footer{max-width:1440px;margin:auto;padding:44px 6% 28px;display:grid;grid-template-columns:1fr 1fr auto;gap:18px;align-items:center}.footer-brand{font:43px/1.15 var(--serif);color:var(--wine)}.footer-brand span{color:#a1694f}.site-footer p{font-size:12px;line-height:1.75;color:var(--muted)}.site-footer>a{font-size:12px;display:flex;align-items:center;gap:12px}.site-footer .footer-draft{grid-column:1/-1;border-top:1px solid var(--line);padding-top:20px;margin-top:10px;font-size:10px}.portrait-window{animation:portrait-arrive 1s cubic-bezier(.16,1,.3,1) both}@keyframes portrait-arrive{from{clip-path:inset(0 0 10% 0);transform:translateY(12px)}to{clip-path:inset(0 0 0 0);transform:translateY(0)}}
@media(min-width:1441px){.belief,.care,.contact{max-width:none}.care,.contact{padding-left:max(6%,calc((100% - 1267px)/2));padding-right:max(6%,calc((100% - 1267px)/2))}}
@media(max-width:1000px){.site-header nav{gap:16px;font-size:12px}.nav-contact{padding:10px 12px;gap:10px}.hero{column-gap:5%}.hero h1{font-size:70px}.portrait-window{height:460px}.portrait-signature{right:-12px;font-size:25px;min-width:168px}.about,.priority,.care{gap:6%;grid-template-columns:1fr 1.2fr}.contact-actions{min-width:250px}.contact-actions .button{min-width:235px}}
@media(max-width:760px){html{scroll-padding-top:20px}.draft-notice{font-size:10px;gap:8px;padding:6px 5%}.draft-notice>span{font-size:9px}.site-header{padding:20px 5%;flex-wrap:wrap;gap:0}.brand-name{font-size:34px}.brand-office{font-size:9px}.site-header nav{width:100%;flex-wrap:wrap;gap:10px 22px;padding-top:20px;margin-top:18px;border-top:1px solid var(--line)}.site-header nav a{min-height:44px;display:flex;align-items:center;font-size:13px}.js .menu-toggle{display:flex;align-items:center;gap:8px;padding:10px 0 10px 15px;background:transparent;border:0;color:var(--wine);font-size:13px}.js .site-header nav:not(.is-open){display:none}.hero{padding:36px 5% 0;grid-template-columns:1fr;gap:0}.hero h1{font-size:clamp(57px,12.8vw,90px);max-width:600px}.hero h1 br:nth-child(2){display:none}.hero h1 em{display:block}.hero-intro{font-size:15px;max-width:490px;margin-top:24px}.hero-portrait{width:min(100%,480px);margin:34px auto 0;padding-top:0}.portrait-window{height:410px;border-radius:230px 230px 0 0}.portrait-window img{object-position:46% center}.portrait-signature{right:10px;bottom:52px;font-size:27px}.hero-portrait figcaption{font-size:9px}.hero-foot{gap:20px;margin-top:28px;padding:22px 0}.hero-foot p{font-size:12px}.hero-foot p span{font-size:10px;max-width:150px}.hero-foot>a{font-size:10px;column-gap:10px}.hero-foot strong{font-size:12px}.belief{padding:47px 6% 52px}.belief h2{font-size:39px}.belief h2 br{display:none}.belief p{font-size:15px;line-height:1.75;margin-top:23px}.section-wrap{padding:58px 6%}.about,.priority,.care{grid-template-columns:1fr;gap:30px}h2{font-size:45px}.about-story .lead{font-size:19px}.about-story p{font-size:15px}.text-link{margin-top:22px}.priorities-intro{display:block;margin-bottom:28px}.priorities-intro p{margin-top:20px;font-size:14px}.priority{padding:28px 0;gap:18px}.priority h3{font-size:35px}.priority h3 br{display:none}.role-note{font-size:11px}.care{gap:24px}.care h2{font-size:43px}.election{grid-template-columns:1fr;gap:35px}.election-date{max-width:100%;flex-direction:row;justify-content:space-between;padding:16px 20px;font-size:14px;gap:12px}.election-date strong{font-size:78px;order:-1}.election-date span:last-child{border:0;padding:0;align-self:center;max-width:65px;line-height:1.4}.election-info h2{font-size:46px}.election-links{flex-direction:column;gap:9px;align-items:start}.contact{flex-direction:column;align-items:start;gap:28px}.contact h2{font-size:44px}.contact p{margin-top:20px}.contact-actions{width:100%}.contact-actions .button{min-width:260px}.site-footer{padding:32px 6% 22px;grid-template-columns:1fr auto}.footer-brand{font-size:37px}.site-footer p:not(.footer-draft){grid-column:1;grid-row:2}.site-footer>a{grid-column:2;grid-row:1/3;font-size:11px}.site-footer .footer-draft{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.portrait-window{animation:none}*{transition:none!important}}
@media print{.draft-notice{background:none;color:#000}.draft-notice>span{color:#000}.site-header nav,.menu-toggle,.button,.contact-actions,.site-footer>a{display:none!important}body{font-size:11pt;background:white}.hero h1{font-size:45pt}.hero{display:block}.hero-portrait{display:none}.hero-foot{margin-top:20px}.belief,.care,.contact{background:none;color:#000}.belief p,.contact p{color:#000}.section-wrap,.belief{padding:25px 0}.priority{break-inside:avoid}.site-header,.site-footer{padding:20px 0}.hero{padding:20px 0}.site-footer .footer-draft{color:#000}}

.contact a:focus-visible{outline-color:var(--rose)}
