/* TOTTORI FIELD CHALLENGE — home bundle. Page-scoped source; keep selectors local to this template group. */
.tfc-section-kicker {
    margin: 0 0 12px;
}

.tfc-cta-box {
    margin-top: 48px;
    padding: 28px;
    border: 1px solid var(--tfc-line);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
}

.tfc-faq-list {
    border-top: 1px solid var(--tfc-line);
}

.tfc-faq {
    border-bottom: 1px solid var(--tfc-line);
}

.tfc-faq summary {
    cursor: pointer;
    padding: 20px 4px;
    font-weight: 800;
}

.tfc-faq__answer {
    padding: 0 4px 22px;
}

.tfc-site-footer p {
    margin: 0;
}

@media (max-width: 767px) {
    .tfc-cta-box {
        align-items: stretch;
        flex-direction: column;
    }

    .tfc-button--small {
        padding-inline: 14px;
    }
}

.tfc-project-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.tfc-project-card{overflow:hidden;border:1px solid rgba(0,0,0,.1);background:#fff;transition:transform .2s ease,box-shadow .2s ease}
.tfc-project-card:hover{transform:translateY(-3px)}
.tfc-project-card__link{color:inherit;text-decoration:none}
.tfc-project-card__media{position:relative;aspect-ratio:16/10;overflow:hidden;background:#eef0ed}
.tfc-project-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.tfc-project-card:hover .tfc-project-card__media img{transform:scale(1.025)}
.tfc-project-card__placeholder{display:flex;height:100%;align-items:center;justify-content:center;padding:24px;text-align:center;font-size:.75rem;letter-spacing:.12em}
.tfc-project-card__status{position:absolute;top:12px;right:12px;padding:7px 11px;border-radius:999px;font-size:.75rem;font-weight:700}
.tfc-project-card__body{padding:20px}
.tfc-project-card__body h2{margin:12px 0;font-size:1.28rem;line-height:1.45}
.tfc-project-card__summary{margin:0 0 18px;line-height:1.75}
.tfc-project-card__meta{margin:0 0 18px;padding-top:14px;border-top:1px solid rgba(0,0,0,.08)}
.tfc-project-card__meta div{display:grid;grid-template-columns:72px 1fr;gap:10px;margin:5px 0}
.tfc-project-card__meta dt{font-size:.76rem;font-weight:700}
.tfc-project-card__meta dd{margin:0;font-size:.86rem}
.tfc-project-card__more{font-size:.88rem;font-weight:700}
@media (max-width: 1023px){
 .tfc-project-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 767px){
 .tfc-project-card-grid{grid-template-columns:1fr}
}
.tfc-home-hero{border-bottom:1px solid var(--tfc-line)}
.tfc-home-hero__note{color:var(--tfc-muted)}
.tfc-type-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.tfc-type-card{display:flex;flex-direction:column;background:#fff}
.tfc-type-card h3{margin:.15em 0 .5em}
.tfc-type-card__copy{font-size:1.08rem}
.tfc-type-card__foot{display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:22px;border-top:1px solid var(--tfc-line)}
.tfc-type-card__foot span{font-size:.84rem}
.tfc-unfinished-grid{display:grid;gap:1px;border:1px solid var(--tfc-line)}
.tfc-unfinished-grid article{padding:26px}
.tfc-unfinished-grid article>span{font-size:.75rem;font-weight:800}
.tfc-story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.tfc-story-card{background:#fff}
.tfc-story-card a{color:inherit;text-decoration:none}
.tfc-story-card__image{overflow:hidden}.tfc-story-card__image img{display:block;width:100%;height:100%;object-fit:cover}.tfc-story-card__body h3{line-height:1.55}.tfc-story-person{font-size:.82rem;color:var(--tfc-muted)}
.tfc-supporter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.tfc-supporter-card{background:#fff}
.tfc-supporter-card__image{margin-bottom:18px}.tfc-supporter-card__image img{width:100%;height:100%;object-fit:cover}
@media (max-width: 1023px){
 .tfc-type-card-grid,.tfc-story-grid,.tfc-supporter-grid{grid-template-columns:1fr 1fr}
}
@media (max-width: 767px){
 .tfc-type-card-grid,.tfc-story-grid,.tfc-supporter-grid,.tfc-unfinished-grid{grid-template-columns:1fr}
}

@media (max-width: 1023px){
    .tfc-home-hero__media{
        min-height:auto;
        overflow:visible;
        clip-path:none;
        background:#fff;
    }
    .tfc-home-hero__photo{
        position:relative;
        display:block;
        width:100%;
        height:340px;
        object-position:58% center;
    }
    .tfc-home-hero__scrim{display:none}
    .tfc-home-hero__inner{
        display:block;
        min-height:0;
        margin-top:-30px;
        padding-top:0;
        padding-bottom:42px;
    }
    .tfc-home-hero__copy{max-width:680px}
    .tfc-home-hero h1{
        font-size:clamp(2.15rem,8.7vw,3.4rem);
        line-height:1.38;
    }
    .tfc-home-hero h1 span{
        width:max-content;
        max-width:100%;
        padding:2px 8px;
        background:rgba(255,255,255,.96);
    }
    .tfc-home-hero__lead{
        margin-top:18px;
        font-size:1rem;
        line-height:1.8;
    }
    .tfc-home-hero__lead-break{display:none}
    .tfc-home-hero__actions{
        display:grid;
        grid-template-columns:1fr;
        gap:10px;
        margin-top:20px;
    }
    .tfc-home-hero__actions .tfc-button{width:100%}
}

.tfc-sticky-consult{
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(14px);
    transition:opacity .22s ease,transform .22s ease,visibility .22s ease;
}
.tfc-sticky-consult.is-visible{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateY(0);
}

@media (min-width: 1024px){
    .tfc-home-hero__media,
    .tfc-home-hero__inner{
        min-height:clamp(570px,52vw,660px);
    }
    .tfc-home-hero__inner{
        padding-top:96px;
        padding-bottom:clamp(72px,7vw,92px);
    }
    .tfc-home-hero__scrim{
        background:linear-gradient(90deg,
            rgba(247,248,250,.94) 0%,
            rgba(247,248,250,.78) 25%,
            rgba(247,248,250,.42) 43%,
            rgba(247,248,250,.12) 58%,
            rgba(247,248,250,0) 70%);
    }
    .tfc-home-hero h1{
        max-width:660px;
        font-size:clamp(3.25rem,4.8vw,4.9rem);
        line-height:1.3;
    }
}

.tfc-menu-toggle{
    display:none;
}

@media (max-width: 1023px){
    .tfc-site-header__inner{
        display:grid;
        grid-template-columns:minmax(0,1fr) auto auto;
        align-items:center;
        gap:8px;
        min-height:72px;
        padding:10px 0;
    }
    .tfc-brand{
        grid-column:1;
        grid-row:1;
        min-width:0;
        gap:7px;
    }
    .tfc-brand__logo{
        width:36px;
        height:36px;
        flex-basis:36px;
    }
    .tfc-brand__copy{
        min-width:0;
    }
    .tfc-brand__main{
        overflow:hidden;
        font-size:.76rem;
        line-height:1.25;
        text-overflow:ellipsis;
        white-space:nowrap;
    }
    .tfc-brand__sub{
        overflow:hidden;
        margin-top:2px;
        font-size:.54rem;
        text-overflow:ellipsis;
        white-space:nowrap;
    }
    .tfc-site-header > .tfc-container > .tfc-button--small{
        grid-column:2;
        grid-row:1;
        min-width:0;
        min-height:38px;
        padding-inline:12px;
        font-size:.74rem;
        white-space:nowrap;
    }
    .tfc-menu-toggle{
        display:inline-grid;
        grid-column:3;
        grid-row:1;
        place-items:center;
        width:42px;
        height:42px;
        padding:0;
        border:1px solid rgba(0,35,135,.16);
        border-radius:50%;
        background:#fff;
        color:var(--tfc-ink);
        cursor:pointer;
    }
    .tfc-menu-toggle__icon{
        display:grid;
        gap:4px;
    }
    .tfc-menu-toggle__icon i{
        display:block;
        width:18px;
        height:2px;
        border-radius:2px;
        background:currentColor;
        transition:transform .18s ease,opacity .18s ease;
    }
    .tfc-menu-toggle__label{
        position:absolute;
        width:1px;
        height:1px;
        overflow:hidden;
        clip:rect(0 0 0 0);
        white-space:nowrap;
    }
    .tfc-menu-toggle[aria-expanded="true"] .tfc-menu-toggle__icon i:nth-child(1){transform:translateY(6px) rotate(45deg)}
    .tfc-menu-toggle[aria-expanded="true"] .tfc-menu-toggle__icon i:nth-child(2){opacity:0}
    .tfc-menu-toggle[aria-expanded="true"] .tfc-menu-toggle__icon i:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

    .tfc-site-header .tfc-global-nav{
        display:none!important;
        grid-column:1 / -1;
        grid-row:2;
        width:100%;
        max-width:none;
        max-height:none;
        margin:2px 0 0;
        padding:8px 0 4px;
        border-top:1px solid rgba(0,35,135,.12);
        overflow:visible;
    }
    .tfc-site-header .tfc-global-nav.is-open{
        display:grid!important;
        grid-template-columns:1fr;
        gap:0;
    }
    .tfc-global-nav > a,
    .tfc-global-nav__item > a{
        justify-content:flex-start;
        min-height:42px;
        padding:0 8px;
        border-radius:0;
        font-size:.9rem;
    }
    .tfc-global-nav__item{
        display:grid;
    }
    .tfc-site-header .tfc-global-nav__submenu{
        position:static;
        display:grid!important;
        grid-template-columns:repeat(3,minmax(0,1fr));
        min-width:0;
        padding:0 0 8px;
        border:0;
        border-radius:0;
        background:transparent;
        box-shadow:none;
        opacity:1;
        visibility:visible;
        transform:none;
    }
    .tfc-global-nav .tfc-global-nav__submenu-link{
        justify-content:center;
        min-height:38px;
        padding:0 6px;
        border-radius:4px;
        font-size:.82rem;
    }
}
.tfc-section-list-link{
    display:flex;
    justify-content:center;
    margin-top:clamp(30px,4vw,44px);
}
.tfc-section-list-link .tfc-circle-link{font-size:1rem}
.tfc-home #tfc-faq .tfc-section-kicker{
    margin:0 0 10px;
    color:var(--tfc-muted);
    text-align:center;
    font-size:.86rem;
    font-weight:700;
    letter-spacing:.16em;
}
.tfc-cta-box h3{
    margin:0 0 10px;
    color:#fff;
    font-size:clamp(1.3rem,2vw,1.7rem);
    line-height:1.45;
}
.tfc-cta-box h3 + p{margin:0}
@media (max-width: 767px){
    .tfc-section-list-link{margin-top:28px}
    .tfc-section-list-link .tfc-circle-link{font-size:.9rem}
}
.tfc-story-card__series{margin:0 0 10px;color:var(--tfc-muted);font-size:.8rem;font-weight:800;letter-spacing:.08em}
.tfc-story-card .tfc-circle-link{margin-top:18px}
.tfc-faq summary{
    display:grid;
    list-style:none;
}
.tfc-faq summary::-webkit-details-marker{display:none}
.tfc-faq summary::before{content:"Q";font-size:1.5rem;font-weight:800;line-height:1}
.tfc-faq summary::after{content:"+";color:var(--tfc-ink);font-size:1.5rem;font-weight:400;line-height:1}
.tfc-faq[open] summary::after{content:"−"}
.tfc-faq__category{padding:4px 8px;border-radius:999px;font-size:.7rem;font-weight:800;line-height:1.3;white-space:nowrap}
.tfc-faq__category--system{background:#eaf1ff;color:#244d94}
.tfc-faq__category--work{background:#e5f5ef;color:#007b63}
.tfc-faq__category--life{background:#fff1df;color:#b75b00}
.tfc-faq__category--selection{background:#f0eaff;color:#6540ad}
.tfc-faq__category--family-sidejob{background:#fee9ed;color:#b44759}
.tfc-faq__category--after-term{background:#e7f0f2;color:#32697a}
.tfc-faq__question{min-width:0}
@media (max-width: 767px){
    .tfc-faq summary{grid-template-columns:auto minmax(0,1fr) auto;gap:10px}
    .tfc-faq__category{grid-column:2 / 3;justify-self:start;grid-row:1}
    .tfc-faq__question{grid-column:2 / 3;grid-row:2}
    .tfc-faq summary::before{grid-column:1;grid-row:1 / span 2}
    .tfc-faq summary::after{grid-column:3;grid-row:1 / span 2}
}
@media (max-width: 767px){
    .tfc-unfinished-grid--archive article{min-height:auto}
}
#tfc-types .tfc-section-kicker{display:none}
#tfc-types > .tfc-container > .tfc-section-caption{text-align:center}
#tfc-types > .tfc-container > .tfc-section-caption{margin-inline:auto;margin-bottom:34px}
.tfc-home .tfc-type-card{
    overflow:hidden;
}
.tfc-home .tfc-type-card:before{display:none}
.tfc-home .tfc-type-card--entrepreneur{box-shadow:12px 12px 0 rgba(0,133,111,.14)}
.tfc-home .tfc-type-card--collaboration{box-shadow:12px 12px 0 rgba(199,90,0,.13)}
.tfc-home .tfc-type-card--research{box-shadow:12px 12px 0 rgba(63,53,213,.12)}
.tfc-home .tfc-type-card h3{
    margin:0 0 18px;
    line-height:1.2;
}
.tfc-home .tfc-type-card h3 small{font-size:.58em;font-weight:800}
.tfc-home .tfc-type-card__copy{
    margin:0 0 22px;
    color:#1c2c3f;
    font-weight:700;
}
.tfc-home .tfc-type-card > p:not(.tfc-type-card__copy){margin:0;color:#334256}
.tfc-home .tfc-type-card > p strong,
.tfc-type-card__keywords > strong{display:block;margin-bottom:5px;color:#93a4b7;font-size:.72rem;font-weight:800}
.tfc-type-card__keywords{margin-top:18px}
.tfc-type-card__keywords .tfc-chip-row{gap:7px;margin:0}
.tfc-type-card__keywords .tfc-chip{padding:5px 10px;border-radius:999px;font-size:.72rem;font-weight:800;line-height:1.25}
.tfc-type-card--entrepreneur .tfc-chip{border-color:rgba(0,133,111,.26);background:rgba(0,133,111,.06);color:var(--tfc-entrepreneur)}
.tfc-type-card--collaboration .tfc-chip{border-color:rgba(199,90,0,.26);background:rgba(199,90,0,.06);color:var(--tfc-collaboration)}
.tfc-type-card--research .tfc-chip{border-color:rgba(63,53,213,.24);background:rgba(63,53,213,.06);color:var(--tfc-research)}
.tfc-home .tfc-type-card__foot{margin-top:auto;border:0}
.tfc-type-consult{display:flex;justify-content:center;margin-top:36px}
.tfc-type-consult .tfc-button{min-height:48px;color:var(--tfc-ink);border-color:rgba(0,35,135,.24);background:#fff}
@media (max-width: 767px){
    #tfc-types > .tfc-container > .tfc-section-caption{margin-bottom:26px}
    .tfc-home .tfc-type-card{min-height:auto;padding:24px 22px;box-shadow:8px 8px 0 rgba(0,35,135,.08)}
    .tfc-home .tfc-type-card--entrepreneur{box-shadow:8px 8px 0 rgba(0,133,111,.14)}
    .tfc-home .tfc-type-card--collaboration{box-shadow:8px 8px 0 rgba(199,90,0,.13)}
    .tfc-home .tfc-type-card--research{box-shadow:8px 8px 0 rgba(63,53,213,.12)}
    .tfc-home .tfc-type-card__copy{min-height:0;margin-bottom:18px}
    .tfc-type-consult{margin-top:28px}
}
.tfc-home-hero__layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.65fr);gap:clamp(36px,6vw,88px);align-items:end}
.tfc-home-hero__label{margin:12px 0 0;letter-spacing:.08em}
.tfc-home-hero__guide{border-top:3px solid currentColor}
.tfc-home-hero__guide-title{margin:0;font-size:.78rem;font-weight:800;letter-spacing:.08em}
.tfc-home-hero__guide a strong{font-size:1rem}.tfc-home-hero__guide a span{font-size:.78rem;line-height:1.55;color:var(--tfc-muted)}.tfc-home-hero__guide a b{text-align:right}
@media (max-width: 1023px){
 .tfc-home-hero__layout{grid-template-columns:1fr}
 .tfc-life-data-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 767px){
 .tfc-home-hero__guide a{grid-template-columns:76px 1fr 18px}
 .tfc-life-data-grid{grid-template-columns:1fr}
 .tfc-life-data-foot{align-items:flex-start;flex-direction:column}
}
.tfc-home-hero__photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.tfc-home-hero__scrim{position:absolute;inset:0}
.tfc-home-hero__inner{position:relative;z-index:1;gap:clamp(42px,7vw,96px)}
.tfc-home-hero__copy .tfc-section-kicker,.tfc-home-hero__label,.tfc-home-hero__note{color:rgba(255,255,255,.86)}
.tfc-home-hero__label{font-size:.86rem;font-weight:700}
.tfc-home-hero__actions{display:flex;flex-wrap:wrap}
.tfc-home-hero__guide{margin-bottom:6px;color:#fff}
.tfc-home-hero__guide-title{padding:14px 0 10px;color:rgba(255,255,255,.84)}
.tfc-home-hero__guide a{display:grid;gap:12px;align-items:center;border-top:1px solid rgba(255,255,255,.22);color:#fff;text-decoration:none}
.tfc-home-hero__guide-copy{line-height:1.55;color:rgba(255,255,255,.88)}
.tfc-home-hero__guide-item--entrepreneur{box-shadow:inset 4px 0 0 var(--tfc-warm)}
.tfc-home-hero__guide-item--collaboration{box-shadow:inset 4px 0 0 var(--tfc-forest)}
.tfc-home-hero__guide-item--research{box-shadow:inset 4px 0 0 var(--tfc-indigo)}

.tfc-type-card-grid{gap:0;border:1px solid var(--tfc-line);background:#fff}
.tfc-type-card{position:relative;min-height:460px;border:0;border-right:1px solid var(--tfc-line);padding:30px 28px}
.tfc-type-card:last-child{border-right:0}
.tfc-type-card:before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:var(--tfc-ink)}
.tfc-type-card--entrepreneur:before{background:var(--tfc-warm)}
.tfc-type-card--collaboration:before{background:var(--tfc-forest)}
.tfc-type-card--research:before{background:var(--tfc-indigo)}
.tfc-type-card--entrepreneur .tfc-section-kicker{color:var(--tfc-warm)}
.tfc-type-card--collaboration .tfc-section-kicker{color:var(--tfc-forest)}
.tfc-type-card--research .tfc-section-kicker{color:var(--tfc-indigo)}
.tfc-type-card h3{font-size:2.1rem}
.tfc-type-card__foot{border-color:var(--tfc-line)}

.tfc-project-card{border-radius:var(--tfc-radius);border-color:var(--tfc-line);box-shadow:none}
.tfc-project-card:hover{box-shadow:0 14px 30px rgba(23,52,74,.10)}
.tfc-project-card__status{background:var(--tfc-ink);color:#fff}
.tfc-chip{border:1px solid var(--tfc-line);background:transparent;color:var(--tfc-ink)}

.tfc-unfinished-grid{grid-template-columns:repeat(2,minmax(0,1fr));background:var(--tfc-line);border-color:var(--tfc-line)}
.tfc-unfinished-grid article{display:flex;min-height:300px;flex-direction:column;background:#fff}
.tfc-unfinished-grid h3{font-size:1.4rem;line-height:1.45}
.tfc-unfinished-grid .tfc-type-card__foot{margin-top:auto}

.tfc-story-grid{gap:18px}
.tfc-story-card{border:1px solid var(--tfc-line);border-radius:var(--tfc-radius);overflow:hidden}
.tfc-story-card__image{aspect-ratio:4/3}
.tfc-story-card__body{padding:22px}
.tfc-story-card__body h3{font-size:1.22rem}
.tfc-story-person{padding-top:12px;border-top:1px solid var(--tfc-line)}

.tfc-supporter-grid{gap:18px}
.tfc-supporter-card{display:grid;grid-template-columns:132px 1fr;gap:20px;padding:18px;border-radius:var(--tfc-radius);border:1px solid var(--tfc-line)}
.tfc-supporter-card__image{margin:0;aspect-ratio:4/5;border-radius:10px;overflow:hidden}
.tfc-supporter-card h3{margin:.15em 0 .3em;font-size:1.3rem}
.tfc-supporter-card blockquote{margin:16px 0 0;padding-left:14px;border-left:3px solid var(--tfc-forest);font-size:.9rem}

.tfc-life-data-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;border:1px solid var(--tfc-line);background:var(--tfc-line)}
.tfc-life-data-card{display:flex;min-height:240px;flex-direction:column;padding:22px;background:#fff}
.tfc-life-data-card h3{margin:.25em 0 .65em;font-size:1rem;line-height:1.5}
.tfc-life-data-card__value{margin:auto 0 12px;font-size:clamp(1.35rem,2vw,2rem);font-weight:800;line-height:1.3}
.tfc-life-data-card__note{font-size:.82rem;line-height:1.7;color:var(--tfc-muted)}
.tfc-life-data-card small{margin-top:10px;font-size:.72rem;color:var(--tfc-muted)}
.tfc-life-data-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px;padding:18px 0}
.tfc-life-data-foot p{margin:0;font-size:.88rem;color:var(--tfc-muted)}

.tfc-sticky-consult{position:fixed;z-index:40;display:flex;align-items:center;gap:14px;border:1px solid rgba(255,255,255,.32);background:var(--tfc-ink);color:#fff;box-shadow:0 10px 30px rgba(23,52,74,.24)}
.tfc-sticky-consult a{display:inline-flex;align-items:center;min-height:42px;padding:0 18px;border-radius:999px;background:#fff;color:var(--tfc-ink);font-weight:800;text-decoration:none}

@media (max-width: 1023px){
    .tfc-home-hero__inner{grid-template-columns:1fr;align-items:end}
    .tfc-home-hero__guide{max-width:620px}
    .tfc-type-card-grid{grid-template-columns:1fr}
    .tfc-type-card{min-height:auto;border-right:0;border-bottom:1px solid var(--tfc-line)}
    .tfc-type-card:last-child{border-bottom:0}
    .tfc-life-data-grid{grid-template-columns:1fr 1fr}
    .tfc-supporter-grid{grid-template-columns:1fr}
}
@media (max-width: 767px){
    .tfc-main{font-size:1rem}
    .tfc-section{padding:56px 0}
    .tfc-home-hero__media{min-height:auto}
    .tfc-home-hero__photo{position:absolute;object-position:62% center}
    .tfc-home-hero__scrim{background:linear-gradient(180deg,rgba(10,30,42,.28) 0%,rgba(10,30,42,.82) 46%,rgba(10,30,42,.94) 100%)}
    .tfc-home-hero__inner{min-height:760px;padding-top:260px;padding-bottom:36px}
    .tfc-home-hero h1{font-size:clamp(2.7rem,12vw,4.5rem);line-height:1.03}
    .tfc-home-hero__lead{font-size:1rem}
    .tfc-home-hero__actions{display:grid;grid-template-columns:1fr}
    .tfc-home-hero__actions .tfc-button{justify-content:center;width:100%;text-align:center}
    .tfc-home-hero__guide{padding:0 14px}
    .tfc-home-hero__guide a{grid-template-columns:72px 1fr 18px;min-height:56px}
    .tfc-unfinished-grid,.tfc-story-grid,.tfc-life-data-grid{grid-template-columns:1fr}
    .tfc-supporter-card{grid-template-columns:92px 1fr}
    .tfc-supporter-card blockquote{grid-column:1/-1}
    .tfc-sticky-consult{left:12px;right:12px;bottom:12px;justify-content:space-between}
    .tfc-sticky-consult span{font-size:.78rem}
}

@media(prefers-reduced-motion:reduce){
    html{scroll-behavior:auto}
    *,*::before,*::after{
        animation-duration:.01ms!important;
        animation-iteration-count:1!important;
        transition-duration:.01ms!important;
        scroll-behavior:auto!important;
    }
}

#tfc-selection .tfc-selection-flow::before{
    position:absolute;
    z-index:0;
    top:33px;
    height:2px;
    background:linear-gradient(90deg,#dce4f5 0%,#9bb2e5 55%,var(--tfc-color-heading) 100%);
    content:"";
}

#tfc-selection .tfc-selection-flow__icon{
    position:relative;
    z-index:1;
    display:grid;
    width:66px;
    height:66px;
    min-height:66px;
    padding:0;
    place-items:center;
    border:1px solid #d8e1f4;
    border-radius:50%;
    color:var(--tfc-color-heading);
    background:#fff;
    box-shadow:0 8px 20px rgba(20,43,76,.08);
    transition:transform .22s ease,background-color .22s ease,color .22s ease;
}

#tfc-selection .tfc-selection-flow li:nth-child(2) .tfc-selection-flow__icon{background:#f2f5fc}
#tfc-selection .tfc-selection-flow li:nth-child(3) .tfc-selection-flow__icon{background:#eaf0fb}
#tfc-selection .tfc-selection-flow li:nth-child(4) .tfc-selection-flow__icon{background:#dfe8fa}
#tfc-selection .tfc-selection-flow li:nth-child(6) .tfc-selection-flow__icon{
    border-color:var(--tfc-color-heading);
    color:#fff;
    background:var(--tfc-color-heading);
}

#tfc-selection .tfc-selection-flow__icon svg{
    width:28px;
    height:28px;
}

#tfc-selection .tfc-selection-flow__step{
    display:block;
    min-height:0;
    margin:14px 0 5px;
    padding:0;
    color:var(--tfc-color-text-muted);
    background:transparent;
    font-family:var(--tfc-font-display);
    font-size:.66rem;
    font-weight:700;
    letter-spacing:.08em;
    line-height:1.4;
}

#tfc-selection .tfc-selection-flow__content{
    min-width:0;
}

#tfc-selection .tfc-selection-flow__content strong{
    display:block;
    min-height:2.9em;
    margin:0 0 8px;
    color:var(--tfc-color-heading);
    font-size:clamp(.92rem,1.3vw,1.05rem);
    line-height:1.45;
}

#tfc-selection .tfc-selection-flow__content > span{
    display:block;
    min-height:0;
    padding:0;
    color:var(--tfc-color-text-secondary);
    background:transparent;
    font-size:.76rem;
    font-weight:400;
    line-height:1.75;
}

#tfc-selection .tfc-selection-flow li:hover .tfc-selection-flow__icon{
    transform:translateY(-3px);
}

@media (max-width: 1023px){
    #tfc-selection .tfc-selection-flow{
        grid-template-columns:repeat(3,minmax(0,1fr));
        gap:30px 18px;
    }
    #tfc-selection .tfc-selection-flow::before{display:none}
    #tfc-selection .tfc-selection-flow__content strong{min-height:auto}
}

@media (max-width: 767px){
    #tfc-selection .tfc-selection-flow{
        display:grid;
        grid-template-columns:1fr;
        gap:0;
        margin-top:32px;
    }
    #tfc-selection .tfc-selection-flow::before{
        display:block;
        top:28px;
        right:auto;
        bottom:28px;
        left:27px;
        width:2px;
        height:auto;
        background:linear-gradient(180deg,#dce4f5 0%,#9bb2e5 55%,var(--tfc-color-heading) 100%);
    }
    #tfc-selection .tfc-selection-flow li{
        display:grid;
        grid-template-columns:56px minmax(0,1fr);
        column-gap:16px;
        align-items:start;
        padding:0 0 28px;
        text-align:left;
    }
    #tfc-selection .tfc-selection-flow li:last-child{padding-bottom:0}
    #tfc-selection .tfc-selection-flow__icon{
        grid-column:1;
        grid-row:1 / span 2;
        width:56px;
        height:56px;
        min-height:56px;
    }
    #tfc-selection .tfc-selection-flow__icon svg{width:24px;height:24px}
    #tfc-selection .tfc-selection-flow__step{
        grid-column:2;
        grid-row:1;
        margin:1px 0 4px;
    }
    #tfc-selection .tfc-selection-flow__content{
        grid-column:2;
        grid-row:2;
    }
    #tfc-selection .tfc-selection-flow__content strong{
        min-height:0;
        margin-bottom:5px;
        font-size:1rem;
    }
    #tfc-selection .tfc-selection-flow__content > span{
        font-size:.8rem;
        line-height:1.7;
    }
}

