/*
Theme Name: Kyoto Child
Theme URI: https://www.kyototheme.com
Description: Kyoto Child Theme.
Author: Twisttheme
Template: kyoto
Version: 1.0.0.28
Text Domain: kyoto
*/


/*======================== COOKIES ==========================*/

.cky-notice .cky-title {
	margin: 0 !important;
}

.cky-notice .cky-btn {
	border-radius: 50px;
	border: none !important;
	background-color: var(--secondary-color) !important;
	font-size: 16px;
	box-shadow: 0 4px 4px 0 #00000025 !important;
}

.cky-notice .cky-btn:hover {
	background-color: var(--secondary-hover-color) !important;
}


.cky-consent-bar .cky-notice-des p, .cky-gpc-wrapper .cky-gpc-desc p, .cky-preference-body-wrapper .cky-preference-content-wrapper p, .cky-accordion-header-wrapper .cky-accordion-header-des p, .cky-cookie-des-table li div:last-child p {
	font-family: 'Baloo2', 'Mitr', sans-serif;
	font-weight: 300;
	color: #4d4d4d !important;
}


/*======================== PRELOADER ==========================*/

#preloader {
  position: fixed;
  top: 0;
  left: 0;
  display: flex;
	justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  background-color: #fff;
  z-index: 9999;
 
}


* {
  font-family: 'Mitr';
}

@font-face {
  font-family: 'Baloo2';
  src: url('./fonts/Baloo2-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: 'Baloo2';
  src: url('./fonts/Baloo2-Medium.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
}

@font-face {
  font-family: 'Baloo2';
  src: url('./fonts/Baloo2-SemiBold.ttf') format('truetype');
  font-weight: 600;
  font-style: normal;
}

@font-face {
  font-family: 'Baloo2';
  src: url('./fonts/Baloo2-Bold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
}

@font-face {
  font-family: 'Baloo2';
  src: url('./fonts/Baloo2-ExtraBold.ttf') format('truetype');
  font-weight: 800;
  font-style: normal;
}


.kyt-header {
  position: absolute;
  left: 0;
  width: 100%;
  z-index: 10;
  box-shadow: 0px 4px 24px 0px rgba(0, 0, 0, 0.18);
}


ul#menu-main-menu {
display: flex;
gap: 24px;
}

.kyt-navbar .navbar-widgets.right {
margin-left: 24px;
}

.kyt-topnav-menu > .menu-item > a {
padding: 0;
color: #FFF;
font-family: 'Mitr';
}

.kyt-light-scheme .widget a.vv-header-btn {
	padding: 8px 24px;
	font-size: 18px;
	color: #FFF!important;
	background-color: #0075B1;
	border-radius: 32px;
}

.kyt-light-scheme .widget a.vv-header-btn#vv-emergency-btn {
	padding: 8px 16px;
	border-radius: 50%;
	background-color: #E43727;
}

.kyt-light-scheme .widget a.vv-header-btn#vv-emergency-btn:hover {
	background-color: #F06C55;
}

.kyt-light-scheme .kyt-navbar--mobile a.vv-header-btn#vv-emergency-btn {
	margin-left: 8px;
}

/*================================= GLOBAL =====================================*/

:root {
	--primary-color: #FFAE00;
	--primary-hover-color: #FFD884;
	--secondary-color: #0075B1;
	--secondary-hover-color: #80BAD8;
	--bg-white-hover: #EFEFEF;
	--gap-x: 24px;
	--gap-y: 24px;
}

.kyt-button.kyt-button--1:hover > .btnx {
	background-color: var(--primary-hover-color)!important;
}

a {
	-webkit-tap-highlight-color: transparent;
}

.kyt-section {
	overflow: hidden;
}

.h2 h1 {
	font-size: 48px;
}

.font-64 {
	font-size: 64px;
}

.font-28 {
	font-size: 28px;
}

.font-baloo,
.font-baloo *,
.font-baloo .kyt-secondary-font, .font-baloo .kyt-primary-font{
	font-family: 'Baloo2', 'Mitr', sans-serif!important;
}


.font-baloo-btn,
.font-baloo-btn span {
	font-family: 'Baloo2', 'Mitr', sans-serif!important;
}

.text-shadow-038 h1,
.text-shadow-038 h2,
.text-shadow-038 h3,
.text-shadow-038 h4 {
	text-shadow: 0px 3px 8px #00000033;
}

.text-shadow-225 h1,
.text-shadow-225 h2,
.text-shadow-225 h3,
.text-shadow-225 h4 {
	text-shadow: 2px 2px 5px #00000033;
}

.text-shadow-338 h1,
.text-shadow-338 h2,
.text-shadow-338 h3,
.text-shadow-338 h4 {
	text-shadow: 3px 3px 8px #00000033;
}

.kyt-secondary-font,
.kyt-primary-font {
	font-family: 'Mitr', sans-serif!important;
}

.kyt-text {
	font-weight: 300;
}

.fw-regular.kyt-text,
.fw-regular .kyt-heading-text {
	font-weight: 400;
}

.fw-medium.kyt-text,
.fw-medium .kyt-heading-text {
	font-weight: 500;
}

.fw-semibold.kyt-text,
.fw-semibold .kyt-heading-text {
	font-weight: 600;
}

.fw-bold.kyt-text,
.fw-bold .kyt-heading-text {
	font-weight: 700;
}

.fw-extrabold.kyt-text,
.fw-extrabold .kyt-heading-text {
	font-weight: 800;
}

.kyt-header {
  position: absolute;
  left: 0;
  width: 100%;
  z-index: 10;
}

.kyt-header nav {
	box-shadow: 0px 4px 24px 0px rgba(0, 0, 0, 0.18);
}

.kyt-navbar-inner.kyt-light-scheme {
	background-color: #FFAE00!important;
}

ul#menu-main-menu {
	display: flex;
	gap: 24px;
}

.kyt-navbar .navbar-widgets.right {
	margin-left: 24px;
}

.kyt-topnav-menu > .menu-item > a {
	padding: 0;
	color: #FFF!important;
	font-family: 'Baloo2', 'Mitr', sans-serif!important;
}

.kyt-light-scheme .widget a.vv-header-btn {
	padding: 8px 24px;
	font-size: 18px;
	font-weight: 500;
	font-family: 'Mitr';
	color: #FFF;
	background-color: var(--secondary-color);
	border-radius: 32px;
	box-shadow: 0 4px 4px 0 #00000025;
}

.kyt-light-scheme .widget a.vv-header-btn:hover {
	background-color: var(--secondary-hover-color);
}

.kyt-topnav-menu:after {
  content: unset!important;
}

.kyt-button.kyt-button--5 > .btnx, .widget .kyt-button.kyt-button--5 > .btnx {
	color: #FFF!important;
	background-color: var(--secondary-color)!important;
	border-color: var(--secondary-color)!important;
}

.kyt-button.kyt-button--5:hover > .btnx,
.kyt-button.kyt-button-hover--5:hover > .btnx, .widget .kyt-button.kyt-button-hover--5:hover > .btnx:hover, .kyt-button.kyt-button-hover--5:hover > .btnx, .widget .kyt-button.kyt-button-hover--5 > .btnx:focus {
	background-color: var(--secondary-hover-color)!important;
	border-color: var(--secondary-hover-color)!important;
}

.kyt-button.kyt-button--6 > .btnx, .widget .kyt-button.kyt-button--6 > .btnx, .kyt-button.kyt-button-hover--6 > .btnx:hover, .widget .kyt-button.kyt-button-hover--6 > .btnx:hover, .kyt-button.kyt-button-hover--6 > .btnx:focus, .widget .kyt-button.kyt-button-hover--6 > .btnx:focus {
	color: var(--primary-color)!important;
	background-color: #FFF!important;
	border-color: #FFF!important;
}

.kyt-button.kyt-button--6:hover > .btnx {
	background-color: var(--bg-white-hover)!important;
	border-color: var(--bg-white-hover);
}

.kyt-button.kyt-button--4.vv-line-btn {
	max-width: 491px;
}

.kyt-button.kyt-button--4.vv-line-btn > .btnx {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	padding: 0 35px;
	max-width: 491px;
	height: 60px; 
	font-size: 24px;
	color: #03C100;
	background-color: #FFF;
	border-radius: 32px;
}

.kyt-button.kyt-button-hover--4.vv-line-btn > .btnx:hover {
	color: #FFF;
	background-color: #03C100;
}

.kyt-button.kyt-button--4.vv-line-btn:hover > .btnx {
	background-color: #03C100;
}

.kyt-button.kyt-button--4.vv-phone-btn {
	max-width: 253px;
}

.kyt-button.kyt-button--4.vv-phone-btn > .btnx {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	padding: 0 24px;
	width: 100%;
	height: 60px; 
	font-size: 24px;
	color: #FFF;
	background-color: var(--secondary-color);
	border-radius: 32px;
}

.kyt-button.kyt-button--4.vv-phone-btn:hover > .btnx {
	background-color: var(--secondary-hover-color);
}

.kyt-button.kyt-button--4 > .btnx i {
	margin-top: 0;
	font-size: 24px;
}

.kyt-button.kyt-button--4 > .btnx span {
	font-weight: 500;
}

.kyt-button.kyt-button--4.vv-phone-btn .kyt-icon--before {
	padding-right: 0;
}

.vv-d-inline-btn-wrapper .kyt-box-body {
	display: flex;
	gap: 16px;
}

.vv-d-inline-btn-wrapper .kyt-button {
	width: 50%;
}

.vv-d-inline-btn-wrapper .kyt-button .btnx {
	padding: 0;
	width: 100%;
	height: 60px;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 32px;
	min-width: 140px;
}

.vv-d-inline-btn-wrapper .kyt-button--inline {
	margin-right: 0;
}

.vv-carousel-arrow-btn {
	display: flex;
	padding: 0;
	background-color: unset;
}

.vv-carousel-arrow-btn svg {
    border-radius: 50%;
}

.vv-carousel-arrow-btn rect {
	transition: fill 0.25s;
}

.vv-carousel-arrow-btn:hover rect {
	fill: var(--primary-hover-color);
}

