/*==================================================
    LATUCIP-GO OFFICIAL WEBSITE
    Version : 2.0
    Author  : YASYA
==================================================*/


/*==================================================
    GOOGLE FONT
==================================================*/

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');


/*==================================================
    ROOT
==================================================*/

:root{

    --primary:#0E234A;
    --primary-light:#18366b;
    --secondary:#204D92;

    --gold:#C88709;
    --gold-light:#E9B94F;

    --white:#ffffff;

    --light:#F7F9FC;

    --gray:#6c757d;

    --text:#2B3445;

    --success:#22C55E;

    --danger:#ef4444;

    --border:#e7ebf3;



    --radius-xs:8px;
    --radius-sm:14px;
    --radius-md:20px;
    --radius-lg:30px;
    --radius-xl:50px;



    --space-xs:8px;
    --space-sm:16px;
    --space-md:24px;
    --space-lg:40px;
    --space-xl:70px;



    --shadow-sm:
    0 8px 20px rgba(0,0,0,.05);

    --shadow-md:
    0 15px 35px rgba(0,0,0,.08);

    --shadow-lg:
    0 25px 60px rgba(0,0,0,.12);



    --transition:.35s ease;

}



/*==================================================
RESET
==================================================*/

*{

margin:0;
padding:0;
box-sizing:border-box;

}

html{

scroll-behavior:smooth;

}

body{

font-family:'Poppins',sans-serif;

background:var(--light);

color:var(--text);

overflow-x:hidden;

line-height:1.7;

-webkit-font-smoothing:antialiased;

}



/*==================================================
SCROLLBAR
==================================================*/

::-webkit-scrollbar{

width:10px;

}

::-webkit-scrollbar-track{

background:#eef2f8;

}

::-webkit-scrollbar-thumb{

background:var(--gold);

border-radius:50px;

}

::-webkit-scrollbar-thumb:hover{

background:var(--primary);

}



/*==================================================
SELECTION
==================================================*/

::selection{

background:var(--gold);

color:white;

}



/*==================================================
LINK
==================================================*/

a{

text-decoration:none;

transition:var(--transition);

color:inherit;

}



/*==================================================
IMAGE
==================================================*/

img{

max-width:100%;

display:block;

}



/*==================================================
LIST
==================================================*/

ul{

list-style:none;

}



/*==================================================
CONTAINER
==================================================*/

.container{

width:min(1280px,92%);

margin:auto;

}



/*==================================================
SECTION
==================================================*/

.section{

padding:110px 0;

position:relative;

}



/*==================================================
SECTION HEADING
==================================================*/

.section-heading{

max-width:760px;

margin:auto;

text-align:center;

margin-bottom:70px;

}

.section-subtitle{

display:inline-block;

padding:8px 20px;

background:rgba(200,135,9,.10);

color:var(--gold);

border-radius:40px;

font-weight:600;

font-size:.9rem;

letter-spacing:.5px;

margin-bottom:18px;

}

.section-heading h2{

font-size:clamp(2rem,5vw,3.2rem);

color:var(--primary);

margin-bottom:18px;

font-weight:800;

}

.section-heading p{

color:var(--gray);

font-size:1.05rem;

}



/*==================================================
BUTTON
==================================================*/

.btn{

display:inline-flex;

align-items:center;

justify-content:center;

gap:12px;

padding:16px 36px;

border-radius:60px;

font-weight:600;

transition:var(--transition);

cursor:pointer;

}

.btn-primary{

background:linear-gradient(135deg,
var(--gold),
var(--gold-light));

color:white;

box-shadow:var(--shadow-md);

}

.btn-primary:hover{

transform:translateY(-4px);

box-shadow:0 18px 40px rgba(200,135,9,.30);

}

.btn-outline{

border:2px solid var(--primary);

color:var(--primary);

background:white;

}

.btn-outline:hover{

background:var(--primary);

color:white;

}



/*==================================================
LOADER
==================================================*/

#loader{

position:fixed;

inset:0;

background:white;

display:flex;

align-items:center;

justify-content:center;

z-index:99999;

transition:.6s;

}

.loader-box{

text-align:center;

}

.loader-box img{

width:90px;

margin:auto;

animation:logoFloat 3s infinite;

}

.loader-box h2{

margin-top:20px;

color:var(--primary);

font-size:2rem;

}

.loader-box p{

color:var(--gray);

margin-top:8px;

}

.loader-line{

width:240px;

height:6px;

background:#edf1f8;

margin-top:30px;

border-radius:50px;

overflow:hidden;

}

.loader-line span{

display:block;

width:40%;

height:100%;

background:linear-gradient(90deg,
var(--gold),
var(--primary));

animation:loading 1.8s infinite;

}



