/*
==========================================================
MYAYA TECHNOLOGIES V2
Layout System
==========================================================
*/

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

.container{

width:min(92%,1300px);

margin-inline:auto;

}

/*==========================================================
SECTIONS
==========================================================*/

.section{

position:relative;

padding:120px 0;

overflow:hidden;

}

.section-sm{

padding:80px 0;

}

.section-lg{

padding:160px 0;

}

/*==========================================================
GRID SYSTEM
==========================================================*/

.grid{

display:grid;

gap:2rem;

}

.grid-2{

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

}

.grid-3{

grid-template-columns:repeat(3,1fr);

}

.grid-4{

grid-template-columns:repeat(4,1fr);

}

.grid-auto{

grid-template-columns:
repeat(auto-fit,minmax(280px,1fr));

}

/*==========================================================
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;

}

/*==========================================================
HERO
==========================================================*/

.hero{

min-height:100vh;

display:flex;

align-items:center;

position:relative;

padding-top:120px;

}

.hero-grid{

display:grid;

grid-template-columns:1.1fr .9fr;

gap:5rem;

align-items:center;

}

.hero-content{

max-width:700px;

}

.hero-subtitle{

display:inline-flex;

align-items:center;

gap:.6rem;

padding:10px 20px;

margin-bottom:25px;

border-radius:999px;

background:rgba(255,255,255,.05);

border:1px solid rgba(255,255,255,.08);

font-size:.9rem;

font-weight:600;

color:var(--primary);

backdrop-filter:blur(12px);

}

.hero-title{

font-size:clamp(3rem,7vw,5.8rem);

font-weight:800;

line-height:1.05;

margin-bottom:25px;

}

.hero-title span{

color:var(--primary);

text-shadow:0 0 30px rgba(0,232,255,.4);

}

.hero-text{

font-size:1.15rem;

color:var(--text-secondary);

max-width:650px;

margin-bottom:45px;

line-height:1.8;

}

.hero-buttons{

display:flex;

gap:20px;

flex-wrap:wrap;

}

.hero-image{

display:flex;

justify-content:center;

align-items:center;

position:relative;

}

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

.content{

max-width:800px;

}

.content-center{

max-width:850px;

margin:auto;

text-align:center;

}

/*==========================================================
SPACING
==========================================================*/

.mt-1{margin-top:1rem;}
.mt-2{margin-top:2rem;}
.mt-3{margin-top:3rem;}
.mt-4{margin-top:4rem;}
.mt-5{margin-top:5rem;}

.mb-1{margin-bottom:1rem;}
.mb-2{margin-bottom:2rem;}
.mb-3{margin-bottom:3rem;}
.mb-4{margin-bottom:4rem;}
.mb-5{margin-bottom:5rem;}

/*==========================================================
GAP
==========================================================*/

.gap-1{gap:1rem;}
.gap-2{gap:2rem;}
.gap-3{gap:3rem;}
.gap-4{gap:4rem;}
.gap-5{gap:5rem;}

/*==========================================================
POSITION HELPERS
==========================================================*/

.relative{

position:relative;

}

.absolute{

position:absolute;

}

.overflow-hidden{

overflow:hidden;

}

/*==========================================================
DIVIDERS
==========================================================*/

.divider{

width:100%;

height:1px;

background:linear-gradient(
90deg,
transparent,
rgba(255,255,255,.12),
transparent
);

margin:80px 0;

}

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

@media(max-width:1100px){

.hero-grid{

grid-template-columns:1fr;

text-align:center;

}

.hero-content{

margin:auto;

}

.hero-buttons{

justify-content:center;

}

.hero-image{

margin-top:60px;

}

}

@media(max-width:768px){

.section{

padding:90px 0;

}

.hero{

padding-top:100px;

}

.hero-title{

font-size:3rem;

}

.hero-text{

font-size:1rem;

}

.grid-2,
.grid-3,
.grid-4{

grid-template-columns:1fr;

}

.container{

width:94%;

}

}
