@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,400;0,600;0,700;1,400&family=Pacifico&family=Roboto:wght@400;500;700&display=swap');

.public-body{background:#fff;color:#5c6668;font-family:"Open Sans",Arial,sans-serif;font-size:16px;line-height:1.75}
.public-body a{color:#199bd3}
.public-main{width:100%;margin:0;padding:0;background:#fff}
.site-shell{width:min(1166px,calc(100% - 40px));margin-left:auto;margin-right:auto}
.site-hero{height:455px;color:#fff;background:#cce6f3 url("site/campaign-hero.jpg") center 80%/cover no-repeat;position:relative;overflow:hidden}
.site-hero .site-shell{width:min(1086px,calc(100% - 40px))}
.site-topbar{height:55px;background:rgba(93,185,231,.56);border-bottom:1px solid rgba(255,255,255,.15)}
.site-topbar__inner{height:55px;display:flex;align-items:center}
.social-links{display:flex;align-items:center;gap:20px}
.social-links a{display:block;width:35px;height:35px;opacity:.78;transition:opacity .15s}
.social-links a:hover{opacity:1}
.social-links img{display:block;width:35px;height:35px;object-fit:contain}
.site-secondary-nav{display:block;position:relative;flex:0 0 699px;width:699px;margin-left:auto;height:44px}
.site-secondary-nav a{display:flex;align-items:center;position:absolute;top:0;height:44px;padding:0 13px;color:#fff;text-decoration:none;text-transform:uppercase;font-size:13px;white-space:nowrap;text-shadow:0 1px 1px rgba(49,122,161,.16)}
.site-secondary-nav a:nth-child(1){left:0;width:85px}
.site-secondary-nav a:nth-child(2){left:85px;width:65px}
.site-secondary-nav a:nth-child(3){left:151px;width:115px}
.site-secondary-nav a:nth-child(4){left:267px;width:95px}
.site-secondary-nav a:nth-child(5){left:363px;width:95px}
.site-secondary-nav a:nth-child(6){left:459px;width:240px}
.site-secondary-nav a:hover{background:rgba(255,255,255,.1)}
.site-brand-row{height:109px;display:flex;align-items:flex-start;padding-top:32px}
.site-brand-row img{display:block;width:200px;height:46px}
.site-primary-nav{height:112px;display:block;position:relative;padding:0}
.site-primary-nav a{height:112px;display:flex;align-items:center;position:absolute;top:0;color:#fff;text-decoration:none;text-transform:uppercase;font-size:15px;font-weight:700;letter-spacing:.035em;white-space:nowrap;text-shadow:0 1px 2px rgba(26,82,112,.28)}
.site-primary-nav a span{display:inline-flex;width:16px;height:16px;margin-right:7px;flex:0 0 16px}
.site-primary-nav a span svg{display:block;width:16px;height:16px}
.site-primary-nav a:nth-child(1){left:calc(100% - 981px);width:165px}
.site-primary-nav a:nth-child(2){left:calc(100% - 782px);width:163px}
.site-primary-nav a:nth-child(3){left:calc(100% - 583px);width:67px}
.site-primary-nav a:nth-child(4){left:calc(100% - 481px);width:292px}
.site-primary-nav .site-donate-link{left:calc(100% - 154px);width:154px;height:112px;margin:0;padding:0 15px;background:linear-gradient(to bottom,transparent 32px,#f58220 32px,#f58220 76px,transparent 76px);text-shadow:none}
.site-donate-link:hover{background:linear-gradient(to bottom,transparent 32px,#ef7712 32px,#ef7712 76px,transparent 76px)}
.mobile-menu-button,.mobile-menu{display:none}

.campaign-intro{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:46px;padding-top:50px;padding-bottom:42px;align-items:start}
.campaign-intro__copy h1{margin:0;color:#ef7f1a;font-family:Pacifico,cursive;font-size:40px;font-weight:400;line-height:1.1}
.campaign-lead{margin:42px 0 0;font-size:20px;line-height:1.4;color:#30373d}
.campaign-poster{display:block;width:100%;height:auto;max-height:290px;object-fit:cover;object-position:top center}
.campaign-steps{padding:0 12px 50px}
.campaign-steps h2,.campaign-faq h2{margin:0 0 42px;color:#ef7f1a;font-size:30px;line-height:1.4;font-weight:400;font-style:italic}
.campaign-steps ul{list-style:none;margin:0 0 52px;padding:0}
.campaign-steps li{position:relative;margin:0 0 13px;padding-left:46px;line-height:1.9}
.campaign-steps li:before{content:"✓";position:absolute;left:3px;top:-2px;color:#ef7f1a;font-size:25px;font-weight:700}
.campaign-steps p{margin:0;line-height:1.75}

.leyka-style-card{width:min(760px,calc(100% - 40px));margin:0 auto 54px;padding:40px;background:#fff;border-radius:4px;box-shadow:0 3px 24px rgba(0,0,0,.11);font-family:Roboto,Arial,sans-serif;color:#5c6668}
.leyka-style-card .leyka-section{margin:0 0 32px}
.leyka-style-card .leyka-section>legend,.leyka-style-card .participant-fields>h2{width:100%;display:flex;align-items:center;gap:20px;margin:0 0 24px;color:#aaa;font-size:16px;font-weight:700;text-align:center;text-transform:uppercase;letter-spacing:.025em}
.leyka-style-card .leyka-section>legend:before,.leyka-style-card .leyka-section>legend:after,.leyka-style-card .participant-fields>h2:before,.leyka-style-card .participant-fields>h2:after{content:"";height:1px;flex:1;background:#d8d8d8}
.leyka-style-card .leyka-section>legend span,.leyka-style-card .participant-fields>h2 span{white-space:nowrap}
.leyka-style-card .amount-fieldset{border:0;padding:0}
.leyka-style-card .amount-options{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.leyka-style-card .amount-pill span{border:2px solid #e8e8e8;border-radius:4px;padding:20px 7px;background:#fff;color:#666;font-size:20px;font-weight:400;line-height:1.2}
.leyka-style-card .amount-pill input:checked+span{border-color:#ef7217;background:#fff7f2;color:#ef6610}
.leyka-custom-amount{display:block;position:relative;margin-top:18px}
.leyka-custom-amount input{width:100%;height:69px;padding:26px 20px 7px;border:2px solid #e8e8e8;border-radius:4px;background:#fff;color:#444;font-size:18px;outline:none}
.leyka-custom-amount input:focus{border-color:#ef7217}
.leyka-custom-amount span{position:absolute;top:8px;left:0;right:0;color:#666;font-size:14px;text-align:center;pointer-events:none}
.leyka-style-card .field{gap:7px}
.leyka-style-card .field>span{color:#555;font-size:14px;font-weight:500}
.leyka-style-card .field b{color:#ef6610}
.leyka-style-card .field input,.leyka-style-card .field select,.leyka-style-card .field textarea{min-height:48px;border:1px solid #d8d8d8;border-radius:3px;padding:12px 14px;color:#333}
.leyka-style-card .field input:focus,.leyka-style-card .field select:focus,.leyka-style-card .field textarea:focus{border-color:#ef7217;box-shadow:0 0 0 2px rgba(239,114,23,.1)}
.participant-fields{padding-top:4px}
.leyka-text-field{display:block;position:relative;margin-bottom:28px}
.leyka-text-field input{display:block;width:100%;height:69px;padding:16px 18px;border:2px solid #e8e8e8;border-radius:4px;background:#fff;color:#444;font-size:17px;text-align:center;outline:none}
.leyka-text-field>span{position:absolute;left:14px;right:14px;top:50%;transform:translateY(-50%);color:#555;font-size:18px;text-align:center;line-height:1.25;pointer-events:none;transition:opacity .12s}
.leyka-text-field>span b{color:#ff531f;font-weight:400}
.leyka-text-field input:focus{border-color:#ef7217}
.leyka-text-field input:focus+span,.leyka-text-field input:not(:placeholder-shown)+span{opacity:0}
.leyka-text-field .field-error{display:block;margin-top:6px}
.payment-methods{height:34px;display:flex;align-items:center;justify-content:center;gap:28px;margin:28px 0 0}
.payment-methods img{display:block;max-width:54px;max-height:22px}
.leyka-style-card .consents{gap:12px;margin:6px 0 30px}
.leyka-style-card .check-row{font-size:18px;font-weight:500;line-height:1.45;color:#333}
.leyka-style-card .check-row input{accent-color:#ef7217}
.leyka-style-card .check-row a{color:#ff531f}
.leyka-style-card .primary-button{border-radius:4px;background:#ffa07f;text-transform:uppercase;font-size:17px;font-weight:700;letter-spacing:.01em}
.leyka-style-card .primary-button:hover{background:#ef7217}
.leyka-style-card .leyka-submit{min-height:70px}
.leyka-style-card .security-note{font-size:12px;line-height:1.45;color:#999}

.campaign-faq{padding:0 12px 68px}
.campaign-faq article{margin-bottom:24px}
.campaign-faq h2{margin:0 0 12px;font-style:normal}
.campaign-faq p{margin:0 0 15px;line-height:1.75}
.campaign-faq .campaign-closing{font-family:Pacifico,cursive;font-size:40px;font-style:normal;margin:38px 0 0}
.campaign-donations{padding:0 0 40px}
.leyka-shortcode.donations-list{width:100%;color:#666}
.donations-list-table{width:100%;border-collapse:collapse;border-spacing:0;table-layout:fixed}
.donations-list-table caption.title{padding:0 0 8px;color:#666;font-size:24px;font-weight:400;line-height:1.5;text-align:left}
.donations-list-table .list-cell{padding-left:0;padding-right:0;text-align:left}
.donations-list-table .header-row .list-cell{padding-top:0;padding-bottom:14px;border-bottom:2px solid #eee;color:#aaa;font-size:13px;font-weight:400;line-height:1.5;letter-spacing:.12em;text-transform:uppercase}
.donations-list-table tbody .list-cell{padding-top:19px;padding-bottom:22px;border-bottom:1px solid #eee;color:#777;font-size:14px;font-weight:400;line-height:1.5}
.donations-list-table .donation_date{width:32%}
.donations-list-table .donation_type{width:33%}
.donations-list-table .donation_amount{width:35%;text-align:right;white-space:nowrap}
.donations-list-table .donation-type-icon{display:inline-block;width:16px;height:16px;margin-right:8px;object-fit:contain;vertical-align:-3px;color:#aaa;font-size:15px;line-height:16px;opacity:.75}
.site-footer{height:458px;min-height:458px;padding:40px 30px;background:#164d74 url("site/footer-bg.jpg") center/cover no-repeat;color:#fff;font-size:14px;line-height:2;letter-spacing:.07em}
.site-footer .site-footer__grid{width:calc(100% + 32px);max-width:none;margin-left:-16px;margin-right:-16px}
.site-footer__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;align-items:start}
.site-footer__grid>div{min-width:0;padding:0 16px}
.site-footer p{margin:0;color:#fff}
.site-footer__about{text-align:center}
.site-footer__about img{display:block;width:118px;height:80px;object-fit:contain;margin:0 auto 50px}
.site-footer__about p{font-size:12px;line-height:2;letter-spacing:.08em;text-align:left}
.site-footer__about strong{display:block;margin-top:49px;font-size:50px;font-weight:700;line-height:1}
.site-footer__middle p{margin:14px 0 0;font-size:14px;line-height:2;letter-spacing:.07em}
.site-footer__join{text-align:center}
.site-footer__join h4{margin:0 0 28px;color:#fff7f7;font-size:13px;font-weight:700;line-height:1.5;letter-spacing:.08em;text-transform:uppercase}
.footer-socials{display:flex;justify-content:center;gap:15px;margin:0 0 65px}
.footer-socials a,.footer-socials img{display:block;width:48px;height:48px}
.footer-socials img{object-fit:contain}
.footer-search{display:flex;width:calc(100% - 200px);min-width:181px;max-width:240px;height:45px;margin:0 auto 50px;background:#fff}
.footer-search input{flex:1;width:auto;min-width:0;height:45px;padding:0 12px;border:0;background:#fff;color:#555;font-family:"Open Sans",Arial,sans-serif;font-size:13px;outline:none}
.footer-search button{display:grid;place-items:center;width:45px;height:45px;padding:0;border:0;background:#fff;color:#aaa;cursor:pointer}
.footer-search button{order:-1;flex:0 0 45px}
.footer-search button svg{display:block;width:16px;height:16px}
.footer-button{display:flex;align-items:center;justify-content:center;width:310px;height:43px;margin:0 auto;padding:13px 29px;background:#ef7f1a;color:#fff!important;text-decoration:none;text-align:center;font-size:14px;font-weight:600;line-height:17px;letter-spacing:.12em;white-space:nowrap}

.public-body .flash{width:min(1166px,calc(100% - 40px));margin:20px auto}
.public-body .simple-card{margin:70px auto;padding:50px;border-radius:4px;box-shadow:0 3px 24px rgba(0,0,0,.09)}
.public-body .simple-card h1{color:#ef7f1a;font-family:Pacifico,cursive;font-weight:400}
.public-body .primary-button{background:#ef7217}
.public-body .leyka-style-card .leyka-submit{background:#ffa07f}
.public-body .leyka-style-card .leyka-submit:hover{background:#ef7217}
.public-body .leyka-style-card .check-row input{width:25px;height:25px;flex:0 0 25px;margin-top:0}
.public-body .secondary-button{border-radius:3px;color:#ef7217;border-color:#ef7217}
.public-body .eyebrow{color:#ef7217}

@media(max-width:1150px){
    .site-secondary-nav a{padding:0 8px;font-size:12px}
    .site-primary-nav a{font-size:13px}
}
@media(min-width:1600px){
    .site-hero .site-shell{width:calc(100% - 140px);max-width:none}
    .site-primary-nav{position:absolute;top:55px;left:70px;right:70px;width:auto;margin:0}
}
@media(max-width:1024px){
    .site-hero{height:calc(64px + 34vw);max-height:412px;background-size:100% auto;background-position:center bottom;background-repeat:no-repeat}
    .site-topbar{height:64px;background:rgba(87,180,225,.78)}
    .site-topbar__inner{height:64px}
    .social-links,.site-secondary-nav,.site-primary-nav{display:none}
    .site-brand-row{height:auto;padding-top:24px}
    .site-brand-row img{width:180px;height:auto}
    .mobile-menu-button{display:block;margin-left:auto;border:0;background:transparent;color:#fff;font-size:28px;cursor:pointer}
    .mobile-menu{position:absolute;z-index:5;left:20px;right:20px;top:64px;padding:12px;background:rgba(74,164,207,.97);box-shadow:0 10px 25px rgba(0,0,0,.15)}
    .mobile-menu:not([hidden]){display:grid}
    .mobile-menu a{padding:10px 12px;color:#fff;text-decoration:none;text-transform:uppercase;font-size:13px;border-bottom:1px solid rgba(255,255,255,.18)}
    .campaign-intro{grid-template-columns:1fr;gap:30px}
    .campaign-poster{width:min(430px,100%);max-height:none}
    .campaign-steps{padding-left:20px;padding-right:20px}
    .leyka-style-card .form-grid{grid-template-columns:1fr}
    .leyka-style-card .field--wide{grid-column:auto}
    .site-footer{height:auto;min-height:0;padding:36px 20px;background-position:center}
    .site-footer .site-footer__grid{width:100%;margin-left:auto;margin-right:auto}
    .site-footer__grid{grid-template-columns:1fr;gap:38px}
    .site-footer__grid>div{padding:0}
    .site-footer__about img{margin-bottom:24px}
    .site-footer__about p,.site-footer__middle p{max-width:640px;margin-left:auto;margin-right:auto;text-align:center}
    .site-footer__about strong{margin-top:28px}
    .site-footer__middle p{margin-top:0}
    .footer-socials{margin-bottom:38px}
    .footer-search{margin-bottom:38px}
    .public-body .simple-card{margin:40px auto}
}
@media(max-width:560px){
    .site-shell{width:min(100% - 28px,1166px)}
    .site-hero{height:calc(58px + 34vw);max-height:none;background-size:100% auto;background-position:center bottom}
    .site-hero .site-shell{width:calc(100% - 28px)}
    .site-topbar,.site-topbar__inner{height:58px}
    .site-brand-row{padding-top:18px}
    .site-brand-row img{width:155px}
    .mobile-menu{top:58px;left:14px;right:14px}
    .campaign-intro{padding-top:32px;padding-bottom:30px}
    .campaign-intro__copy h1{font-size:34px}
    .campaign-lead{margin-top:24px;font-size:18px}
    .campaign-steps h2,.campaign-faq h2{font-size:25px;margin-bottom:26px}
    .campaign-steps li{padding-left:36px;line-height:1.65;margin-bottom:16px}
    .leyka-style-card{width:calc(100% - 24px);padding:25px 18px;margin-bottom:42px}
    .leyka-style-card .amount-options{grid-template-columns:repeat(2,1fr);gap:10px}
    .leyka-style-card .leyka-section>legend,.leyka-style-card .participant-fields>h2{font-size:13px;gap:10px}
    .leyka-style-card .leyka-section>legend span,.leyka-style-card .participant-fields>h2 span{white-space:normal}
    .leyka-text-field>span{font-size:15px}
    .campaign-faq{padding-left:20px;padding-right:20px}
    .campaign-faq .campaign-closing{font-size:34px}
    .campaign-donations{padding-bottom:32px}
    .donations-list-table caption.title{font-size:21px}
    .donations-list-table .header-row .list-cell{font-size:10px;letter-spacing:.06em}
    .donations-list-table tbody .list-cell{font-size:12px}
    .donations-list-table .donation_date{width:45%}
    .donations-list-table .donation_type{width:22%}
    .donations-list-table .donation_amount{width:33%}
    .donations-list-table .donation-type-icon{display:none}
    .site-footer{padding-left:14px;padding-right:14px}
    .site-footer__about p,.site-footer__middle p{font-size:12px;line-height:1.8}
    .footer-search{width:239px;min-width:0;max-width:100%}
    .footer-button{width:min(310px,100%);height:auto;min-height:43px;white-space:normal}
    .public-body .simple-card{width:calc(100% - 24px);margin:28px auto;padding:32px 22px}
}