/*==================================================
BACKGROUND PARTICLE
==================================================*/

#particles-js{

position:fixed;

inset:0;

z-index:-2;

}



/*==================================================
BODY BACKGROUND
==================================================*/

body::before{

content:"";

position:fixed;

width:700px;

height:700px;

border-radius:50%;

background:rgba(200,135,9,.08);

top:-280px;

right:-220px;

filter:blur(120px);

z-index:-3;

}

body::after{

content:"";

position:fixed;

width:700px;

height:700px;

background:rgba(14,35,74,.08);

border-radius:50%;

left:-260px;

bottom:-260px;

filter:blur(120px);

z-index:-3;

}

/*==================================================
    HEADER
==================================================*/

#header{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    z-index:999;
    transition:.35s ease;
}

#header.scrolled{
    background:rgba(14,35,74,.88);
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
    box-shadow:0 8px 35px rgba(0,0,0,.12);
}

.navbar{
    height:90px;
    display:flex;
    align-items:center;
}

.navbar .container{
    display:flex;
    align-items:center;
    justify-content:space-between;
}

/*==================================================
LANGUAGE
==================================================*/

.language-dropdown{

    position:relative;

}

.language-btn{

    display:flex;

    align-items:center;

    gap:10px;

    padding:10px 16px;

    border:none;

    border-radius:30px;

    background:rgba(255,255,255,.08);

    color:#fff;

    cursor:pointer;

    transition:.3s;

    font-weight:600;

}

.language-btn:hover{

    background:rgba(255,255,255,.15);

}

.language-btn .arrow{

    font-size:12px;

    transition:.3s;

}

.language-btn.active .arrow{

    transform:rotate(180deg);

}

.language-menu{

    position:absolute;

    top:58px;

    right:0;

    width:250px;

    background:#fff;

    border-radius:20px;

    box-shadow:0 20px 60px rgba(0,0,0,.18);

    overflow:hidden;

    opacity:0;

    visibility:hidden;

    transform:translateY(12px);

    transition:.3s;

}

.language-menu.show{

    opacity:1;

    visibility:visible;

    transform:translateY(0);

}

.language-title{

    padding:18px;

    background:#163d7d;

    color:#fff;

    font-weight:700;

}

.language-item{

    width:100%;

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:16px 20px;

    border:none;

    background:#fff;

    cursor:pointer;

    transition:.25s;

    font-size:15px;

}

.language-item:hover{

    background:#f5f9ff;

}

.language-item i{

    opacity:0;

    color:#2fb95d;

}

.language-item.active i{

    opacity:1;

}

/*==================================================
LOGO
==================================================*/

.brand{
    display:flex;
    align-items:center;
    gap:18px;
}

.logo-kemen{
    width:58px;
}

.logo-app{
    width:62px;
}

.brand-divider{
    width:2px;
    height:42px;
    background:rgba(255,255,255,.25);
}

/*==================================================
MENU
==================================================*/

.nav-menu{
    display:flex;
    align-items:center;
    gap:35px;
}

.nav-menu a{
    color:white;
    font-weight:500;
    position:relative;
}

.nav-menu a::after{

content:"";

position:absolute;

left:0;

bottom:-8px;

width:0;

height:2px;

background:var(--gold);

transition:.35s;

}

.nav-menu a:hover::after{

width:100%;

}

.login-button{

background:linear-gradient(
135deg,
var(--gold),
var(--gold-light));

padding:13px 28px;

border-radius:60px;

color:white !important;

box-shadow:var(--shadow-md);

}

.login-button:hover{

transform:translateY(-3px);

}

.mobile-button{

display:none;

background:none;

border:none;

font-size:1.7rem;

color:white;

cursor:pointer;

}

/*==================================================
HERO
==================================================*/

.hero{

    position:relative;

    min-height:920px;

    padding-top:130px;

    padding-bottom:190px;

    display:flex;

    align-items:center;

    overflow:hidden;

    background:none;

}

/*==================================================
PATTERN
==================================================*/

.hero-grid{

display:grid;

grid-template-columns:1fr 1fr;

align-items:center;

gap:70px;

position:relative;

z-index:10;

padding-top:25px;

}

.hero::before{

    content:"";

    position:absolute;

    inset:0;

    background:
        url("../img/gedunglatucip.webp")
        center center/cover
        no-repeat;

    filter:blur(1.5px);

    transform:scale(1.02);

    z-index:0;

}

.hero::after{

content:"";

position:absolute;

inset:0;

background:

linear-gradient(

135deg,

rgba(9,28,63,.72),

rgba(20,56,108,.58),

rgba(36,89,166,.45)

);

z-index:1;

}