.vv-carousel-arrow-wrapper {
	display: flex;
	justify-content: flex-end;
	gap: 12px;
}

/*================================ MEGA MENU ==================================*/

.kyt-navbar-dropdown-dark-scheme .kyt-mega-menu-bg {
	background-color: #FFF!important;
	box-shadow: 0px 4px 24px 0px rgba(0, 0, 0, 0.18);
}

.vv-megamenu-medical-list {
	 column-count: 2;
  list-style-type: none;
}

.vv-megamenu-list li + li {
	margin-top: 12px;
}

.vv-megamenu-list li a span {
	font-size: 16px;
	font-weight: 300;
}

.cta-btn-phone .kyt-image-container a,
.cta-btn-line .kyt-image-container a {
    display: flex;
    align-items: center;
    justify-content: center;
	 	width: 64px;
    height: 64px;
	border-radius: 100px;
	box-shadow: 0px 0px 12px 0px #0000003D;
}

.cta-btn-phone .kyt-icon {
	width: 64px;
	height: 64px;
}

.cta-btn-phone .kyt-image-container a {
	background-color: #FFF;
}

.cta-btn-phone:hover .kyt-image-container a {
	background-color: #EFEFEF;
}

.cta-btn-phone .twf-phone {
	font-size: 32px;
	color: var(--secondary-color);
}

.cta-btn-phone .kyt-image-container .kyt-media-wrapper,
.cta-btn-line .kyt-image-container .kyt-media-wrapper {
	overflow: unset;
}

.cta-btn-phone .kyt-image-container a img {
	width: 26px!important;
}

.cta-btn-line .kyt-image-container a {
	background-color: #06C755;
}

.cta-btn-line .kyt-image-container a img {
	width: 42px;
}
 

/*==================================== HOME ======================================*/

.vv-home-h1 h1 span::after {
	content: "";
	position: absolute;
	top: -8px;
	right: -143px;
	display: block;
	width: 143px;
	height: 147px;
	background-image: url('https://www.vetvillepet.com/wp-content/uploads/2025/05/vetville-24-hours-badge.png');
	background-size: contain;
	background-repeat: no-repeat;
	transform: translateY(-25%);
}

.vv-home-h1 span {
	position: relative;
	font-size: 40px;
}

.home-btn-shadow {
	padding-bottom: 8px;
}

.home-btn-shadow a.btnx {
	box-shadow: 0px 4px 4px 0px #00000025;
}

#vv-home-banner .kyt-container {
	position:static;
	height: 100%;
}

.vv-home-banner-img {
	position: absolute;
	top: 0;
	bottom: -10px;
	left: max( 49%, 480px );
	width: max(51%, 800px );
	z-index: 1;
}

.vv-home-banner-img .kyt-image-container {
	position: relative;
	height: 100%;
}

.vv-home-banner-img .kyt-media-wrapper {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
}

.vv-dog-overlay {
	position: absolute;
	z-index: 0;
}

#vv-home-banner .vv-dog-overlay {
	top: -8%;
	bottom: -8%;
	left: -8%;
	width: max(66%, 100vh );
}

#vv-home-banner .kyt-col-5 {
	position: relative;
	z-index: 2;
}

.vv-border-img-bottom {
	position: absolute;
	left: -15px;
	bottom: -1px;
	right: -15px;
	width: calc(100% + 30px);
	z-index: 3;
}

.vv-border-img-bottom img,
.vv-border-img-bottom .kyt-media-wrapper-inner {
	width: 100%;
}

#vv-home-care .kyt-row:nth-child(2) {
	display: grid;
	grid-template-columns: repeat( 4, 1fr );
	gap: 24px;
	margin-left: calc( var(--gap-x) / -2 );
	margin-right: calc( var(--gap-x) / -2 );
}

#vv-home-care .kyt-row:nth-child(2) .kyt-col-3 {
	padding-left: 0;
	padding-right: 0;
	width: 100%;
}

.vv-home-care-card {
	height: 100%;
}

.vv-home-care-card .kyt-box-inner,
.vv-home-care-card .kyt-box-content
{
	height: 100%;
}

.vv-home-care-card .kyt-box-body {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 100%;
}

.vv-home-care-card:after {
	content: unset;
}

.vv-care-that-matters-title h3 {
	font-size: min(3vw, 42px);
	line-height: 1;
}

.vv-top-curve-border,
.vv-top-curve-border .kyt-media-wrapper-inner,
.vv-top-curve-border .kyt-media-wrapper-inner img {
	width: 100%;
}

.vv-medical-icon img {
    margin: 0 auto 12px;
    max-height: 68px;
	height: 100%
}

.vv-medical-carousel h4 {
	margin-bottom: 4px;
	color: var(--secondary-color);
	text-align: center;
}

.vv-medical-carousel h4 span.eng-name {
	margin-top: 0;
	color: #7C7C7C;
	font-size: 16px;
	font-weight: 700;
	font-family: 'Baloo2';
	line-height: 20px;
	text-align:center;
	transition: color 0.25s;
}

.vv-medical-carousel .slick-track {
	padding-top: 4px;
	padding-bottom: 10px;
}

.vv-medical-carousel .kyt-entry-inner {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 32px 10px;
	height: 100%;
	background-color: #FFF;
	border-radius: 24px;
	box-shadow: 0px 4px 10px 0px #00000033;
}

.vv-medical-carousel .slick-slide {
	height: 205px;
}

.kyt-entries-content {
	margin: 0 -12px!important;
}

.slick-initialized .slick-slide {
	padding: 0 12px!important;
}

#vv-program .kyt-container {
	position: static;
}

.vv-home-h2-care-that-matters h2 {
	font-size: 64px;
	line-height: 80px;
}

.kyt-topnav-menu>li.menu-item-mega-menu>a {
	display: flex;
	align-items: center;
	gap: 4px;
}

header.kyt-header .kyt-navbar-body li.menu-item-mega-menu > a:after {
    content: "";
    display: block;
		margin-top: -2px;
    width: 20px;
    height: 20px;
    background-image: url("data:image/svg+xml,%3Csvg width='20' height='21' viewBox='0 0 20 21' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 8.20769L10 13.2077L15 8.20769' stroke='white' stroke-width='1.66667' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
}

.m3-mobile-menu-container .m3-sub-menu, 
.m3-mobile-menu-container .m3-sub-menu-level2, 
.m3-mobile-menu-container .m3-sub-menu-level3 {
	padding-bottom: 120px;
	height: calc(100vh - 90px);
	overflow: scroll;
}

.m3-toggle-slide-menu {
	cursor: pointer;
}

/*================================ ABOUT ================================*/

#vv-about-banner .kyt-container {
	position: static;
}

#vv-about-rabbit-holder .kyt-container {
	position: static;
}

.vv-about-h1 {
	position: relative;
	margin: auto;
	width: max-content;
}

.vv-about-h1 span {
	position: relative;
	font-size: 96px;
	z-index: 2;
}

.vv-about-sub-heading span {
	font-size: 48px;
}

.vv-about-h1 h1:after {
	    content: "";
    display: block;
    position: absolute;
    top: -80px;
    left: -31px;
    background-image: url('data:image/svg+xml,%3Csvg%20width%3D%22237%22%20height%3D%22227%22%20viewBox%3D%220%200%20237%20227%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M236.943%20103.772C235.821%2086.6496%20192.579%2093.628%20187.942%2087.8382L185.853%2020.9846C176.805%2010.7306%20154.636%2049.4424%20146.969%2051.3881C141.023%2052.9062%20114.951%2049.271%20111.061%2043.3736C105.007%2034.1954%20107.579%205.07128%2092.8291%200.400995C78.6515%202.65371%2054.4206%2054.4205%2047.6582%2068.3016C29.9085%20104.813%2014.8715%20142.939%200.836473%20181.027C-0.666055%20185.103%201.22819%20189.645%205.15538%20191.45C23.9089%20200.065%2078.3479%20222.755%20139.238%20226.728C142.903%20226.957%20146.142%20224.441%20146.827%20220.863L152.785%20189.569C163.964%20191.744%20198.392%20195.327%20206.423%20187.94C210.687%20184.023%20218.069%20162.854%20220.918%20155.412C224.345%20146.45%20237.35%20110.548%20236.902%20103.795L236.943%20103.772Z%22%20fill%3D%22%230075B1%22/%3E%3C/svg%3E');
    width: 245px;
    height: 264px;
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 1;
}

.vv-about-tab-wrapper .kyt-box-body {
	display: flex;
}

.vv-about-tab-wrapper .kyt-box-body > .kyt-item {
	width: 50%;
}

.vv-about-card-title-wrapper {
	padding-top: 65px;
	padding-bottom: 65px;
	padding-left: 32px;
}

.vv-about-card-title-wrapper h3 {
	font-size: 60px;
	line-height: 1;
}

.vv-about-card-title-wrapper h4 {
	font-size: 40px;
	line-height: 60px;
}

.vv-about-tab-img {
	position: absolute;
	right: 0;
	bottom: 0;
	transform: translateY(30%);
	transition: transform .25s;
	transition-delay: .25s;
}

.vv-about-tab-hidden-text {
	max-height: 0;
  overflow: hidden;
  transition: max-height 0.25s;
;
}

.vv-about-tab-wrapper:hover .vv-about-tab-hidden-text {
	max-height: 500px;
}

.vv-about-tab-wrapper:hover .vv-about-tab-img {
	transform: translateY(10%);
}

.vv-medical-carousel article:hover .kyt-entry-inner {
	background-color: var(--primary-color);
	box-shadow: unset;
}

.vv-medical-carousel article:hover .kyt-entry-inner h4 a {
	color: #FFF;
}

.vv-medical-carousel article:hover .kyt-entry-inner h4 a span {
	color: #FFF;
}

.vv-medical-carousel .kyt-entry-inner h4 a {
	display: flex;
	flex-direction: column;
	transition: .25s;
}

.vv-medical-carousel article .kyt-entry-inner .vv-medical-icon img {
	transition: .25s;
}

.vv-medical-carousel article:hover .kyt-entry-inner .vv-medical-icon img {
	filter: brightness(0%) invert(100%);
}

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

#vv-contact .kyt-section-wrapper {
	height: 100%;
}

