/* /Components/Admin/Layout/AdminLayout.razor.rz.scp.css */
.admin-shell[b-cqrvdwv61c]{--admin-bg:var(--color-background-dark);--admin-panel:var(--color-background-secondary);--admin-panel-raised:#160a2d;--admin-line:var(--border-subtle);--admin-text:var(--color-text);--admin-muted:var(--color-text-muted);--admin-accent:var(--color-primary-light);min-height:100vh;background:radial-gradient(ellipse at 80% -20%,var(--glow-primary-medium),transparent 48%),var(--admin-bg);color:var(--admin-text);font-family:var(--font-family-base);display:flex}.admin-sidebar[b-cqrvdwv61c]{position:fixed;inset:0 auto 0 0;z-index:30;width:258px;background:color-mix(in srgb,var(--color-background-secondary) 92%,black);border-right:1px solid var(--admin-line);display:flex;flex-direction:column;padding:25px 16px 18px}.admin-brand[b-cqrvdwv61c]{display:flex;gap:12px;align-items:center;padding:0 9px 28px;color:var(--admin-text);text-decoration:none}.admin-brand-mark[b-cqrvdwv61c]{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,var(--color-primary-light),var(--color-primary));color:var(--color-text);font-weight:900;font-size:21px;box-shadow:0 0 24px var(--glow-primary-medium)}.admin-brand strong[b-cqrvdwv61c]{display:block;font-size:16px;letter-spacing:.02em}.admin-brand small[b-cqrvdwv61c]{display:block;margin-top:3px;color:var(--admin-muted);font-size:9px;letter-spacing:.13em}.admin-nav[b-cqrvdwv61c]{display:grid;gap:5px}.admin-nav-label[b-cqrvdwv61c]{padding:10px 12px 7px;color:var(--color-text-subtle);font-size:10px;letter-spacing:.13em;font-weight:750}.admin-nav a[b-cqrvdwv61c],.admin-sidebar-footer>a[b-cqrvdwv61c],.admin-sidebar-footer form button[b-cqrvdwv61c]{display:flex;align-items:center;gap:12px;padding:11px 12px;border:0;border-radius:9px;background:transparent;color:var(--color-text-secondary);text-decoration:none;font-size:13px;font-weight:550;transition:background .16s ease,color .16s ease}.admin-nav a:hover[b-cqrvdwv61c],.admin-sidebar-footer>a:hover[b-cqrvdwv61c],.admin-sidebar-footer form button:hover[b-cqrvdwv61c]{background:#1b1035;color:var(--color-text)}.admin-nav a.active[b-cqrvdwv61c]{background:#211341;color:var(--color-text);box-shadow:inset 2px 0 var(--color-primary-light),0 0 18px var(--glow-primary-subtle)}.nav-icon[b-cqrvdwv61c]{width:19px;text-align:center;font-size:16px;color:var(--color-text-muted)}.admin-nav a.active .nav-icon[b-cqrvdwv61c]{color:var(--color-primary-light)}.admin-sidebar-footer[b-cqrvdwv61c]{margin-top:auto;border-top:1px solid var(--admin-line);padding-top:14px}.admin-sidebar-footer form[b-cqrvdwv61c]{margin:0}.admin-sidebar-footer form button[b-cqrvdwv61c]{width:100%;cursor:pointer;text-align:left}.admin-main[b-cqrvdwv61c]{min-width:0;width:calc(100% - 258px);margin-left:258px}.admin-topbar[b-cqrvdwv61c]{height:66px;border-bottom:1px solid var(--admin-line);display:flex;align-items:center;gap:14px;padding:0 clamp(20px,4vw,54px);color:var(--admin-muted);font-size:12px}.admin-topbar strong[b-cqrvdwv61c]{color:var(--color-text-secondary);font-weight:600}.topbar-divider[b-cqrvdwv61c]{padding:0 8px;color:var(--color-text-subtle)}.topbar-site-link[b-cqrvdwv61c]{margin-left:auto;color:var(--color-text-secondary);text-decoration:none}.topbar-site-link:hover[b-cqrvdwv61c]{color:var(--admin-accent)}.topbar-site-link span[b-cqrvdwv61c]{padding-left:5px}.admin-content[b-cqrvdwv61c]{width:min(1280px,100%);margin:0 auto;padding:38px clamp(20px,4vw,54px) 64px}.admin-menu-toggle[b-cqrvdwv61c]{display:none;border:0;background:transparent;color:var(--admin-text);font-size:20px}.admin-scrim[b-cqrvdwv61c]{display:none}
@media(max-width:900px){.admin-sidebar[b-cqrvdwv61c]{transform:translateX(-100%);transition:transform .2s ease}.admin-sidebar.is-open[b-cqrvdwv61c]{transform:translateX(0)}.admin-main[b-cqrvdwv61c]{width:100%;margin-left:0}.admin-menu-toggle[b-cqrvdwv61c]{display:block}.admin-scrim[b-cqrvdwv61c]{display:block;position:fixed;inset:0;z-index:20;border:0;background:rgba(9,3,21,.82)}}

@media(max-width:600px){.admin-topbar[b-cqrvdwv61c]{gap:9px;padding-inline:14px}.admin-content[b-cqrvdwv61c]{padding:25px 14px 48px}.admin-topbar>span[b-cqrvdwv61c]{min-width:0;overflow-wrap:anywhere}.topbar-site-link[b-cqrvdwv61c]{white-space:nowrap}}
@media(max-width:900px){.admin-nav a[b-cqrvdwv61c],.admin-sidebar-footer>a[b-cqrvdwv61c],.admin-sidebar-footer form button[b-cqrvdwv61c]{min-height:44px}}
@media(max-height:500px){.admin-sidebar[b-cqrvdwv61c]{overflow-y:auto}.admin-sidebar-footer[b-cqrvdwv61c]{margin-top:16px}.admin-topbar[b-cqrvdwv61c]{height:52px}.admin-content[b-cqrvdwv61c]{padding-block:18px 40px}}
/* /Components/Admin/Layout/AdminLoginLayout.razor.rz.scp.css */
.login-shell[b-bcyhf2k8zm]{min-height:100vh;padding:28px;background:var(--color-background-dark);color:var(--color-text);font-family:var(--font-family-base)}.login-brand[b-bcyhf2k8zm]{display:inline-flex;align-items:center;gap:10px;color:var(--color-text);text-decoration:none;font-weight:700}.login-brand span[b-bcyhf2k8zm]{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--color-primary-light);color:var(--color-text);font-size:19px}