.hero-shadow{

position:absolute;

inset:0;

background:

radial-gradient(

circle at center,

rgba(255,255,255,0) 35%,

rgba(5,20,45,.28) 100%

);

z-index:3;

pointer-events:none;

}

/*==================================================
LEFT HERO
==================================================*/

.hero-left{

color:white;

}

.hero-badge{

display:inline-flex;

align-items:center;

gap:10px;

padding:10px 22px;

border-radius:50px;

background:rgba(255,255,255,.10);

backdrop-filter:blur(20px);

margin-bottom:22px;

font-weight:600;

}

.hero-left h4{

font-weight:500;

letter-spacing:2px;

margin-bottom:18px;

color:#d7e4ff;

}

.hero-left h1{

font-size:clamp(3.3rem,7vw,5.8rem);

font-weight:800;

line-height:1;

margin-bottom:15px;

}

.hero-left h2{

font-size:1.7rem;

font-weight:500;

margin-bottom:25px;

}

.hero-left p{

font-size:1.1rem;

max-width:620px;

color:#e6edf8;

margin-bottom:40px;

}

.hero-action{

display:flex;

gap:20px;

flex-wrap:wrap;

margin-bottom:45px;

}

.hero-highlight{

display:flex;

gap:50px;

}

.hero-highlight strong{

display:block;

font-size:2rem;

font-weight:800;

color:var(--gold-light);

}

.hero-highlight span{

color:#d6dce8;

}

/*==================================================
RIGHT HERO
==================================================*/

.hero-right{

    position:relative;

    display:flex;

    justify-content:center;

    align-items:center;

    min-height:620px;

    overflow:visible;

}

.hero-logo{

    position:relative;

    width:360px;

    max-width:88%;

    z-index:5;

    left:0;

    margin:0;

    animation:floating 6s ease-in-out infinite;

}

/*==================================================
RING
==================================================*/

.hero-ring{

    position:absolute;

    top:50%;

    left:50%;

    width:500px;

    height:500px;

    transform:translate(-50%,-50%);

    border-radius:50%;

    border:2px solid rgba(255,255,255,.10);

    animation:rotateSlow 30s linear infinite;

    z-index:2;

}

.ring2{

    width:620px;
    height:620px;

    opacity:.25;

    border-style:dashed;

    animation:rotateSlow2 35s linear infinite reverse;

}

/*==================================================
GLOW
==================================================*/

.hero-glow{

    position:absolute;

    top:50%;

    left:50%;

    width:480px;

    height:480px;

    transform:translate(-50%,-50%);

    border-radius:50%;

    z-index:1;

    pointer-events:none;

    background:
    radial-gradient(circle,
        rgba(255,204,90,.55) 0%,
        rgba(255,170,0,.25) 35%,
        rgba(38,95,182,.18) 65%,
        transparent 80%);

    filter:blur(55px);

}

/*==================================================
FLOATING BOX
==================================================*/

.floating-box{

position:absolute;

background:rgba(255,255,255,.12);

backdrop-filter:blur(18px);

padding:20px;

border-radius:22px;

width:170px;

text-align:center;

border:1px solid rgba(255,255,255,.15);

color:white;

box-shadow:0 15px 40px rgba(0,0,0,.18);

animation:floating 5s ease-in-out infinite;

}

.floating-box i{

font-size:2rem;

margin-bottom:12px;

color:var(--gold-light);

}

.box1{

top:70px;

left:0;

}

.box2{

right:0;

top:190px;

animation-delay:1.3s;

}

.box3{

bottom:70px;

left:30px;

animation-delay:2.2s;

}

/*==================================================
SCROLL INDICATOR
==================================================*/

.scroll-indicator{

position:absolute;

bottom:35px;

left:50%;

transform:translateX(-50%);

z-index:30;

}

.scroll-indicator a{

display:flex;

flex-direction:column;

align-items:center;

gap:10px;

color:white;

font-size:1.2rem;

animation:bounce 2s infinite;

}

/*==================================================
QUICK ACCESS
==================================================*/

.quick-access{

    position:relative;

    margin-top:-70px;

    padding-bottom:100px;

    background:#fff;

    z-index:5;

}

.quick-access::before{

    content:"";

    position:absolute;

    left:0;
    right:0;

    bottom:0;

    top:110px;

    background:#fff;

    z-index:-1;

}

.quick-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:28px;

}

.quick-card{

background:white;

border-radius:26px;

padding:35px;

    box-shadow:
        0 18px 45px rgba(0,0,0,.08);

transition:.35s;

border:1px solid transparent;

}

.quick-card:hover{

transform:translateY(-10px);

border-color:var(--gold);

box-shadow:0 25px 45px rgba(0,0,0,.10);

}