#vv-contact .kyt-container {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 100%;
}

#vv-contact .kyt-container:after {
	content: unset;
}

.vv-contact {
display: grid;
grid-template-columns: 1fr 1fr;
grid-column-gap: 16px;
grid-row-gap: 16px;
margin: 0 auto;
}

.vv-input-full {
grid-column: 1 / span 2;
}

.wpcf7-form-control-wrap {
display: block;
margin-top: 4px;
}

.wpcf7-not-valid-tip {
margin-top: 4px;
}

.vv-contact>p {
display: flex;
flex-direction: column;
grid-column: 1 / span 2;
text-align: center;
}

.vv-contact .vv-input-half>p,
.vv-contact .vv-input-full>p {
	margin-bottom: 0;
}

.vv-contact input {
	height: 44px;
}

.vv-contact input::placeholder,
.vv-contact textarea::placeholder {
	color: #4D4D4D;
}


.vv-contact .wpcf7-form-control-wrap,
.vv-contact label {
width: 100%;
}

.vv-contact input,
.vv-contact textarea {
	padding: 12px;
	width: 100%;
	color: #4D4D4D;
	font-weight: 400;
	background-color: #F7F7F7;
	border-width: 0px;
	border-radius: 12px;
}

.vv-contact input:focus,
.vv-contact textarea:focus {
outline: none;
}

.vv-contact input.wpcf7-submit {
	padding: 12px 24px;
	margin-top: 8px;
	width: max-content;
	font-size: 16px;
	font-weight: 500;
	font-family: 'Mitr', sans-serif;
	color: white;
	background-color: var(--secondary-color);
	border-radius: 32px;
	box-shadow: 0px 4px 4px 0px #00000025;

	transition: background-color 0.25s;
}

.vv-contact .wpcf7-spinner {
	position: absolute!important;
	left: 135px;
	bottom: 12px;
}

/*==================================== BRANCH ========================================*/

#vv-branch-banner .kyt-container {
	position: static;
}

.vv-branch-banner-img {
	position: absolute;
	top: 0;
	bottom: 0px;
	left: max( calc(100% - 580px), 480px );
	width: 580px;
	z-index: 1;
}

.vv-branch-banner-img .kyt-image-container {
	position: relative;
	height: 100%;
}

.vv-branch-banner-img .kyt-media-wrapper {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
}

.vv-branch-wrapper {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 48px 24px;
}

.vv-branch-item_img-wrapper {
	position: relative;
	margin-bottom: 24px;
}

.vv-24hours-badge {
	position: absolute;
	width: 80px;
	top: -40px;
	left: -20px;
	z-index: 1;
}

.vv-branch-item_img {
	position: relative;
	width: 100%;
	height: 100%;
	border-radius: 12px;
	aspect-ratio: 4/3;
	overflow: hidden;
	z-index: 0;
}

.vv-branch-item_img-wrapper .vv-branch-cover {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.vv-24hours-batch {
	position: absolute;
	top: 8px;
	left: 8px;
	padding: 8px 24px;
	font-size: 16px;
	font-weight: 500;
	color: #FFF;
	background-color: var(--primary-color);
	border-radius: 20px;
}

.vv-branch-item h2 {
	display: flex;
	flex-direction: column;
	margin-bottom: 4px;
	font-size: 24px;
	font-weight: 500;
	font-family: 'Baloo2', 'Mitr', sans-serif;
	color: var(--secondary-color);
}

.vv-branch-item h3 {
	margin-top: 0;
	margin-bottom: 12px;
	font-size: 20px;
	font-family: 'Baloo2', 'Mitr', sans-serif;
	color: #7C7C7C;
}

.vv-branch-item_content {
	display: grid;
	grid-template-columns: 25px auto;
	gap: 16px;
	margin-bottom: 24px;
}

.vv-branch-item .vv-google-map {
	display: flex;
	width: 180px;
	height: 48px;
	font-weight: 500;
	color: #FFF;
	background-color: var(--secondary-color);
	border-radius: 24px;
	box-shadow: 0px 4px 4px 0px #00000040;
	justify-content: center;
	align-items: center;
	gap: 8px;
}

.vv-branch-item .vv-google-map:hover {
	background-color: var(--secondary-hover-color);
}

/*=================================== BLOG =====================================*/

#vv-blog-banner {
	overflow: hidden
}

#vv-blog-banner .kyt-container {
	position: static;
}

.vv-blog-banner-img {
	position: absolute;
	left: max( calc(100% - 500px),300px );
	bottom: 0px;
	width: 500px;
	height: auto;
	z-index: 1;
}

.vv-blog-banner-img .kyt-image-container {
	position: relative;
	height: 100%;
}

.vv-blog-banner-img .kyt-media-wrapper {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
}

body.archive.category .kyt-entry-meta, body.archive.category .kyt-entry-excerpt, body.archive.category .kyt-entry-link {
	display: none;
}

.vv-blog-grid .kyt-pagination .page-numbers.next,
.vv-blog-grid .kyt-pagination .page-numbers.prev, 
body.archive.category .kyt-pagination .page-number.next,
body.archive.category .kyt-pagination .page-number.prev {
	position: static;
}

.vv-blog-grid .kyt-pagination .page-numbers .pagination-button-label,
body.archive.category .kyt-pagination .page-numbers .pagination-button-label {
	display: none;
}

.vv-blog-grid .kyt-pagination .page-numbers.prev .twf,
body.archive.category .kyt-pagination .page-numbers.prev .twf {
	margin-right: 0;
	color: #4D4D4D;
}

.vv-blog-grid .kyt-pagination .page-numbers.next .twf,
body.archive.category .kyt-pagination .page-numbers.ext .twf {
	margin-left: 0;
	color: #4D4D4D;
}

.vv-blog-grid .kyt-pagination ul,
body.archive.category .kyt-pagination ul {
	display: flex;
	justify-content: center;
	gap: 12px;
	margin: 0 20px;
}

.vv-blog-grid .kyt-pagination li>.page-numbers,
body.archive.category .kyt-pagination li> .page-numbers {
	display: flex;
	justify-content: center;
	align-items: center;
	padding-bottom: 0;
	width: 42px;
	height: 42px;
	font-family: 'Baloo2';
	border-radius: 100px;
}

.vv-blog-grid .kyt-pagination li>.page-numbers.current,
body.archive.category .kyt-pagination li>.page-numbers.current{
	color: #FFF;
	background-color: var(--secondary-color);
}

.vv-blog-grid .kyt-pagination .current:after,
body.archive.category .kyt-pagination .current:after {
	content: unset;
}

.vv-blog-grid .kyt-pagination li,
body.archive.category .kyt-pagination li {
	padding: 0;
}

.kyt-pagination.kyt-s-bg-bg {
	background-color: unset;
}

.kyt-wpcontent img {
	margin: 24px 0 48px;
	border-radius: 24px;
}

.kyt-wpcontent table {
	width: 100%;
	border: 1px solid var(--secondary-color);
}

.kyt-wpcontent table tr {
	border-bottom: 1px solid var(--secondary-color);
}

.kyt-wpcontent table th {
	padding: 16px 24px;
	font-family: 'Mitr';
	font-weight: 600;
}

.kyt-wpcontent table td {
	padding: 16px 24px;
	font-family: 'Mitr';
	font-weight: 300;
}

.kyt-wpcontent table tr>:first-child,
.kyt-wpcontent table tr>:last-child {
	padding: 16px 24px;
}

.kyt-wpcontent table tr td:not(:last-child),
.kyt-wpcontent table tr th:not(:last-child) {
	border-right: 1px solid var(--secondary-color);
}

.kyt-wpcontent img {
	margin: 24px 0 48px;
	border-radius: 24px;
}

/*=============================== SINGLE PAGE ===================================*/

.vv-breadcrumb-wrapper {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
	font-size: 14px;
}

.vv-breadcrumb-wrapper a {
	color: #7C7C7C;
}

.vv-breadcrumb-wrapper span {
	font-weight: 500;
}

.vv-single-page_featured-image {
	margin-bottom: 48px;
	max-width: 995px;
	width: 100%;
	border-radius: 12px;
	object-fit: cover;
	aspect-ratio: 995/460;
}

.vv-single-featured-content {
	text-align: start;
}

.vv-single-featured-content > * {
	margin-top: 0;
	margin-bottom: 12px;
	font-family: 'Baloo2', 'Mitr', sans-serif;
}

.vv-single-featured-content ul,
.vv-single-featured-content ol {
	margin-left: 25px;
}

.vv-single-featured-content h2 {
	margin-bottom: 8px;
	font-size: 32px;
	color: var(--secondary-color);
}

.vv-single-featured-content h3,
.vv-single-featured-content h4 {
	margin-bottom: 8px;
	color: var(--secondary-color);
}

.vv-single-featured-content p,
.vv-single-featured-content li,
.vv-single-featured-content a {
	font-weight: 300;
}

.vv-single-featured-content h2 + p,
.vv-single-featured-content h3 + p,
.vv-single-featured-content h4 + p,
.vv-single-featured-content p + p {
	margin-bottom: 24px;
}

/*=================================== VET =====================================*/

/* New Vet Card Design */
.vv-vet-card {
	background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);
	border-radius: 16px;
	padding: 24px;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
	transition: all 0.3s ease;
	position: relative;
	overflow: hidden;
	border: 1px solid rgba(0, 0, 0, 0.05);
}

.vv-vet-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
}

