/*==================================================
 TOYOTA PROMO LANDING PAGE 2026
 Author : Muhamad Ikbal
 Version : 1.0
==================================================*/

/*=========================
GOOGLE FONT
=========================*/

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');

/*=========================
ROOT COLOR
=========================*/

:root{

    --primary:#EB0A1E;
    --primary-dark:#C60018;

    --secondary:#111827;

    --white:#ffffff;
    --black:#000000;

    --text:#444444;
    --text-light:#777777;

    --bg:#ffffff;
    --bg-light:#F7F8FA;

    --border:#E5E7EB;

    --success:#22C55E;

    --radius:18px;
    --radius-sm:12px;

    --shadow:
    0 15px 35px rgba(0,0,0,.08);

    --transition:.35s ease;

}

/*=========================
RESET
=========================*/

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{

    scroll-behavior:smooth;

}

body{

    font-family:'Poppins',sans-serif;

    color:var(--text);

    background:var(--bg);

    line-height:1.7;

    overflow-x:hidden;

}

/*=========================
TEXT
=========================*/

h1,
h2,
h3,
h4,
h5,
h6{

    color:var(--secondary);

    font-weight:700;

    line-height:1.3;

}

p{

    color:var(--text-light);

}

a{

    text-decoration:none;

    transition:var(--transition);

}

ul{

    list-style:none;

}

img{

    width:100%;

    display:block;

}

button{

    font-family:inherit;

}

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

.container{

    width:min(1180px,92%);

    margin:auto;

}

section{

    padding:90px 0;

}

/*=========================
SECTION TITLE
=========================*/

.section-title{

    max-width:760px;

    margin:auto auto 70px;

    text-align:center;

}

.section-title span{

    display:inline-block;

    color:var(--primary);

    font-size:14px;

    font-weight:700;

    letter-spacing:2px;

    text-transform:uppercase;

    margin-bottom:15px;

}

.section-title h2{

    font-size:42px;

    margin-bottom:20px;

}

.section-title p{

    font-size:16px;

}

/*=========================
BUTTON
=========================*/

.btn-primary,

.btn-secondary,

.btn-wa,

.btn-header,

.promo-btn{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:10px;

    padding:15px 32px;

    border-radius:50px;

    font-weight:600;

    transition:var(--transition);

}

.btn-primary,

.btn-wa,

.btn-header,

.promo-btn{

    background:var(--primary);

    color:#fff;

}

.btn-primary:hover,

.btn-wa:hover,

.btn-header:hover,

.promo-btn:hover{

    background:var(--primary-dark);

    transform:translateY(-3px);

}

.btn-secondary{

    border:2px solid var(--primary);

    color:var(--primary);

    background:#fff;

}

.btn-secondary:hover{

    background:var(--primary);

    color:#fff;

}

/*=========================
UTILITY
=========================*/

.text-center{

    text-align:center;

}

.mt-1{

    margin-top:10px;

}

.mt-2{

    margin-top:20px;

}

.mt-3{

    margin-top:30px;

}

.mt-4{

    margin-top:40px;

}

.mt-5{

    margin-top:50px;

}

.mb-1{

    margin-bottom:10px;

}

.mb-2{

    margin-bottom:20px;

}

.mb-3{

    margin-bottom:30px;

}

.mb-4{

    margin-bottom:40px;

}

.mb-5{

    margin-bottom:50px;

}

.rounded{

    border-radius:var(--radius);

}

.shadow{

    box-shadow:var(--shadow);

}

.bg-light{

    background:var(--bg-light);

}

.bg-primary{

    background:var(--primary);

    color:#fff;

}

.w-100{

    width:100%;

}
/*==================================================
HEADER
==================================================*/

.header{

    position:fixed;

    top:0;

    left:0;

    width:100%;

    z-index:9999;

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

    backdrop-filter:blur(12px);

    transition:.35s ease;

    border-bottom:1px solid rgba(0,0,0,.05);

}

.header.scrolled{

    box-shadow:0 12px 35px rgba(0,0,0,.08);

}

.header .container{

    display:flex;

    justify-content:space-between;

    align-items:center;

    height:82px;

}

/*==================================================
LOGO
==================================================*/

.logo{

    display:flex;

    align-items:center;

}

.logo img{

    width:165px;

    transition:.35s;

}

.logo:hover img{

    transform:scale(1.03);

}

/*==================================================
NAVBAR
==================================================*/

.navbar{

    display:flex;

    align-items:center;

    gap:35px;

}

.navbar a{

    position:relative;

    font-size:15px;

    font-weight:600;

    color:var(--secondary);

}