.quick-card i{

font-size:2.5rem;

color:var(--gold);

margin-bottom:20px;

}

.quick-card h3{

font-size:1.2rem;

margin-bottom:12px;

color:var(--primary);

}

.quick-card p{

color:var(--gray);

}

/*==================================================
    ABOUT SECTION
==================================================*/

.about-section{
    background:#fff;
    position:relative;
    overflow:hidden;
}

.about-section::before{

content:"";

position:absolute;

width:520px;

height:520px;

border-radius:50%;

background:radial-gradient(circle,

rgba(13,74,154,.05),

transparent 70%);

top:-220px;

left:-180px;

}

.about-grid{
    display:grid;
    grid-template-columns:1.1fr .9fr;
    gap:70px;
    align-items:center;
}

.about-content{
    display:flex;
    flex-direction:column;
    gap:28px;
}

.about-item{
    display:flex;
    gap:22px;
    align-items:flex-start;
    padding:28px;
    background:#fff;
    border-radius:24px;
    border:1px solid var(--border);
    box-shadow:var(--shadow-sm);
    transition:var(--transition);
}

.about-item:hover{
    transform:translateY(-8px);
    border-color:var(--gold);
    box-shadow:var(--shadow-md);
}

.about-icon{
    width:72px;
    height:72px;
    border-radius:20px;
    background:linear-gradient(135deg,var(--gold),var(--gold-light));
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    font-size:1.8rem;
    flex-shrink:0;
}

.about-item h3{
    color:var(--primary);
    margin-bottom:8px;
}

.about-item p{
    color:var(--gray);
}

.about-image{

display:flex;

justify-content:center;

align-items:center;

padding:20px;

}

.about-image img{

width:100%;

max-width:560px;

height:auto;

display:block;

animation:floating 6s ease-in-out infinite;

filter:drop-shadow(0 25px 45px rgba(0,0,0,.15));

}

/*==================================================
    TIMELINE
==================================================*/

.timeline-section{
    background:linear-gradient(180deg,#f8fbff,#eef4fc);
}

.timeline{
    display:grid;
    grid-template-columns:repeat(7,1fr);
    align-items:center;
    gap:15px;
}

.timeline-card{
    background:#fff;
    padding:30px 20px;
    border-radius:24px;
    text-align:center;
    box-shadow:var(--shadow-sm);
    transition:var(--transition);
}

.timeline-card:hover{
    transform:translateY(-10px);
    box-shadow:var(--shadow-md);
}

.timeline-card.active{
    background:linear-gradient(135deg,var(--primary),var(--secondary));
    color:#fff;
}

.timeline-card.active h4,
.timeline-card.active p{
    color:#fff;
}

.timeline-circle{
    width:70px;
    height:70px;
    margin:auto auto 20px;
    border-radius:50%;
    background:linear-gradient(135deg,var(--gold),var(--gold-light));
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    font-size:1.7rem;
}

.timeline-line{
    height:4px;
    border-radius:50px;
    background:linear-gradient(90deg,var(--gold),var(--primary));
    position:relative;
    overflow:hidden;
}

.timeline-line::after{
    content:"";
    position:absolute;
    inset:0;
    width:30%;
    background:#fff;
    opacity:.5;
    animation:lineMove 2.5s linear infinite;
}

.timeline-card h4{
    color:var(--primary);
    margin-bottom:10px;
}

.timeline-card p{
    color:var(--gray);
    font-size:.95rem;
}

/*==================================================
    PROCESS
==================================================*/

.process-section{
    background:#fff;
}

.process-grid{
    display:grid;
    grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;
    align-items:center;
    gap:15px;
}

.process-card{
    background:#fff;
    border:1px solid var(--border);
    border-radius:26px;
    padding:35px 25px;
    text-align:center;
    position:relative;
    box-shadow:var(--shadow-sm);
    transition:var(--transition);
}

.process-card:hover{
    transform:translateY(-10px);
    border-color:var(--gold);
    box-shadow:var(--shadow-md);
}

.process-number{
    position:absolute;
    top:-18px;
    left:50%;
    transform:translateX(-50%);
    width:42px;
    height:42px;
    border-radius:50%;
    background:var(--gold);
    color:#fff;
    font-size:.9rem;
    font-weight:700;
    display:flex;
    align-items:center;
    justify-content:center;
}

.process-card i{
    font-size:2.6rem;
    color:var(--primary);
    margin-bottom:20px;
}

.process-card h3{
    color:var(--primary);
    margin-bottom:12px;
}

.process-card p{
    color:var(--gray);
}

.process-arrow{
    font-size:2rem;
    color:var(--gold);
    animation:arrowMove 1.8s infinite;
}

/*==================================================
    SERVICES
==================================================*/

.services-section{
    background:linear-gradient(180deg,#f8fbff,#eef4fc);
}

.services-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}

.service-card{
    background:#fff;
    border-radius:28px;
    padding:45px 35px;
    text-align:center;
    box-shadow:var(--shadow-sm);
    border:1px solid transparent;
    transition:var(--transition);
    position:relative;
    overflow:hidden;
}

.service-card::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:5px;
    background:linear-gradient(90deg,var(--gold),var(--primary));
    transform:scaleX(0);
    transform-origin:left;
    transition:.4s;
}