@media(prefers-reduced-motion:reduce){
    #tfc-selection .tfc-selection-flow__icon{transition:none}
}
.tfc-home{
    --tfc-max:1280px;
}
.tfc-home .tfc-container{
    width:min(calc(100% - 64px),var(--tfc-max));
}
.tfc-home .tfc-section{
    position:relative;
}
.tfc-home .tfc-section-kicker{
    display:flex;
    align-items:center;
    gap:10px;
    margin:0 0 14px;
    font-size:.72rem;
    letter-spacing:.16em;
}
.tfc-home .tfc-section-kicker>span{
    display:inline-grid;
    place-items:center;
    width:28px;
    height:28px;
    border:1px solid currentColor;
    border-radius:50%;
    font-size:.68rem;
    letter-spacing:0;
}
.tfc-home-hero__inner{
    grid-template-columns:minmax(0,1.55fr) minmax(270px,.52fr);
}
.tfc-home-hero__guide{
    align-self:end;
    margin:0 0 4px;
    padding:4px 18px;
    border:1px solid rgba(255,255,255,.34);
    border-radius:2px;
    background:rgba(9,30,43,.68);
    backdrop-filter:blur(7px);
}
.tfc-home-hero__guide a{
    grid-template-columns:70px 1fr 16px;
    min-height:62px;
    padding:12px 0 12px 12px;
}
.tfc-home-hero__guide-index{font-weight:800}
.tfc-home-hero__guide-copy{font-size:.76rem}
.tfc-home .tfc-type-card-grid{
    border-top:1px solid var(--tfc-line);
    border-bottom:1px solid var(--tfc-line);
}
.tfc-home .tfc-type-card{
    border-right:1px solid var(--tfc-line);
}
.tfc-home .tfc-type-card:last-child{border-right:0}
.tfc-home .tfc-type-card:before{height:4px}
.tfc-home .tfc-type-card h3{font-size:2rem}
.tfc-home .tfc-type-card p{font-size:.9rem}
#tfc-projects{background:var(--tfc-sand)}
#tfc-projects .tfc-project-card__body h3{
    line-height:1.48;
}
#tfc-projects .tfc-project-card__body p{font-size:.86rem}
#tfc-unfinished .tfc-unfinished-grid{
    border-top:1px solid var(--tfc-line);
}
#tfc-unfinished .tfc-unfinished-grid article{
    border-right:1px solid var(--tfc-line);
    border-bottom:1px solid var(--tfc-line);
}
#tfc-unfinished .tfc-unfinished-grid article:nth-child(2n){border-right:0}
#tfc-supporters .tfc-supporter-grid{
    border-top:1px solid var(--tfc-line);
}
#tfc-supporters .tfc-supporter-card{
    align-content:start;
    border-right:1px solid var(--tfc-line);
}
#tfc-supporters .tfc-supporter-card:last-child{border-right:0}
#tfc-supporters .tfc-supporter-card blockquote{
    grid-column:1/-1;
}
#tfc-life .tfc-life-data-grid{
    grid-template-columns:repeat(3,1fr);
}
#tfc-life .tfc-life-data-card{
    min-height:235px;
    padding:24px;
    border-right:1px solid var(--tfc-line);
    border-bottom:1px solid var(--tfc-line);
}
#tfc-life .tfc-life-data-card:nth-child(3n){border-right:0}
#tfc-life .tfc-life-data-card:nth-last-child(-n+3){border-bottom:0}
#tfc-faq .tfc-faq-list{border-top:1px solid var(--tfc-line)}
#tfc-faq .tfc-faq{border-bottom:1px solid var(--tfc-line)}
#tfc-faq .tfc-faq summary{
    min-height:62px;
    padding:18px 38px 18px 0;
    font-weight:700;
}
#tfc-faq .tfc-cta-box{
    margin-top:72px;
    padding:38px 40px;
    border:0;
    border-radius:2px;
    background:var(--tfc-ink);
    color:#fff;
}
#tfc-faq .tfc-cta-box .tfc-section-kicker{color:rgba(255,255,255,.72)}
#tfc-faq .tfc-cta-box .tfc-button{
    background:#fff;
    color:var(--tfc-ink);
    border-color:#fff;
}
.tfc-sticky-consult{
    right:24px;
    bottom:24px;
    padding:8px 8px 8px 16px;
    border-radius:4px;
}
.tfc-sticky-consult span{font-size:.76rem}
.tfc-sticky-consult span b{display:block;font-size:.68rem;color:rgba(255,255,255,.72)}