@media(max-width:600px){.login-shell[b-bcyhf2k8zm]{padding:18px 14px}.login-card[b-bcyhf2k8zm]{margin-top:8vh;padding:24px 18px}}
@media(max-height:500px){.login-shell[b-bcyhf2k8zm]{padding:14px}.login-card[b-bcyhf2k8zm]{margin-top:3vh;padding:20px 18px}}
/* /Components/Admin/Pages/Dashboard.razor.rz.scp.css */
.dashboard-grid[b-xpu3ssmmb1]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.summary-card[b-xpu3ssmmb1]{position:relative;display:flex;align-items:center;gap:13px;min-height:112px;padding:19px;border:1px solid var(--border-subtle);border-radius:13px;background:var(--color-background-secondary)}.summary-icon[b-xpu3ssmmb1]{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;background:#211341;color:var(--color-primary-light);font-size:19px}.summary-card div span[b-xpu3ssmmb1]{display:block;color:var(--color-text-muted);font-size:11px}.summary-card div strong[b-xpu3ssmmb1]{display:block;margin-top:7px;color:var(--color-text);font-size:25px;line-height:1}.summary-card>a[b-xpu3ssmmb1]{position:absolute;right:16px;top:15px;color:var(--color-text-subtle);text-decoration:none}.welcome-panel[b-xpu3ssmmb1]{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:22px;padding:27px;border:1px solid var(--border-default);border-radius:14px;background:radial-gradient(ellipse at 94% 8%,var(--glow-primary-medium) 0,transparent 42%),var(--color-background-secondary)}.welcome-kicker[b-xpu3ssmmb1]{color:var(--color-primary-light);font-size:9px;font-weight:750;letter-spacing:.15em}.welcome-panel h2[b-xpu3ssmmb1]{margin:9px 0 6px;color:var(--color-text);font-size:21px}.welcome-panel p[b-xpu3ssmmb1]{max-width:530px;margin:0;color:var(--color-text-muted);font-size:13px;line-height:1.65}.primary-link[b-xpu3ssmmb1],.admin-primary-button[b-xpu3ssmmb1]{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:40px;padding:0 15px;border:1px solid var(--color-primary-light);border-radius:9px;background:var(--color-primary);color:var(--color-text);text-decoration:none;font-size:12px;font-weight:750;cursor:pointer;transition:background var(--transition-fast),box-shadow var(--transition-fast)}.primary-link:hover[b-xpu3ssmmb1],.admin-primary-button:hover[b-xpu3ssmmb1]{background:var(--color-primary-light);color:var(--color-text);box-shadow:0 0 20px var(--glow-primary-medium)}@media(max-width:1050px){.dashboard-grid[b-xpu3ssmmb1]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.dashboard-grid[b-xpu3ssmmb1]{grid-template-columns:1fr}.welcome-panel[b-xpu3ssmmb1]{align-items:flex-start;flex-direction:column}.primary-link[b-xpu3ssmmb1]{width:100%}}
/* /Components/Admin/Shared/AdminAlert.razor.rz.scp.css */
.admin-alert[b-esskrmepfh]{display:flex;align-items:center;gap:11px;margin:0 0 18px;padding:12px 14px;border:1px solid;border-radius:10px;font-size:13px}.admin-alert>span[b-esskrmepfh]{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;font-weight:800}.admin-alert.success[b-esskrmepfh]{border-color:var(--color-primary-light);background:#211341;color:var(--color-text-secondary)}.admin-alert.success>span[b-esskrmepfh]{background:var(--color-primary);color:var(--color-text)}.admin-alert.error[b-esskrmepfh]{border-color:#713a41;background:#2b171d;color:#ffc0c0}.admin-alert.error>span[b-esskrmepfh]{background:#64303a;color:#ffd7d4}.admin-alert button[b-esskrmepfh]{margin-left:auto;border:0;background:none;color:inherit;font-size:20px;cursor:pointer}
/* /Components/Admin/Shared/AdminFileUpload.razor.rz.scp.css */
/* /Components/Admin/Shared/AdminPageHeader.razor.rz.scp.css */
.admin-page-heading[b-dhcqtrzewl]{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:26px}.admin-eyebrow[b-dhcqtrzewl]{margin-bottom:9px;color:var(--color-primary-light);font-size:10px;letter-spacing:.14em;font-weight:750}.admin-page-heading h1[b-dhcqtrzewl]{margin:0;color:var(--color-text);font-size:clamp(25px,3vw,32px);font-weight:720;letter-spacing:-.035em}.admin-page-heading p[b-dhcqtrzewl]{margin:8px 0 0;color:var(--color-text-muted);font-size:13px;line-height:1.6}.heading-actions[b-dhcqtrzewl]{flex:none}@media(max-width:640px){.admin-page-heading[b-dhcqtrzewl]{align-items:flex-start;flex-direction:column}.heading-actions[b-dhcqtrzewl]{width:100%}}
/* /Components/Admin/Shared/AdminTechnologyPicker.razor.rz.scp.css */
.technology-picker[b-e2xmm31nvm]{display:grid;gap:12px}.technology-search-label[b-e2xmm31nvm]{display:grid;gap:7px;color:var(--color-text-secondary);font-size:11px;font-weight:650}.technology-search-label input[b-e2xmm31nvm]{width:100%;min-width:0;height:40px;padding:10px 12px;border:1px solid var(--border-default);border-radius:8px;outline:0;background:var(--color-background-dark);color:var(--color-text);font:inherit;font-size:12px}.technology-search-label input:focus[b-e2xmm31nvm]{border-color:var(--color-primary-light);box-shadow:0 0 0 3px var(--glow-primary-medium)}.technology-picker-selected[b-e2xmm31nvm]{display:flex;flex-wrap:wrap;gap:7px}.technology-picker-chip[b-e2xmm31nvm]{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border:1px solid var(--border-default);border-radius:999px;background:#211341;color:var(--color-text-secondary);font-size:11px}.technology-picker-chip img[b-e2xmm31nvm],.technology-picker-option img[b-e2xmm31nvm]{width:20px;height:20px;object-fit:contain}.technology-picker-chip button[b-e2xmm31nvm]{border:0;background:transparent;color:var(--color-text-muted);font-size:16px;line-height:1;cursor:pointer}.technology-picker-list[b-e2xmm31nvm]{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:6px;max-height:230px;overflow:auto;padding:8px;border:1px solid var(--border-subtle);border-radius:9px;background:var(--color-background-dark)}.technology-picker-option[b-e2xmm31nvm]{display:flex;align-items:center;gap:9px;min-width:0;padding:8px;border-radius:7px;color:var(--color-text-secondary);font-size:12px;cursor:pointer}.technology-picker-option:hover[b-e2xmm31nvm]{background:#1b1035}.technology-picker-option input[b-e2xmm31nvm]{accent-color:var(--color-primary-light)}.technology-picker-option span[b-e2xmm31nvm]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.technology-picker-option small[b-e2xmm31nvm]{margin-left:auto;color:var(--color-text-subtle);font-size:10px}.technology-picker-empty[b-e2xmm31nvm]{grid-column:1/-1;margin:5px;color:var(--color-text-muted);font-size:12px}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
.page[b-gk0xuebvlm] {
    position: relative;
    display: flex;
    flex-direction: column;
}

main[b-gk0xuebvlm] {
    flex: 1;
}

.sidebar[b-gk0xuebvlm] {
    background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%);
}

.top-row[b-gk0xuebvlm] {
    background-color: #f7f7f7;
    border-bottom: 1px solid #d6d5d5;
    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: center;
}

    .top-row[b-gk0xuebvlm]  a, .top-row[b-gk0xuebvlm]  .btn-link {
        white-space: nowrap;
        margin-left: 1.5rem;
        text-decoration: none;
    }

    .top-row[b-gk0xuebvlm]  a:hover, .top-row[b-gk0xuebvlm]  .btn-link:hover {
        text-decoration: underline;
    }

    .top-row[b-gk0xuebvlm]  a:first-child {
        overflow: hidden;
        text-overflow: ellipsis;
    }

@media (max-width: 640.98px) {
    .top-row[b-gk0xuebvlm] {
        justify-content: space-between;
    }

    .top-row[b-gk0xuebvlm]  a, .top-row[b-gk0xuebvlm]  .btn-link {
        margin-left: 0;
    }
}

@media (min-width: 641px) {
    .page[b-gk0xuebvlm] {
        flex-direction: row;
    }

    .sidebar[b-gk0xuebvlm] {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    .top-row[b-gk0xuebvlm] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .top-row.auth[b-gk0xuebvlm]  a:first-child {
        flex: 1;
        text-align: right;
        width: 0;
    }

    .top-row[b-gk0xuebvlm], article[b-gk0xuebvlm] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}

#blazor-error-ui[b-gk0xuebvlm] {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-gk0xuebvlm] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* /Components/Layout/Navbar.razor.rz.scp.css */
.portfolio-navbar[b-4svlxg6yiy] {
    position: sticky;

    top: 0;
    z-index: 100;

    width: 100%;
    min-height: var(--navbar-height);

    display: flex;
    align-items: center;
    justify-content: center;

    padding-inline: var(--page-padding-navbar);

    background:
            linear-gradient(
                    180deg,
                    rgba(12, 4, 30, 0.97),
                    rgba(12, 4, 30, 0.82),
                    rgba(12, 4, 30, 0)
            );

    backdrop-filter: blur(8px);
}

/* =========================================================
   BRAND
========================================================= */

.navbar-brand[b-4svlxg6yiy] {
    position: absolute;

    left: var(--page-padding-navbar);
    top: 50%;

    width: 3rem;
    height: 3rem;

    transform: translateY(-50%);

    display: flex;
    align-items: center;
    justify-content: center;
}

.navbar-brand img[b-4svlxg6yiy] {
    width: 100%;
    height: 100%;

    object-fit: contain;
}

/* =========================================================
   NAVIGATION
========================================================= */

.navbar-navigation[b-4svlxg6yiy] {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: clamp(
            0.75rem,
            1.5vw,
            2rem
    );
}

.navbar-navigation a[b-4svlxg6yiy] {
    position: relative;

    padding: 0.5rem 0.25rem;

    color: var(--color-text-muted);

    font-size: clamp(
            0.75rem,
            0.8vw,
            0.9rem
    );

    white-space: nowrap;

    transition:
            color var(--transition-fast);
}

.navbar-navigation a[b-4svlxg6yiy]::after {
    content: "";

    position: absolute;

    left: 50%;
    bottom: 0;

    width: 0;
    height: 1px;

    background: var(--color-primary-light);

    transform: translateX(-50%);

    transition:
            width var(--transition-normal);
}

.navbar-navigation a:hover[b-4svlxg6yiy] {
    color: var(--color-text-secondary);
}

.navbar-navigation a:hover[b-4svlxg6yiy]::after {
    width: 100%;
}

/* =========================================================
   LANGUAGE
========================================================= */

.navbar-language[b-4svlxg6yiy] {
    position: absolute;

    right: var(--page-padding-navbar);
    top: 50%;

    width: 2rem;
    height: 2rem;

    transform: translateY(-50%);

    display: grid;
    place-items: center;

    border: 1px solid var(--color-primary-light);
    border-radius: 50%;

    color: var(--color-text-muted);

    font-size: 0.7rem;

    cursor: pointer;

    transition:
            color var(--transition-fast),
            background var(--transition-normal);
}

.navbar-language:hover[b-4svlxg6yiy] {
    color: var(--color-text);

    background: rgba(93, 43, 211, 0.2);
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 800px) {

    .portfolio-navbar[b-4svlxg6yiy] {
        justify-content: flex-start;

        padding-left: 5rem;
    }

    .navbar-navigation[b-4svlxg6yiy] {
        flex: 1;
        min-width: 0;
        width: auto;
        margin-right: 4rem;
        overflow-x: auto;

        justify-content: flex-start;

        scrollbar-width: none;
    }

    .navbar-navigation[b-4svlxg6yiy]::-webkit-scrollbar {
        display: none;
    }

    .navbar-navigation a[b-4svlxg6yiy] {
        font-size: 0.7rem;
        min-height: 2.75rem;
        display: inline-flex;
        align-items: center;
    }
}

@media (max-width: 450px) and (orientation: portrait) {
    .portfolio-navbar[b-4svlxg6yiy] {
        padding-left: 4.5rem;
    }

    .navbar-brand[b-4svlxg6yiy] {
        width: 3.75rem;
        height: 3.75rem;
    }

    .navbar-language[b-4svlxg6yiy] {
        width: 2.75rem;
        height: 2.75rem;
    }

    .navbar-navigation[b-4svlxg6yiy] {
        margin-right: 3.5rem;
        gap: 0.65rem;
    }
}

@media (max-width: 900px) and (max-height: 450px) {
    .portfolio-navbar[b-4svlxg6yiy] {
        min-height: 3.5rem;
        justify-content: flex-start;
        padding-left: 4.25rem;
    }

    .navbar-brand[b-4svlxg6yiy] {
        width: 3.5rem;
        height: 3.5rem;
    }

    .navbar-language[b-4svlxg6yiy] {
        width: 2.5rem;
        height: 2.5rem;
    }

    .navbar-navigation[b-4svlxg6yiy] {
        flex: 1;
        min-width: 0;
        width: auto;
        margin-right: 3.25rem;
        overflow-x: auto;
        justify-content: flex-start;
        scrollbar-width: none;
    }

    .navbar-navigation[b-4svlxg6yiy]::-webkit-scrollbar {
        display: none;
    }

    .navbar-navigation a[b-4svlxg6yiy] {
        min-height: 2.5rem;
        font-size: 0.68rem;
        display: inline-flex;
        align-items: center;
    }
}
/* /Components/Pages/Home.razor.rz.scp.css */
.portfolio-page[b-b5wf3qkphw] {
    position: relative;

    min-height: 100vh;
}

.portfolio-main[b-b5wf3qkphw] {
    position: relative;

    width: 100%;
}

.placeholder-section[b-b5wf3qkphw] {
    display: flex;
    align-items: center;

    min-height: 100svh;
}

.placeholder-section h2[b-b5wf3qkphw] {
    font-size: clamp(
            2rem,
            4vw,
            4rem
    );

    line-height: 1;
}

.placeholder-section p[b-b5wf3qkphw] {
    margin-top: 1rem;

    color: var(--color-text-muted);

    font-size: clamp(
            1rem,
            1.3vw,
            1.25rem
    );
}
/* /Components/Sections/About.razor.rz.scp.css */
.about-section[b-g9k4sxql6r] {
    position: relative;

    display: flex;
    align-items: flex-start;
    min-height: 100svh;

    overflow: hidden;

    background:
            radial-gradient(
                    circle at 75% 45%,
                    rgba(65, 25, 130, 0.12),
                    transparent 35%
            );
}

.about-container[b-g9k4sxql6r] {
    position: relative;

    width: 100%;

    display: flex;
    flex-direction: column;

    gap: clamp(
            2rem,
            5vh,
            3rem
    );
}

.about-header[b-g9k4sxql6r] {
    width: min(
            100%,
            50rem
    );
}

.about-title[b-g9k4sxql6r] {
    font-size:
            clamp(2.75rem, 4vw, 4rem);

    line-height: 1;

    font-weight: 700;

    letter-spacing: -0.04em;
}

.about-description[b-g9k4sxql6r] {
    max-width: 52rem;
    color: var(--color-text-secondary);
    line-height: 1.7;
}

.about-content[b-g9k4sxql6r] {
    display: grid;

    grid-template-columns:
        minmax(0, 1.55fr)
        minmax(20rem, 0.8fr);

    gap:
            clamp(3rem, 7vw, 8rem);

    flex: 1;
}

/* ========================================
   TYPOGRAPHIC TEXTURE
   ======================================== */

.about-role[b-g9k4sxql6r] {
    min-width: 0;

    max-width: 58rem;

    align-self: flex-start;

    overflow: scroll;

    color:
            rgba(225, 220, 229, 0.68);

    font-size:
            clamp(1.1rem, 1.55vw, 1.65rem);

    line-height: 1.3;

    font-weight: 400;

    letter-spacing: -0.025em;

    text-align: left;
}

.about-role span[b-g9k4sxql6r] {
    display: inline;

    white-space: nowrap;

    margin-right: 0.2em;
}

.about-role span:nth-child(4n)[b-g9k4sxql6r] {
    margin-right: 0.8em;
}

/* ========================================
   RIGHT SIDE
   ======================================== */

.about-side[b-g9k4sxql6r] {
    display: flex;
    flex-direction: column;

    align-items: center;

    padding-top:
            clamp(1rem, 4vh, 4rem);
}

.about-image[b-g9k4sxql6r] {
    width:
            clamp(9rem, 13vw, 12rem);

    aspect-ratio: 1;

    overflow: hidden;

    border-radius: 1rem;

    background: #121212;
}

.about-image img[b-g9k4sxql6r] {
    width: 100%;
    height: 100%;

    object-fit: cover;
}

/* ========================================
   LANGUAGES
   ======================================== */

.about-languages[b-g9k4sxql6r] {
    width:
            min(100%, 24rem);

    margin-top:
            clamp(6rem, 14vh, 10rem);
}

.about-languages h3[b-g9k4sxql6r] {
    margin-bottom: 1.5rem;

    color: var(--color-text);

    font-size:
            clamp(1.5rem, 2vw, 2rem);

    line-height: 1;

    text-align: center;
}

.language-item[b-g9k4sxql6r] {
    display: grid;

    grid-template-columns:
        7rem
        minmax(0, 1fr);

    align-items: center;

    gap: 1rem;

    margin-top: 1rem;
}

.language-name[b-g9k4sxql6r] {
    color: var(--color-text);

    font-size:
            clamp(0.9rem, 1.1vw, 1.1rem);

    white-space: nowrap;
}

.language-bar[b-g9k4sxql6r] {
    position: relative;

    width: 100%;
    height: 4px;

    background:
            rgba(248, 247, 250, 0.9);
}

.language-progress[b-g9k4sxql6r] {
    position: absolute;

    top: 0;
    left: 0;

    height: 100%;

    background:
            var(--color-primary-light);
}


/* ========================================
   RESPONSIVE
   ======================================== */

@media (max-width: 850px) {

    .about-section[b-g9k4sxql6r] {
        align-items: flex-start;
    }

    .about-container[b-g9k4sxql6r] {
        min-height: auto;
        padding-bottom: 5rem;
    }

    .about-content[b-g9k4sxql6r] {
        grid-template-columns: 1fr;

        gap: 3rem;
    }

    .about-role[b-g9k4sxql6r] {
        max-height: 25rem;
    }

    .about-side[b-g9k4sxql6r] {
        padding-top: 0;
    }

    .about-languages[b-g9k4sxql6r] {
        margin-top: 3rem;
    }

}

@media (max-width: 500px) {

    .about-role[b-g9k4sxql6r] {
        font-size: 1rem;
        line-height: 1.35;
    }

    .about-image[b-g9k4sxql6r] {
        width: 10rem;
    }

    .about-languages[b-g9k4sxql6r] {
        width: 100%;
    }

    .language-item[b-g9k4sxql6r] {
        grid-template-columns:
            6rem
            minmax(0, 1fr);

        gap: 0.75rem;
    }

}
/* /Components/Sections/Contact.razor.rz.scp.css */
.contact-section[b-hs3qi1mkjf] {
    position: relative;

    width: 100%;
    height: 100svh;
    min-height: 100svh;

    padding-block: 0;

    overflow: hidden;

    display: flex;
    align-items: stretch;

    scroll-snap-align: start;
    scroll-snap-stop: normal;

    background:
            radial-gradient(
                    circle at 50% 50%,
                    rgba(65, 25, 130, 0.08),
                    transparent 45%
            );
}

.contact-container[b-hs3qi1mkjf] {
    position: relative;

    width: 100%;
    height: 100%;

    min-height: 0;

    display: flex;
    flex-direction: column;
}

/* -------------------------------------------------
   CONTEÚDO CENTRAL
------------------------------------------------- */

.contact-content[b-hs3qi1mkjf] {
    position: absolute;

    top: 50%;
    left: 50%;

    transform: translate(-50%, -50%);

    width: min(90%, 60rem);

    display: flex;
    flex-direction: column;
    align-items: center;

    text-align: center;
}

.contact-title[b-hs3qi1mkjf] {
    color: var(--color-text);

    font-size: clamp(2.75rem, 4vw, 4rem);

    line-height: 1;

    font-weight: 700;

    letter-spacing: -0.04em;
}

.contact-description[b-hs3qi1mkjf] {
    margin-top: 0.75rem;

    color: var(--color-text);

    font-size: clamp(1rem, 1.45vw, 1.35rem);

    line-height: 1.4;
}

/* -------------------------------------------------
   EMAIL
------------------------------------------------- */

.contact-email-wrapper[b-hs3qi1mkjf] {
    display: flex;
    align-items: center;

    margin-top: 0.85rem;
}

.contact-email[b-hs3qi1mkjf] {
    color: var(--color-text);

    font-size: clamp(0.95rem, 1.15vw, 1.1rem);

    text-decoration: underline;
    text-underline-offset: 0.2rem;

    transition:
            color var(--transition-normal);
}

.contact-email:hover[b-hs3qi1mkjf] {
    color: var(--color-primary-light);
}

.contact-copy-button[b-hs3qi1mkjf] {
    width: 2rem;
    height: 2rem;

    margin-left: 0.6rem;

    display: grid;
    place-items: center;

    color: var(--color-text);

    cursor: pointer;

    transition:
            color var(--transition-normal),
            transform var(--transition-normal);
}

.contact-copy-button:hover[b-hs3qi1mkjf] {
    color: var(--color-primary-light);

    transform: translateY(-2px);
}

.contact-copy-button svg[b-hs3qi1mkjf] {
    width: 1.7rem;
    height: 1.7rem;

    fill: none;
    stroke: currentColor;
    stroke-width: 1.5;
}

/* -------------------------------------------------
   REDES SOCIAIS CENTRAIS
------------------------------------------------- */

.contact-socials[b-hs3qi1mkjf] {
    display: flex;
    align-items: center;

    gap: 0.8rem;

    margin-top: 0.9rem;
}

.contact-social[b-hs3qi1mkjf] {
    width: 2rem;
    height: 2rem;

    display: grid;
    place-items: center;

    color: var(--color-text);

    transition:
            transform var(--transition-normal),
            color var(--transition-normal);
}

.contact-social:hover[b-hs3qi1mkjf] {
    color: var(--color-primary-light);

    transform: translateY(-2px);
}

.contact-social svg[b-hs3qi1mkjf] {
    width: 1.8rem;
    height: 1.8rem;

    fill: currentColor;
}

/* -------------------------------------------------
   RODAPÉ
------------------------------------------------- */

.contact-footer[b-hs3qi1mkjf] {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
}

.contact-footer-line[b-hs3qi1mkjf] {
    width: 100%;
    height: 1px;

    background: rgba(248, 247, 250, 0.35);
}

.contact-footer-content[b-hs3qi1mkjf] {
    position: relative;

    min-height: 5rem;

    display: flex;
    align-items: center;
    justify-content: center;
}

.contact-footer-content p[b-hs3qi1mkjf] {
    color: var(--color-text);

    font-size: 0.8rem;

    text-align: center;
}

.contact-footer-socials[b-hs3qi1mkjf] {
    position: absolute;

    left: var(--page-padding-inline);

    display: flex;
    align-items: center;

    gap: 0.7rem;
}

.contact-footer-social[b-hs3qi1mkjf] {
    width: 2rem;
    height: 2rem;

    display: grid;
    place-items: center;

    color: var(--color-text);

    transition:
            color var(--transition-normal),
            transform var(--transition-normal);
}

.contact-footer-social:hover[b-hs3qi1mkjf] {
    color: var(--color-primary-light);

    transform: translateY(-2px);
}

.contact-footer-social svg[b-hs3qi1mkjf] {
    width: 1.8rem;
    height: 1.8rem;

    fill: currentColor;
}

/* -------------------------------------------------
   RESPONSIVO
------------------------------------------------- */

@media (max-width: 600px) {

    .contact-content[b-hs3qi1mkjf] {
        width: calc(100% - 2rem);
    }

    .contact-description[b-hs3qi1mkjf] {
        max-width: 24rem;
    }

    .contact-email-wrapper[b-hs3qi1mkjf] {
        max-width: 100%;
    }

    .contact-email[b-hs3qi1mkjf] {
        overflow-wrap: anywhere;
    }

    .contact-footer-content[b-hs3qi1mkjf] {
        min-height: 6rem;

        justify-content: flex-end;

        padding-inline: 1rem;
        padding-bottom: 1rem;
    }

    .contact-footer-socials[b-hs3qi1mkjf] {
        left: 1rem;
        top: 50%;

        transform: translateY(-50%);
    }

    .contact-footer-content p[b-hs3qi1mkjf] {
        max-width: 15rem;

        font-size: 0.65rem;
    }
}

@media (max-width: 900px) and (max-height: 450px) {
    .contact-section[b-hs3qi1mkjf] {
        height: auto;
        min-height: 100svh;
        overflow: visible;
    }

    .contact-container[b-hs3qi1mkjf] {
        height: auto;
        min-height: 100svh;
        padding-block: 1rem 5.5rem;
    }

    .contact-content[b-hs3qi1mkjf] {
        position: relative;
        top: auto;
        left: auto;
        width: min(90%, 60rem);
        margin: auto;
        padding-block: 1rem;
        transform: none;
    }

    .contact-footer[b-hs3qi1mkjf] {
        position: absolute;
        bottom: 0;
    }
}
/* /Components/Sections/Education.razor.rz.scp.css */
.education-section[b-7j9vlydzrk] {

    display: flex;
    align-items: flex-start;
    min-height: 100svh;

    background:
            radial-gradient(
                    circle at 50% 100%,
                    rgba(65, 25, 130, 0.14),
                    transparent 45%
            );
}

.education-container[b-7j9vlydzrk] {
    width: 100%;

    display: flex;
    flex-direction: column;
    
    gap: clamp(
            2rem,
            5vh,
            3rem
    );
}

/* -------------------------------- */
/* Header */
/* -------------------------------- */

.education-header[b-7j9vlydzrk] {
    width: min(
            100%,
            50rem
    );
    
    padding-top: 3vh;
}

.education-title[b-7j9vlydzrk] {
    font-size: clamp(2.75rem, 4vw, 4rem);

    line-height: 1;

    font-weight: 700;

    letter-spacing: -0.04em;
}

.education-description[b-7j9vlydzrk] {
    color: var(--color-text-muted);

    font-size: clamp(1rem, 1.2vw, 1.2rem);

    line-height: 1.4;
}

/* -------------------------------- */
/* Tabs */
/* -------------------------------- */

.education-tabs[b-7j9vlydzrk] {
    display: flex;
    align-items: center;

    margin-top: clamp(1.25rem, 2vh, 1.75rem);

    width: fit-content;
}

.education-tab[b-7j9vlydzrk] {
    position: relative;

    padding: 0 0 0.5rem;

    color: var(--color-text);

    font-size: clamp(1.1rem, 1.5vw, 1.45rem);

    font-weight: 700;

    cursor: pointer;

    white-space: nowrap;
}

.education-tab[b-7j9vlydzrk]::after {
    content: "";

    position: absolute;

    left: 0;
    bottom: 0;

    width: 0;
    height: 3px;

    background:
            var(--color-primary-light);

    transition:
            width var(--transition-normal);
}

.education-tab.is-active[b-7j9vlydzrk]::after {
    width: 100%;
}

.education-tab-separator[b-7j9vlydzrk] {
    margin-inline: 0.45rem;

    padding-bottom: 0.5rem;

    color: var(--color-primary-light);

    font-size: clamp(1.1rem, 1.5vw, 1.45rem);
}

/* -------------------------------- */
/* Formação acadêmica */
/* -------------------------------- */

.education-academic-list[b-7j9vlydzrk] {
    display: flex;
    flex-direction: column;

    gap: 1.75rem;

    margin-top: 1.25rem;
}

.education-academic-card[b-7j9vlydzrk] {
    width: 100%;

    min-height: 12rem;

    padding: 1.15rem;

    background: var(--color-surface);
}

.education-academic-card h3[b-7j9vlydzrk] {
    color: var(--color-text);

    font-size: clamp(1.2rem, 1.5vw, 1.5rem);

    line-height: 1.2;
}

.education-academic-title[b-7j9vlydzrk] {
    margin-top: 0.3rem;

    color: var(--color-text-muted);

    font-size: 1rem;

    font-style: italic;
}

.education-academic-description[b-7j9vlydzrk] {
    margin-top: 1rem;

    color: var(--color-text-muted);

    font-size: 0.95rem;

    line-height: 1.5;
}

/* -------------------------------- */
/* Cursos e certificados */
/* -------------------------------- */

.education-courses[b-7j9vlydzrk] {
    display: grid;

    grid-template-columns:
        repeat(5, minmax(0, 1fr));

    gap: clamp(1rem, 2vw, 1.8rem);

    margin-top: 1.25rem;

    align-items: stretch;
}

/* -------------------------------- */
/* Responsivo */
/* -------------------------------- */

@media (max-width: 1200px) {

    .education-courses[b-7j9vlydzrk] {
        grid-template-columns:
            repeat(4, minmax(0, 1fr));
    }

}

@media (max-width: 950px) {

    .education-courses[b-7j9vlydzrk] {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));
    }

}

@media (max-width: 700px) {

    .education-section[b-7j9vlydzrk] {
        padding-top: 3rem;
    }

    .education-tabs[b-7j9vlydzrk] {
        width: 100%;

        overflow-x: auto;

        scrollbar-width: none;
    }

    .education-tabs[b-7j9vlydzrk]::-webkit-scrollbar {
        display: none;
    }

    .education-tab[b-7j9vlydzrk] {
        font-size: 1rem;
    }

    .education-tab-separator[b-7j9vlydzrk] {
        font-size: 1rem;
    }

    .education-academic-card[b-7j9vlydzrk] {
        min-height: 10rem;
    }

    .education-courses[b-7j9vlydzrk] {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 0.8rem;
    }

}

@media (max-width: 450px) {

    .education-courses[b-7j9vlydzrk] {
        grid-template-columns: 1fr;
    }

}
/* /Components/Sections/Experience.razor.rz.scp.css */
.experience-section[b-t0gv759q2u] {
    min-height: 100svh;

    display: flex;
    align-items: flex-start;
}

.experience-container[b-t0gv759q2u] {
    width: 100%;

    display: flex;
    flex-direction: column;

    gap: clamp(
            2rem,
            5vh,
            3rem
    );
}

/* =========================================================
   HEADER
========================================================= */

.experience-header[b-t0gv759q2u] {
    width: min(
            100%,
            50rem
    );
}

.experience-title[b-t0gv759q2u] {
    font-size:
            clamp(
                    2.5rem,
                    4vw,
                    4rem
            );

    line-height: 1;
    font-weight: 700;
}

.experience-description[b-t0gv759q2u] {
    margin-top: 0.75rem;

    color: var(--color-text-muted);

    font-size:
            clamp(
                    0.85rem,
                    1vw,
                    1rem
            );

    line-height: 1.5;
}

/* =========================================================
   EXPERIENCE SCREEN
========================================================= */

.experience-screen[b-t0gv759q2u] {
    position: relative;

    width: 100%;
    height: min(58svh, 42rem);

    overflow: hidden;

    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-sm);

    background:
            linear-gradient(
                    180deg,
                    rgba(18, 7, 38, 0.96),
                    rgba(8, 3, 19, 0.98)
            );

    box-shadow:
            inset 0 0 80px rgba(0, 0, 0, 0.25);
}