.vv-vet-card-image {
	width: 120px;
	height: 120px;
	margin: 0 auto 20px;
	border-radius: 50%;
	overflow: hidden;
	border: 4px solid #ffffff;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

.vv-vet-card-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.vv-vet-card-content {
	text-align: center;
	margin-bottom: 20px;
}

.vv-vet-card-header {
	margin-bottom: 16px;
}

.vv-vet-card-name {
	font-size: 22px;
	font-weight: 700;
	font-family: 'Baloo2', 'Mitr', sans-serif;
	color: var(--secondary-color);
	margin: 0 0 8px 0;
	line-height: 1.2;
}

.vv-vet-card-nickname {
	font-size: 18px;
	color: var(--primary-color);
	margin: 0;
	font-weight: 600;
	font-family: 'Baloo2', 'Mitr', sans-serif;
}

.vv-vet-card-department {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2px;
	color: #0075B1;
	font-size: 14px;
	font-weight: 500;
	margin-top: 16px;
}

.vv-vet-card-department svg {
	color: #0075B1;
	flex-shrink: 0;
	margin-top: 2px;
}

.vv-vet-card-department-icon {
	width: 30px;
	height: 30px;
	flex-shrink: 0;
	object-fit: contain;
}

.vv-vet-card-department-text {
	display: flex;
	flex-direction: column;
	gap: 2px;
	text-align: left;
}

.vv-vet-card-department-item {
	display: flex;
	align-items: center;
	gap: 3px;
}

.vv-vet-card-department-thai {
	font-size: 14px;
    font-weight: 500;
    color: #6b6863;
	font-family: 'Baloo2', 'Mitr', sans-serif;
}

.vv-vet-card-department-english {
	font-size: 12px;
	color: #7C7C7C;
	font-weight: 400;
	font-family: 'Mitr', sans-serif;
}

.vv-vet-card-button {
	text-align: center;
}

.vv-vet-card-btn {
	display: inline-block;
	background: linear-gradient(135deg, #FFD700 0%, #FFA500 100%);
	color: #ffffff !important;
	padding: 12px 24px;
	border-radius: 25px;
	text-decoration: none;
	font-weight: 600;
	font-size: 16px;
	transition: all 0.3s ease;
	box-shadow: 0 4px 15px rgba(255, 215, 0, 0.3);
}

.vv-vet-card-btn:hover {
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(255, 215, 0, 0.4);
	color: #ffffff !important;
	text-decoration: none;
}



/* Vet Grid */
.vv-vet-grid {
	display: grid;
	grid-template-columns: repeat( 3, 1fr );
	gap: 24px;
	align-items: stretch;
}

.vv-vet-item {
	width: 100%;
}

/* Original Vet Wrapper */
.vv-vet-wrapper {
	display: grid;
	grid-template-columns: repeat( 2, 1fr );
	gap: 24px;
	align-items: stretch;
}

.vv-vet-item-card {
	padding: 32px 26px;
	background-color: #F7F7F7;
	border-radius: 12px;
}

.vv-vet-img-name-wrapper {
	display: grid;
	grid-template-columns: 88px auto;
	gap: 24px;
}

.vv-vet-info {
	display: flex;
	align-items: center;
  	flex-direction: column;
	align-items: flex-start;
	gap: 16px;
}

.vv-vet-img-name-wrapper h3 {
	margin-top: 0;
	margin-bottom: 0;
	line-height: 1;
	/* line-height: 1.25; */
	font-size: 24px;
	font-family: 'Baloo2', 'Mitr', sans-serif;
	color: var(--secondary-color);
	
}

.vv-vet-name span {
	display: block;
}

.vv-vet-more-info-button {
	text-align: left;
	margin-top: 0;
}

.vv-vet-more-info-button a {
	display: inline-block;
	background: linear-gradient(135deg, var(--secondary-color) 0%, var(--secondary-hover-color) 100%);
	color: #ffffff !important;
	padding: 6px 12px;
	border-radius: 25px;
	text-decoration: none;
	font-weight: 600;
	font-size: 16px;
	font-family: 'Baloo2', 'Mitr', sans-serif;
	transition: all 0.3s ease;
	box-shadow: 0 4px 15px rgba(0, 117, 177, 0.3);
}

.vv-vet-more-info-button a:hover {
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(0, 117, 177, 0.4);
	color: #ffffff !important;
	text-decoration: none;
}

.vv-vet-item-card {
	height: 100%;
}

.vv-vet-item-card hr {
	margin-top: 24px;
	margin-bottom: 24px;
}

.vv-vet-item-card h4 {
	margin-top: 0;
	margin-bottom: 8px;
	font-size: 16px;
	font-weight: 500;
	font-family: 'Baloo2', 'Mitr', sans-serif;
	color: #4D4D4D;
}

.vv-vet-time-wrapper {
	display: flex;
	align-items:center; 
	gap: 14px;
	margin-bottom: 25px;
}

.vv-vet-location-time-wrapper .vv-vet-time-wrapper:last-child {
	margin-bottom: 0;
}

.vv-vet-time-wrapper span {
	font-size: 16px;
	color: #0075B1;
}

/*=============================== MEDICAL =================================*/


#vv-medical {
	overflow: hidden;
}

#vv-medical .kyt-container {
	position: static;
}


.vv-medical-banner-img {
	position: absolute;
	left: max( calc(100% - 700px),700px );
	bottom: 0px;
	width: 700px;
	height: auto;
	z-index: 1;
}



.vv-medical-banner-img .kyt-image-container {
	position: relative;
	height: 100%;
}

.vv-medical-banner-img .kyt-media-wrapper {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
}

.vv-medical-grid {
	display: grid;
	grid-template-columns: repeat( 3, 1fr );
	gap: 40px 24px;
}

.vv-medical-item a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 24px;
    width: 100%;
    background-color: #FFF;
    border-radius: 24px;
    aspect-ratio: 1.54 / 1;
		transition: background-color 0.25s;
}

.vv-medical-item img {
	margin: 0 auto 24px;
	max-height: 68px;
	height: 100%;
	width: auto;
	object-fit: contain;
	transition: filter 0.25s;
}

.vv-medical-item h3 {
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin-top: 0;
	font-size: 20px;
	font-family: 'Baloo2', 'Mitr', sans-serif;
	color: var(--secondary-color);
	text-align: center;
	transition: color 0.25s;
}

.vv-medical-item h3 span {
	color: #7C7C7C;
	transition: color 0.25s;
}

.vv-medical-item:hover a {
	background-color: var(--primary-color);
}

.vv-medical-item:hover img {
	filter: brightness(0%) invert(100%);
}

.vv-medical-item:hover h3,
.vv-medical-item:hover h3 span {
	color: #FFF;
}

/*================================= Footer ==================================*/

footer .kyt-button--5.kyt-button-size--medium>.btnx {
	padding: 0!important;
}

footer .kyt-dark-scheme .kyt-menu a {
	font-weight: 300;
}

footer .kyt-dark-scheme .current-menu-item > a {
	font-weight: 500;
	color: #FFF!important;
}

.vv-footer-policy span {
	opacity: 0.5;
}

.vv-footer-link a.btnx,
.vv-footer-link a.btnx:focus {
	color: #fff;
	box-shadow: none;
}

.vv-footer-link a.btnx:hover {
	color: #fff;
	opacity: 0.5;
}


.kyt-layout-responsive .kyt-section .kyt-row .kyt-divider.footer-hr {
		opacity: 0.3;
}

#vv-policy-content .kyt-item,
#vv-policy-content .kyt-item li {
	font-weight: 300;
}

#vv-policy-content .kyt-item b,
#vv-policy-content .kyt-item span,
#vv-policy-content .fw-semibold.kyt-text, 
#vv-policy-content .fw-semibold .kyt-heading-text {
	font-weight: 500!important;
}

/*================================= PROGRAM =================================*/

#vv-program-banner {
	overflow: hidden;
}

#vv-program-banner .kyt-container {
	position: static;
}

.kyt-entry.type-vv_program .kyt-entry-header:after {
	content: "";
	position: absolute;
	right: -24px;
	bottom: -24px;
	width: 88px;
	height: 80px;
	background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2289%22%20height%3D%2294%22%20viewBox%3D%220%200%2089%2094%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M82.1394%2026.3448L79.695%2024.5162L71.1005%2028.5953L67.907%2024.7914L71.9257%2020.6263L70.0387%2018.3929L65.0494%2022.1348C62.2984%2018.1661%2045.508%20-0.226895%2041.3242%200.311946C35.781%201.04076%2040.3827%2013.4159%2037.8638%2016.6962C32.8948%2020.2089%2027.5059%2025.6262%2022.3668%2028.618C18.0986%2031.1048%206.25091%2025.4571%201.06445%2028.7602C-1.16529%2031.6636%2011.6391%2056.1227%2014.3677%2060.0677L10.0991%2062.0623C9.73927%2066.3383%2012.3817%2065.5464%2015.432%2062.9276L18.9367%2068.766L13.0025%2074.5105L14.8519%2076.7243L20.0348%2071.6315L33.0335%2093.5161C70.511%2076.3585%2088.9149%2049.6351%2088.9149%2049.6351L74.9412%2038.461L73.7944%2031.4901L82.1394%2026.3448Z%22%20fill%3D%22%23D9E165%22/%3E%3C/svg%3E");
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	opacity: 0;
	transition: opacity 0.35s;
	pointer-events: none;
}

/*================================== PROMOTIONS ====================================*/

#vv-promotions-banner {
	overflow: hidden;
}

#vv-promotions-banner .kyt-container {
	position: static;
}

.kyt-entry.type-vv_promotions .kyt-entry-header:after {
	content: "";
	position: absolute;
	right: -24px;
	bottom: -24px;
	width: 88px;
	height: 80px;
	background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2289%22%20height%3D%2294%22%20viewBox%3D%220%200%2089%2094%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M82.1394%2026.3448L79.695%2024.5162L71.1005%2028.5953L67.907%2024.7914L71.9257%2020.6263L70.0387%2018.3929L65.0494%2022.1348C62.2984%2018.1661%2045.508%20-0.226895%2041.3242%200.311946C35.781%201.04076%2040.3827%2013.4159%2037.8638%2016.6962C32.8948%2020.2089%2027.5059%2025.6262%2022.3668%2028.618C18.0986%2031.1048%206.25091%2025.4571%201.06445%2028.7602C-1.16529%2031.6636%2011.6391%2056.1227%2014.3677%2060.0677L10.0991%2062.0623C9.73927%2066.3383%2012.3817%2065.5464%2015.432%2062.9276L18.9367%2068.766L13.0025%2074.5105L14.8519%2076.7243L20.0348%2071.6315L33.0335%2093.5161C70.511%2076.3585%2088.9149%2049.6351%2088.9149%2049.6351L74.9412%2038.461L73.7944%2031.4901L82.1394%2026.3448Z%22%20fill%3D%22%23D9E165%22/%3E%3C/svg%3E");
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	opacity: 0;
	transition: opacity 0.35s;
	pointer-events: none;
}