.service-card:hover::before{
    transform:scaleX(1);
}

.service-card:hover{
    transform:translateY(-12px);
    border-color:rgba(200,135,9,.35);
    box-shadow:0 25px 55px rgba(0,0,0,.12);
}

.service-icon{
    width:95px;
    height:95px;
    border-radius:24px;
    margin:0 auto 25px;
    background:linear-gradient(135deg,var(--primary),var(--secondary));
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:2.3rem;
    box-shadow:0 15px 35px rgba(14,35,74,.25);
}

.service-card h3{
    color:var(--primary);
    margin-bottom:18px;
    font-size:1.4rem;
}

.service-card p{
    color:var(--gray);
    line-height:1.8;
}

/*==================================================
    VALUES SECTION
==================================================*/

.values-section{
    background:#ffffff;
}

.values-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:28px;
}

.value-card{
    background:rgba(255,255,255,.75);
    backdrop-filter:blur(14px);
    border:1px solid var(--border);
    border-radius:28px;
    padding:40px 28px;
    text-align:center;
    box-shadow:var(--shadow-sm);
    transition:var(--transition);
}

.value-card:hover{
    transform:translateY(-12px);
    border-color:var(--gold);
    box-shadow:var(--shadow-lg);
}

.value-icon{
    width:85px;
    height:85px;
    margin:auto auto 25px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    background:linear-gradient(135deg,var(--gold),var(--gold-light));
    color:#fff;
    font-size:2rem;
}

.value-card h3{
    color:var(--primary);
    margin-bottom:15px;
}

.value-card p{
    color:var(--gray);
}

/*==================================================
    WHY SECTION
==================================================*/

.why-section{
    background:linear-gradient(180deg,#f8fbff,#eef4fc);
}

.why-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:30px;
}

.why-card{
    background:#fff;
    padding:38px 28px;
    border-radius:26px;
    text-align:center;
    box-shadow:var(--shadow-sm);
    transition:var(--transition);
}

.why-card:hover{
    transform:translateY(-10px);
    box-shadow:var(--shadow-lg);
}

.why-card i{
    width:85px;
    height:85px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    margin:auto auto 20px;
    font-size:2rem;
    color:#fff;
    background:linear-gradient(135deg,var(--primary),var(--secondary));
}

.why-card h3{
    color:var(--primary);
    margin-bottom:12px;
}

.why-card p{
    color:var(--gray);
}

/*==================================================
    STATISTICS
==================================================*/

.statistics-section{
    position:relative;
    background:linear-gradient(135deg,var(--primary),var(--secondary));
    color:#fff;
    overflow:hidden;
}

.statistics-section::before{
    content:"";
    position:absolute;
    inset:0;
    background:url("../img/pattern.svg");
    opacity:.05;
}

.statistics-section .section-heading{
    position:relative;
    z-index:2;
}

.statistics-section .section-subtitle{
    background:rgba(255,255,255,.15);
    color:#fff;
}

.statistics-section .section-heading h2,
.statistics-section .section-heading p{
    color:#fff;
}

.statistics-grid{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:30px;
}

.stat-card{
    background:rgba(255,255,255,.08);
    backdrop-filter:blur(16px);
    border:1px solid rgba(255,255,255,.12);
    border-radius:28px;
    text-align:center;
    padding:45px 25px;
    transition:var(--transition);
}

.stat-card:hover{
    transform:translateY(-10px);
    background:rgba(255,255,255,.14);
}

.stat-card i{
    font-size:2.6rem;
    color:var(--gold-light);
    margin-bottom:18px;
}

.stat-card h2{
    font-size:3rem;
    font-weight:800;
    margin-bottom:10px;
}

.stat-card span{
    color:#e8eef8;
}

/*==================================================
    CTA
==================================================*/

.cta-section{
    padding:120px 0;
    background:#fff;
}

.cta-wrapper{
    display:grid;
    grid-template-columns:1.2fr .8fr;
    align-items:center;
    gap:60px;
    padding:70px;
    border-radius:40px;
    overflow:hidden;
    position:relative;
    background:linear-gradient(135deg,var(--gold),var(--gold-light));
    color:#fff;
}