/* =========================================================
   TIMELINE
========================================================= */

.experience-timeline[b-t0gv759q2u] {
    position: relative;

    width: 100%;
    height: 100%;

    overflow-y: auto;
    overflow-x: hidden;

    padding-block: 3rem;

    scrollbar-width: thin;
    scrollbar-color:
            var(--color-primary-light)
            transparent;
}

.experience-timeline[b-t0gv759q2u]::-webkit-scrollbar {
    width: 4px;
}

.experience-timeline[b-t0gv759q2u]::-webkit-scrollbar-track {
    background: transparent;
}

.experience-timeline[b-t0gv759q2u]::-webkit-scrollbar-thumb {
    background: var(--color-primary-light);
}

/* =========================================================
   TIMELINE LINE
========================================================= */

.experience-timeline[b-t0gv759q2u]::before {
    content: "";

    position: absolute;

    top: 0;
    bottom: 0;
    left: 50%;

    width: 1px;

    transform: translateX(-50%);

    background:
            linear-gradient(
                    180deg,
                    transparent,
                    var(--border-strong) 8%,
                    var(--border-strong) 92%,
                    transparent
            );

    pointer-events: none;
}

/* =========================================================
   TIMELINE ITEMS
========================================================= */

.experience-timeline-item[b-t0gv759q2u] {
    position: relative;

    width: 100%;

    display: flex;

    padding-block: 1.5rem;
}