@media (max-width: 1023px){
    .tfc-home .tfc-container{width:min(calc(100% - 40px),var(--tfc-max))}
    .tfc-home-hero__inner{grid-template-columns:1fr}
    .tfc-home-hero__guide{max-width:560px}
    #tfc-supporters .tfc-supporter-grid{grid-template-columns:1fr}
    #tfc-supporters .tfc-supporter-card{border-right:0;border-bottom:1px solid var(--tfc-line)}
    #tfc-life .tfc-life-data-grid{grid-template-columns:repeat(2,1fr)}
    #tfc-life .tfc-life-data-card,#tfc-life .tfc-life-data-card:nth-child(3n){border-right:1px solid var(--tfc-line);border-bottom:1px solid var(--tfc-line)}
    #tfc-life .tfc-life-data-card:nth-child(2n){border-right:0}
    #tfc-life .tfc-life-data-card:nth-last-child(-n+2){border-bottom:0}
}
@media (max-width: 767px){
    .tfc-home .tfc-container{width:min(calc(100% - 32px),var(--tfc-max))}
    .tfc-home .tfc-section{padding:68px 0}
    .tfc-home .tfc-section h2{font-size:clamp(1.9rem,8vw,2.65rem)}
    .tfc-home-hero__media,.tfc-home-hero__inner{min-height:720px}
    .tfc-home-hero__photo{object-position:58% center}
    .tfc-home-hero__scrim{
        background:linear-gradient(180deg,rgba(10,29,42,.08) 0%,rgba(10,29,42,.42) 35%,rgba(10,29,42,.93) 66%,rgba(10,29,42,.97) 100%);
    }
    .tfc-home-hero__inner{
        align-content:end;
        padding-top:240px;
        padding-bottom:28px;
    }
    .tfc-home-hero h1{font-size:clamp(2.7rem,12vw,4rem)}
    .tfc-home-hero__lead{line-height:1.72}
    .tfc-home-hero__guide{width:100%;max-width:none}
    .tfc-home .tfc-type-card-grid{grid-template-columns:1fr}
    .tfc-home .tfc-type-card{min-height:auto;border-right:0;border-bottom:1px solid var(--tfc-line)}
    #tfc-unfinished .tfc-unfinished-grid{grid-template-columns:1fr}
    #tfc-unfinished .tfc-unfinished-grid article{border-right:0}
    #tfc-stories .tfc-story-grid{grid-template-columns:1fr}
    #tfc-life .tfc-life-data-grid{grid-template-columns:1fr}
    #tfc-life .tfc-life-data-card,#tfc-life .tfc-life-data-card:nth-child(2n),#tfc-life .tfc-life-data-card:nth-child(3n){border-right:0;border-bottom:1px solid var(--tfc-line)}
    #tfc-life .tfc-life-data-card:last-child{border-bottom:0}
    .tfc-sticky-consult{left:10px;right:10px;bottom:10px}
}

