.footer-wrapper{
background:#212529;
padding:80px 20px 40px;
}

/* CARD */
.footer-address-card,
.footer-social-wrapper{
background:rgba(255,255,255,.04);
border:1px solid rgba(255,255,255,.08);
border-radius:30px;
padding:35px;
backdrop-filter:blur(10px);
height:100%;
}

/* ALAMAT */
.footer-address-header{
display:flex;
align-items:center;
gap:18px;
margin-bottom:30px;
}

.footer-address-icon{
width:75px;
height:75px;
border-radius:24px;
background:transparent;
display:flex;
align-items:center;
justify-content:center;
font-size:32px;
color:white;
}

.footer-address-title{
font-size:34px;
font-weight:900;
color:white;
margin-bottom:4px;
}

.footer-address-subtitle{
color:#94a3b8;
font-size:15px;
margin:0;
}

.footer-address-content h4{
font-size:22px;
font-weight:800;
line-height:1.5;
color:white;
margin-bottom:20px;
}

.footer-address-content p{
font-size:17px;
line-height:1.8;
color:#cbd5e1;
margin-bottom:14px;
}

.footer-contact-item{
display:flex;
align-items:flex-start;
gap:14px;
margin-top:20px;
padding:18px;
border-radius:18px;
background:rgba(255,255,255,.05);
font-size:16px;
font-weight:700;
color:white;
}

.footer-contact-item i{
font-size:20px;
margin-top:2px;
color:#38bdf8;
}

/* SOSIAL */
.footer-social-title{
font-size:34px;
font-weight:900;
text-align:center;
color:white;
margin-bottom:35px;
}

.footer-media-list{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(290px,1fr));
gap:16px;
justify-content:center;
}

.footer-media-item{
display:flex;
align-items:center;
gap:18px;
padding:20px;
border-radius:22px;
background:rgba(255,255,255,.05);
text-decoration:none;
transition:.3s;
border:1px solid rgba(255,255,255,.06);
color:white;
}

.footer-media-item:hover{
transform:translateY(-6px);
background:rgba(255,255,255,.08);
}

.footer-media-icon{
width:65px;
height:65px;
border-radius:18px;
display:flex;
align-items:center;
justify-content:center;
font-size:28px;
color:white;
flex-shrink:0;
}

.footer-media-label{
font-size:13px;
font-weight:700;
letter-spacing:1px;
color:#94a3b8;
margin-bottom:4px;
}

.footer-media-value{
font-size:17px;
font-weight:800;
line-height:1.6;
color:white;
}

/* WARNA */
.youtube-btn{
background:#ef4444;
}

.whatsapp-btn{
background:#22c55e;
}

.facebook-btn{
background:#3b82f6;
}

.tiktok-btn{
background:#111827;
border:1px solid rgba(255,255,255,.10);
}

.gmail-btn{
background:#f59e0b;
}

/* COPYRIGHT */
.footer-divider{
margin:50px 0 25px;
border-color:rgba(255,255,255,.10);
}

.footer-copy{
font-size:26px;
font-weight:800;
color:white;
line-height:1.7;
}

/* MOBILE */
@media(max-width:768px){

.footer-address-title,
.footer-social-title{
font-size:26px;
}

.footer-copy{
font-size:17px;
}

.footer-address-content h4{
font-size:19px;
}

}

.footer-social-title{
white-space:nowrap;
overflow:hidden;
text-overflow:ellipsis;
}

.footer-social-title{
white-space:normal !important;
overflow:visible !important;
text-overflow:unset !important;
font-size:30px !important;
line-height:1.4 !important;
word-break:normal !important;
text-align:center !important;
padding:0 10px;
}

.footer-address-content p{
white-space:nowrap !important;
overflow:visible !important;
text-overflow:unset !important;
font-size:16px !important;
}

.footer-contact-link{
text-decoration:none !important;
transition:.35s;
position:relative;
overflow:hidden;
}

.footer-contact-link:hover{
transform:translateY(-4px) scale(1.02);
background:rgba(56,189,248,.12);
border:1px solid rgba(56,189,248,.35);
box-shadow:0 10px 30px rgba(56,189,248,.18);
}

.footer-live-icon{
animation:footerPulse 2s infinite;
transition:.3s;
}

.footer-contact-link:hover .footer-live-icon{
transform:rotate(8deg) scale(1.15);
color:#38bdf8 !important;
}

