/*==========================================================
MANUFACTURING PROCESS
==========================================================*/

.gf-process{

    position:relative;

    padding:30px 0;

    overflow:hidden;

    background:
    radial-gradient(circle at top right,
    rgba(212,175,55,.08) 0%,
    transparent 28%),

    radial-gradient(circle at bottom left,
    rgba(212,175,55,.08) 0%,
    transparent 32%),

    #fff;

}


/*==========================================================
HEADING
==========================================================*/

.gf-process-heading{

    max-width:860px;

    margin:0 auto 80px;

    text-align:center;

}

.gf-process-label{

    display:inline-block;

    padding:12px 24px;

    border-radius:50px;

    background:#FFF7DE;

    color:#C79A12;

    font-size:13px;

    font-weight:700;

    letter-spacing:2px;

    text-transform:uppercase;

    margin-bottom:24px;

}

.gf-process-heading h2{

    font-size:68px;

    line-height:1.05;

    font-weight:800;

    color:#111;

    margin-bottom:24px;

}

.gf-process-heading h2 span{

    display:block;

    color:#D4AF37;

}

.gf-process-heading p{

    max-width:760px;

    margin:auto;

    font-size:20px;

    line-height:1.8;

    color:#666;

}


/*==========================================================
PROCESS GRID
==========================================================*/

.gf-process-grid{

    position:relative;

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:40px;

    align-items:stretch;

}


/*==========================================================
PROCESS CARD
==========================================================*/

.gf-process-card{

    position:relative;

    background:#fff;

    border-radius:30px;

    padding:38px 34px;

    border:1px solid rgba(212,175,55,.14);

    box-shadow:
    0 15px 40px rgba(0,0,0,.06);

    transition:.45s cubic-bezier(.2,.8,.2,1);

    overflow:hidden;

    z-index:2;

}

.gf-process-card:hover{

    transform:translateY(-12px);

    box-shadow:
    0 28px 65px rgba(0,0,0,.10);

}


/*==========================================================
TOP GOLD LINE
==========================================================*/

.gf-process-card::before{

    content:"";

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:5px;

    background:linear-gradient(
        90deg,
        #D4AF37,
        #FFD86C,
        #D4AF37
    );

    transform:scaleX(0);

    transform-origin:left;

    transition:.45s;

}

.gf-process-card:hover::before{

    transform:scaleX(1);

}


/*==========================================================
STEP NUMBER
==========================================================*/

.gf-process-number{

    position:absolute;

    top:22px;

    right:24px;

    font-size:44px;

    font-weight:900;

    color:rgba(212,175,55,.10);

    line-height:1;

    user-select:none;

}


/*==========================================================
ICON
==========================================================*/

.gf-process-icon{

    width:74px;

    height:74px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    margin-bottom:28px;

    font-size:30px;

    color:#C79A12;

    background:linear-gradient(
        135deg,
        #FFF8E4,
        #FFE8A4
    );

    box-shadow:
    0 12px 30px rgba(212,175,55,.25);

    transition:.4s;

}

.gf-process-card:hover .gf-process-icon{

    transform:rotate(-10deg) scale(1.08);

}


/*==========================================================
CONTENT
==========================================================*/

.gf-process-title{

    font-size:28px;

    line-height:1.25;

    font-weight:800;

    color:#111;

    margin-bottom:16px;

    transition:.35s;

}

.gf-process-text{

    font-size:17px;

    line-height:1.8;

    color:#666;

    transition:.35s;

}

.gf-process-card:hover .gf-process-title{

    color:#C79A12;

}


/*==========================================================
TIMELINE LINE
==========================================================*/

.gf-process-grid::before{

    content:"";

    position:absolute;

    top:37px;

    left:12%;

    width:76%;

    height:4px;

    border-radius:50px;

    background:linear-gradient(
        90deg,
        rgba(212,175,55,.25),
        rgba(212,175,55,.75),
        rgba(212,175,55,.25)
    );

    z-index:0;

}


/*==========================================================
GOLD GLOW
==========================================================*/

.gf-process-card::after{

    content:"";

    position:absolute;

    width:220px;

    height:220px;

    right:-70px;

    top:-70px;

    border-radius:50%;

    background:radial-gradient(circle,
        rgba(212,175,55,.18) 0%,
        rgba(212,175,55,.06) 45%,
        transparent 75%);

    opacity:0;

    transition:.45s;

    pointer-events:none;

}

.gf-process-card:hover::after{

    opacity:1;

    transform:scale(1.15);

}


/*==========================================================
CARD BORDER
==========================================================*/

.gf-process-card{

    isolation:isolate;

}

.gf-process-card>*{

    position:relative;

    z-index:2;

}


/*==========================================================
ICON ANIMATION
==========================================================*/

.gf-process-card:hover .gf-process-icon{

    background:linear-gradient(
        135deg,
        #FFD86C,
        #D4AF37
    );

    color:#fff;

}


/*==========================================================
TABLET
==========================================================*/

@media (max-width:1024px){

.gf-process{

    padding:70px 0;

}

.gf-process-heading{

    margin-bottom:50px;

}

.gf-process-heading h2{

    font-size:50px;

}

.gf-process-heading p{

    font-size:18px;

}

.gf-process-grid{

    grid-template-columns:repeat(2,1fr);

    gap:24px;

}

.gf-process-grid::before{

    display:none;

}

.gf-process-card{

    padding:30px 28px;

}

.gf-process-icon{

    width:64px;

    height:64px;

    font-size:28px;

}

.gf-process-title{

    font-size:24px;

}

.gf-process-text{

    font-size:16px;

}

.gf-process-number{

    font-size:38px;

}

}



/*==========================================================
MOBILE
==========================================================*/

@media (max-width:767px){

.gf-process{

    padding:60px 0;

}

.gf-process-heading{

    margin-bottom:35px;

    padding:0 18px;

}

.gf-process-heading h2{

    font-size:34px;

}

.gf-process-heading p{

    font-size:15px;

    line-height:1.7;

}

.gf-process-grid{

    grid-template-columns:1fr;

    gap:20px;

}

.gf-process-grid::before{

    display:none;

}

.gf-process-card{

    padding:28px 24px;

    border-radius:22px;

}

.gf-process-icon{

    width:58px;

    height:58px;

    font-size:24px;

    margin-bottom:20px;

}

.gf-process-title{

    font-size:22px;

}

.gf-process-text{

    font-size:15px;

    line-height:1.7;

}

.gf-process-number{

    font-size:34px;

    top:18px;

    right:20px;

}

}