.v8-footer{
    background:#080808;
    color:#d7e6f4;
    font-family:Arial, sans-serif;
    padding:64px 0 30px;
}

.v8-footer-inner{
    max-width:1280px;
    margin:auto;
    display:grid;
    grid-template-columns:1.15fr .9fr .95fr 1fr;
    gap:30px;
}

.v8-logo{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:28px;
}


.v8-logo img {
	max-width: 120px;
	height: auto;
	display: block;
}
.v8-logo strong{
    color:#fff;
    font-size:24px;
    font-weight:800;
}

.v8-desc{
    font-size:14px;
    line-height:1.8;
    max-width:310px;
    margin-bottom:36px;
}

.v8-footer h3{
    color:#fff;
    font-size:20px;
    font-weight:800;
    padding-left:14px;
    border-left:4px solid #f90816;
    margin:0 0 24px;
	 display:flex;
    align-items:center;
    gap:14px;
    margin-bottom:16px;
}

.v8-contact-item{
    display:flex;
    align-items:center;
    gap:14px;
    margin-bottom:16px;
    font-size:14px;
    line-height:1.6;
    color:#fff;
}

.v8-icon{
    width:44px;
    height:44px;
    min-width:44px;
    flex:0 0 44px;
    border-radius:10px;
    background:#0f0f0f;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
}

.v8-icon img{
    width:20px;
    height:20px;
    object-fit:contain;
    display:block;
  filter: brightness(0) saturate(100%) invert(15%) sepia(100%) saturate(7482%) hue-rotate(0deg) brightness(103%) contrast(119%);
    transform: scale(1.04);
  
}
.v8-contact-item > div:last-child{
    flex:1;
    line-height:1.7;
}
.v8-menu{
    padding:0;
    margin:0;
    list-style:none;
}

.v8-menu li{
    margin-bottom:18px;
    position:relative;
    padding-left:16px;
}

.v8-menu li:before{
    content:"";
    width:6px;
    height:6px;
    background:#f90816;
    border-radius:50%;
    position:absolute;
    left:0;
    top:8px;
}

.v8-menu a{
    color:#d7e6f4;
    text-decoration:none;
    font-size:14px;
}

.v8-menu a:hover{
    color:#f90816;
}

.v8-hour-row{
    display:flex;
    justify-content:space-between;
    gap:30px;
    padding:0 0 16px;
    margin-bottom:16px;
    border-bottom:1px solid #171717;
    font-size:14px;
}

.v8-hour-row strong{
    color:#fff;
    font-weight:700;
}

.v8-hour-row:last-of-type span,
.v8-hour-row:last-of-type strong{
    color:#f90816;
}

.v8-hotline-label{
    color:#6f7890;
    font-size:10px;
    letter-spacing:4px;
    margin-top:28px;
    margin-bottom:10px;
}

.v8-hotline-list{
	display:flex;
	flex-direction:column;
	gap:8px;
}
 
.v8-hotline{
	color:#f90816;
    font-size:32px;
    font-weight:900;
    text-decoration:none;
}

.v8-map iframe{
    width:100%;
    height:285px;
    border-radius:10px;
/*     filter:grayscale(1) invert(.9) contrast(.9); */
}

@media(max-width:1024px){
    .v8-footer-inner{
        grid-template-columns:1fr 1fr;
        gap:40px;
        padding:0 20px;
    }

    .v8-bottom{
        margin-left:20px;
        margin-right:20px;
    }
}

@media(max-width:640px){
    .v8-footer-inner{
        grid-template-columns:1fr;
    }

    .v8-bottom{
        flex-direction:column;
        gap:18px;
    }

    .v8-bottom a{
        margin-left:0;
        margin-right:20px;
    }
		
}
.v8-col.v8-map{
    width:100%;
}

.v8-col.v8-map iframe{
    width:100%;
    min-height:420px;   /* tăng chiều cao */
    height:100%;
    border:0;
    border-radius:14px;
    overflow:hidden;
}

@media (min-width:1200px){
    .v8-footer-inner{
        grid-template-columns:1fr 1fr 1fr 1.4fr; /* cột map rộng hơn */
    }
}

@media (max-width:768px){
    .v8-col.v8-map iframe{
        min-height:320px;
    }
}
/* button */
.v8-floating-buttons {
	position: fixed;
	left: 22px;
	bottom: 28px;
	z-index: 9999;
	display: flex;
	flex-direction: column;
	gap: 10px;
	align-items: flex-start;
}

.v8-float-btn {
	width: 52px;
	height: 52px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	background: #35a8ff;
	box-shadow: 0 0 0 0 rgba(53,168,255,.55);
	animation: v8-shake 2.2s infinite, v8-pulse 1.8s infinite;
	position: relative;
}

.v8-float-btn img {
	width: 28px;
	height: 28px;
	object-fit: contain;
}

.v8-map-btn {
	background: #8ed9ff;
}

.v8-zalo-btn {
	background: #2fa8ff;
}

.v8-messenger-btn {
	background: #5cc8ff;
}

.v8-phone-btn {
	width: auto;
	height: 52px;
	border-radius: 30px;
	padding: 0 18px 0 12px;
	gap: 10px;
	background: linear-gradient(90deg, #ff2f2f, #ff6868, #ff2f2f);
	background-size: 200% 100%;
	color: #fff;
	font-size: 17px;
	font-weight: 700;
	animation: v8-shake 2.2s infinite, v8-phone-gradient 2s linear infinite, v8-red-pulse 1.8s infinite;
}

.v8-phone-icon {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: rgba(255,255,255,.25);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 20px;
}

@keyframes v8-shake {
	0%, 100% { transform: rotate(0deg); }
	5% { transform: rotate(8deg); }
	10% { transform: rotate(-8deg); }
	15% { transform: rotate(6deg); }
	20% { transform: rotate(-6deg); }
	25% { transform: rotate(0deg); }
}

@keyframes v8-pulse {
	0% { box-shadow: 0 0 0 0 rgba(53,168,255,.55); }
	70% { box-shadow: 0 0 0 14px rgba(53,168,255,0); }
	100% { box-shadow: 0 0 0 0 rgba(53,168,255,0); }
}

@keyframes v8-red-pulse {
	0% { box-shadow: 0 0 0 0 rgba(255,47,47,.55); }
	70% { box-shadow: 0 0 0 14px rgba(255,47,47,0); }
	100% { box-shadow: 0 0 0 0 rgba(255,47,47,0); }
}

@keyframes v8-phone-gradient {
	0% { background-position: 0% 50%; }
	100% { background-position: 200% 50%; }
}

@media (max-width: 768px) {
	.v8-floating-buttons {
		left: 14px;
		bottom: 18px;
	}

	.v8-float-btn {
		width: 46px;
		height: 46px;
	}

	.v8-phone-btn {
		width: 46px;
		height: 46px;
		padding: 0;
		border-radius: 50%;
		gap: 0;
	}

	.v8-phone-btn strong {
		display: none;
	}

	.v8-phone-icon {
		width: 46px;
		height: 46px;
		background: transparent;
	}
}