.vv-promotion-end-badge {
    display: flex;
    width: fit-content;
  	gap: 5px;
    align-items: center;
    margin-top: 10px;
    padding: 5px 10px;
    background: #f0f8ff;
    border: 1px solid #c0cfd7;
    border-radius: 20px;
    color: #0275b1;
    font-size: 14px;
  	font-weight: 300;
    margin-bottom: 16px;
}

/*================================== VETERINARIANS ====================================*/

#vv-veterinary-banner {
	overflow: hidden;
}

#vv-veterinary-banner .kyt-container {
	position: static;
}

.kyt-entry.type-vv_veterinary .kyt-entry-header:after {
	content: "";
	position: absolute;
	right: -24px;
	bottom: -24px;
	width: 88px;
	height: 80px;
	background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2289%22%20height%3D%2294%22%20viewBox%3D%220%200%2089%2094%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M82.1394%2026.3448L79.695%2024.5162L71.1005%2028.5953L67.907%2024.7914L71.9257%2020.6263L70.0387%2018.3929L65.0494%2022.1348C62.2984%2018.1661%2045.508%20-0.226895%2041.3242%200.311946C35.781%201.04076%2040.3827%2013.4159%2037.8638%2016.6962C32.8948%2020.2089%2027.5059%2025.6262%2022.3668%2028.618C18.0986%2031.1048%206.25091%2025.4571%201.06445%2028.7602C-1.16529%2031.6636%2011.6391%2056.1227%2014.3677%2060.0677L10.0991%2062.0623C9.73927%2066.3383%2012.3817%2065.5464%2015.432%2062.9276L18.9367%2068.766L13.0025%2074.5105L14.8519%2076.7243L20.0348%2071.6315L33.0335%2093.5161C70.511%2076.3585%2088.9149%2049.6351%2088.9149%2049.6351L74.9412%2038.461L73.7944%2031.4901L82.1394%2026.3448Z%22%20fill%3D%22%23D9E165%22/%3E%3C/svg%3E");
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	opacity: 0;
	transition: opacity 0.35s;
	pointer-events: none;
}

/*================================== SERVICE ====================================*/

#vv-service-banner {
	overflow: hidden;
}

#vv-service-banner .kyt-container {
	position: static;
}

.vv-services-wrapper .slick-list {
	overflow: unset;
}

.vv-service-banner-img {
	position: absolute;
	left: max( calc(100% - 810px),570px );
	bottom: 0;
	width: 810px;
	height: auto;
	z-index: 1;
}

.vv-service-banner-img .kyt-image-container {
	position: relative;
	height: 100%;
}

.vv-service-banner-img .kyt-media-wrapper {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	transform: scaleX(-1);
}

.vv-services-wrapper article {
	aspect-ratio: 383/508;
}

.vv-services-wrapper .kyt-entry-inner {
	padding: 24px;
	height: 100%;
	background-color: #F7F7F7;
	border-radius: 24px;
}

.vv-services-wrapper .kyt-entry-body-wrapper-inner {
	margin-top: 12px;
}

.vv-services-wrapper .kyt-entry-body-wrapper-inner h4 {
	color: var(--secondary-color);
}

.vv-services-wrapper .kyt-entry-body {
	height: 60%;
	overflow: unset;
}

.vv-services-wrapper .kyt-entry-body-wrapper {
	height: 95%;
	overflow: unset;
}

.vv-services-wrapper .kyt-entry-body-wrapper-inner>* {
	margin-bottom: 12px;
}

.vv-services-wrapper .kyt-entry-header,
.vv-services-wrapper .kyt-media-wrapper,
.vv-services-wrapper .media-placeholder {
    aspect-ratio: 335 / 224;
}

.vv-services-wrapper .kyt-media-wrapper img {
	border-radius: 12px;
	aspect-ratio: 335/224;
	object-fit: cover;
}

.vv-services-wrapper .kyt-entry-excerpt.kyt-s-text-color {
	display: block;
  display: -webkit-box;
  max-width: 100%;
  margin: 0 auto 0;
	line-height: 24px;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
	font-weight: 300;
	color: #4D4D4D;
}

.vv-services-wrapper .kyt-entry-link {
	position: absolute;
	bottom: 24px;
	padding-top: 0;
	margin-bottom: 0;
}

.vv-services-wrapper .kyt-entry-link .kyt-button--plain > .btnx {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100px;
	height: 50px;
	font-size: 16px;
	font-weight: 600;
	color: #FFF;
	background-color: var(--primary-color);
	border-radius: 24px;
	box-shadow: 0px 4px 4px 0px #00000025;
}

.vv-services-wrapper .kyt-entry-link .kyt-button--plain:hover > .btnx {
	background-color: var(--primary-hover-color);
}

.vv-blog-grid .kyt-filter-bar .kyt-filter-list {
	margin-right: 18px;
}

.vv-blog-grid .kyt-filter-bar--standard a {
	padding: 12px 24px;
	color: #4D4D4D;
	font-weight: 400;
	border-width: 1px;
	border-style: solid;
	border-color: #EDEDED;
	border-radius: 24px;
	transition: color .25s, background-color .25s;
}

.vv-blog-grid .kyt-filter-bar {
	padding: 12px 0;
	overflow-x: overlay;
}

.vv-blog-filter-wrapper {
	padding: 16px 0;
	overflow-x: overlay;
}

.vv-blog-filter-lists {
	margin: 0;
	display: flex;
	gap: 18px;
	width: max-content;
	list-style-type: none;
}

.vv-blog-filter-item a {
	padding: 12.5px 24px;
	color: #4D4D4D;
	font-weight: 400;
	border: 1px solid #EDEDED;
	border-radius: 24px;
}

.vv-blog-filter-item.current a {
	color: #FFF;
	background-color: var(--secondary-color);
	border-color: var(--secondary-color);
}

.vv-blog-grid .kyt-filter-bar ul {
	width: max-content;
}

.vv-blog-grid .kyt-filter-bar--standard a.active {
	color: #FFF;
	background-color: var(--secondary-color);
	border-color: var(--secondary-color);
}

.vv-blog-grid .kyt-entry-header,
.vv-blog-grid .kyt-media-wrapper,
.vv-blog-grid .media-placeholder,
body.archive.category .kyt-entries-content .kyt-entry-header ,
body.archive.category .kyt-entries-content .kyt-media-wrapper ,
body.archive.category .kyt-entries-content .media-placeholder {
    aspect-ratio: 383 / 255;
}

.vv-blog-grid .media-placeholder,
body.archive.category .kyt-entries-content  .media-placeholder {
	padding-bottom: 66.7%!important;
}

.vv-blog-grid .kyt-media-wrapper img,
body.archive.category .kyt-entries-content .kyt-media-wrapper img {
	border-radius: 12px;
	aspect-ratio: 383/255;
	object-fit: cover;
}

.vv-services-wrapper .kyt-entry-header {
	position: relative;
	overflow: unset;
}

.kyt-entry.type-vv_services .kyt-entry-header:after {
	content: "";
	position: absolute;
	right: -24px;
	bottom: -24px;
	width: 88px;
	height: 80px;
	background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2290%22%20height%3D%22108%22%20viewBox%3D%220%200%2090%20108%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M82.2311%2021.4297C77.9767%2015.0624%2062.8208%2027.4089%2059.7365%2026.2059L44.011%200.832771C38.2256%20-1.11128%2038.2957%2018.7979%2035.7664%2021.2609C33.8071%2023.1744%2022.9193%2027.5872%2020.0996%2026.1759C15.7115%2023.9796%2010.2068%2012.1489%203.46367%2013.6353C-1.51333%2017.6697%200.672984%2043.0848%201.15681%2049.9589C2.44385%2068.0314%205.13993%2086.123%208.21453%20103.976C8.54341%20105.887%2010.2891%20107.219%2012.2096%20107.041C21.3803%20106.185%2047.4844%20102.807%2071.9053%2090.7552C73.3732%2090.0262%2074.0634%2088.3307%2073.5299%2086.7952L68.8493%2073.3704C73.6554%2071.7164%2087.7615%2065.419%2089.2172%2060.7717C89.9909%2058.3061%2088.1203%2048.4771%2087.5607%2044.965C86.8854%2040.7361%2083.9004%2023.9579%2082.2207%2021.4478L82.2311%2021.4297Z%22%20fill%3D%22%238AE3D2%22/%3E%3C/svg%3E");
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	opacity: 0;
	transition: opacity .35s;
	pointer-events: none;
}

.vv-services-wrapper article .kyt-entry-header:hover::after {
	opacity: 1;
}


/*=================================== BLOG ====================================*/

body.archive.category .kyt-main.blueprint-inactive {
	padding-top: 0;
	padding-bottom: 46px;
}

.vv-post-badge {
	padding: 0 8px;
	width: max-content;
	font-size: 14px;
	font-weight: 400;
	line-height: 24px;
	border-radius: 12px;
}

.vv-blog-grid .kyt-entry-body-wrapper-inner>*,
body.archive.category .kyt-entries-content .kyt-entry-body-wrapper-inner > *{
	margin-bottom: 12px;
}

.kyt-entry-body a {
	color: var(--secondary-color);
}

.vv-blog-grid .kyt-entry-body a {
	color: var(--secondary-color);
}

.vv-blog-grid article.kyt-entry:hover .kyt-entry-body a,
body.archive.category .kyt-entries-content article.kyt-entry:hover .kyt-entry-body a {
	color: var(--primary-color);
}

.vv-blog-grid .kyt-entry-body-wrapper-inner,
body.archive.category .kyt-entries-content .kyt-entry-body-wrapper-inner{
	padding-bottom: 0!important;
}

/*========================================= MOBILE MENU ==========================================*/

.kyt-collapsed-menu--full {
	transform: translateY(-100%);
	z-index: 1;
}

.kyt-navbar--mobile .menu-item a {
	font-family: 'Baloo2', 'Mitr';
}

.kyt-navbar--mobile .kyt-light-scheme  .kyt-p-bg-bg {
	background-color: var(--primary-color);
}

