@font-face {
    font-family: calsans;
    src: url('/fonts/CalSans-Regular.woff2') format('woff2');
    font-display: swap;
}
@font-face {
    font-family: geist;
    src: url('/fonts/Geist[wght].ttf') format('truetype');
    font-display: swap;
}

:root
{
    --black : #010101;
    --white : #fcfbf3;
    --accent : #462C7D;
    --grey: #aeaeae;
    --dark-grey : #8a8a8a;
}
body
{
    padding: 0;
    margin: 0;
    background-color: var(--white);
    font-family: geist;
}
.link
{
    display: inline-block;
    position: relative;
    text-decoration: none;
    color: var(--black);
    letter-spacing: -0.5px;
    font-size: 1rem;
    font-weight: 500;
    transition: 0.3s;
    width: fit-content;
}
.link::after
{
    content: '';
    position: absolute;
    width: 0;
    height: 1px;
    background-color: var(--accent);
    bottom: 2px;
    left: 0;
    transition: 0.3s;
}
.link:hover:after
{
    width: 50%;
}
.link.active::after
{
    width: 50%;
}

.cta-btn
{
    text-decoration: none;
    outline: none;
    border: 1px solid var(--accent);
    padding: 10px 20px;
    border-radius: 50px;
    line-height: 1;
    color: var(--accent);
    font-weight: 500;
    position: relative;
    display: inline-block;
    overflow: hidden;
    transition: 0.3s;
    isolation: isolate;
    text-align: center;
}
.cta-btn::before
{
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: var(--accent);
    bottom: -100%;
    left: 0;
    transition: 0.3s;
    z-index: -1;
}
.cta-btn:hover
{
    color: var(--white);
}
.cta-btn:hover::before
{
    bottom: 0;
}


.cta-btn.dark
{
    border: 1px solid var(--white);
    color: var(--white);
}
.cta-btn.dark:hover
{
    color: var(--accent);
}
.cta-btn.dark::before
{
    background-color: var(--white);
}

.cta-btn.active
{
    border: 1px solid var(--accent);
    color: var(--white);
}
.cta-btn.active::before
{
    bottom: 0;
    background-color: var(--accent);
}

.heading
{
    font-size: 2.5rem;
    font-weight: 600;
    color: var(--accent);
    line-height: 1.2;
    font-family: calsans;
    text-transform: capitalize;
    letter-spacing: 1px;
    margin: 0;
}

.inp-box
{
    border: 1px solid var(--dark-grey);
    padding: 10px 20px;
    border-radius:20px;
    line-height: 1;
    color: var(--black);
    font-weight: 500;
    transition: 0.3s;
    isolation: isolate;
    width: 100%;
    box-sizing: border-box;
    background-color: transparent;
    outline: none;
    text-transform: capitalize;
    font-size: 1.2rem;
    text-align: center;
}


select.inp-box
{
    cursor: pointer;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 6L11 1' stroke='%238a8a8a' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 20px center;
    padding-right: 45px;
}


.wp-plan-featured
{
    border-color: var(--accent);
    margin-top: 20px;
}

.most-popular-tag
{
    display: inline-block;
    background-color: var(--accent);
    color: var(--white);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    padding: 4px 16px;
    border-radius: 50px;
    margin-bottom: 10px;
}