@keyframes footerPulse{

0%{
transform:scale(1);
opacity:1;
}

50%{
transform:scale(1.15);
opacity:.8;
}

100%{
transform:scale(1);
opacity:1;
}

}

.footer-contact-link{
display:flex !important;
align-items:center;
gap:16px;
text-decoration:none !important;
transition:.4s;
position:relative;
overflow:hidden;
border:1px solid rgba(255,255,255,.06);
}

.footer-contact-link::before{
content:"";
position:absolute;
top:0;
left:-100%;
width:100%;
height:100%;
background:linear-gradient(
90deg,
transparent,
rgba(255,255,255,.08),
transparent
);
transition:.7s;
}

.footer-contact-link:hover::before{
left:100%;
}

.footer-contact-link:hover{
transform:translateY(-5px) scale(1.02);
background:rgba(59,130,246,.12);
border-color:rgba(59,130,246,.35);
box-shadow:0 12px 35px rgba(59,130,246,.18);
}

.footer-live-icon{
width:46px;
height:46px;
border-radius:14px;
display:flex;
align-items:center;
justify-content:center;
background:linear-gradient(135deg,#2563eb,#38bdf8);
font-size:18px !important;
color:white !important;
animation:footerFloat 2.5s ease-in-out infinite;
flex-shrink:0;
box-shadow:0 6px 18px rgba(56,189,248,.30);
}

.footer-contact-link:hover .footer-live-icon{
transform:rotate(10deg) scale(1.15);
box-shadow:0 10px 24px rgba(56,189,248,.45);
}

@keyframes footerFloat{

0%{
transform:translateY(0);
}

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

100%{
transform:translateY(0);
}

}

.footer-contact-link span{
font-size:16px;
font-weight:700;
color:white;
word-break:break-word;
line-height:1.7;
}

.footer-mail-pro{
display:flex !important;
align-items:center !important;
gap:18px;
padding:22px !important;
border-radius:22px;
background:rgba(255,255,255,.05) !important;
border:1px solid rgba(255,255,255,.08);
text-decoration:none !important;
position:relative;
overflow:hidden;
transition:.4s;
}

.footer-mail-pro:hover{
transform:translateY(-6px) scale(1.02);
background:rgba(59,130,246,.12) !important;
border-color:rgba(56,189,248,.35);
box-shadow:0 15px 40px rgba(56,189,248,.18);
}

.footer-mail-pro::before{
content:"";
position:absolute;
top:0;
left:-120%;
width:100%;
height:100%;
background:linear-gradient(
90deg,
transparent,
rgba(255,255,255,.10),
transparent
);
transition:.8s;
}

.footer-mail-pro:hover::before{
left:120%;
}

.footer-pro-icon{
width:62px;
height:62px;
border-radius:20px;
display:flex;
align-items:center;
justify-content:center;
font-size:24px;
color:white;
flex-shrink:0;
animation:footerIconFloat 2.2s ease-in-out infinite;
}

.footer-mail-icon{
background:linear-gradient(135deg,#0ea5e9,#2563eb);
box-shadow:0 10px 25px rgba(37,99,235,.35);
}

.footer-gmail-icon{
background:linear-gradient(135deg,#ea4335,#fbbc05);
box-shadow:0 10px 25px rgba(234,67,53,.35);
}

.footer-mail-pro:hover .footer-pro-icon{
transform:rotate(10deg) scale(1.15);
}

.footer-pro-text h5{
font-size:14px;
font-weight:800;
letter-spacing:1px;
margin-bottom:5px;
color:#94a3b8;
text-transform:uppercase;
}

.footer-pro-text p{
margin:0;
font-size:17px;
font-weight:800;
color:white !important;
line-height:1.6;
word-break:break-word;
}

@keyframes footerIconFloat{

0%{
transform:translateY(0);
}

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

100%{
transform:translateY(0);
}

}

.visitor-stat-box{
margin-top:50px;
background:rgba(255,255,255,.04);
border:1px solid rgba(255,255,255,.08);
border-radius:30px;
padding:35px;
}

.visitor-title{
font-size:32px;
font-weight:900;
text-align:center;
color:white;
margin-bottom:35px;
}

.visitor-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
gap:20px;
}

.visitor-card{
background:rgba(255,255,255,.05);
border:1px solid rgba(255,255,255,.08);
padding:24px;
border-radius:22px;
text-align:center;
transition:.3s;
}

.visitor-card:hover{
transform:translateY(-5px);
background:rgba(255,255,255,.08);
}

.visitor-card h4{
font-size:15px;
font-weight:700;
color:#94a3b8;
margin-bottom:12px;
}

.visitor-card p{
font-size:32px;
font-weight:900;
color:white;
margin:0;
}

.total-card{
background:linear-gradient(135deg,#2563eb,#38bdf8);
}

/* FIX FOOTER STATISTIK */
.visitor-stat-box{
width:100%;
margin-top:45px;
padding:35px;
border-radius:30px;
background:rgba(255,255,255,.04);
border:1px solid rgba(255,255,255,.08);
overflow:hidden;
}

.visitor-grid{
display:grid !important;
grid-template-columns:repeat(3,minmax(0,1fr)) !important;
gap:20px;
width:100%;
}

.visitor-card{
min-width:0;
padding:22px;
border-radius:22px;
background:rgba(255,255,255,.05);
border:1px solid rgba(255,255,255,.08);
text-align:center;
transition:.3s;
}

.visitor-card p{
font-size:28px;
font-weight:900;
margin:0;
color:white;
}

.visitor-card h4{
font-size:14px;
font-weight:700;
margin-bottom:12px;
color:#94a3b8;
}

.total-card{
grid-column:span 3;
background:linear-gradient(135deg,#2563eb,#38bdf8);
}

/* RESPONSIVE */
@media(max-width:992px){

.visitor-grid{
grid-template-columns:repeat(2,minmax(0,1fr)) !important;
}

.total-card{
grid-column:span 2;
}

}

@media(max-width:576px){

.visitor-grid{
grid-template-columns:1fr !important;
}

.total-card{
grid-column:span 1;
}

.footer-social-title{
font-size:24px !important;
}

.visitor-title{
font-size:24px !important;
}

}











/* =========================
FINAL CLEAN FOOTER LAYOUT
========================= */

.footer-wrapper .row.g-4{
display:flex;
flex-wrap:wrap;
gap:24px;
}

.footer-wrapper .col-lg-4{
flex:1 1 calc(33.333% - 24px);
max-width:calc(33.333% - 24px);
}

.footer-address-card,
.footer-social-wrapper,
.visitor-stat-box{
height:100%;
padding:24px;
border-radius:24px;
overflow:hidden;
}

.visitor-title{
font-size:24px;
margin-bottom:20px;
text-align:center;
}

.visitor-grid{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:12px;
}

.visitor-card{
padding:14px;
border-radius:16px;
}

.visitor-card h4{
font-size:13px;
margin-bottom:8px;
}

.visitor-card p{
font-size:22px;
margin:0;
}

.total-card{
grid-column:span 2;
}

@media(max-width:992px){

.footer-wrapper .col-lg-4{
flex:1 1 100%;
max-width:100%;
}

}

@media(max-width:576px){

.visitor-grid{
grid-template-columns:1fr;
}

.total-card{
grid-column:span 1;
}

}

/* =========================
HISTOGRAM VISITOR
========================= */

.visitor-chart-wrapper{
display:flex;
flex-direction:column;
gap:18px;
}

.visitor-bar-item{
display:flex;
flex-direction:column;
gap:8px;
}

.visitor-label{
display:flex;
justify-content:space-between;
font-size:14px;
font-weight:700;
color:white;
}

.visitor-bar{
width:100%;
height:14px;
background:rgba(255,255,255,.08);
border-radius:999px;
overflow:hidden;
}

.visitor-fill{
height:100%;
border-radius:999px;
animation:visitorGrow 1.5s ease;
}

.daily-fill{
background:linear-gradient(90deg,#06b6d4,#3b82f6);
}

.weekly-fill{
background:linear-gradient(90deg,#8b5cf6,#6366f1);
}

.monthly-fill{
background:linear-gradient(90deg,#f59e0b,#ef4444);
}

.yearly-fill{
background:linear-gradient(90deg,#10b981,#14b8a6);
}

.visitor-total-box{
margin-top:10px;
padding:18px;
border-radius:18px;
background:linear-gradient(135deg,#2563eb,#38bdf8);
text-align:center;
}

.visitor-total-box h4{
font-size:15px;
margin-bottom:10px;
color:white;
}

.visitor-total-box p{
font-size:34px;
font-weight:900;
margin:0;
color:white;
}

@keyframes visitorGrow{

from{
width:0;
}

}

.footer-custom-icon{
width:38px;
height:38px;
object-fit:contain;
animation:footerIconFloat 2.5s ease-in-out infinite;
transition:.3s;
}

.footer-contact-item:hover .footer-custom-icon{
transform:scale(1.12) rotate(5deg);
}

/* ICON ALAMAT MERAH */
.footer-alamat-icon{
font-size:38px;
color:#ef4444 !important;
animation:footerLocationFloat 2s ease-in-out infinite;
filter:drop-shadow(0 0 10px rgba(239,68,68,.5));
}

@keyframes footerLocationFloat{

0%{
transform:translateY(0);
}

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

100%{
transform:translateY(0);
}

}

/* =========================
FOOTER LIVE EFFECT
========================= */

/* SEMUA LINK FOOTER */
.footer-wrapper a,
.footer-wrapper p,
.footer-wrapper h3,
.footer-wrapper h4,
.footer-wrapper h5,
.footer-wrapper span{
transition:all .3s ease;
}

/* TEXT HOVER */
.footer-wrapper a:hover,
.footer-wrapper p:hover,
.footer-wrapper span:hover,
.footer-wrapper h4:hover,
.footer-wrapper h5:hover{
color:#38bdf8 !important;
transform:translateX(4px);
}

/* ICON HIDUP */
.footer-custom-icon,
.footer-media-icon i,
.footer-alamat-icon{
animation:footerLiveFloat 2.5s ease-in-out infinite;
transition:.3s;
}

/* HOVER ICON */
.footer-contact-item:hover .footer-custom-icon,
.footer-media-item:hover .footer-media-icon i,
.footer-address-header:hover .footer-alamat-icon{
transform:scale(1.15) rotate(6deg);
filter:drop-shadow(0 0 12px rgba(56,189,248,.8));
}

/* CARD HIDUP */
.footer-address-card,
.footer-social-wrapper,
.visitor-stat-box{
transition:.35s;
}

.footer-address-card:hover,
.footer-social-wrapper:hover,
.visitor-stat-box:hover{
transform:translateY(-6px);
box-shadow:0 0 30px rgba(56,189,248,.18);
}

/* BAR HISTOGRAM */
.visitor-fill{
animation:visitorBarMove 2s ease;
}

/* ANIMASI GLOBAL */
@keyframes footerLiveFloat{

0%{
transform:translateY(0);
}

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

100%{
transform:translateY(0);
}

}

@keyframes visitorBarMove{

from{
width:0;
opacity:0;
}

to{
opacity:1;
}

}

/* HEADER ALAMAT TENGAH */
.footer-address-header{
display:flex;
flex-direction:column !important;
align-items:center !important;
justify-content:center !important;
text-align:center !important;
gap:12px;
}

.footer-address-title,
.footer-address-subtitle{
text-align:center !important;
width:100%;
}

.footer-address-icon{
display:flex;
justify-content:center;
align-items:center;
width:100%;
}

/* =========================
RAPIKAN JARAK FOOTER
========================= */

/* 3 KOLOM */
.footer-wrapper .row.g-4{
margin-bottom:18px !important;
gap:18px !important;
}

/* GARIS */
.footer-divider{
margin-top:18px !important;
margin-bottom:14px !important;
opacity:.15;
}

/* COPYRIGHT */
.footer-copy{
margin-top:0 !important;
padding-top:0 !important;
font-size:20px !important;
font-weight:700;
}

/* CARD FOOTER */
.footer-address-card,
.footer-social-wrapper,
.visitor-stat-box{
margin-bottom:0 !important;
padding-bottom:18px !important;
}

/* RESPONSIVE FOOTER - TABLET & MOBILE */
@media(max-width:1100px){
    .footer-wrapper .row.g-4{
        grid-template-columns: 1fr 1fr !important;
        gap: 20px !important;
    }
    .visitor-stat-box {
        grid-column: 1 / -1 !important;
    }
}
@media(max-width:768px){
    .footer-wrapper .row.g-4{
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }
    .footer-wrapper .container-fluid{
        padding: 0 16px !important;
    }
}

/* VISITOR WIDGET CSS */
.visitor-donut-panel{display:flex;flex-direction:column;align-items:center;gap:16px;width:100%;}
.visitor-donut{width:160px;height:160px;border-radius:50%;background:var(--visitor-donut,conic-gradient(rgba(148,163,184,.28) 0deg 360deg));display:flex;align-items:center;justify-content:center;position:relative;}
.visitor-donut::before{content:'';position:absolute;width:110px;height:110px;border-radius:50%;background:#0f172a;}
.visitor-donut-center{position:relative;z-index:1;text-align:center;color:white;}
.visitor-donut-center span{font-size:11px;font-weight:700;color:#94a3b8;display:block;text-transform:uppercase;letter-spacing:1px;}
.visitor-donut-center strong{font-size:28px;font-weight:900;color:white;display:block;}
.visitor-daily-card{width:100%;background:linear-gradient(135deg,#0ea5e9,#2563eb);border-radius:16px;padding:16px 20px;text-align:center;color:white;}
.visitor-daily-card span{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1px;opacity:.85;display:block;}
.visitor-daily-card strong{font-size:32px;font-weight:900;display:block;}
.visitor-online-card{width:100%;background:rgba(16,185,129,.15);border:1px solid rgba(16,185,129,.3);border-radius:16px;padding:14px 20px;display:flex;align-items:center;gap:12px;color:white;}
.visitor-online-dot{width:12px;height:12px;border-radius:50%;background:#10b981;animation:onlinePulse 2s infinite;flex-shrink:0;}
.visitor-online-card span{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1px;opacity:.85;}
.visitor-online-card strong{font-size:28px;font-weight:900;display:block;}
.visitor-donut-legend{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;}
.visitor-legend-item{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:12px;display:flex;align-items:center;gap:10px;color:white;}
.visitor-legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;}
.visitor-legend-item span{font-size:11px;font-weight:600;color:#94a3b8;display:block;}
.visitor-legend-item strong{font-size:18px;font-weight:900;display:block;}
.daily-fill{background:#06b6d4;}
.weekly-fill{background:#8b5cf6;}
.monthly-fill{background:#f59e0b;}
.yearly-fill{background:#10b981;}
@keyframes onlinePulse{0%,100%{opacity:1;transform:scale(1);}50%{opacity:.5;transform:scale(1.3);}}
.footer-copy { white-space: nowrap !important; font-size: 16px !important; }
@media(max-width:768px){ .footer-copy { white-space: normal !important; font-size: 14px !important; text-align: center !important; } }
}

/* ============================================================
   FOOTER UPGRADE — Background gray, icons & teks lebih besar,
   nomor WA 1 baris, copyright lebih besar
   ============================================================ */

/* 1) BACKGROUND GRAY (ganti dari #212529 hitam) */
.footer-wrapper{
    background: linear-gradient(180deg, #6b7280 0%, #808080 50%, #6b7280 100%) !important;
}

/* Card di dalam footer disesuaikan agar tetap kontras dengan bg gray */
.footer-address-card,
.footer-social-wrapper,
.visitor-stat-box{
    background: rgba(255, 255, 255, .12) !important;
    border: 1px solid rgba(255, 255, 255, .15) !important;
}

/* 2) MEDIA SOCIAL ITEM — Icon & Teks LEBIH BESAR */
.footer-media-item{
    padding: 22px !important;
    gap: 22px !important;
    background: rgba(255, 255, 255, .08) !important;
    border: 1px solid rgba(255, 255, 255, .12) !important;
}
.footer-media-item:hover{
    background: rgba(255, 255, 255, .18) !important;
    transform: translateY(-6px) !important;
}

/* Icon BULAT DIPERBESAR */
.footer-media-icon{
    width: 80px !important;
    height: 80px !important;
    font-size: 38px !important;
    border-radius: 22px !important;
    box-shadow: 0 6px 18px rgba(0, 0, 0, .25);
}

/* Label "WHATSAPP / YOUTUBE / dll" */
.footer-media-label{
    font-size: 15px !important;
    font-weight: 800 !important;
    color: #f3f4f6 !important;
    letter-spacing: 1.5px;
    margin-bottom: 6px !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, .35);
}

/* Value (nomor / nama akun) */
.footer-media-value{
    font-size: 20px !important;
    font-weight: 800 !important;
    line-height: 1.4 !important;
    color: #ffffff !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, .35);
    word-break: keep-all;
}

/* Nomor WhatsApp — 1 baris penuh */
.footer-media-wa-value,
.footer-media-item .whatsapp-btn ~ .footer-media-text .footer-media-value{
    white-space: nowrap !important;
    letter-spacing: .3px !important;
    font-variant-numeric: tabular-nums;
    font-size: 18px !important;
    overflow: visible !important;
    text-overflow: clip !important;
}

/* Email — 1 baris penuh dengan font yang muat */
.footer-media-email-value{
    white-space: nowrap !important;
    font-size: 16px !important;
    letter-spacing: 0 !important;
    overflow: visible !important;
    text-overflow: clip !important;
}

/* Kotak text wrapper — tidak boleh potong teks */
.footer-media-text{
    min-width: 0;
    flex: 1;
    overflow: visible !important;
}
.footer-media-text .footer-media-value{
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal;
    word-break: normal;
    overflow-wrap: anywhere;
}

/* 3) COPYRIGHT PALING BAWAH — DIPERBESAR */
.footer-copy{
    font-size: 22px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    letter-spacing: .5px !important;
    line-height: 1.5 !important;
    padding: 14px 18px !important;
    background: rgba(0, 0, 0, .18);
    border-radius: 14px;
    margin-top: 10px;
    text-shadow: 0 2px 6px rgba(0, 0, 0, .35);
    white-space: normal !important;
}

/* 4) Title di atas media sosial juga sedikit lebih besar */
.footer-social-title{
    font-size: 22px !important;
    color: #ffffff !important;
    text-shadow: 0 1px 3px rgba(0, 0, 0, .25);
}

/* === Responsive === */
@media (max-width: 1024px){
    .footer-media-icon{ width: 70px !important; height: 70px !important; font-size: 32px !important; }
    .footer-media-value{ font-size: 17px !important; }
    .footer-media-label{ font-size: 13px !important; }
    .footer-copy{ font-size: 18px !important; padding: 12px 14px !important; }
}

@media (max-width: 768px){
    .footer-media-icon{ width: 60px !important; height: 60px !important; font-size: 28px !important; }
    .footer-media-value{ font-size: 15px !important; }
    .footer-media-label{ font-size: 12px !important; letter-spacing: 1px; }
    .footer-copy{
        font-size: 14px !important;
        padding: 10px 12px !important;
        line-height: 1.55 !important;
        word-wrap: break-word;
    }
    /* Mobile: izinkan WA value pecah baris kalau perlu */
    .footer-media-item .whatsapp-btn + div .footer-media-value{
        white-space: normal !important;
    }
}

@media (max-width: 480px){
    .footer-media-icon{ width: 52px !important; height: 52px !important; font-size: 24px !important; }
    .footer-media-value{ font-size: 14px !important; }
    .footer-copy{ font-size: 13px !important; }
}

/* ===== PATCH FIX: MEDIA SOSIAL FOOTER ===== */

/* Fix 1: WhatsApp nomor tetap 1 baris + teks lebih besar */
.footer-media-value {
    white-space: nowrap !important;
    font-size: 19px !important;
}

/* Fix 2: Icon lebih besar */
.footer-media-icon {
    font-size: 34px !important;
}

.footer-media-icon i {
    font-size: 34px !important;
}

/* Fix 3: Label lebih besar */
.footer-media-label {
    font-size: 15px !important;
    margin-bottom: 5px !important;
}

/* ===== END PATCH ===== */

/* ============================================================
   FINAL OVERRIDE — Teks medsos LEBIH BESAR, card LEBIH LEBAR
   ============================================================ */

/* Card width lebih lebar agar muat teks besar */
.footer-media-list{
    grid-template-columns: repeat(auto-fit, minmax(360px, 1fr)) !important;
    gap: 16px !important;
}

/* Label "YOUTUBE / WHATSAPP / dll" lebih besar */
.footer-media-label{
    font-size: 17px !important;
    font-weight: 800 !important;
    letter-spacing: 1.8px !important;
    margin-bottom: 7px !important;
    color: #f3f4f6 !important;
}

/* Value (nama akun / nomor / email) lebih besar */
.footer-media-value{
    font-size: 22px !important;
    font-weight: 800 !important;
    line-height: 1.45 !important;
    color: #ffffff !important;
}

/* Khusus nomor WhatsApp — 1 baris, font besar */
.footer-media-item .whatsapp-btn ~ .footer-media-text .footer-media-wa-value,
.footer-media-wa-value{
    font-size: 22px !important;
    white-space: nowrap !important;
    overflow: visible !important;
    letter-spacing: .5px !important;
    font-variant-numeric: tabular-nums;
}

/* Khusus EMAIL — 1 baris, font sedang (26 char muat di card 360px) */
.footer-media-item.footer-media-email .footer-media-email-value,
.footer-media-email .footer-media-email-value,
.footer-media-item.footer-media-email .footer-media-text .footer-media-value{
    font-size: 18px !important;
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
    letter-spacing: 0 !important;
}

/* Icon juga sedikit lebih besar */
.footer-media-icon{
    width: 88px !important;
    height: 88px !important;
    font-size: 42px !important;
    border-radius: 22px !important;
}
.footer-media-icon i{
    font-size: 42px !important;
}

/* Padding card lebih lapang */
.footer-media-item{
    padding: 22px 24px !important;
    gap: 20px !important;
}

/* === Responsive — sesuaikan ukuran di layar kecil === */
@media (max-width: 1024px){
    .footer-media-list{
        grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)) !important;
    }
    .footer-media-value{ font-size: 19px !important; }
    .footer-media-wa-value{ font-size: 19px !important; }
    .footer-media-email-value,
    .footer-media-item.footer-media-email .footer-media-email-value{ font-size: 16px !important; }
    .footer-media-icon{ width: 78px !important; height: 78px !important; }
    .footer-media-icon i{ font-size: 36px !important; }
    .footer-media-label{ font-size: 15px !important; }
}

@media (max-width: 768px){
    .footer-media-list{
        grid-template-columns: 1fr !important;
    }
    .footer-media-value{ font-size: 18px !important; }
    .footer-media-wa-value{ font-size: 18px !important; }
    .footer-media-email-value,
    .footer-media-item.footer-media-email .footer-media-email-value{ font-size: 15px !important; }
    .footer-media-icon{ width: 68px !important; height: 68px !important; }
    .footer-media-icon i{ font-size: 32px !important; }
    .footer-media-label{ font-size: 14px !important; }
    .footer-media-item{ padding: 18px 20px !important; }
}

@media (max-width: 480px){
    .footer-media-value{ font-size: 16px !important; }
    .footer-media-wa-value{ font-size: 16px !important; }
    .footer-media-email-value,
    .footer-media-item.footer-media-email .footer-media-email-value{ font-size: 13px !important; }
    .footer-media-icon{ width: 58px !important; height: 58px !important; }
    .footer-media-icon i{ font-size: 28px !important; }
}

/* ============================================================
   FINAL FIX — Perbesar SEMUA teks/icon di footer + fix overflow
   ============================================================ */

/* ===== KARTU ALAMAT KAMI ===== */
.footer-address-card{
    padding: 36px !important;
}
.footer-address-title{
    font-size: 28px !important;
    font-weight: 900 !important;
}
.footer-address-subtitle{
    font-size: 15px !important;
    margin-bottom: 18px !important;
}
.footer-address-content > p,
.footer-address-content > div:not([class*="footer-contact"]){
    font-size: 17px !important;
    line-height: 1.7 !important;
}

/* === KONTAK: EMAIL RESMI, GMAIL, TELEPON === */
.footer-contact-item{
    padding: 16px 18px !important;
    gap: 14px !important;
    margin-bottom: 10px !important;
}
.footer-pro-icon,
.footer-mail-icon,
.footer-gmail-icon,
.footer-live-icon{
    width: 56px !important;
    height: 56px !important;
    font-size: 26px !important;
    border-radius: 14px !important;
    flex-shrink: 0 !important;
}
.footer-pro-icon i,
.footer-mail-icon i,
.footer-gmail-icon i,
.footer-live-icon i{
    font-size: 26px !important;
}

/* Label kecil "EMAIL RESMI / GMAIL" */
.footer-pro-text h5,
.footer-contact-item h5,
.footer-contact-link span:first-child{
    font-size: 14px !important;
    font-weight: 800 !important;
    letter-spacing: 1.5px !important;
    margin-bottom: 4px !important;
    color: #cbd5e1 !important;
}

/* Value email/nomor di alamat kami */
.footer-pro-text p,
.footer-contact-item p,
.footer-contact-link span:last-child{
    font-size: 17px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    line-height: 1.4 !important;
    word-break: break-all !important;
    white-space: normal !important;
}

/* Pastikan text wrapper tidak overflow */
.footer-pro-text,
.footer-contact-link > div{
    min-width: 0 !important;
    flex: 1 !important;
    overflow: hidden !important;
}

/* ===== KARTU MEDIA SOSIAL ===== */
/* Title "MEDIA SOSIAL JDIH HALMAHERA BARAT" */
.footer-social-title{
    font-size: 22px !important;
    font-weight: 800 !important;
    margin-bottom: 24px !important;
}

/* Email card — FIX OVERFLOW: pakai font lebih kecil dan break-all */
.footer-media-item.footer-media-email .footer-media-email-value,
.footer-media-email .footer-media-email-value,
.footer-media-item.footer-media-email .footer-media-text .footer-media-value{
    font-size: 17px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    display: block !important;
    max-width: 100% !important;
    letter-spacing: -.2px !important;
}

/* ===== KARTU JUMLAH PENGUNJUNG ===== */
.visitor-title{
    font-size: 22px !important;
    font-weight: 900 !important;
    margin-bottom: 18px !important;
}
.visitor-donut-center span{
    font-size: 14px !important;
    font-weight: 700 !important;
}
.visitor-donut-center strong{
    font-size: 26px !important;
    font-weight: 900 !important;
}

/* Pengunjung Hari Ini */
.visitor-daily-card span{
    font-size: 14px !important;
    font-weight: 800 !important;
    letter-spacing: 1.5px !important;
}
.visitor-daily-card strong{
    font-size: 32px !important;
    font-weight: 900 !important;
}

/* Sedang Online */
.visitor-online-card span{
    font-size: 14px !important;
    font-weight: 700 !important;
    letter-spacing: 1px !important;
}
.visitor-online-card strong{
    font-size: 22px !important;
    font-weight: 900 !important;
}

/* Legend Harian/Mingguan/Bulanan/Tahunan */
.visitor-legend-item span{
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #cbd5e1 !important;
}
.visitor-legend-item strong{
    font-size: 22px !important;
    font-weight: 900 !important;
    color: #ffffff !important;
}
.visitor-legend-dot{
    width: 12px !important;
    height: 12px !important;
}
.visitor-legend-item{
    padding: 14px 16px !important;
}

/* ===== RESPONSIVE — kecilin sedikit tapi tetap terbaca di mobile ===== */
@media (max-width: 1024px){
    .footer-address-title{ font-size: 24px !important; }
    .footer-pro-icon,
    .footer-mail-icon,
    .footer-gmail-icon,
    .footer-live-icon{ width: 50px !important; height: 50px !important; font-size: 22px !important; }
    .footer-pro-icon i,
    .footer-mail-icon i,
    .footer-gmail-icon i,
    .footer-live-icon i{ font-size: 22px !important; }
    .footer-pro-text p{ font-size: 15px !important; }
    .visitor-title{ font-size: 19px !important; }
    .visitor-daily-card strong{ font-size: 26px !important; }
    .visitor-legend-item strong{ font-size: 19px !important; }
}

@media (max-width: 768px){
    .footer-address-title{ font-size: 22px !important; }
    .footer-address-card{ padding: 24px !important; }
    .footer-pro-icon,
    .footer-mail-icon,
    .footer-gmail-icon,
    .footer-live-icon{ width: 46px !important; height: 46px !important; font-size: 20px !important; }
    .footer-pro-icon i,
    .footer-mail-icon i,
    .footer-gmail-icon i,
    .footer-live-icon i{ font-size: 20px !important; }
    .footer-pro-text p{ font-size: 14px !important; }
    .footer-pro-text h5,
    .footer-contact-link span:first-child{ font-size: 12px !important; }
    .footer-social-title{ font-size: 18px !important; }
    .visitor-title{ font-size: 17px !important; }
    .visitor-daily-card strong{ font-size: 24px !important; }
    .visitor-legend-item strong{ font-size: 17px !important; }
    .footer-media-item.footer-media-email .footer-media-email-value{ font-size: 14px !important; }
}