.kyt-navbar--mobile .navbar-widgets.right {
	margin-right: 8px;
}

.kyt-navbar--mobile .vv-header-btn {
	ox-shadow: 0px 4px 4px 0px #00000025;
}

.kyt-collapsed-menu--full .kyt-collapsed-menu-inner {
	padding-top: 68px;
}

.kyt-collapsed-menu .kyt-menu>li {
	padding: 0 12px;
	text-align: start;
}

.kyt-collapsed-menu .kyt-menu>li a {
	color: #fff;
}

.kyt-light-scheme .kyt-collapsed-button-label {
	display: none;
}

.kyt-lines {
	width: 18px;
}

.kyt-lines:after, .kyt-lines:before {
	width: 18px;
}

.kyt-light-scheme .kyt-lines {
	margin-right: 10px;
	z-index: 2;
}

.kyt-light-scheme .kyt-collapsed-button--full.kyt-closed .kyt-lines:before, .kyt-light-scheme .kyt-collapsed-button--full.kyt-closed .kyt-lines:after {
	background-color: var(--secondary-color)!important;
}

.kyt-navbar--mobile .kyt-collapsed-button:after {
		content: "";
    position: absolute;
    width: 44px;
    height: 44px;
    background-color: #FFF;
    border-radius: 50%;
    display: block;
    top: 0;
    left: 0;
    transform: translate(-13px, 12px);
	box-shadow: 0px 4px 4px 0px #00000025;

    z-index: 1;
}

/*==================================== RESPONSIVE =======================================*/

@media only screen and ( max-width: 960px ) {
	.vv-medical-grid {
		grid-template-columns: repeat( 2, 1fr );
	}
	
	#vv-home-care .kyt-row:nth-child(2) {
		grid-template-columns: repeat(2,1fr);
	}
	
	    #vv-home-care .kyt-row:nth-child(2) .kyt-col-3:nth-child(3),
	#vv-home-care .kyt-row:nth-child(2) .kyt-col-3:nth-child(4){
        margin-bottom: 0;
    }
	
	.vv-about-tab-wrapper .kyt-box-body > .kyt-item {
		width: 100%;
	}
	
	.vv-about-tab-img {
		position: relative;
		transform: unset!important;
	}
	
	.vv-about-card-title-wrapper {
		padding-top: 20px;
		padding-bottom: 20px;
		padding-left: 20px;
		padding-right: 20px;
	}
	
	.vv-about-tab-wrapper .kyt-box-body {
		flex-direction: column;
	}

	.vv-about-h1 h1:after {
        top: -40px;
        left: -12px;
        width: 120px;
        height: 115px;
	}
	
	.vv-about-h1 span {
		font-size: 48px;
	}
	
	.vv-about-sub-heading span {
		font-size: 28px;
	}
	
	.font-64 {
		font-size: 36px;
	}
	
	
	.vv-about-card-title-wrapper h3 {
		font-size: 36px;
		line-height: 1;
	}

	.vv-about-card-title-wrapper h4 {
		font-size: 24px;
		line-height: 1.5;
	}
	
	.vv-branch-wrapper {
		grid-template-columns: repeat(2, 1fr);
	}
	
	.vv-vet-wrapper {
		grid-template-columns: repeat(2, 1fr);
	}

}

@media only screen and ( max-width: 767px ) {
	
	:root {
		--gap-x: 12px;
		--gap-y: 12px;
	}
	
	h2 {
		line-height: 40px;
	}
	
	h3 {
		line-height: 36px;
	}
	
	.kyt-layout-responsive .kyt-container, .kyt-layout-responsive .kyt-container--fullwidth .kyt-single-product .kyt-container, .kyt-layout-responsive .kyt-header .kyt-container--fullwidth, .kyt-layout-responsive .kyt-navbar--mobile .kyt-container--fullwidth, .kyt-layout-responsive .kyt-section--fullwidth>.kyt-section-wrapper {
		padding-left: var(--gap-x);
		padding-right: var(--gap-x);
		
	}
	
	.vv-input-half {
	grid-column: 1 / span 2;
	}
	
	#vv-home-care .kyt-row:nth-child(2) {
		margin-left: 0;
		margin-right: 0;
	}
	
	#vv-home-care .kyt-row:nth-child(2) {
		display: block;
		gap: 12px;
	}
	
	#vv-home-care .kyt-row:nth-child(2) .kyt-col-3 {
		padding-left: 0;
		padding-right: 0;
	}
	
	#vv-home-care .kyt-row:nth-child(2) .kyt-col-3:not(:last-child) {
		margin-bottom: 24px;
	}
	
	.vv-home-care-card {
		aspect-ratio: 4/3;
	}
	
	.vv-home-care-card .kyt-box-inner {
		height: 100%;
	}
	
	#vv-home-banner h1 {
		margin-top: 26px;
	}
	
	#vv-home-banner h1 span,
	#vv-home-banner h3 span {
		font-size: 22px!important;
	}
	
	#vv-home-banner h2 span {
		font-size: 60px !important;
		line-height: 1.25;
	}
	
	#vv-home-banner .kyt-middle-vertical {
		vertical-align: top!important;
	}
	
	.vv-d-inline-btn-wrapper .kyt-button {
		width: unset;
	}
	
	.vv-d-inline-btn-wrapper .kyt-button .btnx {
		padding: 8px 16px;
		width: max-content;
		height: 46px;
		font-size: 20px;
	}
	
	
	.vv-home-banner-img {
		position: static;
		width: calc(100% + (var(--gap-x) * 2));
	}
	
	.vv-home-banner-img .kyt-media-wrapper {
		position: static;
	}
	
	#vv-home-care .kyt-row:nth-child(2) {
		grid-template-columns: 1fr;
	}
	
	.vv-care-that-matters-title h3 {
		font-size: 24px;
	}
	
	.vv-mobile-font-16 span {
		font-size: 16px!important;
	}
	
	.vv-mobile-font-24 span {
		font-size: 24px!important;
	}
	
	.vv-services-wrapper .kyt-entry-inner {
		padding: 8px;
		border-radius: 12px;
	}
	
	.vv-services-wrapper .kyt-entry-header, .vv-services-wrapper .kyt-media-wrapper, .vv-services-wrapper .media-placeholder {
		aspect-ratio: 164/110;
	}

	.vv-services-wrapper .kyt-media-wrapper img {
		border-radius: 6px;
	}
	
	.vv-services-wrapper article {
		aspect-ratio: unset;
	}
	
	.vv-services-wrapper .kyt-entry-link {
		display: none;
	}
	
	.vv-services-wrapper .kyt-entry-body-wrapper-inner h4 {
		font-size: 18px!important;
	}
	
	.vv-services-wrapper .kyt-entry-excerpt {
		font-size: 14px!important;
	}
	
	.kyt-entries-content {
		margin: 0 -4px!important;
	}
	
	.slick-initialized .slick-slide {
		padding: 0 4px!important;
	}
	
	.kyt-row {
		margin-left: -12px;
		margin-right: -12px;
	}
	
	.kyt-col-1, .kyt-col-1-5, .kyt-col-2, .kyt-col-2-5, .kyt-col-3, .kyt-col-3-5, .kyt-col-4, .kyt-col-4-5, .kyt-col-5, .kyt-col-5-5, .kyt-col-6, .kyt-col-7, .kyt-col-8, .kyt-col-10, .kyt-col-11, .kyt-col-12 {
		padding-left: 12px;
		padding-right: 12px;
	}
	
	.vv-blog-grid .kyt-entry-body h4,
	body.archive.category .kyt-entries-content h4{
		font-size: 18px!important;
	}
	
	.kyt-button.kyt-button--4.vv-line-btn > .btnx,
	.kyt-button.kyt-button--4.vv-phone-btn > .btnx {
		padding: 6px 18px;
		margin: auto;
		width: max-content;
		height: max-content;
		font-size: 16px;
		line-height: 30px;
	}
	
	.kyt-button.kyt-button--4.vv-line-btn i {
		padding-right: 0;
	}
	
	.kyt-button.kyt-button--4.vv-phone-btn {
		margin: auto;
	}
	
	.vv-medical-carousel .kyt-entry-inner {
		padding: 24px 10px;
		box-shadow: 0px 2px 4px 0px #00000033;
	}

	#vv-cta-section .kyt-section-wrapper {
		padding-top: 64px!important;
		padding-bottom: 64px!important;
	}
	
	.vv-carousel-arrow-btn svg {
		width: 40px;
		height: 40px;
	}
	
	.vv-footer-menu #menu-footer-main-menu {
		display: flex;
		flex-direction: column;
		gap: 24px;
		margin-top: 36px;
	}
	
	.vv-footer-menu .widget #menu-footer-main-menu.kyt-menu.inline>.menu-item {
		padding-left: 0;
	}
	
	.vv-mobile-btn-font-16.kyt-button-size--medium > .btnx {
		font-size: 16px;
		font-weight: 400;
	}
	
	.vv-mobile-btn-font-16 .btnx>.twf {
		font-size: 14px;
	}
	
	.vv-footer-policy span {
		font-size: 14px;
	}
	
	
	.kyt-layout-responsive .kyt-section .kyt-row .kyt-divider.footer-hr {
		margin-top: 32px!important;
		margin-bottom: 32px!important;
	}
	
	.vv-about-h1 span {
		font-size: 40px;
	}
	
	
	.vv-about-h1 h1:after {
    top: -36px;
    left: -8px;
    width: 100px;
    height: 108px;
	}
	
	.font-64 {
		font-size: 24px;
	}
	
	.font-28 {
		font-size: 16px;
	}
	
	.vv-blog-grid .kyt-entries-content,
	body.archive.category .kyt-entries-content {
		display: flex;
		flex-wrap: wrap;
		gap: 8px;
		margin: 0!important;
	}
	
	.vv-blog-grid .kyt-entries-content article,
	body.archive.category .kyt-entries-content article{
		padding: 0 !important;
		position: static !important;
		width: calc( 50% - 4px )!important;
	}
	
	.vv-post-badge {
		padding: 0 8px;
		font-size: 12px;
	}
	
	.vv-home-h2-care-that-matters h2 {
		font-size: 32px;
		line-height: 44px;
	}
	
	.vv-contact input, .vv-contact textarea {
		font-size: 14px;
	}
	
	.vv-branch-wrapper {
		grid-template-columns: 1fr;
	}
	
	.h2 h1 {
		font-size: 32px;
		line-height: 48px;
	}
	
	.vv-breadcrumb-wrapper {
		font-size: 12px;
	}
	
	.vv-vet-wrapper {
		grid-template-columns: 1fr;
	}
	
	.vv-vet-item-card {
		padding: 24px;
	}
  
  	/* Vet Card */
	.vv-vet-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 16px;
	}
	
	.vv-vet-card {
		padding: 16px;
	}
	
	.vv-vet-card-image {
		width: 80px;
		height: 80px;
		margin: 0 auto 12px;
	}
	
	.vv-vet-card-name {
		font-size: 16px;
		margin: 0 0 6px 0;
	}
	
	.vv-vet-card-nickname {
		font-size: 14px;
	}
	
	.vv-vet-card-department {
		gap: 2px;
		margin-top: 12px;
	}
	
	.vv-vet-card-department svg {
		width: 14px;
		height: 14px;
	}
	
  	.vv-vet-card-department-icon {
		width: 18px;
		height: 18px;
	}
  
	.vv-vet-card-department-thai {
		font-size: 12px;
	}
	
	.vv-vet-card-department-english {
		font-size: 10px;
	}
	
	.vv-vet-card-btn {
		padding: 8px 16px;
		font-size: 14px;
	}
	/* end vet card */
	
	.vv-single-featured-content h2 {
		font-size: 24px;
		line-height: 30px;
	}

	.vv-single-featured-content h3 {
		font-size: 18px;
		line-height: 1;
	}
	
	.vv-single-featured-content h4 {
		font-size: 16px;
	}
	
	
	.vv-blog-banner-img {
		position: static;
		width: 100%;
	}
	
	.vv-blog-banner-img .kyt-media-wrapper {
		position: static;
		transform: unset;

	}
	
	
	.kyt-entry.type-vv_services .kyt-entry-header:after,
	.kyt-entry.type-vv_program .kyt-entry-header:after,
	.kyt-entry.type-vv_promotions .kyt-entry-header:after {
		right: -8px;
		bottom: -10px;
		width: 34px;
		height: 32px;
	}
	
	
	.vv-branch-banner-img {
		position: static;
		width: 100%;
	}
	
	.vv-branch-banner-img .kyt-media-wrapper {
		position: static;
	}


	.vv-medical-banner-img {
		position: static;
		width: 100%;
	}

	.vv-medical-banner-img .kyt-media-wrapper {
		position: static;
		transform: unset;
	}
	
	.vv-service-banner-img {
		position: static;
		width: 100%;
		height: auto;
		z-index: 1;
	}

	.vv-service-banner-img .kyt-media-wrapper {
		position: static;
	}
	
	.vv-home-h1 h1 span::after {
		right: -82px;
		width: 82px;
		height: 84px;
	}
	
	#vv-home-banner .kyt-middle-vertical {
		height: 100%;
	}
	
	#vv-home-banner .kyt-container > .kyt-row:first-child {
		display: flex;
    flex-direction: column;
    justify-content: space-between;
		height: 100%;
	}

	#vv-home-banner .kyt-container > .kyt-row:first-child::after {
		content: unset;
	}
	
	.kyt-button-size--medium > .btnx {
		font-size: 16px!important;
	}
	
	.kyt-button-size--medium>.btnx {
		padding: 12px 16px!important;
	}
	
	.kyt-bottom-right-area {
		right: 12px;
		bottom: 12px;
	}
	
	.cta-btn-phone .kyt-image-container a,
	.cta-btn-line .kyt-image-container a {
	width: 48px;
	height: 48px;
}
	
	.cta-btn-phone .kyt-icon {
		width: 48px;
		height: 48px;
	}
	
	.cta-btn-phone .twf-phone {
		font-size: 24px;
	}
	
	.cta-btn-phone .kyt-image-container a img {
		width: 26px!important;
	}

