﻿/* =========================
   HERO ONBOARDING (INITIAL HERO CREATION)
========================= */

.hero-onboarding-page {
    min-height: 100vh;
    display: grid;
    place-items: center;
    padding: clamp(16px, 3vw, 40px);
    background: #f3f4f6;
    font-family: 'Inter', 'Averta', system-ui, sans-serif;
}

/* container */
.hero-onboarding-shell {
    width: 100%;
    max-width: clamp(380px, 34vw, 520px);
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* logo */
.hero-onboarding-logo {
    margin-bottom: clamp(20px, 3vw, 32px);
}

    .hero-onboarding-logo img {
        width: clamp(90px, 8vw, 130px);
        height: auto;
        display: block;
    }

/* card */
.hero-onboarding-card {
    width: 100%;
    background: rgba(255,255,255,0.95);
    border-radius: clamp(18px, 1.6vw, 26px);
    box-shadow: 0 18px 36px rgba(15,23,42,0.14);
    padding: clamp(22px, 2vw, 34px) clamp(18px, 1.8vw, 32px);
    text-align: center;
}

/* =========================
   HERO CARDS VISUAL
========================= */

.hero-cards-visual {
    position: relative;
    height: clamp(150px, 14vw, 190px);
    margin-bottom: clamp(14px, 2vw, 24px);
}

.hero-mini-card {
    position: absolute;
    width: clamp(100px, 9vw, 140px);
    height: clamp(130px, 11vw, 170px);
    background: #fff;
    border-radius: clamp(14px, 1.2vw, 18px);
    overflow: hidden;
    box-shadow: 0 12px 24px rgba(15,23,42,0.12);
    display: flex;
    flex-direction: column;
}

/* top (avatar area) */
.hero-mini-top {
    height: clamp(85px, 7vw, 112px);
    display: grid;
    place-items: center;
    font-size: clamp(34px, 3vw, 50px);
}

/* bottom (name area) */
.hero-mini-bottom {
    height: clamp(44px, 4vw, 56px);
    display: grid;
    place-items: center;
    font-size: clamp(14px, 0.3vw + 13px, 16px);
    font-weight: 700;
    color: #374151;
}

/* positioning */
.hero-card-left {
    left: clamp(4px, 1vw, 18px);
    top: clamp(8px, 1vw, 14px);
    transform: rotate(-10deg);
    z-index: 1;
}

.hero-card-center {
    left: 50%;
    transform: translateX(-50%);
    top: clamp(4px, 1vw, 10px);
    z-index: 3;
}

.hero-card-right {
    right: clamp(4px, 1vw, 18px);
    top: clamp(8px, 1vw, 16px);
    transform: rotate(10deg);
    z-index: 2;
}

/* colors */
.hero-mini-teal {
    background: #20c6c5;
}

.hero-mini-purple {
    background: #8e35aa;
}

.hero-mini-orange {
    background: #f7a61a;
}

/* =========================
   TEXT
========================= */

.hero-onboarding-title {
    margin: 0 0 clamp(10px, 1.2vw, 16px);
    font-size: clamp(22px, 1.4vw + 16px, 32px);
    font-weight: 900;
    color: #7b2d91;
    letter-spacing: -0.02em;
}

.hero-onboarding-text {
    margin: 0 auto clamp(20px, 2vw, 28px);
    max-width: clamp(260px, 24vw, 360px);
    font-size: clamp(14px, 0.3vw + 13px, 16px);
    line-height: 1.5;
    color: #5b6678;
}

/* =========================
   BUTTON
========================= */

.hero-onboarding-btn {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    min-height: clamp(46px, 3vw, 58px);
    border-radius: 999px;
    background: #31be74;
    color: #fff;
    font-size: clamp(14px, 0.3vw + 13px, 16px);
    font-weight: 900;
    text-decoration: none;
    box-shadow: 0 10px 20px rgba(49,190,116,0.24);
    transition: transform .12s ease, box-shadow .12s ease;
}

    .hero-onboarding-btn:hover {
        transform: translateY(-1px);
        box-shadow: 0 14px 26px rgba(49,190,116,0.30);
        color: #fff;
    }

/* =========================
   LARGE SCREENS (4K tuning)
========================= */

@media (min-width: 1600px) {
    .hero-onboarding-shell {
        max-width: 560px;
    }
}

@media (min-width: 2200px) {
    .hero-onboarding-shell {
        max-width: 620px;
    }
}

/* =========================
   MOBILE
========================= */

@media (max-width: 575.98px) {
    .hero-onboarding-card {
        border-radius: 18px;
    }

    .hero-cards-visual {
        height: 150px;
    }
}

/* =========================
    ANIMATION
========================  */

.hero-onboarding-card {
    animation: fadeUp .5s ease;
}

@keyframes fadeUp {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}