.tfc-type-card--entrepreneur .tfc-circle-link{color:var(--tfc-entrepreneur)}
.tfc-type-card--entrepreneur .tfc-circle-link__icon{background:rgba(0,133,111,.10)}
.tfc-type-card--entrepreneur .tfc-circle-link:hover .tfc-circle-link__icon{background:rgba(0,133,111,.20)}
.tfc-type-card--collaboration .tfc-circle-link{color:var(--tfc-collaboration)}
.tfc-type-card--collaboration .tfc-circle-link__icon{background:rgba(199,90,0,.10)}
.tfc-type-card--collaboration .tfc-circle-link:hover .tfc-circle-link__icon{background:rgba(199,90,0,.20)}
.tfc-type-card--research .tfc-circle-link{color:var(--tfc-research)}
.tfc-type-card--research .tfc-circle-link__icon{background:rgba(63,53,213,.10)}
.tfc-type-card--research .tfc-circle-link:hover .tfc-circle-link__icon{background:rgba(63,53,213,.20)}
.tfc-type-card__foot{
    justify-content:flex-start;
}
.tfc-type-card__foot > span{
    margin-right:auto;
}
.tfc-project-card__more.tfc-circle-link{
    margin-top:14px;
}
.tfc-main{
    background:#f5f6f8;
}
#tfc-life .tfc-section-caption{
    max-width:760px;
}
.tfc-home-hero__lead strong,
.tfc-home-hero__lead a{
    color:inherit;
}
.tfc-roadmap-type-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    margin-top:34px;
}
.tfc-roadmap-type{
    position:relative;
    min-height:260px;
    padding:28px 28px 24px;
    background:#fff;
    box-shadow:12px 12px 0 rgba(0,35,135,.08);
}
.tfc-roadmap-type h3{
    margin:0 0 16px;
    line-height:1.2;
}
.tfc-roadmap-type p{
    margin:0 0 28px;
    color:#27384a;
}
.tfc-roadmap-type--entrepreneur{
    box-shadow:12px 12px 0 rgba(0,133,111,.14);
}
.tfc-roadmap-type--entrepreneur h3,
.tfc-roadmap-type--entrepreneur .tfc-circle-link{
    color:var(--tfc-entrepreneur);
}
.tfc-roadmap-type--entrepreneur .tfc-circle-link__icon{background:rgba(0,133,111,.10)}
.tfc-roadmap-type--collaboration{
    box-shadow:12px 12px 0 rgba(199,90,0,.13);
}
.tfc-roadmap-type--collaboration h3,
.tfc-roadmap-type--collaboration .tfc-circle-link{
    color:var(--tfc-collaboration);
}
.tfc-roadmap-type--collaboration .tfc-circle-link__icon{background:rgba(199,90,0,.10)}
.tfc-roadmap-type--research{
    box-shadow:12px 12px 0 rgba(63,53,213,.12);
}
.tfc-roadmap-type--research h3,
.tfc-roadmap-type--research .tfc-circle-link{
    color:var(--tfc-research);
}
.tfc-roadmap-type--research .tfc-circle-link__icon{background:rgba(63,53,213,.10)}

@media (max-width: 1023px){
    .tfc-roadmap-type-grid{grid-template-columns:1fr}
}
@media (max-width: 767px){
    .tfc-roadmap-type{min-height:auto}
}
.tfc-brand{display:inline-flex;flex-direction:row;align-items:center;flex:0 0 auto}
.tfc-brand__logo{width:46px;height:46px;flex:0 0 46px;object-fit:contain}
.tfc-brand__copy{display:flex;flex-direction:column;min-width:0;line-height:1.2}

.tfc-home-hero{padding:0;background:#fff}
.tfc-home-hero__media{position:relative;min-height:clamp(600px,55vw,700px);overflow:hidden;clip-path:polygon(0 0,100% 0,100% calc(100% - 44px),50% 100%,0 calc(100% - 44px))}
.tfc-home-hero__photo{object-position:center center}
.tfc-home-hero__scrim{background:linear-gradient(90deg,rgba(246,247,249,.97) 0%,rgba(246,247,249,.79) 36%,rgba(246,247,249,.34) 58%,rgba(246,247,249,.03) 78%)}
.tfc-home-hero__inner{display:flex;align-items:flex-end;min-height:clamp(600px,55vw,700px);padding-top:112px;padding-bottom:clamp(78px,8vw,106px)}
.tfc-home-hero__copy{align-self:auto;max-width:760px;color:#15243a}
.tfc-home-hero h1{margin:0;font-weight:800;letter-spacing:0;text-wrap:initial}
.tfc-home-hero h1 span{display:block}
.tfc-home-hero__lead{max-width:660px;margin:22px 0 0;color:#1b2a3c;font-size:clamp(1.06rem,1.3vw,1.22rem);font-weight:500;line-height:1.85;text-shadow:none}
.tfc-home-hero__route-link{font-weight:800;text-decoration:none;border-bottom:2px solid currentColor}
.tfc-home-hero__route-link--entrepreneur{color:var(--tfc-entrepreneur)}
.tfc-home-hero__route-link--collaboration{color:var(--tfc-collaboration)}
.tfc-home-hero__route-link--research{color:var(--tfc-research)}
.tfc-home-hero__actions{gap:14px;margin-top:24px}
.tfc-home-hero__actions .tfc-button{min-height:54px;padding-inline:25px}
.tfc-home-hero__actions .tfc-button--light{color:#fff;background:var(--tfc-ink);border-color:var(--tfc-ink)}

@media (max-width: 1023px){
    .tfc-brand__main{font-size:.9rem}
    .tfc-brand__logo{width:40px;height:40px;flex-basis:40px}
    .tfc-home-hero__media{min-height:auto;overflow:visible;clip-path:none;background:#fff}
    .tfc-home-hero__photo{position:relative;display:block;width:100%;height:340px;object-position:58% center}
    .tfc-home-hero__scrim{display:none}
    .tfc-home-hero__inner{display:block;min-height:0;margin-top:-30px;padding-top:0;padding-bottom:42px}
    .tfc-home-hero__copy{max-width:680px}
    .tfc-home-hero h1{font-size:clamp(2.15rem,8.7vw,3.4rem);line-height:1.38}
    .tfc-home-hero h1 span{width:max-content;max-width:100%;padding:2px 8px;background:rgba(255,255,255,.96)}
    .tfc-home-hero__lead{margin-top:18px;font-size:1rem;line-height:1.8}
    .tfc-home-hero__lead-break{display:none}
    .tfc-home-hero__actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:20px}
    .tfc-home-hero__actions .tfc-button{width:100%}
}
.tfc-brand{gap:0}
.tfc-brand__main{
    color:var(--tfc-ink);
    font-stretch:condensed;
    white-space:nowrap;
}
.tfc-brand__sub{color:#4e5d70;font-weight:700;line-height:1.2}
.tfc-home .tfc-type-card-grid{gap:18px;border:0;background:transparent}
.tfc-home .tfc-type-card{border:0}
.tfc-home .tfc-type-card:last-child{border:0}
.tfc-home .tfc-type-card h3{margin-bottom:12px}
.tfc-home .tfc-type-card__copy{margin-bottom:16px}
#tfc-projects .tfc-project-card__link{height:auto}
#tfc-projects .tfc-project-card__body h3{margin:11px 0;font-size:1.18rem}
#tfc-projects .tfc-project-card__body p{margin:8px 0}
.tfc-project-card__status--inline{position:static;display:inline-flex;margin:0 0 12px;background:var(--tfc-ink);color:#fff}
.tfc-roadmap-type-grid{gap:18px}
.tfc-roadmap-type,.tfc-roadmap-type--entrepreneur,.tfc-roadmap-type--collaboration,.tfc-roadmap-type--research{min-height:225px;padding:24px;box-shadow:0 10px 28px rgba(20,43,76,.07)}
.tfc-roadmap-type h3{font-size:1.75rem}
.tfc-roadmap-type p{margin-bottom:22px}
#tfc-supporters .tfc-supporter-card{grid-template-columns:88px 1fr}
#tfc-supporters .tfc-supporter-card:last-child{border:0}
#tfc-supporters .tfc-supporter-card blockquote{padding-left:0}
#tfc-life .tfc-life-data-grid{border:0;background:transparent}
#tfc-life .tfc-life-data-card,#tfc-life .tfc-life-data-card:nth-child(2n),#tfc-life .tfc-life-data-card:nth-child(3n){min-height:205px;padding:21px;border:0;background:#f5f7fa}
.tfc-life-data-foot{border-top:0}

@media (max-width: 1023px){
    .tfc-brand{min-width:0}
    .tfc-brand__main{font-size:1.05rem}
    .tfc-brand__sub{font-size:.62rem}
}
@media (max-width: 767px){
    .tfc-home .tfc-section{padding:54px 0}
    .tfc-home .tfc-section > .tfc-container > h2::before{width:8px;height:8px;margin-right:9px}
    .tfc-home .tfc-section-caption{margin-bottom:24px}
    .tfc-home .tfc-type-card-grid{gap:14px}
    .tfc-home .tfc-type-card{min-height:auto;padding:20px 18px 18px;border:0;box-shadow:0 7px 20px rgba(20,43,76,.07)}
    .tfc-home .tfc-type-card h3{font-size:1.8rem}
    .tfc-home .tfc-type-card__copy{font-size:.94rem!important}
    #tfc-projects .tfc-project-card-grid{gap:16px}
    #tfc-projects .tfc-project-card__media{height:150px}
    #tfc-projects .tfc-project-card__body{padding:17px 17px 19px}
    #tfc-projects .tfc-project-card__body h3{font-size:1.08rem}
    #tfc-unfinished .tfc-unfinished-grid{gap:12px}
    #tfc-unfinished .tfc-unfinished-grid article{min-height:auto;padding:20px 18px}
    .tfc-roadmap-type-grid{gap:14px;margin-top:26px}
    .tfc-roadmap-type,.tfc-roadmap-type--entrepreneur,.tfc-roadmap-type--collaboration,.tfc-roadmap-type--research{min-height:auto;padding:20px 18px}
    .tfc-roadmap-type h3{font-size:1.6rem}
    #tfc-stories .tfc-story-grid{gap:26px}
    #tfc-stories .tfc-story-card__image{height:160px}
    #tfc-stories .tfc-story-card__body{padding-top:12px}
    #tfc-supporters .tfc-supporter-grid{gap:12px}
    #tfc-supporters .tfc-supporter-card{grid-template-columns:72px 1fr;gap:13px;padding:17px;border:0}
    #tfc-supporters .tfc-supporter-card__image{width:72px;height:88px;aspect-ratio:auto}
    #tfc-life .tfc-life-data-grid{gap:10px}
    #tfc-life .tfc-life-data-card,#tfc-life .tfc-life-data-card:nth-child(2n),#tfc-life .tfc-life-data-card:nth-child(3n){min-height:auto;padding:18px;border:0}
}
.tfc-brand__logo{display:none!important}
.tfc-site-header__inner{min-height:90px;gap:20px}
.tfc-brand{min-width:310px}
.tfc-brand__main{
    font-size:clamp(1.4rem,1.7vw,1.65rem);
    font-weight:700;
    line-height:1;
    letter-spacing:.055em;
}
.tfc-brand__sub{margin-top:7px;font-size:.7rem;letter-spacing:.015em}
.tfc-global-nav a{white-space:nowrap;word-break:keep-all}
.tfc-global-nav .tfc-button{flex:0 0 auto;min-width:104px}
.tfc-site-header__inner > .tfc-button{flex:0 0 auto;min-width:104px;white-space:nowrap;word-break:keep-all}
.tfc-home #tfc-types{padding-top:42px;padding-bottom:74px}
.tfc-home #tfc-types .tfc-section-caption{margin-bottom:28px}
.tfc-home #tfc-types .tfc-type-card-grid{gap:20px}
.tfc-home #tfc-types .tfc-type-card{
    position:relative;
    overflow:hidden;
    padding:24px 23px 20px;
    background:#fff;
}
.tfc-home #tfc-types .tfc-type-card--entrepreneur{box-shadow:10px 10px 0 rgba(0,133,111,.12)}
.tfc-home #tfc-types .tfc-type-card--collaboration{box-shadow:10px 10px 0 rgba(199,90,0,.12)}
.tfc-home #tfc-types .tfc-type-card--research{box-shadow:10px 10px 0 rgba(63,53,213,.12)}
.tfc-type-card__icon{
    position:absolute;
    top:18px;
    right:18px;
    width:86px;
    height:86px;
    pointer-events:none;
    opacity:.12;
}
.tfc-type-card__icon svg{display:block;width:100%;height:100%}
.tfc-type-card--entrepreneur .tfc-type-card__icon{color:var(--tfc-entrepreneur)}
.tfc-type-card--collaboration .tfc-type-card__icon{color:var(--tfc-collaboration)}
.tfc-type-card--research .tfc-type-card__icon{color:var(--tfc-research)}
.tfc-home #tfc-types .tfc-type-card > :not(.tfc-type-card__icon){position:relative;z-index:1}

@media (max-width: 767px){
    .tfc-home #tfc-types{padding-top:34px;padding-bottom:56px}
    .tfc-home #tfc-types .tfc-section-caption{margin-bottom:22px}
    .tfc-home #tfc-types .tfc-type-card-grid{gap:18px}
    .tfc-type-card__icon{top:15px;right:15px;width:72px;height:72px}
}

.tfc-home #tfc-types,
.tfc-home #tfc-unfinished,
.tfc-home #tfc-stories,
.tfc-home #tfc-life,
.tfc-home #tfc-faq{background:#fff}

.tfc-home .tfc-type-card{
    min-height:0;
    padding:24px 23px 21px;
    background:#f7f9fc;
    box-shadow:none;
}
.tfc-home .tfc-type-card h3,
#tfc-unfinished .tfc-unfinished-grid h3,
#tfc-stories .tfc-story-card h3,
#tfc-life .tfc-life-data-card h3{
    border-bottom:0;
}
.tfc-home .tfc-type-card h3::after,
#tfc-unfinished .tfc-unfinished-grid h3::after,
#tfc-stories .tfc-story-card h3::after,
#tfc-life .tfc-life-data-card h3::after{display:none}
.tfc-home .tfc-type-card > p:not(.tfc-type-card__copy){font-size:.82rem;line-height:1.6}
.tfc-home .tfc-type-card__copy{min-height:3.2em;font-size:.96rem!important;line-height:1.6}
.tfc-home .tfc-type-card__foot{padding-top:12px}
#tfc-stories .tfc-story-card__body{padding-top:13px}
#tfc-supporters .tfc-supporter-card p{margin:6px 0;font-size:.84rem;line-height:1.55}
#tfc-supporters .tfc-supporter-card blockquote{
    margin-top:10px;
    -webkit-box-orient:vertical;
}

.tfc-home-hero__actions .tfc-button--primary.tfc-button--light{
    color:#fff!important;
    background:var(--tfc-ink)!important;
    border-color:var(--tfc-ink)!important;
}
.tfc-home-hero__actions .tfc-button--ghost-light{
    color:var(--tfc-ink)!important;
    background:rgba(255,255,255,.94)!important;
    border-color:rgba(0,35,135,.24)!important;
}


@media (max-width: 767px){
    .tfc-home .tfc-section{padding:56px 0}
    .tfc-home .tfc-section > .tfc-container > h2{font-size:clamp(1.95rem,9vw,2.45rem)}
    .tfc-home .tfc-section-caption{margin-bottom:26px}
    .tfc-home .tfc-type-card{padding:19px 18px 17px}
    .tfc-home .tfc-type-card__copy{min-height:0}
    #tfc-unfinished .tfc-unfinished-grid article{min-height:0;padding:19px 18px}
    #tfc-supporters .tfc-supporter-card{padding:16px}
    #tfc-life .tfc-life-data-card,
    #tfc-life .tfc-life-data-card:nth-child(2n),
    #tfc-life .tfc-life-data-card:nth-child(3n){min-height:0;padding:16px}
}
.tfc-main h3,
.tfc-main h4,
.tfc-project-card h3,
.tfc-unfinished-grid h3,
.tfc-story-card h3,
.tfc-supporter-card h3,
.tfc-life-data-card h3,
.tfc-faq__question{color:var(--tfc-color-text)}

.tfc-home-hero h1{color:#07101f}
.tfc-home-hero h1 .is-accent{color:var(--tfc-color-heading)}
.tfc-home .tfc-type-card--entrepreneur h3{color:var(--tfc-entrepreneur)}
.tfc-home .tfc-type-card--collaboration h3{color:var(--tfc-collaboration)}
.tfc-home .tfc-type-card--research h3{color:var(--tfc-research)}

.tfc-home-hero__lead,
.tfc-type-card__copy,
.tfc-project-card__summary,
.tfc-unfinished-grid article p,
.tfc-story-card__body p,
.tfc-supporter-card blockquote,
.tfc-faq__answer{color:var(--tfc-color-text)}

.tfc-section-caption,
.tfc-type-card > p:not(.tfc-type-card__copy),
.tfc-project-card__body p:not(.tfc-project-card__summary),
.tfc-project-card__meta,
.tfc-supporter-card p,
.tfc-life-data-card__note,
.tfc-life-data-card small,
.tfc-life-data-foot p{color:var(--tfc-color-text-secondary)}

.tfc-type-card__keywords > strong,
.tfc-brand__sub{color:var(--tfc-color-text-muted)}

@media (max-width: 767px){
    .tfc-faq summary{grid-template-columns:40px minmax(0,1fr) 32px}
    .tfc-faq .tfc-faq__answer,
    body.tfc-project-page .tfc-faq .tfc-faq__answer{padding-left:40px}
}
.tfc-site-header{
    position:fixed;
    top:0;
    right:0;
    left:0;
    width:100%;
    z-index:100;
}
body.admin-bar .tfc-site-header{top:32px}
.tfc-main .tfc-section{scroll-margin-top:122px}

.tfc-home-hero,
.tfc-home-hero + #tfc-types,
.tfc-home #tfc-types{
    border:0!important;
    box-shadow:none;
}

.tfc-home #tfc-types .tfc-type-card{
    height:auto;
}
.tfc-type-card__suitable{
    margin:10px 0 0;
}
.tfc-type-card__suitable > strong{
    display:inline-block;
    margin:0 0 5px;
    padding:4px 8px;
    background:#eef2f7;
    color:var(--tfc-color-text);
    font-size:.74rem;
    font-weight:800;
    line-height:1.35;
}
.tfc-type-card__suitable p{
    margin:0;
    color:var(--tfc-color-text-secondary);
    font-size:.84rem;
    line-height:1.68;
}
.tfc-type-card--entrepreneur .tfc-type-card__suitable > strong{
    background:rgba(0,133,111,.1);
    color:var(--tfc-entrepreneur);
}
.tfc-type-card--collaboration .tfc-type-card__suitable > strong{
    background:rgba(199,90,0,.1);
    color:var(--tfc-collaboration);
}
.tfc-type-card--research .tfc-type-card__suitable > strong{
    background:rgba(63,53,213,.1);
    color:var(--tfc-research);
}
.tfc-home .tfc-type-card__keywords{margin-top:14px}

#tfc-faq .tfc-cta-box h3{
    margin:0 0 10px;
    border:0;
    color:#fff;
}
#tfc-faq .tfc-cta-box h3::before,
#tfc-faq .tfc-cta-box h3::after{content:none;display:none}
#tfc-faq .tfc-cta-box p{color:rgba(255,255,255,.86)}

#tfc-faq > .tfc-container > .tfc-section-kicker,
#tfc-faq > .tfc-container > h2{
    justify-content:center;
    text-align:center;
}
#tfc-faq > .tfc-container > .tfc-section-kicker{
    color:var(--tfc-color-text-secondary);
    font-size:.8rem;
    letter-spacing:.12em;
}
.tfc-faq__panel{
    overflow:hidden;
    transition:height .3s ease,opacity .24s ease;
}
.tfc-faq__answer{padding-top:0}
#tfc-faq .tfc-faq summary{
    grid-template-columns:auto minmax(0,1fr) auto;
    padding-right:0;
}
#tfc-faq .tfc-faq summary::before{grid-column:1}
#tfc-faq .tfc-faq__question{grid-column:2}
#tfc-faq .tfc-faq summary::after{
    grid-column:3;
    justify-self:end;
    margin-left:auto;
}

