/* Volunteer pages extend the existing Cotton Branch and project design systems. */
body.volunteer-pages{min-width:0}.volunteer-pages .preview-desktop-hint{display:none}.volunteer-pages .section-wrap{max-width:1216px}.volunteer-pages main{padding-bottom:32px}.volunteer-pages .page-hero{gap:56px}.volunteer-pages .page-hero h1{max-width:15ch}.volunteer-pages .page-hero .lead{max-width:49ch}.volunteer-pages .page-hero .page-photo img{height:360px}.volunteer-pages .v-hero-copy p+p{margin-top:16px}.v-kicker{font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;margin-bottom:16px}.v-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:30px}.v-heading h2{font-size:clamp(34px,4vw,52px);line-height:1.1}.v-heading>p{max-width:38ch;font-size:16px}.v-section{padding-block:28px}.v-section+.v-section{border-top:1px solid var(--ink)}.v-commit{padding:40px;border:var(--line);border-radius:12px;background:var(--paper);box-shadow:var(--shadow)}.v-commit>p{margin-top:18px;max-width:70ch}.v-paths{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:30px}.v-path{padding:28px;background:var(--cream);border:var(--line);border-radius:9px;min-width:0;display:flex;flex-direction:column;align-items:start}.v-path h3{font-size:32px;margin-bottom:14px}.v-path>p{font-size:15px;line-height:1.65;margin-top:14px}.v-path .button{margin-top:22px;width:100%;gap:14px}.v-path:first-child{background:#ffe8c3}.v-path:last-child{background:#f7d8e3}.v-openings{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;line-height:1.4;padding:7px 11px;background:var(--yellow);border:1.5px solid var(--ink);border-radius:5px;white-space:nowrap}.v-openings [data-openings]{font-variant-numeric:tabular-nums}.v-count-wrap{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.v-summary{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:26px}.v-summary strong{font-size:26px;letter-spacing:-.03em}.v-summary>span{font-size:14px}.v-multiple{padding:16px 20px;background:var(--yellow);border:var(--line);border-radius:8px;margin-block:15px;font-size:16px;max-width:none!important;line-height:1.65!important}.v-shared{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}.v-shared h2{font-size:35px;line-height:1.15;margin-bottom:18px}.v-shared p+p{margin-top:16px}.v-shared ul{padding-left:20px;margin-block:0}.v-shared li{margin-bottom:12px}.v-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start}.v-role{border:var(--line);border-radius:10px;background:var(--paper);box-shadow:5px 5px 0 var(--ink);padding:30px;min-width:0}.v-role-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:20px}.v-role-top .v-kicker{margin:0;font-size:10px}.v-role h3{font-size:30px;line-height:1.15;letter-spacing:-.035em;margin:0 0 17px;text-wrap:balance}.v-schedule{font-weight:700;font-size:14px;line-height:1.55;margin-bottom:18px!important}.v-role>p{font-size:16px;line-height:1.7;margin-bottom:18px}.v-role details{border-block:1px solid currentColor;margin-block:22px}.v-role summary{padding:17px 0;font-size:14px;font-weight:700;cursor:pointer}.v-role details ul{padding-left:21px;margin:8px 0 20px;font-size:15px;line-height:1.65}.v-role details li+li{margin-top:10px}.v-role details h4{font-size:15px;letter-spacing:0;margin:20px 0 12px}.v-role details p{font-size:15px;line-height:1.65;margin-bottom:18px}.v-role .button{font-size:14px;width:100%;gap:16px}.v-screening{font-size:13px;font-weight:600;line-height:1.6;padding:12px 15px;background:#f5e4d5;border-left:4px solid var(--ink);margin-block:18px}.v-days{margin-top:20px;padding-top:18px;border-top:1px solid currentColor}.v-days>strong{font-size:13px}.v-days-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.v-days-list span{display:inline-block;font-size:12px;background:var(--cream);padding:5px 9px;border:1px solid currentColor;border-radius:4px}.v-role .v-note{font-size:14px;color:inherit;opacity:.85}.v-application-note{font-size:13px;line-height:1.6;margin-top:12px;max-width:none}.v-travel{width:100%;border-collapse:collapse;margin-top:20px;font-size:15px}.v-travel th,.v-travel td{text-align:left;padding:12px 8px;border-bottom:1px solid currentColor}.v-travel th:first-child,.v-travel td:first-child{padding-left:0}.v-travel td:last-child{font-variant-numeric:tabular-nums}.v-project-links{display:grid;gap:20px;margin-top:32px}.v-project-link{display:grid;grid-template-columns:148px 1fr auto;gap:25px;align-items:center;padding:26px 30px;border:var(--line);border-radius:10px;background:var(--paper);box-shadow:5px 5px 0 var(--ink);transition:transform .16s}.v-project-link:hover{transform:translateY(-2px)}.v-project-link .v-logo{width:148px;height:83px;display:flex;align-items:center;justify-content:center;overflow:hidden}.v-logo img{height:100%;width:100%;object-fit:contain}.v-project-link h3{font-size:27px;line-height:1.15;margin-bottom:10px}.v-project-link p{font-size:15px;line-height:1.6}.v-project-link.lifeline-link{background:#e9efdf;border-color:#244c3b}.v-project-link.safe-link{background:#e7f0f6;border-color:#183e61}.v-project-link .v-logo-lifeline{position:relative;height:70px}.v-logo-lifeline img{position:absolute;width:220px;height:124px;max-width:none;left:-36px;top:-27px}.v-back{display:inline-flex;margin-top:30px}.v-placeholder{padding-block:70px;max-width:820px}.v-placeholder h1{font-size:clamp(38px,5vw,62px);line-height:1.08;margin-block:20px}.v-placeholder>p{font-size:18px;line-height:1.75;margin-block:22px}.v-empty{font-size:14px;font-weight:600}.v-role [aria-disabled=true]{opacity:.65;pointer-events:none}.v-form-error{color:#9a2918;font-size:14px;line-height:1.6;margin-top:15px}.v-dialog{width:min(560px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;background:var(--paper);color:var(--ink);border:var(--line);border-radius:12px;padding:28px;box-shadow:7px 7px 0 var(--ink)}.v-dialog::backdrop{background:#10263899}.v-dialog h2{font-size:34px;line-height:1.12;margin-block:20px}.v-dialog p{font-size:15px;line-height:1.65}.v-close{margin-left:auto;display:block;padding:8px 12px;border:1px solid currentColor;border-radius:5px;background:transparent;font-size:14px}.v-form{margin-top:24px}.v-form label:not(.v-consent){display:block;font-size:14px;font-weight:600;margin-block:17px 7px}.v-form input:not([type=checkbox]){display:block;width:100%;min-height:48px;padding:10px 12px;border:1.5px solid var(--ink);border-radius:5px;background:var(--paper);color:var(--ink);font:inherit}.v-consent{display:flex;align-items:start;gap:12px;margin-block:22px;font-size:14px;line-height:1.6}.v-consent input{width:20px;height:20px;flex:none;margin:2px 0;accent-color:var(--ink)}.v-form .button{width:100%;justify-content:center}.v-form .button:disabled{opacity:.6;cursor:wait}.v-form input:focus-visible{outline:3px solid var(--ink);outline-offset:3px}.v-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.v-success{padding-block:30px}.v-safe-intro{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;padding-block:65px}.v-safe-intro h1{font-size:clamp(42px,5vw,66px);line-height:1.07;margin-block:20px}.v-safe-intro p{font-size:18px;line-height:1.75;margin-block:18px}.v-safe-logo{background:var(--project-tint);padding:36px;border:var(--line);border-radius:12px}.v-safe-logo img{width:100%;height:auto;max-height:360px;object-fit:contain}.v-safe-note{padding:28px;background:var(--paper);border:var(--line);border-radius:9px}.v-safe-note p+p{margin-top:15px}.v-safe-note h2{font-size:34px;margin-bottom:18px}.v-waitlist-cta{padding:38px;background:var(--project-tint);border:var(--line);border-radius:10px;margin-top:45px}.v-waitlist-cta h2{font-size:36px;margin-bottom:18px}.v-waitlist-cta p{margin-bottom:24px}.v-footnote{font-size:13px!important;line-height:1.6!important;margin-top:20px!important}.v-casual{display:grid;grid-template-columns:1.1fr 1fr;gap:45px;align-items:center}.v-casual h2{font-size:38px;margin-bottom:20px}.v-casual .button{margin-top:24px}.v-return-nav{display:flex;gap:18px;flex-wrap:wrap;font-size:14px;font-weight:600;margin-top:20px}.v-return-nav a{text-decoration:underline;text-underline-offset:5px}.v-online-hero{padding-block:28px}.v-online-hero h1{font-size:clamp(44px,5vw,70px);max-width:18ch;margin-block:18px 25px}.v-online-hero .lead{font-size:19px;line-height:1.7;max-width:62ch}.v-online-hero .v-kicker{margin:0}.v-count-status{font-size:13px;margin-top:20px}.lf-recruitment.volunteer-pages{--cream:#faf9f3;--paper:#fcfdf8;--ink:#253d31;--yellow:#e9efdf;--orange:#cdddba;--line:1px solid #c9d2c3;--shadow:none}.lf-recruitment.volunteer-pages .v-role,.lf-recruitment.volunteer-pages .v-commit,.lf-recruitment.volunteer-pages .v-project-link{box-shadow:none}.lf-recruitment.volunteer-pages .v-role h3,.lf-recruitment.volunteer-pages .v-heading h2,.lf-recruitment.volunteer-pages .v-online-hero h1{color:#164d36;font-weight:600}.lf-recruitment.volunteer-pages .button{background:#164d36;color:#fafcf5;box-shadow:none;border:1px solid #164d36;border-radius:6px}.lf-recruitment.volunteer-pages .v-role summary{border-color:#c9d2c3}.lf-recruitment.volunteer-pages .v-openings{background:#e9efdf;border-color:#c9d2c3}.lf-recruitment.volunteer-pages .v-hero-logo{max-width:250px;max-height:120px;object-fit:contain}.v-lifeline-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}.v-lifeline-photo{width:100%;aspect-ratio:6/5;object-fit:cover;border-radius:12px}.lf-recruitment .v-lifeline-recruitment{padding-block:40px}.lf-recruitment .v-lifeline-recruitment .v-heading h2{color:#164d36;font-size:38px}.lf-recruitment .v-lifeline-recruitment .button{background:#164d36;color:#fafcf5;box-shadow:none;border:1px solid #164d36}.lf-recruitment .v-lifeline-recruitment .v-multiple{background:#e9efdf;border:1px solid #c9d2c3}.lf-recruitment .v-lifeline-recruitment .v-openings{border:1px solid #c9d2c3;background:#e9efdf}.lf-recruitment .v-lifeline-recruitment .v-project-link{box-shadow:none;border:1px solid #c9d2c3}.lf-recruitment .v-lifeline-recruitment .v-project-link h3{font-size:25px}
@media(max-width:1000px){.volunteer-pages .header-inner{flex-wrap:wrap;gap:15px;padding-block:18px}.volunteer-pages #primary-nav{display:flex;flex-wrap:wrap;gap:10px 22px}.volunteer-pages .page-hero{gap:35px}.volunteer-pages .page-hero h1{font-size:60px}.v-role{padding:25px}.v-project-link{grid-template-columns:110px 1fr;gap:20px}.v-project-link .v-logo{width:110px}.v-project-link>.v-openings{grid-column:2;justify-self:start}.v-project-link .v-logo-lifeline img{left:-50px}.v-safe-intro{gap:35px}}
@media(max-width:720px){.volunteer-pages .section-wrap,.volunteer-pages .header-inner{width:calc(100% - 40px)}.volunteer-pages .review-bar{padding-inline:20px;letter-spacing:.04em}.volunteer-pages .review-bar .review-links a:last-child{display:none}.volunteer-pages .site-header{position:relative}.volunteer-pages .header-inner{min-height:0;gap:15px}.volunteer-pages #primary-nav{display:flex;gap:6px 18px;width:100%;margin:0}.volunteer-pages #primary-nav>a,.volunteer-pages #primary-nav summary{font-size:12px}.volunteer-pages #primary-nav>.button{font-size:12px;min-height:42px;padding:8px 12px}.volunteer-pages .nav-dropdown{left:0;max-width:calc(100vw - 40px)}.volunteer-pages .page-hero,.v-lifeline-hero,.v-safe-intro{grid-template-columns:1fr;padding-block:38px;gap:28px}.volunteer-pages .page-hero h1{font-size:clamp(43px,11vw,62px);margin-block:15px 23px}.volunteer-pages .page-hero .lead,.v-online-hero .lead,.v-safe-intro p{font-size:17px}.volunteer-pages .page-hero .page-photo img{height:auto;aspect-ratio:16/10}.volunteer-pages .page-photo{transform:none;margin-right:5px}.v-section{padding-block:35px}.v-commit{padding:25px 21px}.v-paths,.v-grid,.v-shared,.v-casual{grid-template-columns:1fr;gap:24px}.v-path{padding:23px 20px}.v-heading{display:block;margin-bottom:25px}.v-heading>p{margin-top:18px}.v-heading h2{font-size:36px}.v-role{padding:25px 21px;margin-right:5px}.v-role h3{font-size:28px}.v-summary{gap:12px 20px}.v-multiple{padding:19px;font-size:15px}.v-project-link{padding:20px;grid-template-columns:90px 1fr;gap:15px}.v-project-link .v-logo{width:90px;height:75px}.v-project-link h3{font-size:22px}.v-project-link p{font-size:14px}.v-project-link>.v-openings{grid-column:1/-1}.v-project-link .v-logo-lifeline img{left:-63px;top:-24px}.v-travel{font-size:14px}.v-online-hero{padding-block:35px}.v-online-hero h1{font-size:45px}.v-safe-logo{padding:25px;max-width:460px}.v-safe-intro h1{font-size:45px}.v-safe-note,.v-waitlist-cta{padding:25px 21px}.v-waitlist-cta h2{font-size:32px}.v-dialog{padding:22px}.v-dialog h2{font-size:30px}.v-lifeline-photo{aspect-ratio:16/10}.volunteer-pages .site-footer{grid-template-columns:1fr 1fr}.volunteer-pages .footer-expanded{grid-template-columns:1fr;gap:25px}.volunteer-pages .footer-links{display:flex;flex-wrap:wrap;gap:12px 20px}.volunteer-pages footer .wordmark>span{font-size:23px}.volunteer-pages .page-review-nav{display:none}.lf-recruitment.volunteer-pages .header-inner{flex-wrap:nowrap}.lf-recruitment.volunteer-pages .lf-wordmark{width:150px}.lf-recruitment.volunteer-pages .lf-wordmark img{left:-36px}.v-placeholder{padding-block:35px}.v-placeholder h1{font-size:39px}}
.v-days{margin-bottom:24px}
@media(max-width:720px){.volunteer-pages .header-inner{position:relative}.volunteer-pages #primary-nav>.button{position:absolute;right:0;top:18px;min-height:38px;font-size:11px;padding:8px 10px;gap:10px}.volunteer-pages .header-inner>.wordmark{max-width:185px}}
@media(prefers-reduced-motion:reduce){.volunteer-pages *{scroll-behavior:auto;transition:none!important;animation:none!important}}
/* Compact role summaries share one size; complete role information lives in native dialogs. */
.v-grid{align-items:stretch;grid-auto-rows:auto}
.v-role{display:flex;flex-direction:column;gap:12px;min-block-size:0;block-size:auto;position:relative;cursor:pointer}
.v-role>.v-role-top{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:10px;align-items:center;margin:0;min-block-size:36px}
.v-role>h3{margin:0;align-self:start}
.v-role>.v-schedule{margin:0!important;min-block-size:0;font-size:14px;line-height:1.55}
.v-role>.v-role-trigger{margin:0;margin-top:auto;min-block-size:48px;justify-content:space-between;cursor:pointer}
.v-role-trigger::after{content:"";position:absolute;inset:0;border-radius:10px}
.v-role-trigger:focus-visible{outline:3px solid var(--ink);outline-offset:5px}
.v-role:has(>.v-role-trigger:focus-visible){outline:3px solid var(--ink);outline-offset:5px}
.v-role-dialog{width:min(680px,calc(100% - 32px));padding:30px;cursor:auto;overscroll-behavior:contain}
.v-role-dialog .v-role-top{margin:24px 0 18px}
.v-role-dialog h2{font-size:clamp(28px,4vw,36px);overflow-wrap:break-word}
.v-role-dialog h3,.v-role-dialog h4{font-size:18px;line-height:1.4;margin:26px 0 12px;letter-spacing:0;text-wrap:wrap}
.v-role-dialog ul{padding-left:22px;margin:0 0 22px;font-size:15px;line-height:1.7}
.v-role-dialog li+li{margin-top:10px}
.v-role-dialog .v-note{font-size:14px;line-height:1.7;margin-block:22px}
.v-role-dialog .v-days{margin-block:24px}
.v-role-dialog .button{margin-top:12px;justify-content:center}
.v-role-dialog .v-close{min-block-size:44px;min-inline-size:80px;cursor:pointer}
.v-role-dialog [aria-disabled=true]{opacity:.65;pointer-events:none}
.v-role-dialog :is(button,a):focus-visible{outline:3px solid var(--ink);outline-offset:4px}
body:has(.v-dialog[open]){overflow:hidden}
.lf-recruitment.volunteer-pages .v-role-dialog{box-shadow:none}
@media(max-width:720px){.v-role{min-block-size:0}.v-role-dialog{padding:22px}.v-role-dialog .v-role-top{gap:10px}.v-role-dialog .v-role-top .v-kicker{font-size:10px}.v-role-dialog h2{font-size:29px}}

/* Display the complete Lifeline mark at its original proportions. */
.v-project-link .v-logo-lifeline{overflow:visible}
.v-project-link .v-logo-lifeline img{position:static;width:100%;height:100%;max-width:100%;object-fit:contain;object-position:center}

/* Keep each icon beside the term and openings; let role content determine height. */
.v-role{padding:22px 24px}.v-role-top>.v-role-icon{display:block;width:28px;height:28px;color:var(--ink);align-self:start}.v-role-icon svg{display:block;width:100%;height:100%}@media(max-width:720px){.v-role{padding:20px;gap:12px}}

.v-role>.v-summary-copy{font-size:16px;line-height:1.55;margin:0;max-width:52ch}
@media(max-width:720px){.v-section,.v-online-hero{padding-block:18px}.v-multiple{margin-block:12px;padding:16px}.v-safe-intro{padding-block:32px}}