.cta-wrapper::before{
    content:"";
    position:absolute;
    width:320px;
    height:320px;
    border-radius:50%;
    background:rgba(255,255,255,.15);
    right:-120px;
    top:-120px;
}

.cta-content{
    position:relative;
    z-index:2;
}

.cta-content span{
    display:inline-block;
    margin-bottom:15px;
    padding:8px 18px;
    border-radius:30px;
    background:rgba(255,255,255,.15);
    font-weight:600;
}

.cta-content h2{
    font-size:clamp(2rem,4vw,3.4rem);
    line-height:1.2;
    margin-bottom:20px;
}

.cta-content p{
    max-width:560px;
    margin-bottom:35px;
}

.cta-button{
    display:flex;
    gap:18px;
    flex-wrap:wrap;
}

.cta-button .btn-primary{
    background:#fff;
    color:var(--primary);
}

.cta-button .btn-outline{
    border:2px solid #fff;
    color:#fff;
    background:transparent;
}

.cta-button .btn-outline:hover{
    background:#fff;
    color:var(--primary);
}

.cta-image{
    display:flex;
    justify-content:center;
    position:relative;
}

.cta-image img{
    width:260px;
    animation:logoFloat 5s ease-in-out infinite;
    filter:drop-shadow(0 25px 45px rgba(0,0,0,.18));
}

/*==========================================
FOOTER
==========================================*/

.footer{

    background:#081a37;

    color:#fff;

    padding:80px 0 30px;

}

.footer-grid{

    display:grid;

    grid-template-columns:
        1.2fr
        1fr
        1.4fr
        .9fr;

    gap:55px;

}

.footer h4{

    margin-bottom:22px;

    font-size:20px;

    color:#fff;

}

.footer-about h3{

    margin:20px 0 10px;

    font-size:24px;

}

.footer-about p{

    color:#c7d2e8;

    line-height:1.8;

}

.footer-logo-group{

    display:flex;

    align-items:center;

    gap:18px;

}

.footer-logo{

    width:72px;

}

.footer-kemen{

    width:62px;

}

.footer ul{

    list-style:none;

    padding:0;

    margin:0;

}

.footer li{

    margin-bottom:14px;

}

.footer a{

    color:#d6e2f5;

    text-decoration:none;

    transition:.3s;

}

.footer a:hover{

    color:#f0b323;

}

.footer-contact li{

    display:flex;

    gap:12px;

    align-items:flex-start;

    line-height:1.7;

}

.footer-contact i{

    color:#f0b323;

    width:18px;

    margin-top:4px;

}

.footer-social{

    display:flex;

    gap:14px;

    flex-wrap:wrap;

}

.footer-social a{

    width:46px;

    height:46px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    background:rgba(255,255,255,.08);

    color:#fff;

    font-size:20px;

    transition:.3s;

}

.footer-social a:hover{

    background:#f0b323;

    color:#0d234a;

    transform:translateY(-5px);

}

.footer-bottom{

    border-top:1px solid rgba(255,255,255,.08);

    margin-top:60px;

    padding-top:25px;

    text-align:center;

    color:#aebdd7;

    line-height:1.8;

}

/*==================================================
    BACK TO TOP
==================================================*/

#backToTop{
    position:fixed;
    right:30px;
    bottom:30px;
    width:55px;
    height:55px;
    border:none;
    border-radius:50%;
    background:linear-gradient(135deg,var(--gold),var(--gold-light));
    color:#fff;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:1.2rem;
    box-shadow:var(--shadow-md);
    opacity:0;
    visibility:hidden;
    transition:var(--transition);
    z-index:999;
}

#backToTop.show{
    opacity:1;
    visibility:visible;
}

#backToTop:hover{
    transform:translateY(-5px);
}

/*==================================================
    ANIMATION
==================================================*/

@keyframes loading{

    0%{
        transform:translateX(-120%);
    }

    100%{
        transform:translateX(320%);
    }

}

@keyframes logoFloat{

    0%{
        transform:translateY(0px);
    }

    50%{
        transform:translateY(-18px);
    }

    100%{
        transform:translateY(0px);
    }

}

@keyframes floating{

    0%{
        transform:translateY(0px);
    }

    50%{
        transform:translateY(-15px);
    }

    100%{
        transform:translateY(0px);
    }

}

@keyframes rotateSlow{

    from{

        transform:translate(-50%,-50%) rotate(0deg);

    }

    to{

        transform:translate(-50%,-50%) rotate(360deg);

    }

}

@keyframes rotateSlow2{

    from{

        transform:translate(-50%,-50%) scale(1.18) rotate(0deg);

    }

    to{

        transform:translate(-50%,-50%) scale(1.18) rotate(360deg);

    }

}