.navbar a::after{

    content:"";

    position:absolute;

    left:0;

    bottom:-8px;

    width:0;

    height:2px;

    background:var(--primary);

    transition:.35s;

}

.navbar a:hover{

    color:var(--primary);

}

.navbar a:hover::after{

    width:100%;

}

/*==================================================
MENU TOGGLE
==================================================*/

.menu-toggle{
    display: flex;
    align-items: center;
    justify-content: center;

    width: 48px;
    height: 48px;

    position: absolute;
    top: 20px;
    right: 20px;

    border-radius: 12px;
    cursor: pointer;

    background: rgba(255,255,255,.1);
    backdrop-filter: blur(10px);

    z-index: 999;
    transition: .3s;
}

}

.menu-toggle i{

    font-size:22px;

    color:var(--secondary);

}

.menu-toggle:hover{

    background:var(--primary);

}

.menu-toggle:hover i{

    color:#fff;

}

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

.hero{

    position:relative;

    padding-top:160px;

    padding-bottom:90px;

    overflow:hidden;

    background:linear-gradient(
        180deg,
        #ffffff,
        #f8f9fb
    );

}

/* Background Blur */

.hero::before{

    content:"";

    position:absolute;

    width:450px;

    height:450px;

    background:rgba(235,10,30,.08);

    border-radius:50%;

    top:-120px;

    right:-120px;

    filter:blur(50px);

}

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

.hero-container{

    display:grid;

    grid-template-columns:1fr 1fr;

    align-items:center;

    gap:70px;

    position:relative;

}

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

.hero-tag{

    display:inline-flex;

    align-items:center;

    gap:10px;

    padding:10px 20px;

    border-radius:40px;

    background:#FFE9EC;

    color:var(--primary);

    font-weight:600;

    margin-bottom:25px;

}

.hero-content h1{

    font-size:58px;

    line-height:1.15;

    margin-bottom:20px;

}

.hero-content p{

    font-size:17px;

    margin-bottom:35px;

    max-width:540px;

}

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

.hero-buttons{

    display:flex;

    gap:18px;

    flex-wrap:wrap;

}

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

.hero-feature{

    margin-top:50px;

    display:flex;

    gap:20px;

}

.hero-feature div{

    flex:1;

    background:#fff;

    padding:25px;

    border-radius:18px;

    text-align:center;

    box-shadow:var(--shadow);

    transition:.35s;

}

.hero-feature div:hover{

    transform:translateY(-8px);

}

.hero-feature h3{

    color:var(--primary);

    font-size:30px;

    margin-bottom:8px;

}

.hero-feature span{

    color:var(--text-light);

    font-size:14px;

}

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

.hero-image{

    position:relative;

}

.hero-image img{

    width:100%;

    border-radius:24px;

    box-shadow:
    0 20px 45px rgba(0,0,0,.15);

    transition:.4s;

}

.hero-image:hover img{

    transform:scale(1.02);

}
/*==================================================
PROMO SECTION
==================================================*/

.promo{

    background:#F8F9FB;

    position:relative;

}

.promo::before{

    content:"";

    position:absolute;

    width:300px;

    height:300px;

    background:rgba(235,10,30,.05);

    border-radius:50%;

    top:-120px;

    left:-120px;

    filter:blur(40px);

}

/*==================================================
PROMO BANNER
==================================================*/

.promo-banner{

    display:grid;

    grid-template-columns:1.2fr .8fr;

    gap:40px;

    background:#fff;

    border-radius:24px;

    padding:50px;

    box-shadow:var(--shadow);

    overflow:hidden;

    position:relative;

}

.promo-banner::after{

    content:"";

    position:absolute;

    top:0;

    right:0;

    width:8px;

    height:100%;

    background:var(--primary);

}

/*==================================================
PROMO LEFT
==================================================*/

.promo-left{

    display:flex;

    flex-direction:column;

    justify-content:center;

}

.promo-badge{

    display:inline-block;

    width:max-content;

    background:var(--primary);

    color:#fff;

    padding:10px 18px;

    border-radius:50px;

    font-size:14px;

    font-weight:600;

    margin-bottom:20px;

}

.promo-left h3{

    font-size:36px;

    color:var(--secondary);

    margin-bottom:25px;

    line-height:1.3;

}

.promo-left ul{

    margin-bottom:35px;

}

.promo-left ul li{

    display:flex;

    align-items:center;

    gap:12px;

    margin-bottom:18px;

    font-size:16px;

    color:var(--text);

}

.promo-left ul li i{

    color:var(--primary);

    font-size:18px;

}

/*==================================================
PROMO BUTTON
==================================================*/

.promo-btn{

    width:max-content;

}