.experience-timeline-item.is-left[b-t0gv759q2u] {
    justify-content: flex-start;
}

.experience-timeline-item.is-right[b-t0gv759q2u] {
    justify-content: flex-end;
}

.experience-timeline-content[b-t0gv759q2u] {
    width: calc(50% - 2rem);
}

/* =========================================================
   TIMELINE POINT
========================================================= */

.experience-timeline-point[b-t0gv759q2u] {
    position: absolute;

    top: 2.1rem;
    left: 50%;

    width: 0.7rem;
    height: 0.7rem;

    transform: translateX(-50%);

    border: 2px solid var(--color-primary-light);
    border-radius: 50%;

    background: var(--color-background);

    box-shadow:
            0 0 0 4px rgba(93, 43, 211, 0.12);
}

/* =========================================================
   DATE
========================================================= */

.experience-timeline-date[b-t0gv759q2u] {
    display: flex;
    flex-direction: column;

    gap: 0.2rem;

    margin-bottom: 0.6rem;
}

.experience-date[b-t0gv759q2u] {
    color: var(--color-text);

    font-size: 0.8rem;
    font-weight: 600;
}

.experience-duration[b-t0gv759q2u] {
    color: var(--color-text-subtle);

    font-size: 0.7rem;
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 800px) {

    .experience-screen[b-t0gv759q2u] {
        height: min(
                62svh,
                40rem
        );
    }

    .experience-timeline[b-t0gv759q2u]::before {
        left: 1.25rem;

        transform: none;
    }

    .experience-timeline-item[b-t0gv759q2u],
    .experience-timeline-item.is-left[b-t0gv759q2u],
    .experience-timeline-item.is-right[b-t0gv759q2u] {
        justify-content: flex-start;

        padding-left: 3rem;
    }

    .experience-timeline-content[b-t0gv759q2u] {
        width: calc(100% - 1rem);
    }

    .experience-timeline-point[b-t0gv759q2u] {
        left: 1.25rem;
    }
}
/* /Components/Sections/Hero.razor.rz.scp.css */
.hero-section[b-f1bk9lsvh1] {
    position: relative;
    min-height: 100svh;
    width: 100%;
    display: flex;
    align-items: center;
    overflow: hidden;

    scroll-snap-align: start;
    scroll-snap-stop: normal;

    background:
            radial-gradient(
                    circle at 70% 50%,
                    rgba(65, 25, 130, 0.18),
                    transparent 35%
            ),
            #0c041e;

    color: var(--color-text);
}