@keyframes bounce{

    0%,20%,50%,80%,100%{
        transform:translateY(0);
    }

    40%{
        transform:translateY(-12px);
    }

    60%{
        transform:translateY(-6px);
    }

}

@keyframes bgMove{

    from{
        background-position:0 0;
    }

    to{
        background-position:1000px 1000px;
    }

}

@keyframes lineMove{

    from{
        transform:translateX(-120%);
    }

    to{
        transform:translateX(420%);
    }

}

@keyframes arrowMove{

    0%{
        transform:translateX(0);
        opacity:.5;
    }

    50%{
        transform:translateX(10px);
        opacity:1;
    }

    100%{
        transform:translateX(0);
        opacity:.5;
    }

}

@keyframes fadeUp{

    from{

        opacity:0;

        transform:
        translateY(50px);

    }

    to{

        opacity:1;

        transform:
        translateY(0);

    }

}

@keyframes fadeLeft{

    from{

        opacity:0;

        transform:
        translateX(-60px);

    }

    to{

        opacity:1;

        transform:
        translateX(0);

    }

}

@keyframes fadeRight{

    from{

        opacity:0;

        transform:
        translateX(60px);

    }

    to{

        opacity:1;

        transform:
        translateX(0);

    }

}

@keyframes zoomIn{

    from{

        opacity:0;

        transform:
        scale(.8);

    }

    to{

        opacity:1;

        transform:
        scale(1);

    }

}

/*==================================================
    SCROLL ANIMATION
==================================================*/

.reveal{

    opacity:0;

    transform:translateY(60px);

    transition:all .8s ease;

}

.reveal.active{

    opacity:1;

    transform:translateY(0);

}

/*==================================================
    IMAGE EFFECT
==================================================*/

img{

    user-select:none;

    -webkit-user-drag:none;

}

/*==================================================
    FOCUS
==================================================*/

button:focus,
a:focus{

    outline:none;

}

/*==================================================
    HOVER EFFECT
==================================================*/

.service-card,
.value-card,
.why-card,
.quick-card,
.process-card,
.timeline-card,
.about-item{

    will-change:transform;

}

/*==================================================
    GLASS EFFECT
==================================================*/

.glass{

    background:
    rgba(255,255,255,.15);

    backdrop-filter:
    blur(20px);

    -webkit-backdrop-filter:
    blur(20px);

    border:
    1px solid rgba(255,255,255,.20);

}

/*==================================================
    SHADOW
==================================================*/

.shadow{

    box-shadow:var(--shadow-lg);

}

/*==================================================
    TEXT
==================================================*/

.text-center{

    text-align:center;

}

.text-white{

    color:white;

}

.text-gold{

    color:var(--gold);

}

/*==================================================
    DISPLAY
==================================================*/

.d-flex{

    display:flex;

}

.justify-center{

    justify-content:center;

}

.align-center{

    align-items:center;

}

/*==================================================
    SPACING
==================================================*/

.mt-1{margin-top:10px;}
.mt-2{margin-top:20px;}
.mt-3{margin-top:30px;}
.mt-4{margin-top:40px;}

.mb-1{margin-bottom:10px;}
.mb-2{margin-bottom:20px;}
.mb-3{margin-bottom:30px;}
.mb-4{margin-bottom:40px;}

/*==================================================
    TRANSITION
==================================================*/

*{

transition:
background .3s,
color .3s,
border .3s,
box-shadow .3s,
transform .3s;

}

/*==================================================
ACTIVE MENU
==================================================*/

.nav-menu a.active{

    color:var(--gold-light);

}

.nav-menu a.active::after{

    width:100%;

}

/*==================================================
PARALLAX PERFORMANCE
==================================================*/

.hero-logo,
.hero-ring,
.hero-glow{

will-change:transform;

transition:transform .15s linear;

}

/*==================================================
REDUCE MOTION
==================================================*/

@media (prefers-reduced-motion:reduce){

*{

animation:none !important;

transition:none !important;

scroll-behavior:auto !important;

}

}

/*=====================================
    HERO WAVE
=====================================*/

.hero-wave{

position:absolute;

left:0;

bottom:-45px;

width:100%;

z-index:12;

pointer-events:none;

}