.cta-btn-line .kyt-image-container a img {
	width: 32px!important;
}
	
	.vv-blog-grid .kyt-filter-bar .kyt-filter-list {
		margin-right: 8px;
	}
	
	.vv-medical-grid {
		grid-template-columns: 1fr;
	}
	
	.vv-about-tab-hidden-text {
		max-height: unset !important;
	}

	.vv-table-wrapper {
		overflow: auto;
	}

	.kyt-wpcontent table {
		width: max-content;
	}

	.vv-24hours-badge {
		left: 0;
	}
}

/*=========================== SPECIAL ASPECT ==============================*/

.d-block-2560 {
	display: none;
}

@media only screen and ( min-width: 2560px ) {
	.d-none-2560 {
		display: none;
	}
	

	.d-block-2560 {
		display: block;
	}
}

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

footer .kyt-icon--medium.shortcode {
	font-size: 18px;
}

footer .vv-footer-tel-num a {
	color: #FFF;
}

footer .vv-footer-tel-num span:not(.twf) {
	font-weight: 600;
	font-family: 'Baloo2';
}

.vv-footer-social i {
	font-size: 24px;
}

.twf-weibo:before {
	content: "";
	display: block;
	width: 24px;
	height: 24px;
	background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2225%22%20viewBox%3D%220%200%2024%2025%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cg%20clip-path%3D%22url(%23clip0_2141_1066)%22%3E%3Cpath%20d%3D%22M17.0725%200.415405H13.0278V16.7632C13.0278%2018.7111%2011.4722%2020.3111%209.53626%2020.3111C7.60034%2020.3111%206.04469%2018.7111%206.04469%2016.7632C6.04469%2014.8502%207.56577%2013.2849%209.43257%2013.2154V9.11107C5.31872%209.18061%202%2012.5545%202%2016.7632C2%2021.0067%205.38786%2024.4154%209.57085%2024.4154C13.7538%2024.4154%2017.1416%2020.9719%2017.1416%2016.7632V8.38061C18.6627%209.49367%2020.5295%2010.1545%2022.5%2010.1893V6.08497C19.4579%205.98063%2017.0725%203.47627%2017.0725%200.415405Z%22%20fill%3D%22white%22/%3E%3C/g%3E%3Cdefs%3E%3CclipPath%20id%3D%22clip0_2141_1066%22%3E%3Crect%20width%3D%2224%22%20height%3D%2224%22%20fill%3D%22white%22%20transform%3D%22translate(0%200.415405)%22/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}

@media only screen and (min-width: 768px) {
	.vv-home-care-card .media-placeholder {
	display: none;
}

.vv-home-care-card .kyt-media-wrapper.with-placeholder img {
	position: relative;
	top: unset;
	left: unset;
	width: 100%;
	transform: unset;
}
}

.m3-mobile-menu-container {
	padding-bottom: 16px;
}

.m3-dynamic-name-menu,
.m3-dynamic-name-menu-level2, 
.m3-dynamic-name-menu-level3 {
	box-shadow: none;
}

.m3-dynamic-name-menu:hover,
.m3-dynamic-name-menu-level2:hover, 
.m3-dynamic-name-menu-level3:hover {
	color: unset;
	opacity: 0.5;
}

.m3-mobile-menu-container li a:hover {
	opacity: 0.5;
}

/*======================== VET DETAIL ==========================*/

.vet-detail-container {
    font-family: 'Baloo2', 'Mitr', sans-serif;
  max-width: 1200px;
  margin: 0 auto;
  padding: 20px;
  display: grid;
  grid-template-columns: 60% 40%;
  gap: 40px;
  align-items: start;
}

.vet-info-card {
  background: white;
  border-radius: 16px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
  padding: 32px;
  height: fit-content;
}

.schedule-card {
  background: white;
  border-radius: 16px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
  padding: 32px;
  height: fit-content;
}

.vet-profile-section {
  display: flex;
  flex-direction: row;
  gap: 24px;
  align-items: flex-start;
}

.vet-avatar {
  width: 120px;
  height: 120px;
  border-radius: 50%;
  overflow: hidden;
  border: 4px solid #E8F4FD;
  box-shadow: 0 4px 12px rgba(0, 117, 177, 0.15);
}

.vet-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.vet-basic-info {
  display: flex;
  flex-direction: column;
}

.vet-name {
  font-family: 'Baloo2', 'Mitr', sans-serif;
  font-size: 28px;
  font-weight: 600;
  color: #0075B1;
  margin: 0;
  line-height: 1.2;
  display: flex;
  align-items: center;
  gap: 12px;
}

.vet-nickname {
  font-family: 'Baloo2', 'Mitr', sans-serif;
  font-size: 20px;
  color: #888;
  font-weight: 400;
  margin: 4px 0 0 0;
}

.vet-specialty h3 {
  font-family: 'Baloo2', 'Mitr', sans-serif;
  font-size: 18px;
  font-weight: 600;
  color: #333;
  margin: 0 0 8px 0;
  display: flex;
  align-items: center;
  gap: 8px;
}

.vet-specialty p {
  font-size: 16px;
  color: #666;
  margin: 0;
}

.vet-department {
  margin-top: 16px;
}

.department-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.department-badge {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 6px 12px;
  background: #E8F4FD;
  border-radius: 20px;
  border: 1px solid #0075B1;
  transition: all 0.2s ease;
}

.department-badge:hover {
  background: #0075B1;
  color: white;
}

.department-badge:hover .department-thai,
.department-badge:hover .department-english {
  color: white;
}

.department-thai {
  font-family: 'Baloo2', 'Mitr', sans-serif;
  font-size: 14px;
  color: #0075B1;
  font-weight: 600;
}

.department-english {
  font-family: 'Baloo2', 'Mitr', sans-serif;
  font-size: 12px;
  color: #0075B1;
  font-weight: 400;
}

.vet-divider {
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, #E8F4FD 20%, #0075B1 50%, #E8F4FD 80%, transparent 100%);
  margin: 32px 0;
  border-radius: 1px;
}

