/* ==========================================================
   AURAMIND V3
   BASE STYLES
========================================================== */


/* ==========================================================
   RESET
========================================================== */

*,
*::before,
*::after{

    margin:0;
    padding:0;

    box-sizing:border-box;

}


/* ==========================================================
   HTML
========================================================== */

html{

    scroll-behavior:smooth;

}


/* ==========================================================
   BODY
========================================================== */

body{

    font-family:var(--font-family);

    background:var(--am-bg);

    color:var(--am-text);

    line-height:1.6;

    overflow-x:hidden;

    text-rendering:optimizeLegibility;

    -webkit-font-smoothing:antialiased;

}


/* ==========================================================
   IMAGES
========================================================== */

img{

    display:block;

    max-width:100%;

    height:auto;

}


/* ==========================================================
   LINKS
========================================================== */

a{

    text-decoration:none;

    color:inherit;

    transition:var(--transition);

}


/* ==========================================================
   BUTTONS
========================================================== */

button{

    font-family:inherit;

    border:none;

    background:none;

    cursor:pointer;

}


/* ==========================================================
   LIST
========================================================== */

ul,
ol{

    list-style:none;

}


/* ==========================================================
   CONTAINER
========================================================== */

.container{

    width:min(100% - 40px,var(--container));

    margin-inline:auto;

}


/* ==========================================================
   SECTION
========================================================== */

.section{

    position:relative;

    padding-block:var(--section-space);

}


/* ==========================================================
   SECTION SMALL
========================================================== */

.section-sm{

    padding-block:80px;

}


/* ==========================================================
   SECTION LARGE
========================================================== */

.section-lg{

    padding-block:160px;

}


/* ==========================================================
   BACKGROUND
========================================================== */

.bg-white{

    background:#fff;

}

.bg-light{

    background:var(--am-bg);

}

.bg-gradient{

    background:var(--am-gradient-primary);

}


/* ==========================================================
   GRID
========================================================== */

.grid{

    display:grid;

}

.grid-2{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:40px;

}

.grid-3{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:32px;

}

.grid-4{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:28px;

}


/* ==========================================================
   FLEX
========================================================== */

.flex{

    display:flex;

}

.flex-center{

    display:flex;

    justify-content:center;

    align-items:center;

}

.flex-between{

    display:flex;

    justify-content:space-between;

    align-items:center;

}

.flex-column{

    display:flex;

    flex-direction:column;

}


/* ==========================================================
   GAP
========================================================== */

.gap-12{

    gap:12px;

}

.gap-20{

    gap:20px;

}

.gap-30{

    gap:30px;

}

.gap-40{

    gap:40px;

}


/* ==========================================================
   TEXT ALIGN
========================================================== */

.text-center{

    text-align:center;

}

.text-left{

    text-align:left;

}

.text-right{

    text-align:right;

}


/* ==========================================================
   WIDTH
========================================================== */

.w-100{

    width:100%;

}


/* ==========================================================
   TYPOGRAPHY
========================================================== */

h1{

    font-size:clamp(2.9rem,5vw,5rem);

    line-height:1.08;

    font-weight:800;

    letter-spacing:-1px;

}

h2{

    font-size:clamp(2rem,3vw,3.2rem);

    line-height:1.15;

    font-weight:800;

}

h3{

    font-size:1.6rem;

    font-weight:700;

}

h4{

    font-size:1.25rem;

    font-weight:700;

}

p{

    font-size:1.05rem;

    color:var(--am-text-light);

}


/* ==========================================================
   BADGE
========================================================== */

.badge{

    display:inline-flex;

    align-items:center;

    gap:10px;

    padding:10px 20px;

    border-radius:999px;

    background:rgba(108,62,244,.08);

    color:var(--am-primary);

    font-weight:700;

    font-size:.92rem;

}


/* ==========================================================
   TITLE
========================================================== */

.section-title{

    max-width:720px;

    margin-inline:auto;

    margin-bottom:18px;

    text-align:center;

}

.section-description{

    max-width:760px;

    margin-inline:auto;

    text-align:center;

    margin-bottom:60px;

}


/* ==========================================================
   DIVIDER SPACE
========================================================== */

.space-top{

    margin-top:60px;

}

.space-bottom{

    margin-bottom:60px;

}


/* ==========================================================
   OVERFLOW
========================================================== */

.overflow-hidden{

    overflow:hidden;

}


/* ==========================================================
   Z INDEX
========================================================== */

.z1{

    position:relative;

    z-index:1;

}

.z5{

    position:relative;

    z-index:5;

}

.z10{

    position:relative;

    z-index:10;

}


/* ==========================================================
   SELECTION
========================================================== */

::selection{

    background:var(--am-primary);

    color:#fff;

}


/* ==========================================================
   FOCUS
========================================================== */

:focus-visible{

    outline:3px solid rgba(108,62,244,.35);

    outline-offset:4px;

}