.tfc-site-footer{
    padding:50px 0 24px;
    border:0;
    background:#f3f6fa;
    color:var(--tfc-color-text);
}
.tfc-site-footer__inner{
    display:grid;
    grid-template-columns:minmax(240px,.8fr) minmax(320px,1.2fr);
    gap:clamp(32px,6vw,90px);
    align-items:start;
}
.tfc-site-footer__brand{
    color:var(--tfc-color-heading);
    font-size:1.35rem;
    font-weight:700;
    letter-spacing:.055em;
    line-height:1.2;
}
.tfc-site-footer__note{
    margin-top:8px!important;
    color:var(--tfc-color-text-secondary);
    font-size:.82rem;
}
.tfc-site-footer__label{
    margin:0 0 6px;
    color:var(--tfc-color-text-muted);
    font-size:.75rem;
    font-weight:700;
}
.tfc-site-footer__operator-name{
    color:var(--tfc-color-heading);
    font-size:1rem;
    font-weight:800;
}
.tfc-site-footer address{
    display:grid;
    gap:2px;
    margin-top:12px;
    color:var(--tfc-color-text-secondary);
    font-size:.78rem;
    font-style:normal;
    line-height:1.65;
}
.tfc-site-footer a{color:inherit;text-underline-offset:3px}
.tfc-site-footer__copyright{
    margin-top:36px;
    color:var(--tfc-color-text-muted);
    font-size:.7rem;
}

@media (max-width: 1023px){
    body.tfc-project-page .tfc-main{padding-top:78px}
    .tfc-main .tfc-section{scroll-margin-top:124px}
}
@media (max-width: 767px){
    .tfc-site-footer{padding-top:38px}
    .tfc-site-footer__inner{grid-template-columns:1fr;gap:28px}
    .tfc-site-footer__copyright{margin-top:28px}
    #tfc-faq .tfc-faq summary::before,
    #tfc-faq .tfc-faq__question,
    #tfc-faq .tfc-faq summary::after{grid-row:1}
}

@media(prefers-reduced-motion:reduce){
    .tfc-faq__panel{transition:none}
}
#tfc-life .tfc-life-data-grid{
    align-items:stretch;
    gap:14px;
}
#tfc-life .tfc-life-data-card,
#tfc-life .tfc-life-data-card:nth-child(2n),
#tfc-life .tfc-life-data-card:nth-child(3n){
    display:flex;
    min-height:0;
    padding:22px 22px 20px;
    border:0;
    background:#f4f6f9;
}
#tfc-life .tfc-life-data-card .tfc-section-kicker{
    display:inline-flex;
    align-self:flex-start;
    margin:0 0 14px;
    padding:4px 8px;
    background:rgba(0,35,135,.08);
    color:var(--tfc-color-heading);
    font-size:.7rem;
    font-weight:800;
    line-height:1.35;
    letter-spacing:0;
}
#tfc-life .tfc-life-data-card h3{
    margin:0;
    color:var(--tfc-color-text);
    font-size:1rem;
    font-weight:700;
    line-height:1.55;
}
#tfc-life .tfc-life-data-card__value{
    margin:14px 0 10px;
    color:var(--tfc-color-heading);
    font-size:clamp(1.2rem,1.6vw,1.55rem);
    font-weight:800;
    line-height:1.45;
}
#tfc-life .tfc-life-data-card__note{
    display:block;
    margin:0;
    overflow:visible;
    color:var(--tfc-color-text-secondary);
    font-size:.84rem;
    line-height:1.75;
    -webkit-box-orient:initial;
    -webkit-line-clamp:unset;
}
#tfc-life .tfc-life-data-card small{
    display:block;
    margin-top:auto;
    padding-top:18px;
    color:var(--tfc-color-text-muted);
    font-size:.68rem;
}