.vet-academic-section {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.vet-qualifications {
  margin-top: 24px;
}

.vet-qualifications h3 {
  font-family: 'Baloo2', 'Mitr', sans-serif;
  font-size: 18px;
  font-weight: 600;
  color: #333;
  margin: 0 0 8px 0;
  display: flex;
  align-items: center;
  gap: 8px;
}

.degrees-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.degrees-list li {
  font-size: 14px;
  color: #666;
  line-height: 1.5;
  padding-left: 16px;
  position: relative;
}

.degrees-list li::before {
  content: "•";
  color: #0075B1;
  font-weight: bold;
  position: absolute;
  left: 0;
}

.schedule-header {
  padding: 0 0 20px 0;
  border-bottom: 2px solid #E8F4FD;
  margin-bottom: 20px;
}

.schedule-header h3 {
  font-family: 'Baloo2', 'Mitr', sans-serif;
  font-size: 20px;
  font-weight: 600;
  color: #333;
  margin: 0;
  display: flex;
  align-items: center;
  gap: 10px;
}

.schedule-content {
  flex: 1;
}

.branch-schedule {
  margin-bottom: 12px;
  padding: 16px;
  background: #F8FBFF;
  border-radius: 12px;
  border: 1px solid #E8F4FD;
}

.branch-schedule:last-child {
  margin-bottom: 0;
}

.branch-header {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 16px;
  padding-bottom: 12px;
  border-bottom: 1px solid #E8F4FD;
}

.branch-name {
  font-family: 'Baloo2', 'Mitr', sans-serif;
  font-size: 16px;
  font-weight: 600;
  color: #0075B1;
  margin: 0;
}

.schedule-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
}

.schedule-card-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px 16px;
  background: white;
  border-radius: 8px;
  border: 1px solid #E8F4FD;
  transition: all 0.2s ease;
}

.schedule-card-item:hover {
  border-color: #0075B1;
  box-shadow: 0 2px 8px rgba(0, 117, 177, 0.1);
}

.schedule-day-badge {
  font-family: 'Baloo2', 'Mitr', sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: #333;
  flex: 1;
  min-width: 0;
}

.schedule-time-display {
  display: flex;
  align-items: center;
  gap: 6px;
  font-family: 'Baloo2', 'Mitr', sans-serif;
  font-size: 14px;
  color: #0075B1;
  font-weight: 500;
  flex-shrink: 0;
}

.no-schedule {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 40px 20px;
  text-align: center;
  color: #999;
}

.no-schedule p {
  margin: 16px 0 0 0;
  font-family: 'Baloo2', 'Mitr', sans-serif;
  font-size: 14px;
}

.schedule-footer {
  margin-top: 24px;
  padding-top: 20px;
  border-top: 2px solid #E8F4FD;
}

.schedule-disclaimer {
  font-size: 12px;
  color: #999;
  margin: 0 0 20px 0;
  line-height: 1.4;
  text-align: center;
}

.appointment-section {
  display: flex;
  justify-content: center;
  margin-top: 24px;
}

.appointment-btn {
  background: linear-gradient(135deg, #0075B1 0%, #00A3E0 100%);
  color: white;
  border: none;
  border-radius: 50px;
  padding: 16px 32px;
  font-family: 'Baloo2', 'Mitr', sans-serif;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 12px;
  transition: all 0.3s ease;
  box-shadow: 0 4px 15px rgba(0, 117, 177, 0.3);
  text-decoration: none;
}

.appointment-btn:hover {
  transform: translateY(-2px);
  color: white;
  box-shadow: 0 6px 20px rgba(0, 117, 177, 0.4);
}

.appointment-btn:active {
  transform: translateY(0);
}

/* Responsive Design */
@media (max-width: 768px) {
  .vet-detail-container {
    grid-template-columns: 1fr;
    gap: 24px;
    padding: 16px;
  }
  
  .vet-info-card,
  .schedule-card {
    padding: 24px;
  }
  
  .vet-profile-section {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  
  .vet-basic-info {
    align-items: center;
    text-align: center;
  }
  
  .vet-divider {
    margin: 24px 0;
  }
  
  .vet-name {
    font-size: 24px;
    text-align: center;
  }
  
  .vet-nickname {
    text-align: center;
  }
  
  .vet-department {
    align-items: center;
  }
  
  .appointment-btn {
    width: 100%;
    justify-content: center;
  }

  .department-list {
    justify-content: center;
  }

	.kyt-light-scheme .widget a.vv-header-btn#vv-emergency-btn {
		margin-left: 8px;
	}

	.kyt-navbar--mobile .kyt-navbar-header {
		margin-right: 0;
	}

	.kyt-navbar--mobile .navbar-widgets.right {
		margin-left: 0;
	}
}

@media (max-width: 480px) {
  .vet-detail-container {
    padding: 16px;
  }
  
  .vet-info-card,
  .schedule-card {
    padding: 20px;
  }
  
  .vet-avatar {
    width: 100px;
    height: 100px;
  }
  
  .vet-name {
    font-size: 22px;
  }
}


/*======================== VET FILTER SECTION ==========================*/

.vv-vet-filter-section {
  margin-bottom: 3rem;
  padding: 2.5rem;
  background: #f8fbff;
  border-radius: 24px;
  border: 2px solid #e8f4fd;
  box-shadow: 0 8px 32px rgba(0, 117, 177, 0.08);
  position: relative;
  overflow: hidden;
}

.vv-vet-filter-description {
  font-family: 'Baloo2', 'Mitr', sans-serif;
  font-size: 1.25rem;
  font-weight: 500;
  color: var(--secondary-color);
  margin-bottom: 2rem;
  text-align: center;
  line-height: 1.6;
  position: relative;
}

.vv-vet-filter-controls {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem;
  align-items: end;
}

.vv-vet-filter-group {
  position: relative;
}

.vv-vet-filter-group label {
  display: block;
  font-family: 'Baloo2', 'Mitr', sans-serif;
  font-weight: 600;
  font-size: 1rem;
  color: var(--secondary-color);
  margin-bottom: 0.75rem;
  position: relative;
}

.vv-vet-filter-group label::before {
  content: '';
  display: inline-block;
  width: 6px;
  height: 6px;
  background: var(--primary-color);
  border-radius: 50%;
  margin-right: 8px;
  vertical-align: middle;
}

.vv-vet-search-input,
.vv-vet-department-select {
  width: 100%;
  border: 2px solid #e8f4fd;
  border-radius: 16px;
  font-family: 'Mitr', sans-serif;
  font-size: 1rem;
  font-weight: 400;
  background: #ffffff;
  transition: all 0.3s ease;
  box-shadow: 0 2px 8px rgba(0, 117, 177, 0.05);
}

.vv-vet-search-input:focus,
.vv-vet-department-select:focus {
  outline: none;
  border-color: var(--secondary-color);
  box-shadow: 0 0 0 4px rgba(0, 117, 177, 0.1), 0 4px 16px rgba(0, 117, 177, 0.1);
  transform: translateY(-2px);
}

.vv-vet-search-input::placeholder {
  color: #9e9e9e;
  font-style: italic;
  font-weight: 300;
}

.vv-vet-department-select {
  cursor: pointer;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%230075B1' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");
  background-position: right 1rem center;
  background-repeat: no-repeat;
  background-size: 1.25em 1.25em;
  padding-right: 3rem;
  appearance: none;
}

.vv-vet-department-select:hover {
  border-color: var(--secondary-hover-color);
  box-shadow: 0 4px 16px rgba(0, 117, 177, 0.15);
}

.vv-no-results {
  text-align: center;
  padding: 4rem 2rem;
  background: linear-gradient(135deg, #f8fbff 0%, #e8f4fd 100%);
  border-radius: 24px;
  border: 2px solid #e8f4fd;
  margin-top: 2rem;
  box-shadow: 0 4px 20px rgba(0, 117, 177, 0.08);
}

.vv-no-results p {
  font-family: 'Baloo2', 'Mitr', sans-serif;
  font-size: 1.25rem;
  font-weight: 500;
  color: var(--secondary-color);
  margin: 0;
  position: relative;
}

.vv-no-results p::before {
  content: '🔍';
  display: block;
  font-size: 3rem;
  margin-bottom: 1rem;
  opacity: 0.6;
}

/* Responsive Design */
@media (max-width: 960px) {
  .vv-vet-filter-section {
    padding: 2rem;
    margin-bottom: 2rem;
  }
  
  .vv-vet-filter-description {
    font-size: 1.1rem;
  }
  
  .vv-vet-filter-controls {
    gap: 1.5rem;
  }
}

@media (max-width: 768px) {
  .vv-vet-filter-section {
    padding: 1.5rem;
    border-radius: 16px;
  }
  
  .vv-vet-filter-section::before {
    border-radius: 16px 16px 0 0;
  }
  
  .vv-vet-filter-description {
    font-size: 1rem;
    margin-bottom: 1.5rem;
  }
  
  .vv-vet-filter-description::after {
    width: 40px;
    height: 2px;
    bottom: -8px;
  }
  
  .vv-vet-filter-controls {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
  
  .vv-vet-filter-group label {
    font-size: 0.9rem;
    margin-bottom: 0.5rem;
  }
  
  .vv-vet-search-input,
  .vv-vet-department-select {
    padding: 0.875rem 1rem;
    font-size: 0.9rem;
    border-radius: 12px;
  }
  
  .vv-no-results {
    padding: 3rem 1.5rem;
    border-radius: 16px;
  }
  
  .vv-no-results p {
    font-size: 1.1rem;
  }
  
  .vv-no-results p::before {
    font-size: 2.5rem;
  }
}

@media (max-width: 480px) {
  .vv-vet-filter-section {
    padding: 1.25rem;
    margin-bottom: 1.5rem;
  }
  
  .vv-vet-filter-description {
    font-size: 0.9rem;
    line-height: 1.5;
  }
  
  .vv-vet-filter-group label {
    font-size: 0.85rem;
  }
  
  .vv-vet-search-input,
  .vv-vet-department-select {
    padding: 0.75rem 0.875rem;
    font-size: 0.85rem;
  }
  
  .vv-no-results {
    padding: 2rem 1rem;
  }
  
  .vv-no-results p {
    font-size: 1rem;
  }
  
  .vv-no-results p::before {
    font-size: 2rem;
  }
}
