/* =========================================
   SECTION FOOTER (LIGHT MODE & FLOATING CTA)
   ========================================= */
.tp-footer-hero {
    padding: 80px 0 30px;
    background: #FAFAFF; /* Putih kebiruan sangat pudar */
    position: relative;
    margin-top: -1px;
    overflow: hidden;
    color: var(--tp-text-main);
}

.relative-z { position: relative; z-index: 2; }

/* Pattern kotak-kotak tipis di background footer */
.footer-bg-pattern {
    position: absolute; top: 0; left: 0; width: 100%; height: 100%;
    background-image: linear-gradient(rgba(1, 61, 196, 0.03) 1px, transparent 1px),
                      linear-gradient(90deg, rgba(1, 61, 196, 0.03) 1px, transparent 1px);
    background-size: 40px 40px;
    z-index: 1;
}

/* =========================================
   FLOATING CTA BOX (Gaya Baru)
   ========================================= */
.floating-cta-box {
    position: relative;
    background: #FFFFFF;
    border-radius: 20px;
    padding: 40px 50px;
    margin-bottom: 80px;
    border: 1px solid rgba(226, 211, 244, 0.8);
    box-shadow: 0 20px 40px rgba(1, 61, 196, 0.05); /* Bayangan lembut */
    z-index: 3;
}

/* Efek tumpukan 3D semu (kaya di gambar referensi) */
.floating-cta-box::before {
    content: ''; position: absolute;
    top: 10px; left: 1.5%; right: 1.5%; bottom: -10px;
    background: rgba(226, 211, 244, 0.3); /* Latar lilac di belakang */
    border-radius: 20px; z-index: -1;
}

/* Emoticon Hiasan */
.cta-ornament {
    position: absolute;
    top: -20px; left: 50px; /* Taruh di atas kiri agak masuk */
    display: flex; gap: -5px; /* Numpuk dikit */
}
.emoji-circle {
    width: 40px; height: 40px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: 20px; border: 3px solid #FFF;
    position: relative; z-index: 2;
    box-shadow: 0 4px 10px rgba(0,0,0,0.05);
}
.emoji-circle.bg-lilac { background: var(--tp-green); z-index: 3; left: 0;}
.emoji-circle.bg-blue { background: var(--tp-light); z-index: 2; left: -10px;}
.emoji-circle.bg-yellow { background: #FBBF24; z-index: 1; left: -20px;}


/* Isi Konten CTA */
.cta-content-wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 30px;
}

.cta-text-side p { font-size: 15px; color: var(--tp-text-muted); font-weight: 600; margin-bottom: 5px; }
.cta-text-side h2 { font-size: 32px; font-weight: 900; color: var(--tp-text-main); }
.cta-text-side h2 span { color: var(--tp-light); } /* Highlight Biru Elektrik */

.btn-wa-action {
    display: inline-flex; align-items: center; gap: 8px;
    background: var(--tp-light); /* Biru Elektrik */
    color: #FFFFFF;
    padding: 16px 32px; border-radius: 12px;
    font-size: 16px; font-weight: 800;
    transition: all 0.3s ease;
    box-shadow: 0 10px 20px rgba(1, 61, 196, 0.2);
    white-space: nowrap;
}
.btn-wa-action i { font-size: 24px; }
.btn-wa-action:hover {
    transform: translateY(-3px);
    background: var(--tp-green); /* Hover Lilac */
    color: var(--tp-text-main);
    box-shadow: 0 15px 30px rgba(226, 211, 244, 0.6);
}

/* =========================================
   BENTO GRID FOOTER (LIGHT MODE)
   ========================================= */
.footer-bento {
    display: grid;
    grid-template-columns: 1.8fr 2.7fr 1fr;
    gap: 20px;
    margin-bottom: 40px;
}

.f-bento-card {
    background: #FFFFFF; /* Putih bersih */
    border: 1px solid rgba(226, 211, 244, 0.6);
    border-radius: 24px;
    padding: 40px;
    transition: var(--tp-transition);
    box-shadow: 0 10px 30px rgba(1, 61, 196, 0.02);
}
.f-bento-card:hover { border-color: var(--tp-light); transform: translateY(-5px); }