@media (max-width: 767px){
    #tfc-life .tfc-life-data-grid{gap:8px}
    #tfc-life .tfc-life-data-card,
    #tfc-life .tfc-life-data-card:nth-child(2n),
    #tfc-life .tfc-life-data-card:nth-child(3n){padding:18px 17px}
    #tfc-life .tfc-life-data-card .tfc-section-kicker{margin-bottom:11px}
    #tfc-life .tfc-life-data-card__value{margin-top:10px;font-size:1.25rem}
    #tfc-life .tfc-life-data-card small{padding-top:14px}
}
.tfc-project-card{
    display:flex;
    flex-direction:column;
}
.tfc-project-card__link{
    display:block;
    height:auto;
    flex:0 0 auto;
}
.tfc-project-card__body{
    display:flex;
    flex:1;
    flex-direction:column;
}
.tfc-project-card__body h2 a,
.tfc-project-card__body h3 a{
    color:inherit;
    text-decoration:none;
}
.tfc-project-card__body .tfc-project-card__more{margin-top:auto}
.tfc-chip--link{
    position:relative;
    color:var(--tfc-color-heading);
    text-decoration:none;
    transition:background-color .2s ease,color .2s ease;
}
.tfc-chip--link:hover,
.tfc-chip--link:focus-visible{
    background:rgba(0,35,135,.1);
    color:var(--tfc-color-heading);
}
#tfc-stories .tfc-story-card__body .tfc-section-kicker{
    display:inline-flex;
    align-self:flex-start;
    margin:0 0 8px;
    padding:4px 8px;
    background:rgba(0,35,135,.08);
    color:var(--tfc-color-heading);
    font-size:.68rem;
    letter-spacing:.04em;
}
#tfc-stories .tfc-story-card__body h3{
    display:block;
    margin:0 0 14px;
    overflow:visible;
    color:var(--tfc-color-text);
    font-size:1.12rem;
    line-height:1.55;
    -webkit-box-orient:initial;
    -webkit-line-clamp:unset;
}
#tfc-stories .tfc-story-person{
    padding-top:12px;
}
#tfc-stories .tfc-story-card:hover{
    box-shadow:0 14px 30px rgba(20,43,76,.11);
}
#tfc-stories .tfc-story-card a:focus-visible{outline:3px solid rgba(0,35,135,.35);outline-offset:-3px}
.tfc-unfinished-grid--archive{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    border:0;
    background:transparent;
}
.tfc-unfinished-grid--archive article{
    display:flex;
    min-height:0;
    flex-direction:column;
    padding:26px;
    border:0;
    background:#f4f6f9;
    box-shadow:0 7px 20px rgba(20,43,76,.06);
}
.tfc-unfinished-card__head{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:14px;
    margin-bottom:18px;
}
.tfc-unfinished-grid--archive h2{
    margin:0 0 14px;
    color:var(--tfc-color-text);
    font-size:1.35rem;
    line-height:1.5;
}
.tfc-unfinished-grid--archive h2 a{color:inherit;text-decoration:none}
.tfc-unfinished-card__problem{
    margin:0 0 20px;
    color:var(--tfc-color-text-secondary);
    font-size:.9rem;
    line-height:1.8;
}
.tfc-unfinished-card__meta{
    display:grid;
    gap:0;
    margin:0 0 20px;
}
.tfc-unfinished-card__meta div{
    display:grid;
    grid-template-columns:120px minmax(0,1fr);
    gap:14px;
    padding:10px 0;
    border-top:1px solid rgba(20,43,76,.1);
}
.tfc-unfinished-card__meta dt{
    color:var(--tfc-color-heading);
    font-size:.73rem;
    font-weight:800;
}
.tfc-unfinished-card__meta dd{
    margin:0;
    color:var(--tfc-color-text-secondary);
    font-size:.8rem;
    line-height:1.65;
}
.tfc-unfinished-grid--archive .tfc-type-card__foot{margin-top:auto;padding-top:2px}

@media (max-width: 767px){
    #tfc-stories .tfc-story-grid{gap:14px}
    #tfc-stories .tfc-story-card__image{height:180px}
    #tfc-stories .tfc-story-card__body{padding:16px 17px 18px}
    .tfc-unfinished-grid--archive{grid-template-columns:1fr;gap:12px}
    .tfc-unfinished-grid--archive article{padding:20px 18px}
    .tfc-unfinished-card__head{margin-bottom:14px}
    .tfc-unfinished-grid--archive h2{font-size:1.18rem}
    .tfc-unfinished-card__meta div{grid-template-columns:1fr;gap:4px}
}

@media(prefers-reduced-motion:reduce){
    #tfc-stories .tfc-story-card,
    #tfc-stories .tfc-story-card__image img{transition:none}
}
body.tfc-project-page .tfc-cta-box{
    max-width:980px;
    margin:48px auto 0;
    border:0;
    border-radius:4px;
    background:var(--tfc-color-heading);
    color:#fff;
}

body.tfc-project-page .tfc-cta-box .tfc-section-kicker,
body.tfc-project-page .tfc-cta-box h3,
body.tfc-project-page .tfc-cta-box p{
    color:#fff;
}

body.tfc-project-page .tfc-cta-box .tfc-section-kicker{
    margin:0 0 5px;
    opacity:.72;
    font-size:.68rem;
}

body.tfc-project-page .tfc-cta-box h3{
    font-size:1.35rem;
}

body.tfc-project-page .tfc-cta-box p{
    margin:5px 0 0;
    opacity:.84;
    font-size:.82rem;
}

body.tfc-project-page .tfc-cta-box .tfc-button{
    border-color:#fff;
    background:#fff;
    color:var(--tfc-color-heading);
}

body.tfc-project-page .tfc-faq summary{
    position:relative;
    padding:19px 48px 19px 4px;
    color:var(--tfc-color-text);
    font-size:.92rem;
    line-height:1.65;
    list-style:none;
}

body.tfc-project-page .tfc-faq summary::-webkit-details-marker{
    display:none;
}

body.tfc-project-page .tfc-faq summary::after{
    position:absolute;
    top:50%;
    right:8px;
    color:var(--tfc-color-heading);
    font-size:1.35rem;
    font-weight:400;
    line-height:1;
    transform:translateY(-50%);
    content:"+";
}

body.tfc-project-page .tfc-faq[open] summary::after{
    content:"−";
}

body.tfc-project-page .tfc-faq__answer{
    padding:0 4px 22px;
    color:var(--tfc-color-text-secondary);
    font-size:.88rem;
    line-height:1.85;
}
#tfc-roadmap .tfc-roadmap-type-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:0;
    margin-top:clamp(34px,5vw,54px);
}

#tfc-roadmap .tfc-roadmap-type{
    --tfc-route-color:var(--tfc-color-heading);
    display:grid;
    grid-template-columns:minmax(190px,.8fr) minmax(480px,2fr) auto;
    gap:clamp(24px,4vw,58px);
    align-items:center;
    min-height:0;
    padding:28px 0;
    border:0;
    border-top:1px solid #d7dfe9;
    background:transparent;
    box-shadow:none;
}

#tfc-roadmap .tfc-roadmap-type:last-child{border-bottom:1px solid #d7dfe9}
#tfc-roadmap .tfc-roadmap-type--entrepreneur{--tfc-route-color:var(--tfc-type-entrepreneur)}
#tfc-roadmap .tfc-roadmap-type--collaboration{--tfc-route-color:var(--tfc-type-collaboration)}
#tfc-roadmap .tfc-roadmap-type--research{--tfc-route-color:var(--tfc-type-research)}

#tfc-roadmap .tfc-roadmap-type__intro h3{
    margin:0 0 7px;
    color:var(--tfc-route-color);
    font-size:clamp(1.4rem,2vw,1.75rem);
    line-height:1.3;
}

#tfc-roadmap .tfc-roadmap-type__intro p{
    margin:0;
    color:var(--tfc-color-text-secondary);
    font-size:.78rem;
    line-height:1.65;
}

#tfc-roadmap .tfc-roadmap-type__steps{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:0;
    margin:0;
    padding:0;
    counter-reset:tfc-route-step;
    list-style:none;
}

#tfc-roadmap .tfc-roadmap-type__steps li{
    position:relative;
    min-width:0;
    margin:0;
    padding:34px 8px 0;
    color:var(--tfc-color-text);
    font-size:.74rem;
    font-weight:700;
    line-height:1.5;
    text-align:center;
    counter-increment:tfc-route-step;
}

#tfc-roadmap .tfc-roadmap-type__steps li::before{
    position:absolute;
    top:0;
    left:50%;
    z-index:2;
    display:grid;
    width:26px;
    height:26px;
    place-items:center;
    border:1px solid color-mix(in srgb,var(--tfc-route-color) 45%,white);
    border-radius:50%;
    color:var(--tfc-route-color);
    background:#fff;
    content:counter(tfc-route-step,decimal-leading-zero);
    font-size:.58rem;
    font-weight:800;
    transform:translateX(-50%);
}

#tfc-roadmap .tfc-roadmap-type__steps li:not(:last-child)::after{
    position:absolute;
    top:12px;
    left:calc(50% + 13px);
    width:calc(100% - 26px);
    height:1px;
    background:color-mix(in srgb,var(--tfc-route-color) 24%,white);
    content:"";
}

#tfc-roadmap .tfc-roadmap-type > .tfc-circle-link{
    justify-self:end;
    color:var(--tfc-route-color);
    white-space:nowrap;
}

#tfc-roadmap .tfc-roadmap-type > .tfc-circle-link .tfc-circle-link__icon{
    background:color-mix(in srgb,var(--tfc-route-color) 10%,white);
}

@media (max-width: 1023px){
    #tfc-roadmap .tfc-roadmap-type{
        grid-template-columns:180px minmax(0,1fr);
        gap:22px 32px;
    }
    #tfc-roadmap .tfc-roadmap-type > .tfc-circle-link{
        grid-column:2;
        justify-self:start;
    }
}

@media (max-width: 767px){
    #tfc-roadmap .tfc-roadmap-type{
        display:block;
        padding:24px 0 26px;
    }
    #tfc-roadmap .tfc-roadmap-type__intro p{font-size:.76rem}
    #tfc-roadmap .tfc-roadmap-type__steps{margin-top:23px}
    #tfc-roadmap .tfc-roadmap-type__steps li{
        padding-inline:2px;
        font-size:.66rem;
    }
    #tfc-roadmap .tfc-roadmap-type > .tfc-circle-link{
        margin-top:22px;
    }
}

@media (max-width: 767px){
    body.tfc-project-page .tfc-section{
        padding:48px 0;
    }
    body.tfc-project-page .tfc-section > .tfc-container > h2{
        margin-bottom:25px;
        font-size:clamp(1.72rem,8vw,2.1rem);
    }
    body.tfc-project-page .tfc-cta-box{
        margin-top:36px;
        padding:24px 20px;
    }
    body.tfc-project-page .tfc-cta-box .tfc-button{
        width:100%;
    }
}
.tfc-home-hero__actions .tfc-button,
.tfc-type-consult .tfc-button,
.tfc-cta-box .tfc-button{
    min-height:60px !important;
    padding-inline:32px !important;
    font-size:1rem !important;
    font-weight:800;
}

@media (max-width: 767px){
    .tfc-home-hero__actions .tfc-button,
    .tfc-type-consult .tfc-button,
    .tfc-cta-box .tfc-button{
        min-height:56px !important;
        padding-inline:24px !important;
    }
}
#tfc-selection .tfc-selection-flow{
    position:relative;
    display:grid;
    gap:clamp(12px,1.8vw,24px);
    margin:clamp(38px,5vw,56px) 0 0;
    padding:0;
    border:0;
    list-style:none;
    counter-reset:none;
}

#tfc-selection .tfc-selection-flow li{
    position:relative;
    display:flex;
    min-width:0;
    min-height:0;
    align-items:center;
    flex-direction:column;
    padding:0 2px;
    background:transparent;
    text-align:center;
    counter-increment:none;
}

#tfc-selection .tfc-selection-flow li::before{
    display:none;
    content:none;
}

#tfc-selection .tfc-selection-flow .tfc-selection-flow__icon{
    display:grid;
    width:66px;
    height:66px;
    min-height:66px;
    padding:0;
    place-items:center;
    border:1px solid #d8e1f4;
    border-radius:50%;
    color:var(--tfc-color-heading);
    background:#fff;
    box-shadow:0 8px 20px rgba(20,43,76,.08);
}

