/* Page sections: homepage, About, Donate a device, Volunteer */

/* Home: hero */
.ttt-hero-text{max-width:calc(320px * var(--ttt-sz));position:relative;z-index:2}
.ttt-hero-text,.ttt-section>*{position:relative;z-index:4}
.ttt-hero{overflow:hidden;overflow:hidden}

/* About: story, plan and vision */
.ttt-two-col{columns:2 260px;column-gap:28px}
.ttt-two-col li{break-inside:avoid}
.ttt-mission{margin:0 0 20px!important;padding:14px 16px;border-left:4px solid var(--wp--preset--color--accent);background:var(--wp--preset--color--surface);border-radius:0 12px 12px 0;font-weight:700;line-height:1.45;color:var(--wp--preset--color--heading)}
.ttt-two{gap:28px!important}
.ttt-stretch>.wp-block-column{display:flex}
.ttt-stretch>.wp-block-column>*{flex:1}
.ttt-timeline{list-style:none;margin:28px 0 0;padding:0}
.ttt-timeline li{display:grid;grid-template-columns:72px 1fr 64px;gap:16px;align-items:center;padding:12px 0;border-top:1px solid rgba(247,244,236,.13)}
.ttt-timeline li.ttt-tl-first{grid-template-columns:72px 1fr}
.ttt-timeline li.ttt-tl-first span:last-child{opacity:.92}
.ttt-tl-y{font:400 30px/1 var(--wp--preset--font-family--display);color:var(--wp--preset--color--band-accent)}
.ttt-tl-t{height:10px;border-radius:5px;background:rgba(247,244,236,.12);overflow:hidden}
.ttt-tl-t i{display:block;height:100%;width:0;background:var(--wp--preset--color--band-accent);border-radius:5px;transition:width 1.2s cubic-bezier(.2,.8,.2,1)}
.ttt-tl-n{font:400 30px/1 var(--wp--preset--font-family--display);text-align:right}
.ttt-tl-note{grid-column:2/-1;font-size:12px;opacity:.8;margin-top:-8px}
.ttt-total{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:baseline;margin-top:20px}
.ttt-total strong{font:400 calc(64px * var(--ttt-sz))/.9 var(--wp--preset--font-family--display);color:var(--wp--preset--color--band-accent);font-weight:400}
.ttt-checklist{list-style:none;margin:10px 0 0;padding:0}
.ttt-checklist li{position:relative;padding:10px 0 10px 32px;border-top:1px solid var(--ttt-line);font-size:15px}
.ttt-checklist li:before{content:"";position:absolute;left:0;top:12px;width:20px;height:20px;border-radius:50%;background:var(--wp--preset--color--accent)}
.ttt-checklist li:after{content:"";position:absolute;left:6px;top:17px;width:8px;height:4px;border-left:2px solid var(--wp--preset--color--base);border-bottom:2px solid var(--wp--preset--color--base);transform:rotate(-45deg)}
.ttt-plan,.ttt-vision-card{padding:24px}
.ttt-vision-card{background:var(--wp--preset--color--warm)!important;color:#1A1A1A!important}
.ttt-vision-card .ttt-eyebrow{color:#5E4A3A}
.ttt-vision{font-family:var(--wp--custom--heading-font,var(--wp--preset--font-family--display));font-size:calc(30px * var(--ttt-sz))!important;line-height:1.08;color:#1A1A1A;margin:10px 0 0!important}
@media (max-width:639px){
.ttt-timeline li{grid-template-columns:52px 1fr 48px;gap:10px}
.ttt-timeline li.ttt-tl-first{grid-template-columns:52px 1fr}
.ttt-tl-y,.ttt-tl-n{font-size:24px}
}
html:not([data-mode=dark]) :is(.ttt-plan,.ttt-spot,.ttt-bench) :is(.ttt-eyebrow,.ttt-spot-photo,.ttt-spot-meta){color:#4f5a52}

/* Home: ways to give */
.ttt-tile h3{font-family:var(--wp--preset--font-family--body);font-size:19px;font-weight:700;margin:0 0 6px}
.ttt-tile>*+*{margin-block-start:10px}
.ttt-give{gap:16px!important;margin-top:6px;align-items:stretch;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))!important}
.ttt-tile{border:2px solid var(--ttt-line);border-radius:16px;padding:20px 22px;background:var(--wp--preset--color--base);display:flex;flex-direction:column}
.ttt-tile>.wp-block-buttons{margin-top:auto;padding-top:6px}
.ttt-tile .ttt-small{margin:4px 0 0}

/* Home: the story so far */
.ttt-press{display:grid;grid-template-columns:1.25fr 1fr;gap:16px;margin-top:6px}
.ttt-press-main{background:var(--wp--preset--color--band);color:var(--wp--preset--color--band-text);border-radius:18px;padding:calc(26px * var(--ttt-sz)) calc(28px * var(--ttt-sz));display:flex;flex-direction:column;align-items:flex-start;gap:14px;position:relative;overflow:hidden}
.ttt-press-main:before{content:"\201C";position:absolute;right:18px;top:-18px;font:400 160px/1 Georgia,serif;color:var(--wp--preset--color--band-accent);opacity:.18}
.ttt-press-main h3{margin:0;font-family:var(--wp--custom--heading-font,var(--wp--preset--font-family--display));font-weight:400;font-size:calc(30px * var(--ttt-hs) * var(--ttt-sz));line-height:1.15;color:var(--wp--preset--color--band-text);flex:1}
.ttt-press-out{margin:0;font:500 11px/1.4 var(--wp--preset--font-family--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--wp--preset--color--muted)}
.ttt-press-main .ttt-press-out{color:var(--wp--preset--color--band-accent)}
.ttt-press-side{display:grid;gap:16px}
.ttt-press-item{border:1.5px solid var(--ttt-line);border-radius:16px;padding:18px 20px;display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.ttt-press-item h3{margin:0;font-family:var(--wp--preset--font-family--body);font-weight:700;font-size:16px;line-height:1.4;color:var(--wp--preset--color--heading)}
.ttt-press-link{font-weight:700;font-size:14px;color:inherit;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1.5px;padding:6px 0;min-height:32px;display:inline-flex;align-items:center;gap:6px}
.ttt-press-link:after{content:"\2197";font-size:.95em}
.ttt-press-link:hover{text-decoration-thickness:2.5px}
.ttt-press-main .ttt-press-link{color:var(--wp--preset--color--band-accent);font-size:15px}
@media (max-width:860px){
.ttt-press{grid-template-columns:1fr}
}

/* Home: supported by */
.ttt-sup{display:flex;flex-wrap:wrap;align-items:center;gap:20px 28px;padding-top:calc(36px * var(--ttt-sz));padding-bottom:calc(36px * var(--ttt-sz))}
.ttt-sup>*+*{margin-block-start:0!important}
.ttt-sup-h{margin:0;font-size:11px!important}
.ttt-sup>.wp-block-html,.ttt-sup-logos{flex:1;min-width:260px}
.ttt-sup-logos{display:flex;gap:12px;flex-wrap:wrap;list-style:none;margin:0;padding:0}
.ttt-sup-logos li{background:#fff;border-radius:12px;height:64px;padding:8px 16px;display:flex;align-items:center;justify-content:center;flex:1;min-width:120px;max-width:220px}
.ttt-sup-logos img{max-height:46px;max-width:100%;object-fit:contain;display:block}
@media (max-width:639px){
.ttt-sup{flex-direction:column;align-items:flex-start}
.ttt-sup-logos{width:100%}
.ttt-sup-logos li{height:56px;min-width:0}
}

/* Home: newsletter band */
.ttt-news-band{display:flex;flex-wrap:wrap;gap:16px 28px;align-items:center;justify-content:space-between}
.ttt-news-band>*+*{margin-block-start:0!important}
.ttt-news-band h2{font-size:calc(28px * var(--ttt-hs) * var(--ttt-sz));margin:8px 0 0}
.ttt-news-band .ttt-small{margin:4px 0 0;font-size:14px}

/* About: staff, board and partners */
.ttt-team{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:22px;align-items:start}
@media (max-width:999px){
.ttt-team{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.ttt-staff{margin:0!important;display:flex;flex-direction:column;background:var(--wp--preset--color--base);border-radius:18px;overflow:hidden;border:1.5px solid var(--ttt-line)}
.ttt-staff>*+*{margin-block-start:0!important}
.ttt-staff-photo{margin:0!important;aspect-ratio:4/4.4;overflow:hidden}
.ttt-staff-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 25%;display:block}
.ttt-staff-body{padding:14px 16px 18px;display:flex;flex-direction:column;gap:2px}
.ttt-staff-body>*{margin:0!important}
.ttt-staff-name{font:400 calc(26px * var(--ttt-sz))/1 var(--wp--preset--font-family--display)!important;letter-spacing:.02em;color:var(--wp--preset--color--heading)}
.ttt-staff-title{font-size:13px;color:var(--wp--preset--color--muted)}
.ttt-staff-q{margin-top:10px!important;font-size:14px;line-height:1.5;padding-left:12px;border-left:3px solid var(--wp--preset--color--accent)}
@media (max-width:560px){
.ttt-team{grid-template-columns:1fr}
.ttt-staff{flex-direction:row}
.ttt-staff-photo{flex:0 0 38%;aspect-ratio:auto;min-height:100%}
.ttt-staff-photo img{height:100%}
.ttt-staff-name{font-size:24px!important}
}
.ttt-roster{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px 16px;margin-top:24px}
@media (max-width:999px){
.ttt-roster{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.ttt-mem{text-align:center}
.ttt-mem>*{margin:0!important}
.ttt-mem-pic{width:calc(120px * var(--ttt-sz));height:calc(120px * var(--ttt-sz));margin:0 auto 10px!important;border-radius:50%;overflow:hidden;border:4px solid var(--wp--preset--color--base);box-shadow:0 0 0 2px var(--wp--preset--color--accent)}
.ttt-mem-pic img{width:100%;height:100%;object-fit:cover;display:block}
.ttt-mem-name{font-size:15px;color:var(--wp--preset--color--heading)}
.ttt-mem-role{font-size:13px;color:var(--wp--preset--color--muted)}
.ttt-pgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:20px}
.ttt-pcard{background:var(--wp--preset--color--card);color:var(--wp--preset--color--card-text);border-radius:16px;overflow:hidden;display:flex;flex-direction:column}
.ttt-pcard>*+*{margin-block-start:0!important}
.ttt-plogo{background:#fff;height:calc(110px * var(--ttt-sz));display:grid!important;place-items:center;padding:16px;margin:0!important;border-bottom:1.5px solid var(--ttt-line)}
.ttt-plogo img{max-height:calc(64px * var(--ttt-sz));max-width:100%;width:auto;height:auto;object-fit:contain}
.ttt-pbody{padding:14px 18px 18px}
.ttt-pbody>*{margin:0!important}
.ttt-pname{font-family:var(--wp--preset--font-family--body)!important;font-weight:700!important;font-size:16px!important;margin-bottom:4px!important;color:inherit}
.ttt-pbody p{font-size:14px;line-height:1.5}
.ttt-pgrid>*,.ttt-team>*,.ttt-roster>*{margin-block-start:0!important}

/* About: volunteers */
.ttt-spot{display:flex!important;gap:20px;align-items:center;padding:20px 22px!important;margin-top:20px}
.ttt-spot>*+*{margin-block-start:0!important}
.ttt-spot-photo{flex:none;width:calc(96px * var(--ttt-sz));height:calc(96px * var(--ttt-sz));border-radius:50%;border:2px dashed var(--wp--preset--color--accent);display:grid;place-items:center;font:500 10px/1 var(--wp--preset--font-family--mono);text-transform:uppercase;color:var(--wp--preset--color--muted);margin:0!important;overflow:hidden}
.ttt-spot-photo img{width:100%;height:100%;object-fit:cover}
.ttt-spot-body{min-width:0}
.ttt-spot-body>*{margin:0!important}
.ttt-spot-body h3{margin:6px 0 2px!important;font-size:22px}
.ttt-spot-meta{font-size:14px;color:var(--wp--preset--color--muted)}
.ttt-spot-q{margin-top:8px!important;font-size:15px;font-style:italic;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
@media (max-width:639px){
.ttt-spot{flex-direction:column;align-items:flex-start}
}
.ttt-bench{margin-top:16px;padding:22px 0 20px!important;overflow:hidden}
.ttt-bench>*+*{margin-block-start:0!important}
.ttt-bench-head{padding:0 22px 14px}
.ttt-bench-head>*{margin:0!important}
.ttt-bench-head h3{margin:6px 0 2px!important;font-size:22px}
.ttt-bench-list{list-style:none;margin:0;padding:0 22px;display:flex;flex-wrap:wrap;gap:8px}
.ttt-bench.is-ready .ttt-bench-list{display:none}
.ttt-bench.is-ready.is-all .ttt-bench-list{display:flex}
.ttt-bench.is-all .ttt-bench-mq{display:none}
.ttt-bench-mq{display:grid;gap:10px;-webkit-mask:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.ttt-bench-row{display:flex;gap:10px;width:max-content;animation:ttt-b2 var(--dur,60s) linear infinite}
.ttt-bench-row.rev{animation-direction:reverse}
.ttt-bench:hover .ttt-bench-row,.ttt-bench:focus-within .ttt-bench-row{animation-play-state:paused}
.ttt-chip,.ttt-bench-list li{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;padding:8px 14px;border-radius:999px;background:var(--wp--preset--color--base);border:1.5px solid var(--ttt-line);font-weight:700;font-size:15px;color:var(--wp--preset--color--heading)}
.ttt-bench-list li{white-space:normal}
.ttt-chip:before,.ttt-bench-list li:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--wp--preset--color--accent);flex:0 0 8px}
.ttt-bench-all{margin:24px 22px 0;padding:6px 14px;font-size:13px;min-height:36px}
@media (prefers-reduced-motion:reduce){
.ttt-bench-mq,.ttt-bench-all{display:none!important}
.ttt-bench.is-ready .ttt-bench-list{display:flex}
}
@keyframes ttt-b2{to{transform:translateX(-50%)}}

/* Donate a device */
.ttt-dropoff{margin-top:24px}
.ttt-prep-h{margin-top:40px!important}

/* Volunteer */
.ttt-vol-cols{gap:40px!important;align-items:flex-start!important}

/* Storefront photo */
.ttt-storefront{margin:20px 0 0!important}
.ttt-storefront img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;object-position:50% 22%;border-radius:12px}
.ttt-card>.ttt-storefront{margin:0 0 14px!important}
