/**
 * findi360 homepage Batch 5 — Finance+Tech, Community, Corporate.
 */

/* ── Finance + Technology (Tone B) ── */
.fi-fintech {
    position: relative;
    overflow: clip;
    padding: 0;
}

.fi-fintech__head {
    position: relative;
    z-index: 1;
    margin-bottom: 0;
}

.fi-fintech__waves {
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        radial-gradient(ellipse 80% 50% at 100% 0%, rgba(217, 154, 22, var(--fd-deco-gold-opacity)) 0%, transparent 55%),
        repeating-linear-gradient(
            -12deg,
            transparent,
            transparent 22px,
            rgba(57, 122, 156, 0.04) 22px,
            rgba(57, 122, 156, 0.04) 23px
        );
}

.fi-fintech__head-copy {
    max-width: var(--fd-measure-lead, 48rem);
}

.fi-fintech__title {
    margin: 0;
    font-family: var(--fd-font-heading, 'Inter', system-ui, sans-serif);
    font-size: var(--fd-text-h2);
    font-weight: var(--fd-font-weight-heading, 800);
    letter-spacing: var(--fd-letter-tight, -0.02em);
    color: var(--fd-text-strong, var(--fd-black, #0e0e0e));
}

.fi-fintech__support {
    margin: var(--fd-space-2, 8px) 0 0;
    font-size: var(--fd-text-body);
    color: var(--fd-muted-text, #6f6a62);
    line-height: var(--fd-line-height-body, 1.55);
}

.fi-fintech__ecosystem {
    position: relative;
    z-index: 1;
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: var(--fd-grid-fintech, repeat(3, minmax(0, 1fr)));
    gap: var(--fd-space-3, 12px);
    width: 100%;
    min-width: 0;
    align-items: stretch;
}

.fi-fintech__item {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: var(--fd-space-3, 12px);
    min-height: 0;
    min-width: 0;
    box-sizing: border-box;
    padding: var(--fd-space-3, 12px) var(--fd-space-4, 16px);
    border-radius: var(--fd-radius-sm, 10px);
    border: 1px solid rgba(217, 154, 22, 0.1);
    background: rgba(255, 255, 255, 0.42);
}

.fi-fintech__icon {
    display: grid;
    place-items: center;
    width: 28px;
    height: 28px;
    flex-shrink: 0;
}

.fi-fintech__icon svg {
    width: 28px;
    height: 28px;
}

.fi-fintech__item.tone-gold .fi-fintech__icon { color: var(--fd-gold-deep, #a86a00); }
.fi-fintech__item.tone-teal .fi-fintech__icon { color: #3a8c8b; }
.fi-fintech__item.tone-violet .fi-fintech__icon { color: var(--fd-violet, #7566a8); }
.fi-fintech__item.tone-blue .fi-fintech__icon { color: var(--fd-info, #397a9c); }

.fi-fintech__text {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
    min-width: 0;
}

.fi-fintech__label {
    display: block;
    font-size: var(--fd-text-body-sm);
    font-weight: var(--fd-font-weight-subheading, 700);
    line-height: 1.25;
    color: var(--fd-text-primary, var(--fd-charcoal, #202020));
}

.fi-fintech__copy {
    font-size: var(--fd-text-caption);
    line-height: 1.4;
    color: var(--fd-muted-text, #6f6a62);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

@media (max-width: 767px) {
    .fi-fintech__item {
        padding: var(--fd-space-3, 12px);
    }
}

@media (max-width: 430px) {
    .fi-fintech__item {
        flex-direction: row;
        align-items: flex-start;
        gap: var(--fd-space-2, 8px);
    }

    .fi-fintech__label {
        font-size: var(--fd-text-body-sm);
    }
}

/* ── Community (Tone A) ── */
.fi-home-community {
    padding: 0;
}

.fi-home-community__layout {
    display: grid;
    grid-template-columns: var(--fd-grid-split-55-45);
    gap: var(--fd-space-6, 24px);
    align-items: start;
    width: 100%;
    min-width: 0;
}

.fi-home-community__head-copy {
    max-width: var(--fd-measure-lead, 48rem);
}

.fi-home-community__title {
    margin: 0;
    font-family: var(--fd-font-heading, 'Inter', system-ui, sans-serif);
    font-size: var(--fd-text-h2);
    font-weight: var(--fd-font-weight-heading, 800);
    letter-spacing: var(--fd-letter-tight, -0.02em);
    color: var(--fd-text-strong, var(--fd-black, #0e0e0e));
}

.fi-home-community__copy {
    display: flex;
    flex-direction: column;
    gap: 0;
    min-width: 0;
}

.fi-home-community__support {
    margin: 0;
    max-width: var(--fd-measure-prose, 40rem);
    font-size: var(--fd-text-body);
    line-height: var(--fd-line-height-body, 1.6);
    color: var(--fd-muted-text, #6f6a62);
}

.fi-home-community__proof {
    margin: var(--fd-space-3, 12px) 0 0;
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0.35rem 0.5rem;
    font-size: var(--fd-text-caption);
    color: var(--fd-muted-text, #6f6a62);
}

.fi-home-community__proof strong {
    font-size: var(--fd-text-h4);
    font-weight: var(--fd-font-weight-heading, 800);
    line-height: 1.1;
    color: var(--fd-text-strong, var(--fd-black, #0e0e0e));
}

.fi-home-community__signals {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--fd-space-3, 12px);
    width: 100%;
    min-width: 0;
}

.fi-home-community__signal {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: var(--fd-space-3, 12px);
    min-height: 0;
    min-width: 0;
    box-sizing: border-box;
    padding: var(--fd-space-3, 12px);
    border-radius: var(--fd-radius-sm, 10px);
    border: 1px solid var(--fd-soft-border, rgba(32, 32, 32, 0.08));
    background: rgba(255, 255, 255, 0.5);
}

.fi-home-community__signal-icon {
    display: grid;
    place-items: center;
    width: 28px;
    height: 28px;
    border-radius: var(--fd-radius-sm, 10px);
    background: rgba(245, 238, 220, 0.65);
    color: var(--fd-text-primary, var(--fd-charcoal, #202020));
    flex-shrink: 0;
}

.fi-home-community__signal-icon svg {
    width: 18px;
    height: 18px;
}

.fi-home-community__signal-label {
    font-size: var(--fd-text-body-sm);
    font-weight: var(--fd-font-weight-subheading, 700);
    line-height: 1.25;
    color: var(--fd-text-primary, var(--fd-charcoal, #202020));
}

.fi-home-community__cta {
    margin-top: 0;
    align-self: flex-start;
}

.fi-home-community__empty {
    margin: var(--fd-space-4, 16px) 0 0;
    font-size: var(--fd-text-body-sm);
    color: var(--fd-muted-text, #6f6a62);
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
}

.fi-home-community__visual {
    position: relative;
    width: min(100%, 420px);
    max-width: 100%;
    margin-inline: 0 0;
    margin-left: auto;
    aspect-ratio: var(--fd-slot-community-ratio, 2 / 3);
    overflow: visible;
    min-height: 0;
    display: grid;
    place-items: end center;
}

.fi-home-community__network {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
    opacity: 0.85;
}

.fi-home-community__network-ring {
    position: absolute;
    inset: 8% 12% 18%;
    border-radius: 50%;
    border: 1px dashed rgba(32, 32, 32, 0.08);
}

.fi-home-community__network-node {
    position: absolute;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: rgba(217, 154, 22, 0.35);
    box-shadow: 0 0 0 3px rgba(217, 154, 22, 0.08);
}

.fi-home-community__network-node--a { top: 14%; left: 22%; }
.fi-home-community__network-node--b { top: 22%; right: 16%; }
.fi-home-community__network-node--c { bottom: 34%; left: 14%; }
.fi-home-community__network-node--d { bottom: 28%; right: 20%; }

.fi-home-community__glow {
    position: absolute;
    inset: 10% 8% 5%;
    border-radius: 50%;
    background: var(--fd-gradient-gold-glow);
    pointer-events: none;
    z-index: 0;
}

.fi-home-community__mascot {
    position: relative;
    z-index: 1;
    width: 88%;
    height: auto;
    max-width: 100%;
    max-height: 92%;
    object-fit: contain;
    object-position: center bottom;
    filter: var(--fd-art-shadow-filter);
}

@media (max-width: 1023px) {
    .fi-home-community__layout,
    .fi-home-corp__layout {
        grid-template-columns: 1fr;
    }

    .fi-home-community__visual.fd-art-slot--community {
        order: 2;
        width: min(100%, var(--fd-slot-community-max, 280px));
        max-width: min(100%, var(--fd-slot-community-max, 280px));
        margin-inline: auto;
    }

    .fi-home-corp__visual.fd-art-slot--corp {
        order: 2;
        width: min(100%, var(--fd-slot-corp-max, 360px));
        max-width: min(100%, var(--fd-slot-corp-max, 360px));
        margin-inline: auto;
    }

    .fi-home-community__signals {
        gap: var(--fd-space-2, 8px);
    }

    .fi-home-community__copy,
    .fi-home-corp__copy {
        order: 1;
    }

    .fi-home-corp__layout {
        align-items: start;
    }
}

@media (max-width: 767px) {
    .fi-home-community__signal {
        padding: var(--fd-space-3, 12px) var(--fd-space-2, 8px);
    }
}

@media (max-width: 430px) {
    .fi-home-community__signals {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: var(--fd-space-2, 8px);
    }

    .fi-home-community__signal {
        flex-direction: column;
        align-items: flex-start;
        gap: var(--fd-space-2, 8px);
        min-height: 0;
        padding: var(--fd-space-2, 8px);
    }

    .fi-home-community__signal-label {
        font-size: var(--fd-text-body-sm);
    }

    .fi-home-community__proof {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.15rem;
    }
}

/* ── Corporate (Tone B) ── */
.fi-home-corp {
    padding: 0;
}

.fi-home-corp__layout {
    display: grid;
    grid-template-columns: var(--fd-grid-split-55-45);
    gap: var(--fd-space-6, 24px);
    align-items: start;
    width: 100%;
    min-width: 0;
}

.fi-home-corp__copy {
    display: flex;
    flex-direction: column;
    gap: 0;
    min-width: 0;
}

.fi-home-corp__head-copy {
    max-width: var(--fd-measure-lead, 48rem);
}

.fi-home-corp__title {
    margin: 0;
    font-family: var(--fd-font-heading, 'Inter', system-ui, sans-serif);
    font-size: var(--fd-text-h2);
    font-weight: var(--fd-font-weight-heading, 800);
    letter-spacing: var(--fd-letter-tight, -0.02em);
    color: var(--fd-text-strong, var(--fd-black, #0e0e0e));
}

.fi-home-corp__support {
    margin: 0;
    max-width: var(--fd-measure-prose, 40rem);
    font-size: var(--fd-text-body);
    line-height: var(--fd-line-height-body, 1.6);
    color: var(--fd-muted-text, #6f6a62);
}

.fi-home-corp__themes {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: var(--fd-space-2, 8px);
    width: 100%;
    min-width: 0;
}

.fi-home-corp__theme {
    display: inline-flex;
    align-items: center;
    min-height: 0;
    padding: 0.35rem 0.75rem;
    border-radius: var(--fd-radius-sm, 10px);
    border: 1px solid rgba(217, 154, 22, 0.14);
    background: rgba(255, 255, 255, 0.62);
    font-size: var(--fd-text-body-sm);
    font-weight: var(--fd-font-weight-semibold, 600);
    line-height: 1.25;
    color: var(--fd-text-primary, var(--fd-charcoal, #202020));
}

.fi-home-corp__cta {
    margin-top: 0;
    align-self: flex-start;
}

.fi-home-corp__visual {
    position: relative;
    width: min(100%, 440px);
    max-width: 100%;
    margin-inline: 0 0;
    margin-left: auto;
    aspect-ratio: var(--fd-slot-corp-ratio, 2 / 3);
    overflow: hidden;
    min-height: 0;
    display: grid;
    place-items: end center;
}

.fi-home-corp__surface {
    position: absolute;
    inset: 8% 6% 0;
    border-radius: var(--fd-radius-md, 16px) var(--fd-radius-md, 16px) 0 0;
    background:
        linear-gradient(165deg, rgba(255, 255, 255, 0.55) 0%, rgba(245, 238, 220, 0.35) 55%, transparent 100%);
    pointer-events: none;
    z-index: 0;
}

.fi-home-corp__fade {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(ellipse 70% 55% at 55% 35%, rgba(217, 154, 22, 0.08) 0%, transparent 65%),
        linear-gradient(90deg, var(--fd-bg-secondary, #f5eedc) 0%, transparent 38%),
        linear-gradient(180deg, transparent 55%, var(--fd-bg-secondary, #f5eedc) 100%);
    pointer-events: none;
    z-index: 2;
}

.fi-home-corp__img {
    position: relative;
    z-index: 1;
    width: 88%;
    height: auto;
    max-width: 100%;
    max-height: 94%;
    object-fit: contain;
    object-position: center bottom;
    filter: var(--fd-art-shadow-filter);
}

@media (max-width: 767px) {
    .fi-home-corp__theme {
        min-height: 0;
        padding: 0.3rem 0.65rem;
    }
}

@media (max-width: 639px) {
    .fi-home-community__signals {
        grid-template-columns: 1fr;
    }

    .fi-home-community__cta,
    .fi-home-corp__cta {
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 430px) {
    .fi-home-corp__themes {
        gap: 6px;
    }

    .fi-home-corp__theme {
        font-size: var(--fd-text-body-sm);
        min-height: 0;
        padding: 0.3rem 0.65rem;
    }
}
