/*======================================================================
    VYZARA
    File : components.css
    Version : 1.0
    Part : 01

    CONTENTS

    01. Buttons
    02. Glass Card
    03. Section Card
    04. Badge
    05. Chips
======================================================================*/



/*======================================================================
    BUTTONS
======================================================================*/

.btn{

    position:relative;

    display:inline-flex;

    justify-content:center;

    align-items:center;

    gap:.8rem;

    overflow:hidden;

    isolation:isolate;

    padding: .85rem 1.8rem;
    border-radius:var(--radius-round);

    font-size:.95rem;

    font-weight:600;

    letter-spacing:.03em;

    cursor:pointer;

    transition:all .45s ease;

    white-space:nowrap;

}



/*====================================================
    PRIMARY BUTTON
====================================================*/

.btn--primary{

    position:relative;

    overflow:hidden;

    color:var(--clr-white);

    background:linear-gradient(
        135deg,
        #d8b186 0%,
        #c99a6a 45%,
        #b98759 100%
    );

    border:1px solid rgba(255,255,255,.10);

    box-shadow:

        0 14px 34px rgba(210,166,121,.24),

        inset 0 1px 0 rgba(255,255,255,.22),

        inset 0 -1px 0 rgba(0,0,0,.18);

    transition:

        transform .35s ease,

        box-shadow .35s ease,

        background .35s ease;

}
.btn--primary::before{

    content:"";

    position:absolute;

    top:0;

    left:-120%;

    width:70%;

    height:100%;

    background:linear-gradient(

        120deg,

        transparent,

        rgba(255,255,255,.28),

        transparent

    );

    transition:left .8s ease;

}
.btn--primary:hover{

    transform:

        translateY(-3px);

    box-shadow:

        0 22px 46px rgba(210,166,121,.32),

        0 0 32px rgba(210,166,121,.14);

}
.btn--primary:hover::before{

    left:150%;

}
.btn--primary:focus-visible{

    outline:2px solid var(--clr-primary);

    outline-offset:4px;

}


/*====================================================
    PRIMARY SHINE
====================================================*/

.btn--primary::before{

    content:"";

    position:absolute;

    inset:0;

    left:-120%;

    background:

        linear-gradient(

            120deg,

            transparent,

            rgba(255,255,255,.28),

            transparent

        );

    transition:.75s ease;

}

.btn--primary:hover::before{

    left:120%;

}



/*====================================================
    SECONDARY BUTTON
====================================================*/

.btn--secondary{

    color:var(--clr-white);

    border:1px solid rgba(255,255,255,.08);

    background:rgba(255,255,255,.03);

    backdrop-filter:blur(16px);

    -webkit-backdrop-filter:blur(16px);

}

.btn--secondary:hover{

    color:var(--clr-primary);

    border-color:rgba(210,166,121,.35);

    transform:translateY(-4px);

}



/*======================================================================
    GLASS CARD
======================================================================*/

.glass-card{

    position:relative;

    overflow:hidden;

    border-radius:var(--radius-lg);

    border:1px solid rgba(255,255,255,.08);

    background:rgba(255,255,255,.03);

    backdrop-filter:blur(20px);

    -webkit-backdrop-filter:blur(20px);

    box-shadow:var(--glass-shadow);

    transition:var(--transition-normal);

}

.glass-card:hover{

    transform:translateY(-10px);

}



/*====================================================
    GLASS REFLECTION
====================================================*/

.glass-card::before{

    content:"";

    position:absolute;

    top:0;

    left:-120%;

    width:70%;

    height:100%;

    transform:skewX(-25deg);

    background:

        linear-gradient(

            90deg,

            transparent,

            rgba(255,255,255,.10),

            transparent

        );

    transition:1s ease;

}

.glass-card:hover::before{

    left:150%;

}



/*======================================================================
    CONTENT CARD
======================================================================*/

.content-card{

    position:relative;

    display:flex;

    flex-direction:column;

    gap:1.5rem;

    padding:2.5rem;

    border-radius:var(--radius-lg);

    background:rgba(255,255,255,.02);

    border:1px solid rgba(255,255,255,.06);

    transition:all .45s ease;

}

.content-card:hover{

    transform:translateY(-10px);

    border-color:rgba(210,166,121,.18);

}



/*======================================================================
    BADGE
======================================================================*/

.badge{

    display:inline-flex;

    justify-content:center;

    align-items:center;

    gap:.5rem;

    width:max-content;

    padding:.65rem 1.25rem;

    border-radius:999px;

    border:1px solid rgba(210,166,121,.20);

    background:rgba(255,255,255,.03);

    color:var(--clr-primary);

    font-size:.75rem;

    font-weight:600;

    letter-spacing:.16em;

    text-transform:uppercase;

}



/*======================================================================
    CHIPS
======================================================================*/

.chip{

    display:inline-flex;

    justify-content:center;

    align-items:center;

    padding:.7rem 1.1rem;

    border-radius:999px;

    border:1px solid rgba(255,255,255,.08);

    background:rgba(255,255,255,.02);

    color:var(--clr-text-light);

    font-size:.85rem;

    transition:var(--transition-normal);

}

.chip:hover{

    color:var(--clr-primary);

    border-color:rgba(210,166,121,.25);

    transform:translateY(-2px);

}
/*======================================================================
    COMPONENT CARDS
======================================================================*/

/*====================================================
    PHILOSOPHY CARD
====================================================*/