/* =========================================================
   BACKGROUND
   ========================================================= */

.hero-background[b-f1bk9lsvh1] {
    position: absolute;
    inset: 0;
    pointer-events: none;

    background-image:
            radial-gradient(
                    rgba(255, 255, 255, 0.45) 0.6px,
                    transparent 0.8px
            );

    background-size: 127px 109px;
    opacity: 0.22;
}

/* =========================================================
   CONTAINER
   ========================================================= */

.hero-container[b-f1bk9lsvh1] {
    position: relative;
    z-index: 2;

    min-height: 50svh;

    display: flex;
    align-items: normal;
}

/* =========================================================
   CONTENT
   ========================================================= */

.hero-content[b-f1bk9lsvh1] {
    position: relative;
    z-index: 3;

    width: min(50%, 42rem);
}

.hero-title[b-f1bk9lsvh1] {
    font-size: clamp(3.5rem, 6vw, 7rem);
    line-height: 0.98;
    font-weight: 650;
    letter-spacing: clamp(-0.15rem, -0.3vw, -0.25rem);
}

.hero-subtitle[b-f1bk9lsvh1] {
    margin-top: clamp(1rem, 2vh, 1.5rem);

    color: var(--color-text-secondary);

    font-size: clamp(1rem, 1.4vw, 1.35rem);
    line-height: 1.3;
}