/*==================================================
PROMO RIGHT
==================================================*/

.promo-right{

    display:grid;

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

    gap:20px;

}

/*==================================================
PROMO ITEM
==================================================*/

.promo-item{

    background:#fff;

    border:1px solid var(--border);

    border-radius:20px;

    padding:30px 20px;

    text-align:center;

    transition:var(--transition);

    box-shadow:0 8px 25px rgba(0,0,0,.05);

}

.promo-item:hover{

    transform:translateY(-8px);

    border-color:var(--primary);

}

.promo-item i{

    width:70px;

    height:70px;

    margin:auto;

    margin-bottom:18px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    background:#FFE9EC;

    color:var(--primary);

    font-size:28px;

}

.promo-item h4{

    font-size:18px;

    color:var(--secondary);

}

/*==================================================
PROMO HOVER
==================================================*/

.promo-item:hover i{

    background:var(--primary);

    color:#fff;

}

.promo-item:hover h4{

    color:var(--primary);

}

/*==================================================
PROMO DECORATION
==================================================*/

.promo-banner::before{

    content:"";

    position:absolute;

    bottom:-60px;

    right:-60px;

    width:180px;

    height:180px;

    border-radius:50%;

    background:rgba(235,10,30,.05);

}
/*==================================================
PILIHAN MOBIL
==================================================*/

.mobil{

    background:#ffffff;

    position:relative;

}

.mobil::before{

    content:"";

    position:absolute;

    width:350px;

    height:350px;

    background:rgba(235,10,30,.04);

    border-radius:50%;

    right:-150px;

    top:-120px;

    filter:blur(50px);

}

/*==================================================
GRID MOBIL
==================================================*/

.mobil-grid{

    display:grid;

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

    gap:30px;

}

/*==================================================
CARD MOBIL
==================================================*/

.mobil-card{

    background:#fff;

    border-radius:22px;

    overflow:hidden;

    box-shadow:0 15px 40px rgba(0,0,0,.08);

    transition:.35s ease;

    position:relative;

    border:1px solid #eee;

}

.mobil-card:hover{

    transform:translateY(-10px);

    box-shadow:0 20px 50px rgba(0,0,0,.12);

}

/*==================================================
IMAGE
==================================================*/

.mobil-card img{

    width:100%;

    height:220px;

    object-fit:cover;

    transition:.4s;

}

.mobil-card:hover img{

    transform:scale(1.06);

}

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

.mobil-card h3{

    font-size:24px;

    color:var(--secondary);

    margin:25px 25px 10px;

}

.mobil-card p{

    margin:0 25px;

    color:var(--text-light);

}

.harga{

    color:var(--primary);

    font-size:24px;

    font-weight:700;

    margin:22px 25px 10px;

}

.dp{

    color:#22C55E !important;

    font-weight:600;

    margin-bottom:25px !important;

}

/*==================================================
BUTTON
==================================================*/

.btn-wa{

    margin:0 25px 25px;

    width:calc(100% - 50px);

}

.btn-wa i{

    font-size:18px;

}

/*==================================================
LABEL
==================================================*/

.mobil-card::before{

    content:"PROMO";

    position:absolute;

    top:18px;

    left:18px;

    background:var(--primary);

    color:#fff;

    font-size:12px;

    font-weight:700;

    padding:7px 14px;

    border-radius:30px;

    letter-spacing:1px;

    z-index:2;

}

/*==================================================
BOTTOM BORDER
==================================================*/

.mobil-card::after{

    content:"";

    position:absolute;

    left:0;

    bottom:0;

    width:100%;

    height:5px;

    background:linear-gradient(
        90deg,
        var(--primary),
        #ff5a5a
    );

    transform:scaleX(0);

    transition:.35s;

}

.mobil-card:hover::after{

    transform:scaleX(1);

}

/*==================================================
TEXT EFFECT
==================================================*/

.mobil-card:hover h3{

    color:var(--primary);

}

.mobil-card:hover .harga{

    transform:scale(1.03);

}

.harga{

    transition:.3s;

}

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

.mobil-card .btn-wa{

    justify-content:center;

}
/*==================================================
WHY US
==================================================*/

.why-us{

    background:var(--bg-light);

    position:relative;

    overflow:hidden;

}

.why-us::before{

    content:"";

    position:absolute;

    width:380px;

    height:380px;

    border-radius:50%;

    background:rgba(235,10,30,.05);

    left:-180px;

    bottom:-180px;

}

/*==================================================
COUNTER
==================================================*/

.why-counter{

    display:grid;

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

    gap:25px;

    margin-bottom:70px;

}