.philosophy-card{

    position:relative;

    overflow:hidden;

    isolation:isolate;

}

.philosophy-card::before{

    content:"";

    position:absolute;

    inset:0;

    background:

        linear-gradient(
            180deg,
            transparent,
            rgba(210,166,121,.03)
        );

    opacity:0;

    transition:.45s ease;

}

.philosophy-card::after{

    content:"";

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:2px;

    transform:scaleX(0);

    transform-origin:left;

    background:linear-gradient(
        90deg,
        transparent,
        var(--clr-primary),
        transparent
    );

    transition:.45s ease;

}

.philosophy-card:hover{

    border-color:rgba(210,166,121,.22);

    box-shadow:0 25px 70px rgba(0,0,0,.35);

}

.philosophy-card:hover::before{

    opacity:1;

}

.philosophy-card:hover::after{

    transform:scaleX(1);

}



/*====================================================
    ECOSYSTEM CARD
====================================================*/

.ecosystem-card{

    isolation:isolate;

}

.ecosystem-card::before{

    content:"";

    position:absolute;

    inset:0;

    background:

        radial-gradient(

            circle at top right,

            rgba(210,166,121,.12),

            transparent 55%

        );

    opacity:0;

    transition:.45s ease;

}

.ecosystem-card:hover{

    border-color:rgba(210,166,121,.22);

    box-shadow:

        0 35px 90px rgba(0,0,0,.38),

        0 0 40px rgba(210,166,121,.10);

}

.ecosystem-card:hover::before{

    opacity:1;

}

.ecosystem-card__number{

    transition:.45s ease;

}

.ecosystem-card:hover .ecosystem-card__number{

    transform:rotate(8deg) scale(1.08);

    background:rgba(210,166,121,.08);

}

.ecosystem-card__link{

    display:inline-flex;

    align-items:center;

    gap:.65rem;

}

.ecosystem-card__link::after{

    content:"→";

    transition:.35s ease;

}

.ecosystem-card:hover .ecosystem-card__link::after{

    transform:translateX(8px);

}



/*====================================================
    EXPERIENCE CARD
====================================================*/

.experience-card{

    isolation:isolate;

}

.experience-card::before{

    content:"";

    position:absolute;

    inset:0;

    border-radius:inherit;

    background:

        linear-gradient(

            180deg,

            transparent,

            rgba(0,0,0,.12)

        );

    opacity:0;

    transition:.45s ease;

    pointer-events:none;

}

.experience-card:hover{

    border-color:rgba(210,166,121,.22);

    box-shadow:

        0 40px 100px rgba(0,0,0,.42);

}

.experience-card:hover::before{

    opacity:1;

}

.experience-card__media{

    position:relative;

}

.experience-card__media::after{

    content:"";

    position:absolute;

    inset:0;

    background:

        linear-gradient(

            180deg,

            transparent,

            rgba(0,0,0,.28)

        );

    opacity:0;

    transition:.45s ease;

}

.experience-card:hover .experience-card__media::after{

    opacity:1;

}

.experience-card__link{

    display:inline-flex;

    align-items:center;

    gap:.6rem;

}

.experience-card__link::after{

    content:"→";

    transition:.35s ease;

}

.experience-card:hover .experience-card__link::after{

    transform:translateX(8px);

}



/*====================================================
    WHY CARD
====================================================*/

.why-card{

    isolation:isolate;

}

.why-card::before{

    content:"";

    position:absolute;

    inset:0;

    background:

        linear-gradient(

            135deg,

            rgba(210,166,121,.05),

            transparent

        );

    opacity:0;

    transition:.45s ease;

}

.why-card:hover{

    border-color:rgba(210,166,121,.22);

}

.why-card:hover::before{

    opacity:1;

}



/*====================================================
    CREDIBILITY CARD
====================================================*/

.credibility-card{

    isolation:isolate;

}

.credibility-card::before{

    content:"";

    position:absolute;

    inset:0;

    background:

        radial-gradient(

            circle,

            rgba(210,166,121,.08),

            transparent

        );

    opacity:0;

    transition:.45s ease;

}

.credibility-card:hover{

    border-color:rgba(210,166,121,.22);

    transform:translateY(-10px);

}

.credibility-card:hover::before{

    opacity:1;

}



/*====================================================
    METHODOLOGY STEP
====================================================*/

.methodology-step{

    overflow:hidden;

}

.methodology-step::after{

    content:"";

    position:absolute;

    left:0;

    bottom:0;

    width:100%;

    height:2px;

    transform:scaleX(0);

    background:linear-gradient(

        90deg,

        transparent,

        var(--clr-primary),

        transparent

    );

    transition:.45s ease;

}

.methodology-step:hover{

    border-color:rgba(210,166,121,.20);

}

.methodology-step:hover::after{

    transform:scaleX(1);

}

.methodology-step__number{

    transition:.45s ease;

}

.methodology-step:hover .methodology-step__number{

    transform:scale(1.08);

    box-shadow:

        0 0 25px rgba(210,166,121,.18);

}



/*====================================================
    CTA PANEL
====================================================*/

.cta__wrapper{

    position:relative;

    overflow:hidden;

}

.cta__wrapper::before{

    content:"";

    position:absolute;

    inset:0;

    background:

        radial-gradient(

            circle at top,

            rgba(210,166,121,.08),

            transparent 60%

        );

    pointer-events:none;

}