.hero-wave img{

    display:block;

    width:100%;

    height:auto;

}
.hero-title span{

display:block;

margin-top:10px;

font-size:42px;

font-weight:800;

letter-spacing:6px;

background:linear-gradient(90deg,#f0b323,#ffd76a);

-webkit-background-clip:text;

-webkit-text-fill-color:transparent;

text-transform:uppercase;

}
.logo-latucip{

height:46px;

width:auto;

transition:.4s;

}

.logo-latucip:hover{

transform:scale(1.08);

}
.hero-image{

display:flex;

justify-content:center;

align-items:center;

}

.hero-image img{

width:100%;

max-width:520px;

height:auto;

animation:floating 6s ease-in-out infinite;

}
.hero-image{

position:relative;

}

.hero-image::before{

content:"";

position:absolute;

width:420px;

height:420px;

border-radius:50%;

background:radial-gradient(circle,
rgba(240,179,35,.35) 0%,
rgba(240,179,35,0) 70%);

filter:blur(35px);

z-index:-1;

}

/*==================================================
    LIVE SUPPORT WIDGET
==================================================*/

.support-widget{

    position:fixed;

    right:28px;

    bottom:28px;

    z-index:99999;

}

/*====================================
    FLOAT BUTTON
====================================*/

.support-toggle{

    width:68px;

    height:68px;

    border:none;

    border-radius:50%;

    background:linear-gradient(135deg,#25D366,#18B954);

    color:#fff;

    cursor:pointer;

    font-size:34px;

    display:flex;

    align-items:center;

    justify-content:center;

    box-shadow:0 15px 40px rgba(37,211,102,.35);

    transition:.35s;

    animation:supportPulse 2.5s infinite;

}

.support-toggle:hover{

    transform:translateY(-4px) scale(1.06);

}

/*====================================
    POPUP
====================================*/

.support-popup{

    position:absolute;

    right:0;

    bottom:90px;

    width:360px;

    background:#fff;

    border-radius:24px;

    overflow:hidden;

    box-shadow:0 25px 60px rgba(0,0,0,.18);

    opacity:0;

    visibility:hidden;

    transform:translateY(25px);

    transition:.35s;

}

.support-popup.show{

    opacity:1;

    visibility:visible;

    transform:translateY(0);

}

/*====================================
    HEADER
====================================*/

.support-header{

    background:linear-gradient(135deg,#163d7d,#2455a6);

    color:#fff;

    padding:24px;

    display:flex;

    gap:18px;

    align-items:center;

}

.support-avatar{

    width:62px;

    height:62px;

    border-radius:18px;

    background:rgba(255,255,255,.15);

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:26px;

    flex-shrink:0;

}

.support-title h3{

    margin:0;

    font-size:20px;

    font-weight:700;

}

.support-title p{

    margin:4px 0 8px;

    opacity:.9;

    font-size:14px;

}

.support-title span{

    display:flex;

    align-items:center;

    gap:8px;

    font-size:13px;

}

.support-title span i{

    color:#32e676;

    font-size:10px;

}

/*====================================
    BODY
====================================*/

.support-body{

    padding:20px;

    display:flex;

    flex-direction:column;

    gap:18px;

}

/*====================================
    CARD
====================================*/

.support-card{

    display:flex;

    gap:16px;

    padding:18px;

    border-radius:18px;

    background:#f8fbff;

    border:1px solid #edf2fb;

    transition:.35s;

}

.support-card:hover{

    transform:translateY(-3px);

    box-shadow:0 15px 30px rgba(0,0,0,.08);

}

.support-icon{

    width:58px;

    height:58px;

    border-radius:16px;

    background:#163d7d;

    color:#fff;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:22px;

    flex-shrink:0;

}

.support-icon.warning{

    background:#f0b323;

}

.support-content{

    flex:1;

}

.support-content h4{

    margin:0 0 8px;

    color:#163d7d;

    font-size:17px;

}

.support-content p{

    margin:0 0 14px;

    color:#666;

    font-size:14px;

    line-height:1.6;

}

/*====================================
    BUTTON
====================================*/

.support-chat{

    display:inline-flex;

    align-items:center;

    gap:10px;

    text-decoration:none;

    background:#25D366;

    color:#fff;

    padding:10px 18px;

    border-radius:30px;

    font-size:14px;

    font-weight:600;

    transition:.3s;

}

.support-chat:hover{

    background:#1FB958;

    transform:translateY(-2px);

}

/*====================================
    ANIMATION
====================================*/

@keyframes supportPulse{

0%{

box-shadow:0 0 0 0 rgba(37,211,102,.45);

}

70%{

box-shadow:0 0 0 18px rgba(37,211,102,0);

}

100%{

box-shadow:0 0 0 0 rgba(37,211,102,0);

}

}

.support-toggle{

    transition:.35s;

}

.support-toggle.active{

    transform:rotate(135deg);

}

.support-popup{

    transform-origin:bottom right;

}

/*==============================
BACK TO TOP
==============================*/

#backToTop{

    position:fixed;
    
    width:58px;
    height:58px;

    border-radius:50%;

    right:30px;
    bottom:110px;
    
    z-index:998;

}