.counter-box{

    background:#fff;

    padding:35px 25px;

    border-radius:20px;

    text-align:center;

    box-shadow:var(--shadow);

    border:1px solid #eee;

    transition:var(--transition);

}

.counter-box:hover{

    transform:translateY(-8px);

    border-color:var(--primary);

}

.counter-box h3{

    font-size:42px;

    color:var(--primary);

    margin-bottom:10px;

}

.counter-box p{

    color:var(--text-light);

    font-size:15px;

}

/*==================================================
WHY GRID
==================================================*/

.why-grid{

    display:grid;

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

    gap:30px;

}

/*==================================================
WHY CARD
==================================================*/

.why-card{

    background:#fff;

    border-radius:22px;

    padding:35px;

    text-align:center;

    border:1px solid #eee;

    box-shadow:0 10px 35px rgba(0,0,0,.05);

    transition:var(--transition);

    position:relative;

    overflow:hidden;

}

.why-card:hover{

    transform:translateY(-10px);

    border-color:var(--primary);

}

/*==================================================
ICON
==================================================*/

.why-icon{

    width:80px;

    height:80px;

    margin:auto;

    margin-bottom:25px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    background:#FFE9EC;

    transition:.35s;

}

.why-icon i{

    font-size:32px;

    color:var(--primary);

}

.why-card:hover .why-icon{

    background:var(--primary);

}

.why-card:hover .why-icon i{

    color:#fff;

}

/*==================================================
TEXT
==================================================*/

.why-card h3{

    font-size:24px;

    margin-bottom:15px;

}

.why-card p{

    font-size:15px;

    color:var(--text-light);

}

/*==================================================
HOVER LINE
==================================================*/

.why-card::after{

    content:"";

    position:absolute;

    left:0;

    bottom:0;

    width:100%;

    height:5px;

    background:var(--primary);

    transform:scaleX(0);

    transition:.35s;

}

.why-card:hover::after{

    transform:scaleX(1);

}

/*==================================================
CTA
==================================================*/