/* Bento 1: Branding */
.bento-branding h3 { font-size: 28px; font-weight: 900; margin-bottom: 15px; color: var(--tp-text-main); }
.bento-branding h3 span { color: var(--tp-light); } /* Titik Biru Elektrik */
.bento-branding p { color: var(--tp-text-muted); font-size: 15px; margin-bottom: 25px; line-height: 1.6; max-width: 300px; font-weight: 500;}
.location-badge { 
    display: inline-flex; align-items: center; gap: 6px; 
    background: var(--tp-green); color: var(--tp-light); 
    padding: 6px 14px; border-radius: 50px; font-size: 13px; font-weight: 700;
}

/* Bento 2: Links */
.f-bento-card h4 { font-size: 16px; font-weight: 800; margin-bottom: 25px; color: var(--tp-text-main); }
.pill-links { display: flex; flex-wrap: wrap; gap: 10px; }
.pill-links a {
    background: #FDFBFF; color: var(--tp-text-muted); border: 1px solid rgba(226, 211, 244, 0.6);
    padding: 8px 16px; border-radius: 50px; font-size: 13px; font-weight: 700;
    transition: var(--tp-transition);
}
.pill-links a:hover { background: var(--tp-light); color: #fff; border-color: var(--tp-light);}

/* Bento 3: Social */
.social-circles { display: flex; gap: 15px; margin-bottom: 25px; }
.social-circles a {
    width: 50px; height: 50px; border-radius: 50%;
    background: #FDFBFF; border: 1px solid rgba(226, 211, 244, 0.6);
    display: flex; align-items: center; justify-content: center;
    font-size: 24px; color: var(--tp-light); transition: var(--tp-transition);
}
.social-circles a:hover { background: var(--tp-light); color: #FFF; transform: translateY(-5px); border-color: var(--tp-light);}
.email-link { color: var(--tp-text-muted); font-size: 15px; font-weight: 700; text-decoration: underline; transition: color 0.3s ease; }
.email-link:hover { color: var(--tp-light); }

/* BOTTOM BAR */
.footer-bottom-bar {
    display: flex; justify-content: space-between; align-items: center;
    padding-top: 30px; border-top: 1px dashed rgba(226, 211, 244, 0.8);
}
.copy-text { font-size: 14px; font-weight: 600; color: var(--tp-text-muted); }
.tech-stack-info { display: flex; align-items: center; gap: 10px; font-size: 12px; color: var(--tp-text-muted); font-weight: 500;}
.divider { color: rgba(226, 211, 244, 0.6); }
.easter-egg { font-family: "Noto Sans JP", sans-serif; font-style: italic; }

/* RESPONSIVE */
@media (max-width: 992px) {
    .cta-content-wrap { flex-direction: column; text-align: center; gap: 20px;}
    .cta-ornament { left: 50%; transform: translateX(-50%); }
    .footer-bento { grid-template-columns: 1fr; text-align: center; }
    .bento-branding p { margin: 0 auto 25px; }
    .pill-links { justify-content: center; }
    .social-circles { justify-content: center; }
}
@media (max-width: 768px) {
    .cta-text-side h2 { font-size: 26px; }
    .floating-cta-box { padding: 40px 20px; }
    .footer-bottom-bar { flex-direction: column; gap: 15px; text-align: center; }
}

/* Styling khusus untuk ikon di dalam pill footer */
.pill-links a, .pill-links .pill-disabled {
    display: flex;
    align-items: center;
    gap: 6px; /* Jarak antara ikon dan tulisan */
}

/* Styling untuk layanan yang Coming Soon di footer */
.pill-links .pill-disabled {
    opacity: 0.5; /* Bikin warnanya agak pudar */
    cursor: not-allowed; /* Kursor dilarang ngeklik */
    pointer-events: none; /* Mematikan fungsi klik 100% */
}

/* Badge 'Segera' versi terang */
.badge-cs-small {
    background: #e9ecef; /* Background abu-abu terang */
    color: #6c757d; /* Teks abu-abu gelap */
    font-size: 0.65rem;
    padding: 2px 6px;
    border-radius: 12px;
    margin-left: 4px;
    font-weight: 700;
}

.badge-new-small {
    background: #FF5A5F;
    color: white;
    font-size: 0.65rem;
    padding: 2px 6px;
    border-radius: 12px;
    margin-left: 4px;
    font-weight: 700;
}