#tfc-selection .tfc-selection-flow .tfc-selection-flow__step{
    display:block;
    min-height:0;
    margin:14px 0 5px;
    padding:0;
    color:var(--tfc-color-text-muted);
    background:transparent;
    font-family:var(--tfc-font-display);
    font-size:.66rem;
    font-weight:700;
    letter-spacing:.08em;
    line-height:1.4;
}

@media (max-width: 1023px){
    #tfc-selection .tfc-selection-flow{
        grid-template-columns:repeat(3,minmax(0,1fr));
        gap:30px 18px;
    }
}

@media (max-width: 767px){
    #tfc-selection .tfc-selection-flow{
        grid-template-columns:1fr;
        gap:0;
        margin-top:32px;
    }
    #tfc-selection .tfc-selection-flow li{
        display:grid;
        grid-template-columns:56px minmax(0,1fr);
        column-gap:16px;
        align-items:start;
        padding:0 0 28px;
        text-align:left;
    }
    #tfc-selection .tfc-selection-flow li:last-child{padding-bottom:0}
    #tfc-selection .tfc-selection-flow .tfc-selection-flow__icon{
        grid-column:1;
        grid-row:1 / span 2;
        width:56px;
        height:56px;
        min-height:56px;
    }
    #tfc-selection .tfc-selection-flow .tfc-selection-flow__step{
        grid-column:2;
        grid-row:1;
        margin:1px 0 4px;
    }
}
.tfc-home-hero h1{
    max-width:660px;
    font-size:clamp(2.9rem,4.2vw,4.35rem);
    line-height:1.28;
}

@media (max-width: 767px){
    .tfc-home-hero h1{
        font-size:clamp(2.1rem,8.5vw,2.8rem);
        line-height:1.32;
    }
}
#tfc-supporters{
    background:#f3f6f9;
}

#tfc-supporters .tfc-section-caption{
    max-width:760px;
    margin-right:auto;
    margin-left:auto;
    font-size:.98rem;
    line-height:1.9;
    text-wrap:balance;
}

#tfc-supporters .tfc-supporter-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:clamp(18px,2.2vw,28px);
    align-items:stretch;
    margin-top:clamp(34px,4vw,48px);
    border:0;
}

#tfc-supporters .tfc-supporter-card{
    display:flex;
    min-height:100%;
    flex-direction:column;
    gap:0;
    padding:clamp(20px,2.1vw,28px);
    border:0;
    border-radius:6px;
    background:#fff;
    box-shadow:0 16px 42px rgba(20,43,76,.075);
    transition:transform .3s ease,box-shadow .3s ease;
}

#tfc-supporters .tfc-supporter-card__head{
    display:grid;
    grid-template-columns:104px minmax(0,1fr);
    gap:18px;
    align-items:start;
}

#tfc-supporters .tfc-supporter-card__image{
    width:104px;
    height:auto;
    margin:0;
    overflow:hidden;
    aspect-ratio:4/5;
    border-radius:5px;
    background:#e8edf3;
    box-shadow:none;
}

#tfc-supporters .tfc-supporter-card__image img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center top;
    filter:saturate(.9) contrast(.98);
    transition:transform .38s ease,filter .38s ease;
}

#tfc-supporters .tfc-supporter-card:hover .tfc-supporter-card__image img{
    transform:scale(1.025);
    filter:saturate(.98) contrast(1);
}

#tfc-supporters .tfc-supporter-card__identity{
    min-width:0;
    padding-top:2px;
}

#tfc-supporters .tfc-supporter-card .tfc-supporter-card__role{
    margin:0 0 8px;
    color:var(--tfc-color-heading);
    font-size:.72rem;
    font-weight:700;
    letter-spacing:.04em;
    line-height:1.55;
}

@media(hover:hover) and (pointer:fine){
    #tfc-supporters .tfc-supporter-card:hover,
    #tfc-supporters .tfc-supporter-card:focus-within{
        transform:translateY(-4px);
        box-shadow:0 22px 50px rgba(20,43,76,.11);
    }
}

#tfc-supporters .tfc-supporter-card h3{
    margin:0 0 9px;
    font-size:1.4rem;
    line-height:1.35;
}

#tfc-supporters .tfc-supporter-card .tfc-supporter-card__org{
    margin:0;
    color:var(--tfc-color-text-secondary);
    font-size:.8rem;
    line-height:1.65;
}

#tfc-supporters .tfc-supporter-card__expertise{
    margin-top:22px;
}

#tfc-supporters .tfc-supporter-card .tfc-supporter-card__label{
    margin:0 0 10px;
    color:var(--tfc-color-heading);
    font-size:.72rem;
    font-weight:700;
    letter-spacing:.04em;
    line-height:1.5;
}

#tfc-supporters .tfc-supporter-card__expertise ul{
    display:flex;
    flex-wrap:wrap;
    gap:7px 6px;
    margin:0;
    padding:0;
    list-style:none;
}

#tfc-supporters .tfc-supporter-card__expertise li{
    margin:0;
    padding:5px 9px;
    border:1px solid #dce4f0;
    border-radius:3px;
    color:#415268;
    background:#f7f9fc;
    font-size:.7rem;
    font-weight:600;
    line-height:1.4;
}

#tfc-supporters .tfc-supporter-card__frequency{
    display:grid;
    grid-template-columns:28px minmax(0,1fr);
    gap:10px;
    align-items:start;
    margin-top:20px;
}

#tfc-supporters .tfc-supporter-card__frequency-icon{
    display:grid;
    width:28px;
    height:28px;
    place-items:center;
    border-radius:50%;
    color:var(--tfc-color-heading);
    background:#e9eef9;
}

#tfc-supporters .tfc-supporter-card__frequency-icon svg{
    width:15px;
    height:15px;
}

#tfc-supporters .tfc-supporter-card__frequency p{
    margin:0;
}

#tfc-supporters .tfc-supporter-card__frequency strong,
#tfc-supporters .tfc-supporter-card__frequency span{
    display:block;
}

#tfc-supporters .tfc-supporter-card__frequency strong{
    margin-bottom:3px;
    color:var(--tfc-color-heading);
    font-size:.7rem;
    line-height:1.4;
}

#tfc-supporters .tfc-supporter-card__frequency p > span{
    color:var(--tfc-color-text-secondary);
    font-size:.78rem;
    line-height:1.7;
}

#tfc-supporters .tfc-supporter-card blockquote{
    position:relative;
    display:block;
    margin:24px 0 0;
    padding:0 0 0 20px;
    overflow:visible;
    border:0;
    color:var(--tfc-color-text);
    background:transparent;
    font-size:.82rem;
    line-height:1.8;
    -webkit-line-clamp:unset;
}

#tfc-supporters .tfc-supporter-card blockquote::before{
    position:absolute;
    top:-13px;
    left:0;
    color:rgba(0,35,135,.18);
    content:"“";
    font-family:var(--tfc-font-quote);
    font-size:2.8rem;
    line-height:1;
}

#tfc-supporters .tfc-supporter-card__link{
    align-self:flex-start;
    margin-top:auto;
    padding-top:24px;
    color:var(--tfc-color-heading);
    font-size:.78rem;
}

#tfc-supporters .tfc-supporter-card__link .tfc-circle-link__icon{
    width:36px;
    height:36px;
}

@media (max-width: 1023px){
    #tfc-supporters .tfc-supporter-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media (max-width: 767px){
    #tfc-supporters .tfc-section-caption{
        font-size:.9rem;
        line-height:1.8;
    }
    #tfc-supporters .tfc-supporter-grid{
        grid-template-columns:1fr;
        gap:14px;
        margin-top:28px;
    }
    #tfc-supporters .tfc-supporter-card{
        min-height:0;
        padding:18px;
    }
    #tfc-supporters .tfc-supporter-card__head{
        grid-template-columns:88px minmax(0,1fr);
        gap:15px;
    }
    #tfc-supporters .tfc-supporter-card__image{
        width:88px;
    }
    #tfc-supporters .tfc-supporter-card h3{
        font-size:1.25rem;
    }
    #tfc-supporters .tfc-supporter-card__expertise{
        margin-top:18px;
    }
    #tfc-supporters .tfc-supporter-card blockquote{
        margin-top:20px;
        font-size:.8rem;
    }
}

@media(prefers-reduced-motion:reduce){
    #tfc-supporters .tfc-supporter-card,
    #tfc-supporters .tfc-supporter-card__image img{transition:none}
}
.tfc-faq .tfc-faq__answer,
body.tfc-project-page .tfc-faq .tfc-faq__answer{
    position:relative;
}

.tfc-faq .tfc-faq__answer::before{
    content:"A";
    font-size:1.5rem;
    font-weight:800;
    line-height:1.25;
}

.tfc-faq .tfc-faq__answer > :first-child{
    margin-top:0;
}

@media (max-width: 767px){
    .tfc-faq .tfc-faq__answer,
    body.tfc-project-page .tfc-faq .tfc-faq__answer{
        padding-left:44px;
    }
}
#tfc-unfinished .tfc-unfinished-grid{
    column-gap:clamp(30px,4vw,54px);
    row-gap:0;
}

#tfc-unfinished .tfc-unfinished-grid article{
    display:flex;
    flex-direction:column;
    border-top:1px solid #d9e1eb;
}

#tfc-unfinished .tfc-unfinished-card__head{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:16px;
    margin:0 0 20px;
}

#tfc-unfinished .tfc-unfinished-card__head .tfc-chip-row{
    justify-content:flex-end;
    margin:0;
}

#tfc-unfinished .tfc-unfinished-grid h3{
    margin:0 0 14px;
    color:var(--tfc-color-text);
    font-size:clamp(1.12rem,1.5vw,1.32rem);
    line-height:1.55;
}

#tfc-unfinished .tfc-unfinished-grid .tfc-unfinished-card__problem{
    margin:0 0 18px;
    color:var(--tfc-color-text-secondary);
    font-size:.86rem;
    line-height:1.8;
}

#tfc-unfinished .tfc-unfinished-card__area{
    display:flex;
    gap:12px;
    align-items:baseline;
    margin:0;
    color:var(--tfc-color-text-secondary);
    font-size:.78rem;
    line-height:1.65;
}

#tfc-unfinished .tfc-unfinished-card__area strong{
    color:var(--tfc-color-heading);
    font-size:.72rem;
}

#tfc-unfinished .tfc-unfinished-grid .tfc-type-card__foot{
    margin-top:auto;
    border:0;
}

@media (max-width: 767px){
    #tfc-unfinished .tfc-unfinished-grid{
        grid-template-columns:1fr;
    }
    #tfc-unfinished .tfc-unfinished-grid article{
        padding:23px 0 25px;
    }
    #tfc-unfinished .tfc-unfinished-card__head{
        margin-bottom:16px;
    }
}


#tfc-unfinished .tfc-unfinished-grid article{
    min-height:0;
    padding:clamp(24px,3vw,34px);
    border:1px solid #dfe7f0;
    background:#fff;
    box-shadow:0 12px 28px rgba(0,35,135,.06);
    transition:transform .2s ease,box-shadow .2s ease;
}

#tfc-unfinished .tfc-unfinished-grid article:hover{
    transform:translateY(-3px);
    box-shadow:0 18px 35px rgba(0,35,135,.1);
}

#tfc-unfinished .tfc-unfinished-grid .tfc-type-card__foot{
    padding-top:26px;
}

@media (max-width: 767px){
    #tfc-unfinished .tfc-unfinished-grid{
        gap:16px;
    }

    #tfc-unfinished .tfc-unfinished-grid article{
        padding:22px 20px;
    }
}
body.tfc-project-page #page_top{
    right:24px!important;
    bottom:100px!important;
    display:grid!important;
    width:44px!important;
    height:44px!important;
    place-items:center;
    border:1px solid #cfdbef!important;
    border-radius:50%!important;
    background:#fff!important;
    box-shadow:0 6px 18px rgba(0,35,135,.1);
    color:#002387!important;
    z-index:39!important;
}

body.tfc-project-page #page_top:hover{
    border-color:#002387!important;
    background:#eef4ff!important;
}

@media (max-width: 767px){
    body.tfc-project-page #page_top{
        right:12px!important;
        bottom:calc(86px + env(safe-area-inset-bottom))!important;
        width:40px!important;
        height:40px!important;
    }
}