.why-cta{

    margin-top:80px;

    background:linear-gradient(135deg,
    var(--primary),
    #C60018);

    border-radius:28px;

    padding:70px 50px;

    text-align:center;

    color:#fff;

    position:relative;

    overflow:hidden;

}

.why-cta::before{

    content:"";

    position:absolute;

    width:280px;

    height:280px;

    border-radius:50%;

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

    right:-120px;

    top:-120px;

}

.why-cta h3{

    color:#fff;

    font-size:38px;

    margin-bottom:20px;

}

.why-cta p{

    color:rgba(255,255,255,.9);

    max-width:700px;

    margin:0 auto 35px;

    font-size:17px;

}

.why-cta .btn-primary{

    background:#fff;

    color:var(--primary);

    font-weight:700;

}

.why-cta .btn-primary:hover{

    background:#111;

    color:#fff;

}
/*==================================================
CTA SECTION
==================================================*/

.cta{

    position:relative;

    overflow:hidden;

    background:linear-gradient(135deg,#EB0A1E,#C60018);

    padding:100px 0;

    text-align:center;

}

.cta::before{

    content:"";

    position:absolute;

    width:450px;

    height:450px;

    border-radius:50%;

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

    left:-180px;

    top:-180px;

}

.cta::after{

    content:"";

    position:absolute;

    width:300px;

    height:300px;

    border-radius:50%;

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

    right:-120px;

    bottom:-120px;

}

.cta .container{

    position:relative;

    z-index:2;

}

.cta h2{

    color:#fff;

    font-size:48px;

    font-weight:700;

    margin-bottom:20px;

}

.cta p{

    max-width:700px;

    margin:0 auto 40px;

    color:rgba(255,255,255,.9);

    font-size:18px;

    line-height:1.8;

}

/*==================================
CTA BUTTON
==================================*/

.cta-button{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:20px;

    flex-wrap:wrap;

}

.cta .btn-primary{

    background:#fff;

    color:var(--primary);

    min-width:220px;

    font-weight:700;

    box-shadow:0 15px 35px rgba(0,0,0,.15);

}

.cta .btn-primary:hover{

    background:#111827;

    color:#fff;

    transform:translateY(-5px);

}

.cta .btn-secondary{

    background:transparent;

    border:2px solid #fff;

    color:#fff;

    min-width:220px;

}

.cta .btn-secondary:hover{

    background:#fff;

    color:var(--primary);

    transform:translateY(-5px);

}

/*==================================
ICON BUTTON
==================================*/

.cta-button i{

    font-size:18px;

}

/*==================================
HOVER EFFECT
==================================*/

.cta .btn-primary,
.cta .btn-secondary{

    transition:all .35s ease;

}

/*==================================
CTA ANIMATION READY
==================================*/

.cta h2,
.cta p,
.cta-button{

    position:relative;

    z-index:2;

}
/*==================================================
TESTIMONI
==================================================*/

.testimoni{

    background:var(--bg-light);

    position:relative;

    overflow:hidden;

}

.testimoni::before{

    content:"";

    position:absolute;

    width:350px;

    height:350px;

    border-radius:50%;

    background:rgba(235,10,30,.05);

    top:-150px;

    right:-150px;

}

.testimoni-grid{

    display:grid;

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

    gap:30px;

}

.testimoni-card{

    background:#fff;

    border-radius:22px;

    padding:35px;

    text-align:center;

    border:1px solid var(--border);

    box-shadow:0 12px 30px rgba(0,0,0,.06);

    transition:var(--transition);

    position:relative;

    overflow:hidden;

}

.testimoni-card:hover{

    transform:translateY(-10px);

    box-shadow:0 18px 45px rgba(0,0,0,.10);

    border-color:var(--primary);

}

/*=====================
AVATAR
=====================*/

.avatar{

    width:90px;

    height:90px;

    margin:auto;

    margin-bottom:20px;

    border-radius:50%;

    background:#FFE9EC;

    display:flex;

    align-items:center;

    justify-content:center;

}

.avatar i{

    font-size:40px;

    color:var(--primary);

}

/*=====================
RATING
=====================*/

.rating{

    color:#FFC107;

    font-size:22px;

    letter-spacing:3px;

    margin-bottom:18px;

}

/*=====================
TEXT
=====================*/

.testimoni-card p{

    font-size:15px;

    line-height:1.8;

    color:var(--text-light);

    margin-bottom:25px;

}

.testimoni-card h3{

    color:var(--secondary);

    font-size:22px;

    margin-bottom:5px;

}

.testimoni-card span{

    color:var(--primary);

    font-size:14px;

    font-weight:600;

}

/*=====================
QUOTE ICON
=====================*/

.testimoni-card::before{

    content:"❝";

    position:absolute;

    top:18px;

    right:20px;

    font-size:70px;

    color:rgba(235,10,30,.08);

    font-family:serif;

}

/*=====================
BOTTOM EFFECT
=====================*/

.testimoni-card::after{

    content:"";

    position:absolute;

    left:0;

    bottom:0;

    width:100%;

    height:5px;

    background:var(--primary);

    transform:scaleX(0);

    transition:.35s;

}

.testimoni-card:hover::after{

    transform:scaleX(1);

}

/*=====================
HOVER AVATAR
=====================*/

.testimoni-card:hover .avatar{

    background:var(--primary);

}

.testimoni-card:hover .avatar i{

    color:#fff;

}
/*==================================================
FAQ
==================================================*/

.faq{

    background:#fff;

    position:relative;

}

.faq .container{

    max-width:900px;

}

.faq-item{

    background:#fff;

    border:1px solid var(--border);

    border-radius:18px;

    padding:28px 30px;

    margin-bottom:20px;

    box-shadow:0 10px 25px rgba(0,0,0,.05);

    transition:var(--transition);

}

.faq-item:hover{

    border-color:var(--primary);

    transform:translateY(-4px);

}

.faq-item h3{

    color:var(--secondary);

    font-size:22px;

    margin-bottom:12px;

    display:flex;

    align-items:center;

    gap:12px;

}

.faq-item h3::before{

    content:"+";

    width:34px;

    height:34px;

    border-radius:50%;

    background:var(--primary);

    color:#fff;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:18px;

    font-weight:700;

}

.faq-item p{

    color:var(--text-light);

    line-height:1.8;

    margin-left:46px;

}

/*==================================================
FORM WHATSAPP
==================================================*/

.wa-form{

    background:var(--bg-light);

    position:relative;

    overflow:hidden;

}

.wa-form::before{

    content:"";

    position:absolute;

    width:350px;

    height:350px;

    border-radius:50%;

    background:rgba(235,10,30,.05);

    right:-150px;

    bottom:-150px;

}

#waForm{

    max-width:700px;

    margin:auto;

    background:#fff;

    padding:45px;

    border-radius:24px;

    box-shadow:var(--shadow);

    position:relative;

    z-index:2;

}

/*=====================
INPUT
=====================*/

#waForm input,
#waForm select,
#waForm textarea{

    width:100%;

    border:1px solid var(--border);

    border-radius:14px;

    padding:16px 18px;

    font-size:15px;

    font-family:inherit;

    margin-bottom:20px;

    transition:var(--transition);

    background:#fff;

}

#waForm textarea{

    min-height:160px;

    resize:vertical;

}