/* =========================================================
   CV BUTTON
   ========================================================= */

.hero-cv-button[b-f1bk9lsvh1] {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    margin-top: clamp(1.5rem, 3vh, 2.5rem);

    min-width: 9rem;

    padding: 0.75rem 2rem;

    border: 1px solid rgba(255, 255, 255, 0.08);

    background: rgba(22, 10, 43, 0.85);

    color: var(--color-text);

    font-size: 0.9rem;

    transition:
            background var(--transition-normal),
            border-color var(--transition-normal),
            transform var(--transition-normal);
}

.hero-cv-button:hover[b-f1bk9lsvh1] {
    background: var(--color-primary);

    border-color: var(--color-primary-light);

    transform: translateY(-2px);
}

/* =========================================================
   WATERMARK
   ========================================================= */

.hero-art[b-f1bk9lsvh1] {
    position: absolute;
    z-index: 1;

    top: 50%;
    right: 0;

    width: min(48vw, 45rem);
    height: min(75vh, 45rem);

    transform: translateY(-50%);

    display: grid;
    place-items: center;

    pointer-events: none;
}

.hero-art img[b-f1bk9lsvh1] {
    width: 100%;
    height: 100%;

    object-fit: contain;

    filter:
            brightness(1.35)
            contrast(1.05);
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {

    .hero-content[b-f1bk9lsvh1] {
        width: 60%;
    }

    .hero-art[b-f1bk9lsvh1] {
        right: -12%;

        width: 65vw;
        height: 65vh;

        opacity: 0.45;
    }
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {

    .hero-section[b-f1bk9lsvh1] {
        align-items: flex-start;
    }

    .hero-container[b-f1bk9lsvh1] {
        min-height: 100svh;

        align-items: flex-start;

        padding-top: 15vh;
    }

    .hero-content[b-f1bk9lsvh1] {
        width: 100%;
    }

    .hero-title[b-f1bk9lsvh1] {
        font-size: clamp(
                3.25rem,
                15vw,
                5rem
        );
    }

    .hero-subtitle[b-f1bk9lsvh1] {
        font-size: 1rem;
    }

    .hero-art[b-f1bk9lsvh1] {
        top: 58%;
        right: -30%;

        width: 110vw;
        height: 60vh;

        opacity: 0.22;
    }

    .next-section-link[b-f1bk9lsvh1] {
        font-size: 0.75rem;
    }
}

@media (max-width: 900px) and (max-height: 450px) {
    .hero-section[b-f1bk9lsvh1] {
        min-height: 100svh;
        align-items: center;
        overflow: hidden;
    }

    .hero-container[b-f1bk9lsvh1] {
        min-height: 100svh;
        align-items: center;
        padding-block: 1rem;
        padding-inline: var(--page-padding-inline, 1.25rem);
    }

    .hero-content[b-f1bk9lsvh1] {
        width: min(58%, 28rem);
    }

    .hero-title[b-f1bk9lsvh1] {
        font-size: clamp(2.1rem, 8.5vh, 3.6rem);
    }

    .hero-subtitle[b-f1bk9lsvh1] {
        margin-top: 0.55rem;
        font-size: clamp(0.85rem, 2.8vh, 1.05rem);
    }

    .hero-cv-button[b-f1bk9lsvh1] {
        margin-top: 0.75rem;
        min-width: 7.5rem;
        padding: 0.55rem 1.4rem;
        font-size: 0.8rem;
    }

    .hero-art[b-f1bk9lsvh1] {
        right: -8%;
        width: min(52vw, 28rem);
        height: 72vh;
        opacity: 0.35;
    }
}
/* /Components/Sections/Projects.razor.rz.scp.css */
.projects-section[b-fmf5k68yd7] {
    display: flex;
    align-items: flex-start;
    min-height: 100svh;
}

.projects-container[b-fmf5k68yd7] {
    width: 100%;

    display: flex;
    flex-direction: column;

    gap: clamp(
            2rem,
            5vh,
            3rem
    );
}

/* =========================================================
   HEADER
========================================================= */

.projects-header[b-fmf5k68yd7] {
    width: min(
            100%,
            55rem
    );
}

.projects-title[b-fmf5k68yd7] {
    font-size:
            clamp(
                    2.5rem,
                    4vw,
                    4rem
            );

    line-height: 1;
    font-weight: 700;
}

.projects-description[b-fmf5k68yd7] {
    margin-top: 0.75rem;

    color: var(--color-text-muted);

    font-size:
            clamp(
                    0.85rem,
                    1vw,
                    1rem
            );

    line-height: 1.5;
}

/* =========================================================
   CAROUSEL
========================================================= */

.projects-carousel[b-fmf5k68yd7] {
    position: relative;

    width: 100%;
    min-width: 0;
}

.projects-track[b-fmf5k68yd7] {
    display: flex;
    flex-wrap: nowrap;

    gap: 2rem;

    width: 100%;
    max-width: 100%;

    overflow-x: auto;
    overflow-y: hidden;

    padding-bottom: 1rem;

    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;

    overscroll-behavior-x: contain;

    scrollbar-width: none;
}

.projects-track[b-fmf5k68yd7]::-webkit-scrollbar {
    display: none;
}

/* =========================================================
   NAVIGATION
========================================================= */

.projects-navigation[b-fmf5k68yd7] {
    position: absolute;
    z-index: 10;

    top: 50%;

    width: 3rem;
    height: 3rem;

    transform: translateY(-50%);

    display: grid;
    place-items: center;

    border: 2px solid var(--color-primary-light);
    border-radius: 50%;

    background: var(--surface-overlay);

    color: var(--color-primary-light);

    cursor: pointer;

    font-size: 1rem;

    backdrop-filter: blur(8px);

    opacity: 0;
    visibility: hidden;

    pointer-events: none;

    transition:
            opacity var(--transition-normal),
            visibility var(--transition-normal),
            background var(--transition-normal),
            color var(--transition-normal),
            transform var(--transition-normal);
}

.projects-navigation.is-visible[b-fmf5k68yd7] {
    opacity: 1;
    visibility: visible;

    pointer-events: auto;
}

.projects-navigation:hover[b-fmf5k68yd7] {
    background: var(--color-primary-light);

    color: var(--color-text);
}

.projects-previous[b-fmf5k68yd7] {
    left: 1rem;
}

.projects-next[b-fmf5k68yd7] {
    right: 1rem;
}

/* =========================================================
   PROGRESS
========================================================= */

.projects-progress[b-fmf5k68yd7] {
    position: relative;

    width: 100%;
    height: 3px;

    margin-top: 0.75rem;

    background: rgba(255, 255, 255, 0.08);

    overflow: hidden;
}

.projects-progress span[b-fmf5k68yd7] {
    position: absolute;

    top: 0;
    left: 0;

    display: block;

    height: 100%;

    background: var(--color-primary-light);

    transition:
            width 150ms ease,
            transform 150ms ease;
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 768px) {

    .projects-container[b-fmf5k68yd7] {
        gap: 2rem;
    }

    .projects-track[b-fmf5k68yd7] {
        gap: 1rem;
    }

    .projects-navigation[b-fmf5k68yd7] {
        width: 2.5rem;
        height: 2.5rem;
    }

    .projects-previous[b-fmf5k68yd7] {
        left: 0.5rem;
    }

    .projects-next[b-fmf5k68yd7] {
        right: 0.5rem;
    }
}
/* /Components/Sections/Technologies.razor.rz.scp.css */
.technologies-section[b-uwb0qkninh] {

    min-height: 100svh;
    display: flex;
    align-items: flex-start;

    background:
            radial-gradient(
                    circle at 50% 100%,
                    var(--glow-primary-subtle),
                    transparent 45%
            );
}

.technologies-container[b-uwb0qkninh] {
    width: 100%;

    display: flex;
    flex-direction: column;

    gap: clamp(
            2rem,
            5vh,
            3rem
    );
}

/* =========================================================
   HEADER
========================================================= */

.technologies-header[b-uwb0qkninh] {
    width: min(
            100%,
            55rem
    );
}

.technologies-title[b-uwb0qkninh] {
    font-size:
            clamp(
                    2.75rem,
                    4vw,
                    4rem
            );

    line-height: 1;

    font-weight: 700;

    letter-spacing: -0.04em;
}

.technologies-description[b-uwb0qkninh] {
    color: var(--color-text-muted);

    font-size:
            clamp(
                    0.95rem,
                    1.15vw,
                    1.15rem
            );

    line-height: 1.4;
}

/* =========================================================
   TECHNOLOGY GRID
========================================================= */

.technologies-grid[b-uwb0qkninh] {
    display: grid;

    grid-template-columns:
        repeat(
            2,
            minmax(0, 1fr)
        );

    column-gap:
            clamp(
                    3rem,
                    8vw,
                    8rem
            );

    row-gap:
            clamp(
                    3rem,
                    7vh,
                    5rem
            );
}

/* =========================================================
   TECHNOLOGY GROUP
========================================================= */

.technology-group[b-uwb0qkninh] {
    min-width: 0;
}

.technology-group-title[b-uwb0qkninh] {
    margin: 0 0 0.8rem;

    color: var(--color-text);

    font-size:
            clamp(
                    1.05rem,
                    1.4vw,
                    1.3rem
            );

    line-height: 1.2;

    font-weight: 700;
}

/* =========================================================
   TECHNOLOGY PANEL
========================================================= */

.technology-panel[b-uwb0qkninh] {
    width: 100%;

    min-height: 7.5rem;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 1rem;

    padding: 1.2rem 1.4rem;

    background: var(--color-surface);

    overflow: hidden;
}

/* =========================================================
   SMALL DESKTOP
========================================================= */

@media (max-width: 1200px) {

    .technology-panel[b-uwb0qkninh] {
        justify-content: flex-start;

        overflow-x: auto;

        scrollbar-width: none;
    }

    .technology-panel[b-uwb0qkninh]::-webkit-scrollbar {
        display: none;
    }
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 850px) {

    .technologies-section[b-uwb0qkninh] {
        align-items: flex-start;
    }

    .technologies-grid[b-uwb0qkninh] {
        grid-template-columns: 1fr;

        row-gap: 2.5rem;
    }

    .technology-panel[b-uwb0qkninh] {
        justify-content: flex-start;
    }
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 500px) {

    .technology-panel[b-uwb0qkninh] {
        min-height: 6.5rem;

        padding: 1rem;

        gap: 0.75rem;
    }

    .technology-item[b-uwb0qkninh] {
        width: 3.8rem;
        height: 3.8rem;
    }

    .technology-item img[b-uwb0qkninh] {
        width: 2.8rem;
        height: 2.8rem;
    }
}
/* /Components/Shared/EducationCard.razor.rz.scp.css */
.education-card[b-fwjc38ywtb] {
    min-width: 0;

    min-height: 16.5rem;

    padding:
            0.8rem
            1rem
            1rem;

    display: flex;
    flex-direction: column;
    align-items: center;

    background: var(--color-surface);

    overflow: hidden;

    transition:
            transform var(--transition-normal),
            background var(--transition-normal);
}

.education-card:hover[b-fwjc38ywtb] {
    transform: translateY(-3px);

    background: var(--color-surface-hover);
}

/* Imagem */

.education-card-image-link[b-fwjc38ywtb] {
    display: block;

    flex-shrink: 0;
}

.education-card-image[b-fwjc38ywtb] {
    width: 4rem;
    height: 4rem;

    margin-top: 0.05rem;

    overflow: hidden;

    border-radius: 0.8rem;
}

.education-card-image img[b-fwjc38ywtb] {
    width: 100%;
    height: 100%;

    object-fit: cover;
}

/* Instituição */

.education-card-institution[b-fwjc38ywtb] {
    margin-top: 0.3rem;

    color: var(--color-text);

    font-size: 0.8rem;

    font-weight: 700;

    text-align: center;
}

/* Curso */

.education-card-title[b-fwjc38ywtb] {
    margin-top: 1.9rem;

    color: var(--color-text);

    font-size: clamp(0.9rem, 1vw, 1.1rem);

    font-weight: 400;

    font-style: italic;

    line-height: 1.25;

    text-align: center;
}

/* Período */

.education-card-period[b-fwjc38ywtb] {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 0.4rem;

    margin-top: auto;
    padding-top: 1.25rem;

    color: var(--color-text);

    font-size: 0.7rem;

    font-weight: 700;
}

.education-card-period-dot[b-fwjc38ywtb] {
    width: 0.25rem;
    height: 0.25rem;

    flex-shrink: 0;

    border-radius: 50%;

    background:
            var(--color-primary-light);
}
/* /Components/Shared/ExperienceItem.razor.rz.scp.css */
.experience-timeline-item[b-x93klrj8pr] {
    position: relative;

    display: grid;

    grid-template-columns: 1fr 2px 1fr;

    min-height: 15rem;

    scroll-snap-align: start;
}


/* LINHA CENTRAL */

.experience-timeline-item[b-x93klrj8pr]::before {
    content: "";

    position: absolute;

    top: 0;
    bottom: 0;

    left: 50%;

    width: 1px;

    transform: translateX(-50%);

    background:
            linear-gradient(
                    180deg,
                    transparent,
                    rgba(93, 43, 211, 0.9) 8%,
                    rgba(93, 43, 211, 0.9) 92%,
                    transparent
            );

    pointer-events: none;
}


/* PONTO */

.experience-timeline-point[b-x93klrj8pr] {
    position: absolute;

    top: 2.5rem;
    left: 50%;

    width: 0.65rem;
    height: 0.65rem;

    transform: translateX(-50%);

    border: 2px solid var(--color-primary-light);

    border-radius: 50%;

    background: var(--color-background);

    box-shadow:
            0 0 0 4px rgba(93, 43, 211, 0.12);

    z-index: 3;
}


/* CONTEÚDO */

.experience-timeline-content[b-x93klrj8pr] {
    width: min(100%, 23rem);

    padding-top: 1rem;
}


/* ESQUERDA */

.experience-timeline-item.is-left
.experience-timeline-content[b-x93klrj8pr] {
    grid-column: 1;

    justify-self: end;

    margin-right: clamp(2rem, 5vw, 5rem);

    text-align: right;
}


/* DIREITA */

.experience-timeline-item.is-right
.experience-timeline-content[b-x93klrj8pr] {
    grid-column: 3;

    justify-self: start;

    margin-left: clamp(2rem, 5vw, 5rem);

    text-align: left;
}


/* DATA */

.experience-timeline-date[b-x93klrj8pr] {
    display: flex;

    flex-direction: column;

    gap: 0.15rem;

    margin-bottom: 0.65rem;
}

.experience-date[b-x93klrj8pr] {
    color: var(--color-text);

    font-size: 0.8rem;

    font-weight: 600;
}

.experience-duration[b-x93klrj8pr] {
    color: var(--color-text-muted);

    font-size: 0.7rem;
}


/* CARD */

.experience-card[b-x93klrj8pr] {
    padding: 1.25rem;

    border: 1px solid rgba(255, 255, 255, 0.08);

    border-radius: 0.35rem;

    background:
            linear-gradient(
                    145deg,
                    rgba(25, 12, 52, 0.95),
                    rgba(13, 5, 29, 0.95)
            );

    text-align: left;

    transition:
            border-color var(--transition-normal),
            transform var(--transition-normal);
}

.experience-card:hover[b-x93klrj8pr] {
    border-color: rgba(93, 43, 211, 0.45);
}


/* TEXTO */

.experience-card-company[b-x93klrj8pr] {
    color: var(--color-text);

    font-size: 1.1rem;

    line-height: 1.2;
}

.experience-card-position[b-x93klrj8pr] {
    margin-top: 0.3rem;

    color: var(--color-text-muted);

    font-size: 0.78rem;
}


/* TECNOLOGIAS */

.experience-card-technologies[b-x93klrj8pr] {
    display: flex;

    flex-wrap: wrap;

    gap: 0.35rem;

    margin-top: 0.9rem;
}

.experience-card-technology[b-x93klrj8pr] {
    padding: 0.25rem 0.55rem;

    border: 1px solid rgba(255, 255, 255, 0.1);

    border-radius: 999px;

    color: var(--color-text-muted);

    font-size: 0.65rem;

    line-height: 1.2;
}

.experience-card-technology img[b-x93klrj8pr] {
    display: block;
    width: 1.1rem;
    height: 1.1rem;
    object-fit: contain;
}


/* BOTÃO */

.experience-card-toggle[b-x93klrj8pr] {
    display: inline-flex;

    align-items: center;

    gap: 0.4rem;

    margin-top: 1rem;

    padding: 0;

    color: var(--color-text-secondary);

    font-size: 0.72rem;

    cursor: pointer;

    transition: color var(--transition-fast);
}

.experience-card-toggle:hover[b-x93klrj8pr] {
    color: var(--color-primary-light);
}

.experience-card-arrow[b-x93klrj8pr] {
    transition: transform var(--transition-normal);
}

.experience-card-arrow.is-expanded[b-x93klrj8pr] {
    transform: rotate(180deg);
}


/* DETALHES */

.experience-card-details[b-x93klrj8pr] {
    display: grid;

    grid-template-rows: 0fr;

    opacity: 0;

    transition:
            grid-template-rows var(--transition-slow),
            opacity var(--transition-normal);
}

.experience-card-details[b-x93klrj8pr]::after {
    content: "";
}

.experience-card-details > p[b-x93klrj8pr] {
    min-height: 0;

    overflow: hidden;

    color: var(--color-text-secondary);

    font-size: 0.75rem;

    line-height: 1.6;
}

.experience-card-details.is-expanded[b-x93klrj8pr] {
    grid-template-rows: 1fr;

    margin-top: 0.85rem;

    opacity: 1;
}

.experience-card-details p + p[b-x93klrj8pr] {
    margin-top: 0.7rem;
}


/* MOBILE */

@media (max-width: 700px) {

    .experience-timeline-item[b-x93klrj8pr] {
        grid-template-columns: 1.5rem 1px 1fr;

        min-height: 13rem;
    }

    .experience-timeline-item[b-x93klrj8pr]::before {
        left: 0.75rem;

        transform: translateX(-50%);
    }

    .experience-timeline-point[b-x93klrj8pr] {
        left: 0.75rem;
    }

    .experience-timeline-item.is-left
    .experience-timeline-content[b-x93klrj8pr],

    .experience-timeline-item.is-right
    .experience-timeline-content[b-x93klrj8pr] {
        grid-column: 3;

        justify-self: start;

        width: 100%;

        margin-left: 1.5rem;
        margin-right: 0;

        text-align: left;
    }

}
/* /Components/Shared/PageSidebar.razor.rz.scp.css */
.page-sidebar[b-hlsxhfzt3d] {
    position: fixed;

    left: clamp(1rem, 0.75vw, 1.5rem);
    bottom: 0;

    z-index: 200;

    width: 3rem;
    height: 10rem;

    display: flex;
    flex-direction: column;
    align-items: center;

    opacity: 1;
    visibility: visible;
    pointer-events: auto;

    transition:
            opacity var(--transition-normal),
            visibility var(--transition-normal);
}

.page-sidebar.is-hidden[b-hlsxhfzt3d] {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

@media (max-width: 900px) {
    .page-sidebar[b-hlsxhfzt3d] {
        display: none;
    }
}

.page-sidebar-socials[b-hlsxhfzt3d] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.4rem;
}

.page-sidebar-social[b-hlsxhfzt3d] {
    width: 2rem;
    height: 2rem;

    display: grid;
    place-items: center;

    border-radius: 0.15rem;

    background: #050505;
    color: var(--color-text);
}

.page-sidebar-social svg[b-hlsxhfzt3d] {
    width: 1.35rem;
    height: 1.35rem;
    fill: currentColor;
}

.page-sidebar-line[b-hlsxhfzt3d] {
    width: 1px;
    flex: 1;
    margin-top: 0.35rem;
    background: rgba(248, 247, 250, 0.7);
}
/* /Components/Shared/ProjectCard.razor.rz.scp.css */
.project-card[b-8pz3knpnvg] {
    flex: 0 0 20rem;
    width: 20rem;
    min-width: 20rem;

    display: flex;
    flex-direction: column;

    scroll-snap-align: start;
}

.project-card-image-link[b-8pz3knpnvg] {
    display: block;
    width: 100%;

    overflow: hidden;

    border-radius: 1rem;
}

.project-card-image[b-8pz3knpnvg] {
    width: 100%;

    aspect-ratio: 1.45 / 1;

    overflow: hidden;

    border-radius: 1rem;

    background: #111;

    cursor: pointer;
}

.project-card-image img[b-8pz3knpnvg] {
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition:
            transform var(--transition-slow),
            filter var(--transition-normal);
}

.project-card-image-link:hover
.project-card-image img[b-8pz3knpnvg] {
    transform: scale(1.04);

    filter: brightness(1.08);
}

.project-card-content[b-8pz3knpnvg] {
    display: flex;
    flex-direction: column;

    padding-top: 0.65rem;
}

.project-card-title[b-8pz3knpnvg] {
    color: var(--color-text);

    font-size: clamp(1.25rem, 1.5vw, 1.45rem);

    line-height: 1.15;

    font-weight: 700;
}

.project-card-organization[b-8pz3knpnvg] {
    margin-top: 0.3rem;

    color: var(--color-text-muted);

    font-size: 0.85rem;

    line-height: 1.3;
}

.project-card-description[b-8pz3knpnvg] {
    margin-top: 0.3rem;

    color: var(--color-text-secondary);

    font-size: 0.85rem;

    line-height: 1.35;

    min-height: 2.3rem;
}

.project-card-technologies[b-8pz3knpnvg] {
    display: flex;

    flex-wrap: wrap;

    gap: 0.4rem;

    margin-top: 0.8rem;
}

.project-card-technology[b-8pz3knpnvg] {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    min-height: 1.9rem;

    padding-inline: 0.7rem;

    border:
            1px solid rgba(255, 255, 255, 0.12);

    border-radius: 999px;

    color: var(--color-text-secondary);

    font-size: 0.72rem;

    white-space: nowrap;
}

.project-card-technology img[b-8pz3knpnvg] {
    width: 1.15rem;
    height: 1.15rem;
    object-fit: contain;
}

@media (max-width: 700px) {

    .project-card[b-8pz3knpnvg] {
        flex: 0 0 78vw;
        width: 78vw;
        min-width: 78vw;
    }

}
/* /Components/Shared/SectionNextLink.razor.rz.scp.css */
.section-next-link[b-yemfdhcln1] {
    position: fixed;

    left: 50%;
    bottom: 0;

    z-index: 200;

    transform: translateX(-50%);

    display: flex;
    flex-direction: column;
    align-items: center;

    color: var(--color-text-muted);

    font-size: 0.85rem;

    transition:
            color var(--transition-normal);
}

.section-next-link:hover[b-yemfdhcln1] {
    color: var(--color-text);
}

.section-next-line[b-yemfdhcln1] {
    width: 1px;
    height: 2rem;

    margin-top: 0.35rem;

    background: currentColor;
}
/* /Components/Shared/SocialLinks.razor.rz.scp.css */
/* /Components/Shared/TechnologyCard.razor.rz.scp.css */
.technology-item[b-ehveg5rkp7] {
    width: 4.5rem;
    height: 4.5rem;

    display: grid;
    place-items: center;

    flex-shrink: 0;

    border-radius: 0.85rem;

    background: var(--color-surface);

    transition:
            transform var(--transition-normal),
            background var(--transition-normal);
}

.technology-item:hover[b-ehveg5rkp7] {
    transform: translateY(-3px);

    background: var(--color-surface-hover);
}

.technology-item img[b-ehveg5rkp7] {
    width: 3.4rem;
    height: 3.4rem;

    object-fit: contain;
}