@media (min-width: 1024px){
    .tfc-site-header > .tfc-container.tfc-site-header__inner{
        width:min(calc(100% - 64px),1280px);
    }
}
#tfc-projects .tfc-project-card-grid,
#tfc-stories .tfc-story-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    align-items:stretch;
    gap:clamp(18px,2vw,26px);
}

#tfc-projects .tfc-project-card,
#tfc-stories .tfc-story-card{
    display:flex;
    min-width:0;
    overflow:hidden;
    flex-direction:column;
    border:0;
    border-radius:6px;
    background:#fff;
    box-shadow:0 10px 26px rgba(20,43,76,.07);
    transition:transform .22s ease,box-shadow .22s ease;
}

#tfc-projects .tfc-project-card:hover,
#tfc-stories .tfc-story-card:hover{
    transform:translateY(-3px);
    box-shadow:0 16px 34px rgba(20,43,76,.11);
}

#tfc-projects .tfc-project-card__media,
#tfc-stories .tfc-story-card__image{
    height:auto;
    aspect-ratio:16/9;
    overflow:hidden;
    border-radius:0;
    background:#e9edf3;
}

#tfc-projects .tfc-project-card__media img,
#tfc-stories .tfc-story-card__image img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .35s ease;
}

#tfc-projects .tfc-project-card__body,
#tfc-stories .tfc-story-card__body{
    display:flex;
    flex:1;
    flex-direction:column;
    padding:20px 20px 22px;
}

#tfc-projects .tfc-project-card__body h2,
#tfc-projects .tfc-project-card__body h3,
#tfc-stories .tfc-story-card h2,
#tfc-stories .tfc-story-card h3{
    margin:12px 0 11px;
    padding:0;
    border:0;
    color:var(--tfc-color-text);
    font-size:1.16rem;
    line-height:1.52;
    letter-spacing:0;
    text-align:left;
}

#tfc-projects .tfc-project-card__body h2::before,
#tfc-projects .tfc-project-card__body h2::after,
#tfc-projects .tfc-project-card__body h3::before,
#tfc-projects .tfc-project-card__body h3::after,
#tfc-stories .tfc-story-card h2::before,
#tfc-stories .tfc-story-card h2::after,
#tfc-stories .tfc-story-card h3::before,
#tfc-stories .tfc-story-card h3::after{
    display:none;
    content:none;
}

#tfc-projects .tfc-project-card__summary{
    margin:0 0 17px;
    color:var(--tfc-color-text-secondary);
    font-size:.86rem;
    line-height:1.75;
}

#tfc-projects .tfc-project-card__meta{
    margin:0 0 18px;
    padding-top:12px;
    border-top:1px solid rgba(20,43,76,.1);
}

#tfc-projects .tfc-project-card__more,
#tfc-stories .tfc-story-card .tfc-circle-link{
    margin-top:auto;
}

#tfc-stories .tfc-story-card > a{
    display:flex;
    height:100%;
    flex-direction:column;
    color:inherit;
    text-decoration:none;
}

.tfc-story-card__placeholder{
    display:grid;
    width:100%;
    height:100%;
    place-items:center;
    color:#66758a;
    font-size:.72rem;
    font-weight:700;
    letter-spacing:.08em;
}

#tfc-stories .tfc-story-card__series{
    margin:0 0 2px;
    padding:4px 8px;
    align-self:flex-start;
    border-radius:3px;
    background:#eef3fb;
    color:var(--tfc-color-heading);
    font-size:.72rem;
    font-weight:700;
    letter-spacing:.04em;
    line-height:1.5;
}

#tfc-stories .tfc-story-person{
    margin:0 0 14px;
    padding:12px 0 0;
    border-top:1px solid rgba(32,42,53,.12);
    color:var(--tfc-color-text-secondary);
    font-size:.78rem;
    line-height:1.65;
}

#tfc-stories .tfc-story-card .tfc-circle-link{
    color:var(--tfc-color-heading);
    font-size:.82rem;
}

#tfc-stories .tfc-story-card:hover .tfc-story-card__image img{
    transform:scale(1.025);
}

#tfc-unfinished .tfc-unfinished-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:clamp(22px,2.5vw,34px);
    border:0;
    background:transparent;
}

#tfc-unfinished .tfc-unfinished-card{
    display:flex;
    min-height:0;
    flex-direction:column;
    padding:clamp(24px,3vw,32px);
    border:1px solid #dfe7f0;
    background:#fff;
    box-shadow:0 10px 26px rgba(0,35,135,.06);
    transition:transform .22s ease,box-shadow .22s ease;
}

#tfc-unfinished .tfc-unfinished-card:hover{
    transform:translateY(-3px);
    box-shadow:0 16px 34px rgba(0,35,135,.1);
}

#tfc-unfinished .tfc-unfinished-card h2,
#tfc-unfinished .tfc-unfinished-card h3{
    margin:0 0 14px;
    padding:0;
    border:0;
    color:var(--tfc-color-text);
    font-size:clamp(1.14rem,1.5vw,1.32rem);
    line-height:1.55;
    letter-spacing:0;
    text-align:left;
}

#tfc-unfinished .tfc-unfinished-card h2::before,
#tfc-unfinished .tfc-unfinished-card h2::after,
#tfc-unfinished .tfc-unfinished-card h3::before,
#tfc-unfinished .tfc-unfinished-card h3::after{
    display:none;
    content:none;
}

#tfc-unfinished .tfc-unfinished-card__problem{
    margin:0 0 18px;
    color:var(--tfc-color-text-secondary);
    font-size:.86rem;
    line-height:1.8;
}

#tfc-unfinished .tfc-unfinished-card__meta{
    display:grid;
    gap:0;
    margin:0 0 20px;
}

#tfc-unfinished .tfc-unfinished-card__meta div{
    display:grid;
    grid-template-columns:120px minmax(0,1fr);
    gap:14px;
    padding:9px 0;
    border-top:1px solid rgba(20,43,76,.1);
}

#tfc-unfinished .tfc-unfinished-card .tfc-type-card__foot{
    margin-top:auto;
    padding-top:4px;
}

@media (max-width: 1023px){
    #tfc-projects .tfc-project-card-grid,
    #tfc-stories .tfc-story-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media (max-width: 767px){
    #tfc-projects .tfc-project-card-grid,
    #tfc-stories .tfc-story-grid,
    #tfc-unfinished .tfc-unfinished-grid{
        grid-template-columns:1fr;
        gap:18px;
    }

    #tfc-projects .tfc-project-card__body,
    #tfc-stories .tfc-story-card__body{
        padding:18px 18px 20px;
    }

    #tfc-unfinished .tfc-unfinished-card{
        padding:22px 20px;
    }

    #tfc-unfinished .tfc-unfinished-card__meta div{
        grid-template-columns:1fr;
        gap:3px;
    }
}

@media(prefers-reduced-motion:reduce){
    #tfc-projects .tfc-project-card,
    #tfc-stories .tfc-story-card,
    #tfc-unfinished .tfc-unfinished-card{
        transition:none;
    }
}
#tfc-selection .tfc-selection-flow{
    grid-template-columns:repeat(5,minmax(0,1fr));
}

#tfc-selection .tfc-selection-flow::before{
    right:calc(100% / 10);
    left:calc(100% / 10);
}

#tfc-selection .tfc-selection-flow li:nth-child(5) .tfc-selection-flow__icon{
    border-color:var(--tfc-color-heading);
    color:#fff;
    background:var(--tfc-color-heading);
}

@media (max-width: 1023px){
    #tfc-selection .tfc-selection-flow{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }
}

#tfc-selection .tfc-selection-guidance{
    display:flex;
    width:min(100%,820px);
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin:clamp(28px,4vw,44px) auto 0;
    padding:16px 20px;
    background:#fff;
}

#tfc-selection .tfc-selection-guidance p{
    margin:0;
    color:var(--tfc-color-text-secondary);
    font-size:.82rem;
    line-height:1.75;
}

#tfc-selection .tfc-selection-guidance__links{
    display:flex;
    flex:0 0 auto;
    align-items:center;
    gap:18px;
}

#tfc-selection .tfc-selection-guidance .tfc-text-link{
    display:inline-flex;
    flex:0 0 auto;
    align-items:center;
    gap:9px;
    color:var(--tfc-color-heading);
    font-size:.82rem;
    font-weight:800;
    text-decoration:none;
}

#tfc-selection .tfc-selection-guidance .tfc-text-link span{
    color:inherit;
    transition:transform .2s ease;
}

#tfc-selection .tfc-selection-guidance .tfc-text-link:hover span{
    transform:translateX(4px);
}

@media (max-width: 767px){
    #tfc-selection .tfc-selection-flow{
        grid-template-columns:1fr;
    }
    #tfc-selection .tfc-selection-guidance{
        align-items:flex-start;
        flex-direction:column;
        gap:12px;
        padding:16px;
    }
    #tfc-selection .tfc-selection-guidance__links{
        align-items:flex-start;
        flex-direction:column;
        gap:10px;
    }
}
.tfc-faq summary{
    grid-template-columns:48px minmax(0,1fr) 40px;
    gap:0;
    align-items:start;
}

.tfc-faq summary::before{
    grid-column:1;
    grid-row:1;
    padding-top:2px;
    color:var(--tfc-color-heading);
}

.tfc-faq summary::after{
    grid-column:3;
    grid-row:1;
    align-self:center;
    justify-self:end;
}

.tfc-faq__question{
    grid-column:2;
    grid-row:1;
}

.tfc-faq .tfc-faq__answer::before{
    top:4px;
    left:0;
    color:var(--tfc-color-heading);
}

@media (max-width: 767px){
    .tfc-faq summary{
        grid-template-columns:40px minmax(0,1fr) 32px;
    }

    .tfc-faq .tfc-faq__answer,
    body.tfc-project-page .tfc-faq .tfc-faq__answer{
        padding-left:40px !important;
    }
}
.tfc-faq .tfc-faq__answer,
body.tfc-project-page .tfc-faq .tfc-faq__answer{
    display:grid;
    grid-template-columns:48px minmax(0,1fr);
    gap:0;
    min-height:0;
    padding:4px 0 24px !important;
}

.tfc-faq .tfc-faq__answer::before{
    position:static;
    grid-column:1;
    grid-row:1;
    align-self:start;
    margin:0;
    padding:0;
}

.tfc-faq .tfc-faq__answer > *{
    grid-column:2;
    min-width:0;
    margin-top:0;
}

/* Keep FAQ markers, copy, and the toggle in separate columns. */
.tfc-main.tfc-home #tfc-faq .tfc-faq summary{
    display:grid;
    grid-template-columns:64px minmax(0,1fr) 44px;
    column-gap:16px;
    align-items:start;
    padding:18px 0!important;
}

.tfc-main.tfc-home #tfc-faq .tfc-faq summary::before{
    padding-top:1px;
    font-size:1.35rem;
}

.tfc-main.tfc-home #tfc-faq .tfc-faq__question{
    min-width:0;
    line-height:1.55;
}

.tfc-main.tfc-home #tfc-faq .tfc-faq summary::after{
    align-self:center;
}

.tfc-main.tfc-home #tfc-faq .tfc-faq__answer{
    grid-template-columns:64px minmax(0,1fr);
    column-gap:16px;
    padding:5px 0 24px!important;
}

@media (max-width: 767px){
    .tfc-faq .tfc-faq__answer,
    body.tfc-project-page .tfc-faq .tfc-faq__answer{
        grid-template-columns:40px minmax(0,1fr);
        padding-left:0 !important;
    }

    .tfc-main.tfc-home #tfc-faq .tfc-faq summary{
        grid-template-columns:40px minmax(0,1fr) 32px;
        column-gap:10px;
        padding:15px 0!important;
    }

    .tfc-main.tfc-home #tfc-faq .tfc-faq__answer{
        grid-template-columns:40px minmax(0,1fr);
        column-gap:10px;
    }
}

body.tfc-project-page .tfc-cta-box{
    margin-top:34px;
    padding:22px 26px;
}
body.tfc-project-page{
    --tfc-project-content:1080px;
    --tfc-project-border:#dce3ed;
    --tfc-project-soft:#f4f7fb;
    --tfc-project-accent:#002387;
}