#waForm input:focus,
#waForm select:focus,
#waForm textarea:focus{

    outline:none;

    border-color:var(--primary);

    box-shadow:0 0 0 4px rgba(235,10,30,.12);

}

/*=====================
PLACEHOLDER
=====================*/

#waForm input::placeholder,
#waForm textarea::placeholder{

    color:#999;

}

/*=====================
BUTTON
=====================*/

#waForm button{

    width:100%;

    border:none;

    cursor:pointer;

    background:var(--primary);

    color:#fff;

    font-size:17px;

    font-weight:600;

    padding:18px;

    border-radius:50px;

    transition:var(--transition);

}

#waForm button:hover{

    background:var(--primary-dark);

    transform:translateY(-3px);

    box-shadow:0 15px 30px rgba(235,10,30,.25);

}
/*==================================================
CONTACT
==================================================*/

.contact{

    background:#fff;

    position:relative;

    overflow:hidden;

}

.contact::before{

    content:"";

    position:absolute;

    width:380px;

    height:380px;

    border-radius:50%;

    background:rgba(235,10,30,.05);

    left:-180px;

    top:-180px;

}

.foto-sales{

    width:180px;

    height:180px;

    object-fit:cover;

    border-radius:50%;

    margin:25px auto;

    border:6px solid #fff;

    box-shadow:0 15px 35px rgba(0,0,0,.15);

}

/*==================================================
CONTACT GRID
==================================================*/

.contact-grid{

    margin-top:50px;

    display:grid;

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

    gap:30px;

}

.contact-card{

    background:#fff;

    padding:35px;

    text-align:center;

    border-radius:20px;

    border:1px solid var(--border);

    box-shadow:0 12px 30px rgba(0,0,0,.05);

    transition:var(--transition);

}

.contact-card:hover{

    transform:translateY(-10px);

    border-color:var(--primary);

}

.contact-card i{

    font-size:45px;

    color:var(--primary);

    margin-bottom:20px;

}

.contact-card h3{

    font-size:24px;

    margin-bottom:10px;

}

.contact-card p{

    color:var(--text-light);

    margin-bottom:20px;

}

.contact-card a{

    display:inline-block;

    background:var(--primary);

    color:#fff;

    padding:12px 26px;

    border-radius:40px;

    font-weight:600;

    transition:var(--transition);

}

.contact-card a:hover{

    background:var(--primary-dark);

}

/* ===========================
   FOOTER
=========================== */

.footer{

    background:#111;

    color:#ddd;

    padding:80px 0 25px;

}

.footer-grid{

    display:grid;

    grid-template-columns:2fr 1fr 1fr;

    gap:50px;

    margin-bottom:50px;

}

.footer-about img{

    width:180px;

    margin-bottom:20px;

}

.footer-about p{

    color:#bdbdbd;

    line-height:1.8;

}

.footer h3{

    color:#fff;

    margin-bottom:20px;

    font-size:1.2rem;

}

.footer ul{

    display:grid;

    gap:14px;

}

.footer ul li{

    display:flex;

    align-items:center;

    gap:10px;

}

.footer ul li i{

    color:var(--primary);

}

.footer ul li a{

    transition:.3s;

}

.footer ul li a:hover{

    color:var(--primary);

    padding-left:6px;

}

.copyright{

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

    padding-top:25px;

    text-align:center;

    color:#999;

    font-size:.95rem;

}

/*==================================================
SOCIAL
==================================================*/

.footer-social{

    display:flex;

    justify-content:center;

    gap:20px;

    margin:35px 0;

}

.footer-social a{

    width:52px;

    height:52px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

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

    color:#fff;

    font-size:20px;

    transition:var(--transition);

}

.footer-social a:hover{

    background:var(--primary);

    transform:translateY(-6px);

}

/*==================================================
COPYRIGHT
==================================================*/

.copyright{

    margin-top:20px;

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

    padding-top:25px;

    font-size:14px;

    line-height:1.8;

    color:#9CA3AF;

}
/*==================================================
PART 10
FINAL POLISH
==================================================*/

/*=========================
FLOATING SOCIAL
=========================*/

.floating-social{

    position:fixed;

    right:20px;

    bottom:25px;

    display:flex;

    flex-direction:column;

    gap:15px;

    z-index:999;

}

.floating-social a{

    width:58px;

    height:58px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    color:#fff;

    font-size:24px;

    text-decoration:none;

    box-shadow:0 10px 30px rgba(0,0,0,.18);

    transition:var(--transition);

}

.floating-social a:hover{

    transform:translateY(-6px) scale(1.08);

}

.floating-social .wa{

    background:#25D366;

}

.floating-social .call{

    background:#2563EB;

}

.floating-social .ig{

    background:linear-gradient(
        135deg,
        #833AB4,
        #FD1D1D,
        #FCAF45
    );

}

.floating-social .tiktok{

    background:#111827;

}

/*=========================
SCROLLBAR
=========================*/

::-webkit-scrollbar{

    width:10px;

}

::-webkit-scrollbar-track{

    background:#f3f4f6;

}

::-webkit-scrollbar-thumb{

    background:var(--primary);

    border-radius:20px;

}

::-webkit-scrollbar-thumb:hover{

    background:var(--primary-dark);

}

/*=========================
TEXT SELECTION
=========================*/

::selection{

    background:var(--primary);

    color:#fff;

}

/*=========================
FOCUS
=========================*/

a:focus,
button:focus,
input:focus,
select:focus,
textarea:focus{

    outline:none;

}

/*=========================
IMAGE
=========================*/

img{

    max-width:100%;

    height:auto;

}

/*=========================
SMOOTH TRANSITION
=========================*/

a,
button,
input,
textarea,
select,
.mobil-card,
.why-card,
.testimoni-card,
.contact-card,
.promo-item{

    transition:all .35s ease;

}

/*=========================
LOADING
=========================*/

body{

    animation:pageFade .8s ease;

}

@keyframes pageFade{

    from{

        opacity:0;

    }

    to{

        opacity:1;

    }

}

/*=========================
UTILITY
=========================*/

.text-primary{

    color:var(--primary);

}

.text-white{

    color:#fff;

}

.d-flex{

    display:flex;

}

.align-center{

    align-items:center;

}

.justify-center{

    justify-content:center;

}

.gap-10{

    gap:10px;

}

.gap-20{

    gap:20px;

}

.radius{

    border-radius:var(--radius);

}

.shadow-lg{

    box-shadow:0 18px 45px rgba(0,0,0,.12);

}

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

section{

    position:relative;

}

section:last-child{

    margin-bottom:0;

}

/*=========================
BUTTON ACTIVE
=========================*/

.btn-primary:active,
.btn-secondary:active,
.btn-wa:active,
.btn-header:active,
.promo-btn:active{

    transform:scale(.96);

}

/*=========================
CARD HOVER
=========================*/

.mobil-card:hover,
.why-card:hover,
.testimoni-card:hover,
.contact-card:hover,
.promo-item:hover{

    cursor:pointer;

}

/*=========================
END STYLE.CSS
=========================*/
.hero{
    min-height:100vh;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:60px;
    padding:120px 8%;
    background:linear-gradient(135deg,#111827,#1f2937);
    color:#fff;
}

.hero-content{
    flex:1;
}

.hero-badge{
    display:inline-block;
    background:#EB0A1E;
    color:#fff;
    padding:10px 18px;
    border-radius:30px;
    font-size:14px;
    margin-bottom:25px;
}

.hero h1{
    font-size:60px;
    font-weight:800;
    line-height:1.2;
    margin-bottom:20px;
}

.hero h1 span{
    color:#EB0A1E;
}

.hero p{
    font-size:18px;
    color:#ddd;
    max-width:550px;
    line-height:1.8;
}

.hero-rating{
    display:flex;
    gap:30px;
    margin:35px 0;
}

.hero-rating div{
    display:flex;
    flex-direction:column;
    font-weight:700;
}

.hero-rating span{
    color:#aaa;
    font-size:14px;
}

.hero-button{
    display:flex;
    gap:20px;
    flex-wrap:wrap;
}

.btn-primary{
    background:#EB0A1E;
    color:#fff;
    padding:16px 35px;
    border-radius:50px;
    text-decoration:none;
    font-weight:700;
}

.btn-primary:hover{
    transform:translateY(-4px);
}

.btn-secondary{
    border:2px solid #fff;
    color:#fff;
    padding:16px 35px;
    border-radius:50px;
    text-decoration:none;
}

.hero-image{
    flex:1;
    text-align:center;
}

.hero-image img{
    width:100%;
    max-width:650px;
    animation:float 4s ease infinite;
}
/* ==========================
   HERO FULL SCREEN
========================== */

.hero{
    position: relative;
    min-height: 100vh;
    display: flex;
    align-items: center;
    overflow: hidden;

    background:
    linear-gradient(rgba(0,0,0,.55),rgba(0,0,0,.55)),
    url("../images/hero-bg.webp");

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.hero-container{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:60px;
}

.hero-content{
    max-width:650px;
    color:#fff;
    z-index:2;
}

.hero-tag{
    display:inline-block;
    padding:8px 18px;
    background:#EB0A1E;
    color:#fff;
    border-radius:30px;
    font-weight:600;
    margin-bottom:20px;
}

.hero h1{
    font-size:58px;
    line-height:1.2;
    font-weight:800;
    margin-bottom:20px;
}

.hero p{
    font-size:20px;
    line-height:1.8;
    opacity:.95;
    margin-bottom:35px;
}

.hero-buttons{
    display:flex;
    gap:18px;
    flex-wrap:wrap;
}
/*=================================
PREMIUM HERO
==================================*/

.hero{

position:relative;

min-height:100vh;

display:flex;

align-items:center;

background:url("../images/hero-bg.webp") center center/cover no-repeat;

overflow:hidden;

}

.hero-overlay{

position:absolute;

inset:0;

background:linear-gradient(

90deg,

rgba(0,0,0,.75),

rgba(0,0,0,.45),

rgba(0,0,0,.2)

);

}

.hero-container{

position:relative;

z-index:2;

display:flex;

align-items:center;

justify-content:space-between;

gap:60px;

}

.hero-content{

max-width:620px;

color:#fff;

}

.hero-tag{

display:inline-block;

padding:8px 18px;

background:#EB0A1E;

border-radius:50px;

font-size:14px;

font-weight:600;

letter-spacing:1px;

margin-bottom:20px;

}

.hero h1{

font-size:64px;

font-weight:800;

line-height:1.1;

margin-bottom:25px;

}

.hero p{

font-size:20px;

line-height:1.8;

opacity:.9;

margin-bottom:40px;

}

.hero-buttons{

display:flex;

gap:18px;

margin-bottom:50px;

}

.hero-image img{

width:700px;

max-width:100%;

animation:floatCar 4s ease-in-out infinite;

}

.hero-info{

display:flex;

gap:20px;

flex-wrap:wrap;

}

.info-box{

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

backdrop-filter:blur(12px);

padding:20px;

border-radius:16px;

min-width:120px;

text-align:center;

}

.info-box h3{

font-size:28px;

color:#fff;

margin-bottom:5px;

}

.info-box span{

color:#ddd;

font-size:14px;

}

@keyframes floatCar{

0%{transform:translateY(0);}

50%{transform:translateY(-10px);}

100%{transform:translateY(0);}

}
/*==================================
PREMIUM NAVBAR
===================================*/

.header{

position:fixed;

top:0;

left:0;

width:100%;

z-index:999;

padding:18px 0;

transition:.4s;

}

.header.scrolled{

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

backdrop-filter:blur(18px);

box-shadow:0 8px 25px rgba(0,0,0,.08);

}

.navbar{

display:flex;

align-items:center;

justify-content:space-between;

}

.logo img{

height:55px;

display:block;

}

.nav-menu{

display:flex;

gap:35px;

align-items:center;

}

.nav-menu a{

color:#fff;

font-weight:600;

transition:.3s;

text-decoration:none;

}

.header.scrolled .nav-menu a{

color:#222;

}

.nav-menu a:hover{

color:#EB0A1E;

}

.header-action{

display:flex;

align-items:center;

gap:20px;

}

.btn-header{

background:#EB0A1E;

color:#fff;

padding:12px 26px;

border-radius:40px;

font-weight:600;

text-decoration:none;

transition:.3s;

}

.btn-header:hover{

transform:translateY(-3px);

}

.menu-toggle{

display:none;

width:48px;

height:48px;

border-radius:14px;

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

backdrop-filter:blur(10px);

cursor:pointer;

display:flex;

align-items:center;

justify-content:center;

color:#fff;

font-size:22px;

transition:.3s;

}

.header.scrolled .menu-toggle{

background:#f5f5f5;

color:#111;

}
/*====================================
FULL SCREEN MOBILE MENU
====================================*/

.mobile-nav{

position:fixed;

top:0;

right:-100%;

width:100%;

height:100vh;

background:#111;

z-index:9999;

transition:.45s ease;

display:flex;

align-items:center;

justify-content:center;

}

.mobile-nav.active{

right:0;

}

.mobile-nav-content{

display:flex;

flex-direction:column;

align-items:center;

gap:28px;

}

.mobile-nav-content a{

font-size:28px;

font-weight:700;

text-decoration:none;

color:#fff;

transition:.3s;

}

.mobile-nav-content a:hover{

color:#EB0A1E;

}

.mobile-close{

position:absolute;

top:25px;

right:25px;

font-size:32px;

cursor:pointer;

color:#fff;

}

.mobile-wa{

margin-top:30px;

background:#EB0A1E;

padding:16px 34px;

border-radius:50px;

font-size:18px;

}
