/* VK Law Site Kit - styles for the Enfold build.
   Colors and sizes follow the vk.law theme stylesheet. */

:root {
	/* Defaults only. The real values are printed from Enfold > General Styling (see VKKit_Frontend::theme_css). */
	--vk-primary: #b8955a;      /* buttons, links, accents        <- Main Content primary */
	--vk-primary-2: #d4b27a;    /* hover, light accent            <- Main Content secondary */
	--vk-primary-rgb: 184,149,90;
	--vk-heading: #111111;      /* headings                       <- Main Content heading */
	--vk-text: #1c1c1c;         /* body text                      <- Main Content font color */
	--vk-meta: #8a8478;         /* muted text                     <- Main Content meta */
	--vk-border: #e6dfd2;       /* lines on light                 <- Main Content border */
	--vk-tint: #f7f3ec;         /* tinted sections                <- Alternate Content background */
	--vk-tint-2: #efe6d4;       /* pills, soft fills              (mixed from primary) */
	--vk-dark: #0a0a0a;         /* header, footer, dark bands     <- Footer background */
	--vk-dark-2: #161616;       /* feature rows, form band        <- Footer background 2 */
	--vk-dark-rgb: 10,10,10;
	--vk-band: #1d1b17;         /* recognition band               <- Header background 2 */
	--vk-dark-line: #2a2a2a;    /* lines on dark                  <- Footer border */
	--vk-on-dark: #d9d3c7;      /* text on dark                   <- Footer font color */
	--vk-accent: #b8955a;       /* accent on dark                 <- Footer primary */
	--vk-accent-2: #d4b27a;     /* light accent on dark           <- Footer secondary */
	--vk-on-primary: #111111;   /* text on gold buttons           (chosen for contrast) */
	--vk-link: #8a6a33;         /* text links on white            (primary, darker) */
	--vk-arrow: #b8955a;        /* left and right arrow buttons */
	--vk-arrow-icon: #111111;   /* arrow icons (chosen for contrast) */
	--vk-white: #ffffff;       /* white backgrounds, white text on dark */
	--vk-input-text: #000000;  /* text typed in form fields */
	--vk-overlay-rgb: 10,10,10;     /* hero overlay tint              (dark background) */
	--vk-shape-rgb: 184,149,90;     /* decorative slanted shapes      (brand color) */
	--vk-glass-rgb: 255,255,255;    /* search box and band dividers   */
	--vk-hline-rgb: 230,230,230;    /* faint header lines             */
	--vk-placeholder-rgb: 0,0,0;    /* form placeholder text          */
	--vk-error-bg: #fde8e4;
	--vk-error-text: #7a1d0c;
	--vk-ok-bg: #e6f4ea;
	--vk-ok-text: #14532d;
}

html { scroll-behavior: smooth; -webkit-font-smoothing: antialiased; }
html *, html *::before, html *::after { scroll-margin-top: 130px; }
@media (max-width: 767.98px) { html *, html *::before, html *::after { scroll-margin-top: 90px; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

/* ---- Enfold overrides -------------------------------------------------- */
body.vk-site { font-family: Roboto, Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 18px; background: var(--vk-white); }
body.vk-site #header,
body.vk-site #footer,
body.vk-site #socket,
body.vk-site .title_container { display: none !important; }
body.vk-site #wrap_all #main,
body.vk-site.html_header_top.html_header_sticky #main { padding-top: 0 !important; }
body.vk-site #top .container { max-width: 1120px; }
body.vk-site .vk-wrap { max-width: 1120px; margin: 0 auto; padding: 0 20px; width: 100%; }
body.vk-site .av-special-heading { margin: 0; }
body.vk-site .vk-center { text-align: center; }
body.vk-site .vk-skip { position: absolute; top: 0; left: 0; padding: 10px 15px; background: var(--vk-primary); color: var(--vk-white); transform: translateY(-100%); z-index: 2000; }
body.vk-site .vk-skip:focus { transform: translateY(20%); }

/* ---- Headings and text -------------------------------------------------- */
body.vk-site #top h1, body.vk-site #top h2, body.vk-site #top h3, body.vk-site #top h4, body.vk-site #top h5, body.vk-site #top h6,
body.vk-site #top .av-special-heading-tag { font-family: Inter, Arial, "Helvetica Neue", Helvetica, sans-serif; }

body.vk-site .vk-section-title .av-special-heading-tag,
body.vk-site .vk-section-title { font: 700 35px/120% Inter, Arial, sans-serif; color: var(--vk-heading); }
body.vk-site .vk-hero-title .av-special-heading-tag,
body.vk-site .vk-hero-title { font: 500 118px/1em Inter, Arial, sans-serif; color: var(--vk-tint); }
body.vk-site .vk-page-title .av-special-heading-tag,
body.vk-site .vk-page-title { font: 500 72px/1.1em Inter, Arial, sans-serif; color: var(--vk-tint); }
body.vk-site .vk-bio .vk-page-title .av-special-heading-tag { color: var(--vk-heading); font-size: 48px; }
body.vk-site .vk-call-title .av-special-heading-tag,
body.vk-site .vk-call-title { font: 500 64px/120% Inter, Arial, sans-serif; color: var(--vk-tint); text-transform: capitalize; }
body.vk-site .vk-form-title .av-special-heading-tag { font: 700 35px/120% Inter, Arial, sans-serif; color: var(--vk-white); text-transform: uppercase; }
@media (max-width: 991.98px) {
	body.vk-site .vk-hero-title .av-special-heading-tag { font-size: 86px; }
	body.vk-site .vk-page-title .av-special-heading-tag { font-size: 54px; }
}
@media (max-width: 767.98px) {
	body.vk-site .vk-hero-title .av-special-heading-tag { font-size: 13vw; }
	body.vk-site .vk-page-title .av-special-heading-tag { font-size: 10vw; }
	body.vk-site .vk-call-title .av-special-heading-tag { font-size: 40px; }
	body.vk-site .vk-section-title .av-special-heading-tag { font-size: 28px; }
}
body.vk-site .vk-hero-sub { font: 500 24px/1.4 Inter, Arial, sans-serif; color: var(--vk-tint); margin: 10px 0 40px; }
body.vk-site .vk-kicker { font: 500 18px/180% Inter, Arial, sans-serif; text-transform: uppercase; color: var(--vk-accent); margin: 0 0 10px; }
body.vk-site .vk-kicker--dark { color: var(--vk-primary-2); }
body.vk-site .vk-cta-sub { font: 500 18px/1.8 Roboto, Arial, sans-serif; color: var(--vk-tint); margin: 8px 0 30px; }
body.vk-site .vk-body, body.vk-site .vk-body p { color: var(--vk-text); font-size: 18px; line-height: 1.6; }

/* ---- Buttons ------------------------------------------------------------ */
body.vk-site .vk-btn .avia-button,
body.vk-site .avia-button.vk-btn,
body.vk-site a.vk-btn {
	background: var(--vk-primary) !important;
	border: 4px solid var(--vk-primary-2) !important;
	color: var(--vk-white) !important;
	font: 500 28px/120% Roboto, Arial, sans-serif !important;
	padding: 18px 22px !important;
	border-radius: 0 !important;
	transition: all .3s ease-in-out;
	text-align: center;
}
body.vk-site .vk-btn .avia-button:hover,
body.vk-site .avia-button.vk-btn:hover,
body.vk-site a.vk-btn:hover { background: var(--vk-primary) !important; border-color: var(--vk-white) !important; color: var(--vk-white) !important; }
body.vk-site .vk-btn--small .avia-button,
body.vk-site .avia-button.vk-btn--small { font-size: 18px !important; padding: 12px 22px !important; }
@media (max-width: 767.98px) {
	body.vk-site .vk-btn .avia-button,
	body.vk-site .avia-button.vk-btn { font-size: 5vw !important; padding: 20px 8px !important; }
}

/* ---- Header ------------------------------------------------------------- */
.vk-header {
	position: fixed; top: 0; left: 0; width: 100%; z-index: 1000;
	backdrop-filter: blur(5px);
	background: linear-gradient(180deg, var(--vk-dark) 0, rgba(var(--vk-dark-rgb),.82) 56.68%, rgba(var(--vk-dark-rgb),.27) 100%);
	transition: background .3s ease-in-out;
}
.admin-bar .vk-header { top: 32px; }
.vk-header__top { display: flex; align-items: center; gap: 30px; padding-top: 40px; padding-bottom: 35px; border-bottom: 1px solid rgba(var(--vk-hline-rgb),.13); transition: all .3s ease-in-out; }
.vk-search { flex: 1 1 0; display: flex; align-items: center; position: relative; padding-right: 30px; }
.vk-search::after { content: ""; position: absolute; right: 0; top: 50%; transform: translateY(-50%); width: 1px; height: 60px; background: rgba(var(--vk-hline-rgb),.13); }
.vk-search input[type=search] { background: transparent; border: 0; color: var(--vk-white); width: 100%; min-width: 80px; font: 500 16px Inter, sans-serif; padding: 8px; outline: 0; box-shadow: none; }
.vk-search input::placeholder { color: rgba(var(--vk-glass-rgb),.4); }
.vk-search button { background: transparent; border: 0; color: var(--vk-white); cursor: pointer; padding: 0; }
.vk-logo { flex: 0 0 170px; display: block; }
.vk-logo img { display: block; width: 170px; height: auto; max-height: 70px; object-fit: contain; transition: width .3s; }
.vk-header__info { flex: 1 1 0; display: flex; align-items: center; justify-content: flex-end; gap: 30px; }
.vk-info { display: flex; flex-direction: column; align-items: flex-end; color: var(--vk-white); font-family: Inter, sans-serif; text-transform: uppercase; }
.vk-info p { margin: 0; font-size: 15px; font-weight: 700; line-height: .8em; color: var(--vk-white); }
.vk-info span { font-size: 13px; font-weight: 400; }
.vk-phone { color: var(--vk-white); font: 700 28px/1em Inter, Arial, sans-serif; text-transform: uppercase; white-space: nowrap; transition: font-size .3s; }
.vk-phone:hover { color: var(--vk-primary-2); }

.vk-header__bottom { transition: all .3s ease-in-out; }
.vk-menu, .vk-menu ul { list-style: none; margin: 0; padding: 0; }
.vk-menu { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: .7%; }
.vk-menu > li { position: relative; padding: 0 15px; margin: 0; }
.vk-menu a { color: var(--vk-white); font: 600 18px/normal Inter, sans-serif; text-transform: uppercase; padding: 10px 0; display: inline-block; text-decoration: none; transition: color .3s; }
.vk-menu a[href="#"] { pointer-events: none; cursor: default; }
.vk-menu > li:hover > a { color: var(--vk-primary-2); }
.vk-menu > li.menu-item-has-children { padding-right: 35px; border: 1px solid transparent; transition: border .3s; }
.vk-menu > li.menu-item-has-children::after { content: ""; position: absolute; top: 50%; right: 15px; width: 8px; height: 8px; border-right: 2px solid var(--vk-white); border-bottom: 2px solid var(--vk-white); transform: translateY(-70%) rotate(45deg); }
.vk-menu > li.menu-item-has-children:hover { border-color: var(--vk-primary-2); }
.vk-menu .sub-menu { position: absolute; top: 100%; left: 50%; transform: translateX(-50%); min-width: max-content; width: 101%; opacity: 0; visibility: hidden; pointer-events: none; transition: all .3s ease-in-out; background: var(--vk-dark-2); border-top: 2px solid var(--vk-primary); padding-top: 3px; z-index: 5; }
.vk-menu > li:first-child > .sub-menu { left: 0; transform: none; }
.vk-menu > li:last-child > .sub-menu { left: auto; right: 0; transform: none; }
.vk-menu li:hover > .sub-menu { opacity: 1; visibility: visible; pointer-events: all; }
.vk-menu .sub-menu li { position: relative; padding: 0 15px; width: 100%; }
.vk-menu .sub-menu li:hover { background: rgba(var(--vk-primary-rgb),.2); }
.vk-menu .sub-menu a { display: block; font-size: 14px; padding: 15px 20px 15px 0; border-bottom: 1px solid rgba(var(--vk-hline-rgb),.13); text-transform: uppercase; color: var(--vk-white); }
.vk-menu .sub-menu li:last-child > a { border-bottom: 0; }
.vk-menu .sub-menu { max-width: 360px; }
.vk-menu .sub-menu a { white-space: normal; line-height: 1.35; }
.vk-menu .sub-menu .sub-menu { max-width: 380px; }
.vk-menu .sub-menu .menu-item-has-children::after { content: ""; position: absolute; top: 50%; right: 15px; width: 6px; height: 6px; border-right: 2px solid var(--vk-white); border-bottom: 2px solid var(--vk-white); transform: translateY(-50%) rotate(-45deg); }
.vk-menu .sub-menu .sub-menu { top: 0; left: auto; right: 1px; transform: translateX(100%); width: auto; padding-top: 0; }

html.vk-scrolled .vk-header { background: linear-gradient(180deg, var(--vk-dark) 0, var(--vk-dark-2) 100%); }
html.vk-scrolled .vk-header__top { padding-top: 13px; padding-bottom: 13px; border-bottom: 0; }
html.vk-scrolled .vk-header__bottom { background: linear-gradient(0deg, var(--vk-dark-2) 0, var(--vk-dark-2) 100%); }
html.vk-scrolled .vk-header__bottom .vk-menu > li > a { padding: 8px 0; }
html.vk-scrolled .vk-info p, html.vk-scrolled .vk-info span { font-size: 12px; color: var(--vk-accent); }
html.vk-scrolled .vk-phone { font-size: 22px; }
html.vk-scrolled .vk-logo img { width: 130px; }

/* burger + mobile panel */
.vk-burger { display: none; position: relative; width: 30px; height: 20px; background: transparent; border: 0; padding: 0; cursor: pointer; z-index: 1100; }
.vk-burger::before, .vk-burger::after, .vk-burger span { content: ""; position: absolute; left: 0; width: 100%; height: 3px; background: var(--vk-white); transition: all .5s ease-in-out; }
.vk-burger::before { top: 0; }
.vk-burger::after { bottom: 0; }
.vk-burger span { top: 50%; transform: translateY(-50%); }
html.vk-menu-open .vk-burger span { width: 0; }
html.vk-menu-open .vk-burger::before { top: 50%; transform: translateY(-50%) rotate(-45deg); }
html.vk-menu-open .vk-burger::after { bottom: auto; top: 50%; transform: translateY(-50%) rotate(45deg); }

.vk-panel { position: fixed; top: 0; right: 0; width: 100vw; max-width: 450px; height: 100vh; background: var(--vk-dark); z-index: 1050; transform: translate3d(150%, 0, 0); transition: transform .5s ease-in-out; overflow-y: auto; padding: 114px 20px 60px; visibility: hidden; }
html.vk-menu-open .vk-panel { transform: none; visibility: visible; }
html.vk-menu-open { overflow: hidden; }
.vk-panel .vk-menu { display: block; }
.vk-panel .vk-menu > li { padding: 20px 0; border-top: 1px solid rgba(var(--vk-hline-rgb),.13); position: relative; }
.vk-panel .vk-menu > li:last-child { border-bottom: 0; }
.vk-panel .vk-menu a { color: var(--vk-white); font-size: 18px; padding: 0; line-height: 1.75; }
.vk-panel .vk-menu a[href="#"] { pointer-events: auto; cursor: pointer; }
.vk-panel .vk-menu > li.menu-item-has-children::after { right: 0; top: 30px; }
.vk-panel .vk-menu > li.menu-item-has-children { padding-right: 0; border-left: 0; border-right: 0; border-bottom: 0; }
.vk-panel .vk-menu .sub-menu { position: static; transform: none; opacity: 1; visibility: visible; pointer-events: all; display: none; width: 100%; background: none; padding: 20px 0 0 27px; list-style: disc; }
.vk-panel .vk-menu .is-open > .sub-menu { display: block; }
.vk-panel .vk-menu .sub-menu li { padding: 0; width: auto; }
.vk-panel .vk-menu .sub-menu li:hover { background: none; }
.vk-panel .vk-menu .sub-menu a { font-size: 16px; text-transform: none; border: 0; padding: 4px 0; }
.vk-panel__phone { display: block; text-align: center; background: var(--vk-heading); color: var(--vk-white); padding: 15px; margin: 30px 0 20px; font: 700 22px Inter, sans-serif; border-radius: 4px; }
.vk-panel__offices { color: var(--vk-accent); font: 400 15px/1.8 Inter, sans-serif; text-align: center; }
.vk-panel__offices p { margin: 0; }
.vk-panel__offices a { color: var(--vk-white); font-weight: 600; }

@media (max-width: 1024px) {
	.vk-header__bottom { display: none; }
	.vk-burger { display: block; }
	.vk-header__top { gap: 15px; }
	.vk-logo { order: 1; flex: 3; }
	.vk-logo img { object-position: left; }
	.vk-header__info { order: 2; flex: 3; }
	.vk-burger { order: 3; }
}
@media (max-width: 991.98px) { .vk-search { display: none; } .vk-phone { font-size: 24px; } }
@media (max-width: 767.98px) {
	.vk-info { display: none; }
	.vk-header__top { padding-top: 25px; padding-bottom: 25px; }
	.vk-logo img { max-height: 40px; }
}

/* ---- Hero --------------------------------------------------------------- */
body.vk-site .vk-hero { position: relative; }
body.vk-site .vk-hero--home::before { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(var(--vk-overlay-rgb),.7) 0, rgba(var(--vk-overlay-rgb),.3) 60%, rgba(var(--vk-overlay-rgb),.5) 100%); z-index: 1; pointer-events: none; }
body.vk-site .vk-hero .container, body.vk-site .vk-hero .content { position: relative; z-index: 2; }
body.vk-site .vk-hero--home .container { padding-top: 140px; }
body.vk-site .vk-hero--inner .container { padding-top: 160px; }
body.vk-site .vk-hero--slim .container { padding-top: 120px; }

/* ---- Logos strip -------------------------------------------------------- */
body.vk-site .vk-logo-row { text-align: left; }
body.vk-site .vk-logo-label { font: 700 20px Inter, sans-serif; color: var(--vk-heading); margin: 0 0 15px; }
body.vk-site .vk-logos { display: flex; align-items: center; flex-wrap: wrap; gap: 30px; }
body.vk-site .vk-logos img { max-height: 60px; width: auto; max-width: 160px; object-fit: contain; }

/* ---- Practice areas ----------------------------------------------------- */
body.vk-site .vk-area .container { max-width: 100%; padding: 0; }
body.vk-site .vk-area-image, body.vk-site .vk-area-image .avia_textblock { height: 100%; }
body.vk-site .vk-area-img { display: block; width: 100%; height: 100%; min-height: 480px; object-fit: cover; }
body.vk-site .vk-area-text { padding: 60px 5%; color: var(--vk-text); }
body.vk-site .vk-area-title { font: 700 35px/120% Inter, Arial, sans-serif; color: var(--vk-heading); margin: 0 0 20px; }
body.vk-site .vk-area-text p { font-size: 18px; line-height: 1.6; color: var(--vk-text); }
body.vk-site .vk-state-links { list-style: none; margin: 25px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 12px; }
body.vk-site .vk-state-links li { margin: 0; }
body.vk-site .vk-state-links a, body.vk-site .vk-state-links span { display: inline-block; padding: 10px 22px; font: 600 16px Roboto, sans-serif; text-transform: uppercase; border: 2px solid var(--vk-heading); color: var(--vk-heading); transition: all .3s; }
body.vk-site .vk-state-links a:hover { background: var(--vk-heading); color: var(--vk-white); }
body.vk-site .vk-state-links span { border-color: var(--vk-border); color: var(--vk-meta); }
@media (max-width: 767.98px) { body.vk-site .vk-area-col { width: 100% !important; float: none !important; } body.vk-site .vk-area-img { min-height: 260px; } }

/* ---- Partners ----------------------------------------------------------- */
body.vk-site .vk-partner-name { font: 700 35px/120% Inter, sans-serif; color: var(--vk-heading); margin: 0 0 6px; }
body.vk-site .vk-partner-role { font: 500 18px Roboto, sans-serif; color: var(--vk-primary-2); margin: 0 0 20px; text-transform: uppercase; }
body.vk-site .vk-partner-quote { font: italic 400 26px/1.4 Roboto, sans-serif; color: var(--vk-text); letter-spacing: -.02em; }
body.vk-site .vk-partner-img { display: block; max-width: 100%; height: auto; margin: 0 auto; }
body.vk-site .vk-partner-text { padding: 20px 5%; }

/* ---- Stories ------------------------------------------------------------ */
body.vk-site .vk-stories { display: grid; grid-template-columns: repeat(2, 1fr); gap: 40px; }
body.vk-site .vk-story { margin: 0; padding: 40px; background: var(--vk-white); border-left: 4px solid var(--vk-primary-2); }
body.vk-site .vk-story blockquote { margin: 0; border: 0; padding: 0; font-style: italic; color: var(--vk-text); }
body.vk-site .vk-story h3 { font: 700 26px/1.25 Inter, sans-serif; color: var(--vk-heading); margin: 0 0 16px; }
body.vk-site .vk-story p { font-size: 18px; line-height: 1.6; }
body.vk-site .vk-story figcaption { margin-top: 24px; font: 500 18px Roboto, sans-serif; color: var(--vk-text); }
body.vk-site .vk-story cite { display: block; font-style: normal; font-weight: 400; opacity: .5; font-size: 14px; }
@media (max-width: 767.98px) { body.vk-site .vk-stories { grid-template-columns: 1fr; } }

/* ---- Contact form section ----------------------------------------------- */
body.vk-site .vk-consult { color: var(--vk-white); }
body.vk-site .vk-contact-img { display: block; width: 100%; height: auto; max-height: 560px; object-fit: cover; }
body.vk-site .vk-form-wrap { padding-left: 5%; color: var(--vk-white); }
body.vk-site .vk-form-sub { font: 500 18px/1.8 Roboto, sans-serif; color: var(--vk-tint); margin: 8px 0 24px; }
body.vk-site .vk-form label { display: block; color: var(--vk-white); line-height: 160%; position: relative; margin-bottom: 14px; }
body.vk-site .vk-form input[type=text],
body.vk-site .vk-form input[type=tel],
body.vk-site .vk-form input[type=email] { display: block; width: 100%; border: 0; outline: 0; background: var(--vk-white); padding: 12px 17px; color: var(--vk-input-text); line-height: 160%; border-radius: 0; margin: 4px 0 0; }
body.vk-site .vk-form input::placeholder { color: rgba(var(--vk-placeholder-rgb),.2); }
body.vk-site .vk-form .vk-consent { display: flex; gap: 10px; align-items: flex-start; font-size: 13px; line-height: 1.5; margin-top: 8px; }
body.vk-site .vk-form .vk-consent input { margin-top: 4px; flex: 0 0 auto; width: auto; }
body.vk-site .vk-form .vk-consent a { color: var(--vk-white); text-decoration: underline; }
body.vk-site .vk-form input[type=submit] { display: inline-block; margin: 17px 0 10px; padding: 22px 23px; border: 3px solid var(--vk-white); background: var(--vk-primary); color: var(--vk-white); text-align: center; text-transform: uppercase; font: 700 21px/110% Roboto, Arial, sans-serif; cursor: pointer; transition: all .3s; border-radius: 0; width: auto; }
body.vk-site .vk-form input[type=submit]:hover { background: var(--vk-white); color: var(--vk-primary); }
body.vk-site .vk-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
body.vk-site .vk-form-msg { padding: 12px 16px; margin: 0 0 16px; font-size: 16px; }
body.vk-site .vk-ok { background: var(--vk-ok-bg); color: var(--vk-ok-text); }
body.vk-site .vk-err { background: var(--vk-error-bg); color: var(--vk-error-text); }
@media (max-width: 767.98px) { body.vk-site .vk-form-wrap { padding-left: 0; } }

/* ---- Stats -------------------------------------------------------------- */
body.vk-site .vk-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 30px; text-align: center; color: var(--vk-heading); }
body.vk-site .vk-stat img { height: 56px; width: auto; margin: 0 auto 12px; display: block; }
body.vk-site .vk-stat h3 { font: 500 32px/1.2 Roboto, sans-serif; margin: 0; letter-spacing: -.05em; color: var(--vk-heading); }
body.vk-site .vk-stat p { font: 500 18px Roboto, sans-serif; margin: 6px 0 0; color: var(--vk-heading); }
@media (max-width: 767.98px) { body.vk-site .vk-stats { grid-template-columns: repeat(2, 1fr); } }

/* ---- Reviews ------------------------------------------------------------ */
body.vk-site .vk-badges { display: flex; flex-wrap: wrap; align-items: center; gap: 28px; margin: 22px 0 30px; }
body.vk-site .vk-badges img { max-height: 56px; width: auto; }
body.vk-site .vk-review-track { display: flex; gap: 20px; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 14px; }
body.vk-site .vk-review { flex: 0 0 min(440px, 86%); min-height: 460px; margin: 0; padding: 40px 30px; position: relative; scroll-snap-align: start; background-size: cover; background-position: center; color: var(--vk-white); display: flex; flex-direction: column; justify-content: flex-end; z-index: 0; }
body.vk-site .vk-review::before { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(var(--vk-dark-rgb),.1) 0, rgba(var(--vk-dark-rgb),.88) 100%); z-index: -1; }
body.vk-site .vk-review blockquote { margin: 0 0 18px; padding: 0; border: 0; font: italic 400 18px/1.45 Roboto, sans-serif; color: var(--vk-white); letter-spacing: -.02em; }
body.vk-site .vk-review figcaption { font: 500 16px Roboto, sans-serif; color: var(--vk-white); }

/* ---- CTA band ----------------------------------------------------------- */
body.vk-site .vk-cta { color: var(--vk-tint); }

/* ---- Bio, offices ------------------------------------------------------- */
body.vk-site .vk-bio-img { display: block; width: 100%; height: auto; }
body.vk-site .vk-offices { display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; margin-top: 24px; }
body.vk-site .vk-office h3 { font: 700 22px Inter, sans-serif; color: var(--vk-heading); margin: 0 0 8px; }
body.vk-site .vk-office a, body.vk-site .vk-office-phone { font: 600 20px Roboto, sans-serif; color: var(--vk-primary); }
@media (max-width: 767.98px) { body.vk-site .vk-offices { grid-template-columns: 1fr; } }

/* ---- Footer ------------------------------------------------------------- */
.vk-footer { background: var(--vk-dark); color: var(--vk-white); font-size: 18px; line-height: 180%; padding: 60px 0 80px; clear: both; }
.vk-footer a { color: var(--vk-white); font-size: 18px; line-height: 180%; transition: color .3s; text-decoration: none; }
.vk-footer a:hover { color: var(--vk-accent-2); }
.vk-footer h4 { color: var(--vk-white); font: 700 20px/120% Roboto, Arial, sans-serif; text-transform: uppercase; margin: 0 0 12px; }
.vk-footer ul { list-style: none; margin: 0; padding: 0; }
.vk-footer__logo { display: inline-block; width: 160px; height: 40px; margin-bottom: 60px; position: relative; overflow: hidden; }
.vk-footer__logo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; object-position: left center; }
.vk-footer__top { display: flex; justify-content: space-between; gap: 3%; padding-bottom: 42px; margin-bottom: 54px; border-bottom: 1px solid var(--vk-heading); }
.vk-footer__top .vk-footer__col { flex: 1; }
.vk-footer__top .vk-footer__col h4 { min-height: 48px; }
.vk-footer__bottom { display: flex; gap: 54px; padding-bottom: 50px; margin-bottom: 43px; border-bottom: 1px solid var(--vk-heading); font-weight: 300; }
.vk-footer__bottom .vk-footer__col:first-child { max-width: 16%; }
.vk-footer__bottom .vk-footer__col { max-width: 24%; }
.vk-footer__bottom h4 { font-size: 18px; margin-bottom: 20px; }
.vk-footer__bottom a { font-weight: 700; text-decoration: underline; }
.vk-footer__bottom a[href^="tel:"] { text-decoration: none; }
.vk-footer__note { font-weight: 300; padding-bottom: 46px; margin: 0 0 30px; border-bottom: 1px solid var(--vk-heading); }
.vk-footer__legal { display: flex; justify-content: space-between; align-items: center; }
.vk-footer__legal ul { display: flex; gap: 20px; }
.vk-footer__legal li + li { position: relative; }
.vk-footer__legal li + li::before { content: ""; position: absolute; left: -10px; top: 25%; width: 1px; height: 50%; background: var(--vk-white); }
@media (max-width: 1024px) { .vk-footer { font-size: 14px; } .vk-footer__top { flex-wrap: wrap; row-gap: 30px; } .vk-footer__top .vk-footer__col { flex: 0 0 30%; } }
@media (max-width: 767.98px) {
	.vk-footer__top, .vk-footer__bottom { display: block; }
	.vk-footer__top .vk-footer__col, .vk-footer__bottom .vk-footer__col { max-width: 100%; margin-bottom: 24px; }
	.vk-footer__legal { flex-direction: column-reverse; align-items: flex-start; gap: 16px; }
}


/* ======================================================================
   Koron & Podolsky blocks
   ====================================================================== */
.vk-logo img { width: auto; height: 64px; max-height: 64px; }
html.vk-scrolled .vk-logo img { width: auto; height: 48px; }
.vk-logo { flex: 0 0 auto; }

body.vk-site .vk-intro, body.vk-site .vk-intro p { font-size: 20px; line-height: 1.7; color: var(--vk-text); max-width: 960px; }

/* practice area cards */
body.vk-site .vk-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin-top: 28px; }
body.vk-site .vk-card { background: var(--vk-white); border-top: 4px solid var(--vk-primary-2); padding: 28px 26px; display: flex; flex-direction: column; box-shadow: 0 2px 12px rgba(var(--vk-dark-rgb),.08); }
body.vk-site .vk-card h3 { font: 700 24px/1.2 Inter, Arial, sans-serif; color: var(--vk-heading); margin: 0 0 12px; }
body.vk-site .vk-card p { font-size: 16px; line-height: 1.6; color: var(--vk-text); margin: 0 0 18px; flex: 1; }
body.vk-site .vk-card__link { align-self: flex-start; font: 600 15px Roboto, sans-serif; text-transform: uppercase; color: var(--vk-primary); border-bottom: 2px solid var(--vk-primary-2); padding-bottom: 2px; transition: all .3s; }
body.vk-site .vk-card__link:hover { color: var(--vk-primary); border-color: var(--vk-primary); }
@media (max-width: 991.98px) { body.vk-site .vk-cards { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 640px) { body.vk-site .vk-cards { grid-template-columns: 1fr; } }

/* awards */
body.vk-site .vk-awards { display: grid; grid-template-columns: 1.2fr 1fr; gap: 40px; align-items: center; margin-top: 24px; }
body.vk-site .vk-awards__list { margin: 0; padding: 0 0 0 20px; list-style: disc; }
body.vk-site .vk-awards__list li { font-size: 18px; line-height: 1.8; color: var(--vk-text); }
body.vk-site .vk-awards__badges { display: flex; flex-wrap: wrap; gap: 24px; align-items: center; }
body.vk-site .vk-awards__badges img { max-height: 110px; width: auto; background: var(--vk-heading); padding: 6px; }
@media (max-width: 767.98px) { body.vk-site .vk-awards { grid-template-columns: 1fr; } }

/* why choose us */
body.vk-site .vk-why { display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; text-align: center; margin-top: 28px; }
body.vk-site .vk-why__item img { height: 72px; width: auto; margin: 0 auto 14px; display: block; }
body.vk-site .vk-why__item h3 { font: 700 24px/1.2 Inter, sans-serif; color: var(--vk-heading); margin: 0 0 10px; }
body.vk-site .vk-why__item p { font-size: 17px; line-height: 1.6; color: var(--vk-text); }
@media (max-width: 767.98px) { body.vk-site .vk-why { grid-template-columns: 1fr; } }

/* attorneys */
body.vk-site .vk-people { display: grid; grid-template-columns: repeat(2, 1fr); gap: 40px; margin-top: 28px; }
body.vk-site .vk-person { display: flex; gap: 24px; align-items: flex-start; }
body.vk-site .vk-person img { width: 150px; height: auto; flex: 0 0 150px; }
body.vk-site .vk-person h3 { font: 700 26px/1.2 Inter, sans-serif; color: var(--vk-heading); margin: 0 0 4px; }
body.vk-site .vk-person__role { font: 500 15px Roboto, sans-serif; text-transform: uppercase; color: var(--vk-primary-2); margin: 0 0 12px; }
body.vk-site .vk-person p { font-size: 16px; line-height: 1.6; color: var(--vk-text); }
@media (max-width: 991.98px) { body.vk-site .vk-people { grid-template-columns: 1fr; } }
@media (max-width: 480px) { body.vk-site .vk-person { flex-direction: column; } }

/* recent news */
body.vk-site .vk-news { display: grid; grid-template-columns: repeat(2, 1fr); gap: 28px; margin-top: 24px; }
body.vk-site .vk-news__item h3 { font: 700 22px/1.3 Inter, sans-serif; margin: 0 0 6px; }
body.vk-site .vk-news__item h3 a { color: var(--vk-heading); }
body.vk-site .vk-news__item h3 a:hover { color: var(--vk-primary); }
body.vk-site .vk-news__date { font-size: 14px; color: var(--vk-meta); margin: 0 0 8px; }
@media (max-width: 767.98px) { body.vk-site .vk-news { grid-template-columns: 1fr; } }
body.vk-site .vk-news-section .av_textblock_section:empty { display: none; }

/* contact section (left text, right form) */
body.vk-site .vk-form-info p { color: var(--vk-tint); font-size: 20px; line-height: 1.6; margin: 10px 0 0; }
body.vk-site .vk-form-phone a { color: var(--vk-white); font: 700 34px/1.2 Inter, sans-serif; }
body.vk-site .vk-form-address { font-size: 17px !important; color: var(--vk-accent) !important; }
body.vk-site .vk-consult .vk-form-title { margin-bottom: 8px; }

/* inner pages */
body.vk-site .vk-body h2, body.vk-site .vk-body h3, body.vk-site .vk-body h4 { color: var(--vk-heading); font-family: Inter, Arial, sans-serif; line-height: 1.25; margin: 1.4em 0 .5em; }
body.vk-site .vk-body h2 { font-size: 32px; }
body.vk-site .vk-body h3 { font-size: 24px; }
body.vk-site .vk-body h4 { font-size: 20px; }
body.vk-site .vk-body ul, body.vk-site .vk-body ol { margin: 0 0 1.2em 1.4em; }
body.vk-site .vk-body li { margin-bottom: .5em; line-height: 1.6; }
body.vk-site .vk-body a { color: var(--vk-primary); text-decoration: underline; }
body.vk-site .vk-body img { max-width: 100%; height: auto; }
body.vk-site .vk-bio-name { font: 700 28px/1.2 Inter, sans-serif; color: var(--vk-heading); margin: 0 0 12px !important; }
body.vk-site .vk-bio-img { display: block; width: 100%; max-width: 240px; height: auto; }
body.vk-site .vk-highlights .vk-body li { font-size: 17px; }
body.vk-site .vk-hero--inner .container { padding-top: 150px; }

/* footer additions */
.vk-footer__top { display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 40px; }
.vk-footer__top .vk-footer__col h4 { min-height: 0; }
.vk-footer__legal { padding-top: 6px; }
@media (max-width: 767.98px) { .vk-footer__top { grid-template-columns: 1fr; gap: 24px; } }


/* ======================================================================
   Header logo and search bar (written to beat Enfold's own input styles)
   ====================================================================== */
.vk-logo { flex: 0 0 auto; }
.vk-logo img { width: auto; height: 72px; max-height: 72px; max-width: 220px; object-fit: contain; mix-blend-mode: lighten; }
html.vk-scrolled .vk-logo img { height: 54px; }
@media (max-width: 767.98px) { .vk-logo img { height: 46px; max-height: 46px; } }

body.vk-site #top .vk-header .vk-search { display: flex; align-items: center; gap: 4px; flex: 1 1 0; max-width: 320px; margin: 0; padding: 0 30px 0 0; background: none; border: 0; position: relative; }
body.vk-site #top .vk-header .vk-search input[type="search"] {
	-webkit-appearance: none; appearance: none;
	background: transparent !important; color: var(--vk-white) !important;
	border: 0 !important; border-bottom: 1px solid rgba(var(--vk-glass-rgb),.4) !important; border-radius: 0 !important;
	box-shadow: none !important; outline: 0 !important;
	font: 500 16px/1.4 Inter, Arial, sans-serif !important;
	height: 40px !important; min-height: 0 !important; width: 100% !important; min-width: 80px;
	padding: 6px 4px !important; margin: 0 !important;
	transition: border-color .3s ease-in-out;
}
body.vk-site #top .vk-header .vk-search input[type="search"]:focus { border-bottom-color: var(--vk-primary-2) !important; }
body.vk-site #top .vk-header .vk-search input[type="search"]::placeholder { color: rgba(var(--vk-glass-rgb),.6) !important; opacity: 1; }
body.vk-site #top .vk-header .vk-search input[type="search"]::-webkit-search-cancel-button,
body.vk-site #top .vk-header .vk-search input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; display: none; }
body.vk-site #top .vk-header .vk-search button {
	background: transparent !important; color: var(--vk-white) !important; border: 0 !important; box-shadow: none !important;
	padding: 6px !important; margin: 0 !important; width: auto !important; min-width: 0 !important; height: auto !important;
	line-height: 1; cursor: pointer; border-radius: 0 !important;
}
body.vk-site #top .vk-header .vk-search button:hover { color: var(--vk-primary-2) !important; }
body.vk-site #top .vk-header .vk-search button svg { display: block; }

/* search inside the mobile panel */
body.vk-site #top .vk-panel .vk-search--panel { max-width: none; padding: 0; margin: 0 0 24px; background: rgba(var(--vk-glass-rgb),.1) !important; border-radius: 10px; overflow: hidden; }
body.vk-site #top .vk-panel .vk-search--panel::after { display: none; }
body.vk-site #top .vk-panel .vk-search--panel input[type="search"] { border-bottom: 0 !important; padding: 14px 16px !important; height: 48px !important; }
body.vk-site #top .vk-panel .vk-search--panel button { padding: 12px 16px !important; }


/* ======================================================================
   Fixes after first review
   ====================================================================== */
/* long hero title: smaller, normal capitalisation */
body.vk-site #top .vk-hero-title .av-special-heading-tag,
body.vk-site #top .vk-page-title .av-special-heading-tag,
body.vk-site #top .vk-call-title .av-special-heading-tag { text-transform: none; letter-spacing: -.01em; }
body.vk-site #top .vk-hero-title .av-special-heading-tag { font-size: 72px; line-height: 1.08; max-width: 900px; }
@media (max-width: 991.98px) { body.vk-site #top .vk-hero-title .av-special-heading-tag { font-size: 56px; } }
@media (max-width: 767.98px) { body.vk-site #top .vk-hero-title .av-special-heading-tag { font-size: 10vw; } }
body.vk-site .vk-hero-sub { max-width: 760px; }

/* form consent text and links were too dark on navy */
body.vk-site #top .vk-form .vk-consent span,
body.vk-site #top .vk-form .vk-consent { color: var(--vk-on-dark) !important; font-size: 14px; line-height: 1.5; }
body.vk-site #top .vk-form .vk-consent a { color: var(--vk-white) !important; }
body.vk-site #top .vk-cta-sub, body.vk-site #top .vk-cta-sub p { color: var(--vk-tint) !important; }
body.vk-site #top .vk-cta-sub a, body.vk-site #top .vk-cta-text a { color: var(--vk-white) !important; text-decoration: underline; font-weight: 600; }
body.vk-site #top .vk-form-info a { color: var(--vk-white) !important; }

/* header: hide the small text block when there is not enough room */
@media (max-width: 1180px) { .vk-info { display: none; } }


/* ======================================================================
   DESIGN V2: layout that follows the vk.law reference
   ====================================================================== */

/* ---- header: logo left, search, phone; menu row below ------------------ */
body.vk-site #top .vk-header .vk-logo { order: 0; margin-right: auto; }
body.vk-site #top .vk-header .vk-search { order: 1; flex: 0 0 230px; max-width: 230px; }
body.vk-site #top .vk-header .vk-header__info { order: 2; flex: 0 0 auto; }
body.vk-site #top .vk-header .vk-burger { order: 3; }
.vk-header__top { padding-top: 26px; padding-bottom: 20px; }
.vk-menu { justify-content: flex-start; }
.vk-menu > li { padding-left: 0; padding-right: 15px; }
.vk-menu > li:first-child { padding-left: 0; }
@media (min-width: 1025px) { .vk-menu { justify-content: center; } }
@media (max-width: 1024px) {
	body.vk-site #top .vk-header .vk-logo { flex: 1 1 auto; }
	body.vk-site #top .vk-header .vk-header__info { flex: 0 0 auto; }
}

/* ---- hero -------------------------------------------------------------- */
body.vk-site .vk-hero--home { position: relative; overflow: hidden; }
body.vk-site .vk-hero--home::before { background: linear-gradient(180deg, rgba(var(--vk-overlay-rgb),.55) 0, rgba(var(--vk-overlay-rgb),.1) 60%, rgba(var(--vk-overlay-rgb),.35) 100%); }
body.vk-site .vk-hero--home::after { content: ""; position: absolute; top: 0; bottom: 0; right: -6%; width: 44%; background: rgba(var(--vk-shape-rgb),.05); transform: skewX(-18deg); z-index: 1; pointer-events: none; }
body.vk-site .vk-hero--home .container { padding-top: 170px; padding-bottom: 60px; }
body.vk-site #top .vk-hero-title h1,
body.vk-site #top .vk-hero-title .vk-hero-h1 { font: 300 60px/1.08 Inter, Arial, sans-serif; text-transform: uppercase; color: var(--vk-white); margin: 0 0 18px; letter-spacing: .01em; max-width: 880px; }
body.vk-site #top .vk-hero-title h1 strong { display: block; font-weight: 800; }
body.vk-site #top .vk-hero-kicker { font: 500 15px/1.6 Inter, Arial, sans-serif; text-transform: uppercase; letter-spacing: .05em; color: var(--vk-on-dark); margin: 0 0 34px; max-width: 760px; }
body.vk-site #top .vk-hero-kicker strong { color: var(--vk-primary-2); font-weight: 700; }
@media (max-width: 991.98px) { body.vk-site #top .vk-hero-title h1 { font-size: 44px; } }
@media (max-width: 767.98px) { body.vk-site #top .vk-hero-title h1 { font-size: 9vw; } body.vk-site .vk-hero--home .container { padding-top: 130px; } }

body.vk-site #top .vk-page-title .av-special-heading-tag { text-transform: uppercase; font-weight: 700; letter-spacing: .01em; }

/* ---- recognition band -------------------------------------------------- */
body.vk-site .vk-band { display: flex; align-items: center; justify-content: space-between; gap: 0; }
body.vk-site .vk-band__group { flex: 1 1 0; display: flex; align-items: center; gap: 26px; padding: 6px 28px; }
body.vk-site .vk-band__group + .vk-band__group { border-left: 1px solid rgba(var(--vk-glass-rgb),.3); }
body.vk-site .vk-band h3 { font: 700 15px Inter, sans-serif; color: var(--vk-white); margin: 0; white-space: nowrap; }
body.vk-site .vk-band__logos { display: flex; align-items: center; flex-wrap: wrap; gap: 20px; }
body.vk-site .vk-band__img { max-height: 70px; width: auto; display: block; }
body.vk-site .vk-chip { background: var(--vk-white); padding: 4px 6px; border-radius: 2px; }
@media (max-width: 767.98px) { body.vk-site .vk-band { flex-direction: column; align-items: flex-start; } body.vk-site .vk-band__group + .vk-band__group { border-left: 0; border-top: 1px solid rgba(var(--vk-glass-rgb),.3); width: 100%; } body.vk-site .vk-band__group { flex-wrap: wrap; padding: 14px 0; } }

/* ---- practice area carousel ------------------------------------------- */
body.vk-site .vk-carousel__head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 28px; }
body.vk-site .vk-carousel__head .vk-section-title { font: 700 28px/1.2 Inter, Arial, sans-serif; text-transform: uppercase; color: var(--vk-heading); margin: 0; }
body.vk-site .vk-arrows { display: flex; gap: 8px; }
body.vk-site #top .vk-arrow { width: 42px; height: 42px; padding: 0; margin: 0; background: var(--vk-heading); color: var(--vk-white); border: 0; border-radius: 0; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: opacity .3s, background .3s; }
body.vk-site #top .vk-arrow:hover { background: var(--vk-primary); }
body.vk-site #top .vk-arrow:disabled { opacity: .3; cursor: default; background: var(--vk-heading); }
body.vk-site .vk-cards { display: flex; gap: 24px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; margin: 0; padding: 0 0 6px; grid-template-columns: none; }
body.vk-site .vk-cards::-webkit-scrollbar { display: none; }
body.vk-site .vk-card { flex: 0 0 min(440px, 86%); scroll-snap-align: start; background: var(--vk-white); border: 1px solid var(--vk-border); border-top: 0; padding: 0 0 26px; box-shadow: none; display: flex; flex-direction: column; }
body.vk-site .vk-card::before { content: ""; display: block; height: 300px; margin-bottom: 22px; background: linear-gradient(135deg, var(--vk-heading) 0%, var(--vk-primary) 100%); }
body.vk-site .vk-card h3 { font: 700 21px/1.25 Inter, Arial, sans-serif; color: var(--vk-heading); margin: 0 0 10px; padding: 0 24px; }
body.vk-site .vk-card p { font-size: 15px; line-height: 1.65; color: var(--vk-text); margin: 0 0 18px; padding: 0 24px; flex: 1; }
body.vk-site .vk-card__pills { padding: 0 24px; }
body.vk-site .vk-pill { display: inline-block; background: var(--vk-tint-2); color: var(--vk-heading); font: 700 12px/1 Roboto, sans-serif; text-transform: uppercase; letter-spacing: .02em; padding: 9px 14px; border-radius: 4px; transition: all .3s; }
body.vk-site .vk-pill:hover { background: var(--vk-heading); color: var(--vk-white); }

/* ---- attorney rows (blue, diagonal stripes) --------------------------- */
body.vk-site .vk-feature-section { position: relative; overflow: hidden; }
body.vk-site .vk-feature-section::before { content: ""; position: absolute; top: 0; bottom: 0; left: -8%; width: 42%; background: rgba(var(--vk-shape-rgb),.06); transform: skewX(-22deg); pointer-events: none; }
body.vk-site .vk-feature-section::after { content: ""; position: absolute; top: 0; bottom: 0; right: 12%; width: 22%; background: rgba(var(--vk-shape-rgb),.04); transform: skewX(-22deg); pointer-events: none; }
body.vk-site .vk-feature-section .container { position: relative; z-index: 2; }
body.vk-site .vk-feature { display: grid; grid-template-columns: 1fr 1fr; align-items: stretch; min-height: 380px; }
body.vk-site .vk-feature__text { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; padding: 56px 8% 56px 0; color: var(--vk-white); }
body.vk-site .vk-feature--flip .vk-feature__text { order: 2; padding: 56px 0 56px 8%; }
body.vk-site .vk-feature--flip .vk-feature__photo { order: 1; }
body.vk-site .vk-feature h2 { font: 700 26px/1.2 Inter, sans-serif; text-transform: uppercase; color: var(--vk-white); margin: 0 0 6px; }
body.vk-site .vk-feature__role { font: 500 17px Roboto, sans-serif; color: var(--vk-tint-2); margin: 0 0 20px; }
body.vk-site .vk-feature__bio { font-size: 17px; line-height: 1.65; color: var(--vk-white); margin: 0; }
body.vk-site #top .vk-feature__btn { display: inline-block; margin-top: 24px; background: var(--vk-white); color: var(--vk-heading); font: 700 15px/1 Roboto, sans-serif; text-transform: uppercase; padding: 12px 18px; transition: all .3s; }
body.vk-site #top .vk-feature__btn:hover { background: var(--vk-primary); color: var(--vk-white); }
body.vk-site .vk-feature__photo { display: flex; align-items: flex-end; justify-content: center; background: rgba(var(--vk-glass-rgb),.08); }
body.vk-site .vk-feature__photo img { display: block; max-height: 380px; width: auto; max-width: 100%; object-fit: contain; }
@media (max-width: 767.98px) { body.vk-site .vk-feature { grid-template-columns: 1fr; } body.vk-site .vk-feature__text, body.vk-site .vk-feature--flip .vk-feature__text { order: 2; padding: 36px 0; } body.vk-site .vk-feature--flip .vk-feature__photo { order: 1; } }

/* ---- why choose us: stats band ---------------------------------------- */
body.vk-site .vk-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; text-align: center; }
body.vk-site .vk-stat { padding: 10px 28px; }
body.vk-site .vk-stat + .vk-stat { border-left: 1px solid var(--vk-border); }
body.vk-site .vk-stat img { height: 64px; width: auto; margin: 0 auto 10px; display: block; }
body.vk-site .vk-stat h3 { font: 500 44px/1.1 Inter, sans-serif; letter-spacing: -.03em; color: var(--vk-heading); margin: 0; }
body.vk-site .vk-stat__label { font: 600 18px Roboto, sans-serif; color: var(--vk-heading); margin: 6px 0 10px; }
body.vk-site .vk-stat__text { font-size: 15px; line-height: 1.6; color: var(--vk-text); margin: 0; }
@media (max-width: 767.98px) { body.vk-site .vk-stats { grid-template-columns: 1fr; } body.vk-site .vk-stat + .vk-stat { border-left: 0; border-top: 1px solid var(--vk-border); padding-top: 24px; margin-top: 14px; } }

/* ---- awards list ------------------------------------------------------- */
body.vk-site .vk-awards { display: block; margin-top: 18px; }
body.vk-site .vk-awards__badges { display: none; }
body.vk-site .vk-awards__list { columns: 2; column-gap: 40px; margin: 0; padding: 0 0 0 20px; }
@media (max-width: 767.98px) { body.vk-site .vk-awards__list { columns: 1; } }

/* ---- contact form section --------------------------------------------- */
body.vk-site #top .vk-form-title .av-special-heading-tag { font: 700 30px/1.25 Inter, Arial, sans-serif; text-transform: uppercase; color: var(--vk-white); text-align: center; margin-bottom: 36px; }
body.vk-site .vk-consult { color: var(--vk-white); }
body.vk-site .vk-form-info { padding-right: 8%; }
body.vk-site #top .vk-form input[type="submit"] { background: var(--vk-primary); border: 3px solid var(--vk-white); color: var(--vk-white); text-transform: uppercase; font: 700 18px/1 Roboto, sans-serif; padding: 20px 28px; width: 100%; max-width: 360px; }

/* ---- orange button (form and closing band) ---------------------------- */
body.vk-site .vk-btn--orange .avia-button,
body.vk-site .avia-button.vk-btn--orange { background: var(--vk-primary) !important; border: 3px solid var(--vk-white) !important; color: var(--vk-white) !important; text-transform: uppercase; font: 700 22px/1 Roboto, Arial, sans-serif !important; padding: 20px 34px !important; }
body.vk-site .vk-btn--orange .avia-button:hover,
body.vk-site .avia-button.vk-btn--orange:hover { background: var(--vk-white) !important; color: var(--vk-primary) !important; border-color: var(--vk-primary) !important; }

/* ---- closing band ------------------------------------------------------ */
body.vk-site .vk-cta { position: relative; overflow: hidden; background-image: linear-gradient(120deg, var(--vk-band) 0%, var(--vk-primary) 60%, var(--vk-band) 100%); }
body.vk-site #top .vk-call-title .av-special-heading-tag { text-transform: uppercase; font: 500 56px/1.1 Inter, Arial, sans-serif; letter-spacing: .01em; text-align: center; color: var(--vk-white); }
@media (max-width: 767.98px) { body.vk-site #top .vk-call-title .av-special-heading-tag { font-size: 34px; } }

/* ---- footer ------------------------------------------------------------ */
.vk-footer { background: var(--vk-dark); padding: 60px 0 46px; }
.vk-footer__head { display: flex; align-items: center; gap: 24px; margin-bottom: 40px; }
.vk-footer__logo { display: inline-block; position: static; width: auto; height: auto; margin: 0; overflow: visible; }
.vk-footer__logo img { position: static; width: auto; height: 62px; max-width: 220px; object-fit: contain; mix-blend-mode: lighten; display: block; }
.vk-footer__head p { color: var(--vk-accent); font: 500 13px/1.4 Inter, sans-serif; text-transform: uppercase; letter-spacing: .08em; margin: 0; }
.vk-footer__top { display: grid; grid-template-columns: repeat(4, 1fr); gap: 40px; padding-bottom: 36px; margin-bottom: 36px; border-bottom: 1px solid var(--vk-dark-line); }
.vk-footer h4 { font: 600 12px/1.3 Inter, sans-serif; text-transform: uppercase; letter-spacing: .12em; color: var(--vk-accent); margin: 0 0 14px; min-height: 0; }
.vk-footer li { margin: 0 0 6px; }
.vk-footer a { font-size: 15px; line-height: 1.6; }
.vk-footer p { font-size: 15px; line-height: 1.6; margin: 0; }
.vk-footer__bottom { display: flex; gap: 70px; padding-bottom: 34px; margin-bottom: 30px; border-bottom: 1px solid var(--vk-dark-line); font-weight: 400; }
.vk-footer__bottom .vk-footer__col, .vk-footer__bottom .vk-footer__col:first-child { max-width: none; }
.vk-footer__bottom a { font-weight: 700; text-decoration: none; }
.vk-footer__note { font-size: 13px !important; line-height: 1.7 !important; color: var(--vk-on-dark); padding-bottom: 24px; margin: 0 0 22px !important; border-bottom: 1px solid var(--vk-dark-line); }
.vk-footer__legal { font-size: 13px; color: var(--vk-on-dark); }
@media (max-width: 991.98px) { .vk-footer__top { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 575px) { .vk-footer__top { grid-template-columns: 1fr; } .vk-footer__bottom { flex-direction: column; gap: 20px; } .vk-footer__head { flex-direction: column; align-items: flex-start; } }


/* ======================================================================
   Header and footer refinements
   ====================================================================== */
:root { --vk-header-h: 162px; }
@media (max-width: 1024px) { :root { --vk-header-h: 104px; } }

/* header height is now predictable, so page titles clear it exactly */
body.vk-site .vk-hero--inner .container { padding-top: calc(var(--vk-header-h) + 20px); }
body.vk-site .vk-hero--home .container { padding-top: calc(var(--vk-header-h) + 60px); }

.vk-logo img { height: 62px; max-height: 62px; }
html.vk-scrolled .vk-logo img { height: 48px; }
@media (max-width: 767.98px) { .vk-logo img { height: 44px; max-height: 44px; } }

.vk-header__top { padding-top: 22px; padding-bottom: 18px; gap: 28px; }
html.vk-scrolled .vk-header__top { padding-top: 10px; padding-bottom: 10px; }
.vk-header__bottom .vk-menu > li > a { padding: 12px 0; }
.vk-header__bottom { border-top: 1px solid rgba(var(--vk-hline-rgb),.13); }
html.vk-scrolled .vk-header__bottom { border-top: 0; }

/* admin bar keeps the fixed header below it */
.admin-bar .vk-panel { top: 32px; height: calc(100vh - 32px); }
@media (max-width: 782px) { .admin-bar .vk-header { top: 46px; } .admin-bar .vk-panel { top: 46px; height: calc(100vh - 46px); } }

/* footer: the same on every page, readable on dark */
.vk-footer, .vk-footer * { box-sizing: border-box; }
.vk-footer a { text-decoration: none; }
.vk-footer__top a:hover, .vk-footer__bottom a:hover { color: var(--vk-accent-2); text-decoration: underline; }
.vk-footer__logo img { height: 56px; }


/* ======================================================================
   Logo left and 20% larger, no search bar
   ====================================================================== */
:root { --vk-header-h: 176px; }
@media (max-width: 1024px) { :root { --vk-header-h: 116px; } }

body.vk-site #top .vk-header .vk-logo { order: 0; flex: 0 0 auto; margin-right: auto; }
body.vk-site #top .vk-header .vk-logo img { height: 74px; max-height: 74px; width: auto; max-width: 270px; }
html.vk-scrolled body.vk-site #top .vk-header .vk-logo img,
body.vk-site.admin-bar #top .vk-header .vk-logo img { height: 74px; }
html.vk-scrolled body.vk-site #top .vk-header .vk-logo img { height: 58px; }
body.vk-site #top .vk-header .vk-header__info { order: 2; margin-left: auto; }
@media (max-width: 767.98px) { body.vk-site #top .vk-header .vk-logo img { height: 54px; max-height: 54px; } }
.vk-footer__logo img { height: 68px; }


/* ======================================================================
   THEME COLORS
   Everything below reads the variables printed from Enfold > General Styling.
   Logo palette: black and gold. Buttons are gold with dark text; on hover they
   invert to dark with gold text and a gold outline.
   ====================================================================== */

/* section backgrounds (classes are written into the pages instead of fixed colors) */
body.vk-site .vk-bg-brand { background-color: var(--vk-dark-2) !important; }
body.vk-site .vk-bg-band  { background-color: var(--vk-band) !important; }
body.vk-site .vk-bg-tint  { background-color: var(--vk-tint) !important; }
body.vk-site .vk-bg-dark, body.vk-site .vk-bg-brand, body.vk-site .vk-bg-band { color: var(--vk-on-dark); }
body.vk-site .vk-bg-dark .avia_textblock, body.vk-site .vk-bg-brand .avia_textblock, body.vk-site .vk-bg-band .avia_textblock { color: var(--vk-on-dark); }

/* gold detail lines, like the logo */
body.vk-site .vk-hero--home::after { background: rgba(var(--vk-shape-rgb), .08); }
body.vk-site .vk-feature-section::before { background: rgba(var(--vk-shape-rgb), .08); }
body.vk-site .vk-feature-section::after { background: rgba(var(--vk-shape-rgb), .05); }
body.vk-site .vk-hero--inner { border-bottom: 3px solid var(--vk-primary); }
body.vk-site .vk-cta { border-top: 3px solid var(--vk-primary); }
html.vk-scrolled .vk-header { border-bottom: 2px solid var(--vk-primary); }
.vk-header__bottom { background: transparent; }

/* headings and text */
body.vk-site #top .vk-section-title .av-special-heading-tag,
body.vk-site .vk-carousel__head .vk-section-title { color: var(--vk-heading); }
body.vk-site #top .vk-hero-title h1, body.vk-site #top .vk-page-title .av-special-heading-tag,
body.vk-site #top .vk-call-title .av-special-heading-tag, body.vk-site #top .vk-form-title .av-special-heading-tag { color: var(--vk-white); }
body.vk-site #top .vk-hero-kicker strong { color: var(--vk-primary-2); }
body.vk-site .vk-body a, body.vk-site .vk-card__link { color: var(--vk-link); }
body.vk-site .vk-body a:hover { color: var(--vk-heading); }
body.vk-site .vk-feature h2, body.vk-site .vk-feature__bio { color: var(--vk-white); }
body.vk-site .vk-feature__role { color: var(--vk-primary-2); }
body.vk-site .vk-form-phone a, body.vk-site #top .vk-form-info a, body.vk-site #top .vk-cta-sub a { color: var(--vk-primary-2) !important; }
body.vk-site .vk-form-address, body.vk-site .vk-form-sub { color: var(--vk-on-dark) !important; }
.vk-phone { color: var(--vk-white); }
.vk-phone:hover { color: var(--vk-primary-2); }
.vk-info p, .vk-info span { color: var(--vk-white); }
html.vk-scrolled .vk-info p, html.vk-scrolled .vk-info span { color: var(--vk-primary-2); }
.vk-menu > li:hover > a { color: var(--vk-primary-2); }
.vk-menu > li.menu-item-has-children:hover { border-color: var(--vk-primary); }
.vk-menu .sub-menu li:hover { background: rgba(var(--vk-primary-rgb), .16); }

/* ---- ALL BUTTONS: gold, dark text; hover inverts -------------------------------- */
body.vk-site .vk-btn .avia-button, body.vk-site .avia-button.vk-btn,
body.vk-site .vk-btn--orange .avia-button, body.vk-site .avia-button.vk-btn--orange,
body.vk-site .vk-btn--small .avia-button, body.vk-site .avia-button.vk-btn--small,
body.vk-site a.vk-btn, body.vk-site #top .vk-feature__btn,
body.vk-site #top .vk-form input[type="submit"], body.vk-site .vk-panel__phone {
	background: var(--vk-primary) !important;
	border: 2px solid var(--vk-primary) !important;
	color: var(--vk-on-primary) !important;
	font: 700 17px/1 Roboto, Arial, sans-serif !important;
	letter-spacing: .06em;
	text-transform: uppercase;
	padding: 17px 32px !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	transition: background .3s, color .3s, border-color .3s;
}
body.vk-site .vk-btn .avia-button:hover, body.vk-site .avia-button.vk-btn:hover,
body.vk-site .vk-btn--orange .avia-button:hover, body.vk-site .avia-button.vk-btn--orange:hover,
body.vk-site .vk-btn--small .avia-button:hover, body.vk-site .avia-button.vk-btn--small:hover,
body.vk-site a.vk-btn:hover, body.vk-site #top .vk-feature__btn:hover,
body.vk-site #top .vk-form input[type="submit"]:hover, body.vk-site .vk-panel__phone:hover {
	background: var(--vk-dark) !important;
	color: var(--vk-primary-2) !important;
	border-color: var(--vk-primary) !important;
}
body.vk-site .vk-btn--small .avia-button, body.vk-site .avia-button.vk-btn--small, body.vk-site #top .vk-feature__btn { font-size: 14px !important; padding: 13px 22px !important; }
body.vk-site #top .vk-form input[type="submit"] { width: auto; max-width: none; margin: 17px 0 10px; cursor: pointer; }
body.vk-site .vk-panel__phone { display: block; text-align: center; margin: 30px 0 20px; }
@media (max-width: 767.98px) {
	body.vk-site .vk-btn .avia-button, body.vk-site .avia-button.vk-btn,
	body.vk-site .vk-btn--orange .avia-button, body.vk-site .avia-button.vk-btn--orange { font-size: 15px !important; padding: 15px 22px !important; }
}

/* arrows, pills and card links share the same gold and dark pair */
body.vk-site #top .vk-arrow { background: var(--vk-arrow); color: var(--vk-arrow-icon); border: 1px solid var(--vk-arrow); }
body.vk-site #top .vk-arrow:hover { background: var(--vk-arrow); color: var(--vk-arrow-icon); filter: brightness(1.12); }
body.vk-site #top .vk-arrow:disabled { background: var(--vk-arrow); color: var(--vk-arrow-icon); opacity: .3; filter: none; }
body.vk-site .vk-pill { background: var(--vk-tint-2); color: var(--vk-heading); border: 1px solid var(--vk-primary); }
body.vk-site .vk-pill:hover { background: var(--vk-primary); color: var(--vk-on-primary); }
body.vk-site .vk-card { border-color: var(--vk-border); border-top: 3px solid var(--vk-primary); }
body.vk-site .vk-card::before { background: linear-gradient(135deg, var(--vk-dark) 0%, var(--vk-dark-2) 60%, var(--vk-band) 100%); }
body.vk-site .vk-card h3, body.vk-site .vk-person h3, body.vk-site .vk-stat h3, body.vk-site .vk-stat__label { color: var(--vk-heading); }
body.vk-site .vk-stat { border-color: var(--vk-border); }
body.vk-site .vk-stat + .vk-stat { border-left-color: var(--vk-border); }
body.vk-site .vk-band h3 { color: var(--vk-primary-2); }
body.vk-site .vk-chip { background: var(--vk-white); }

/* footer */
.vk-footer { background: var(--vk-dark); border-top: 3px solid var(--vk-primary); color: var(--vk-on-dark); }
.vk-footer h4 { color: var(--vk-primary-2); }
.vk-footer a:hover, .vk-footer__top a:hover, .vk-footer__bottom a:hover { color: var(--vk-primary-2); }
.vk-footer__top, .vk-footer__bottom, .vk-footer__note { border-color: var(--vk-dark-line); }
.vk-footer__head p { color: var(--vk-primary-2); }

/* Homepage hero image set in the Enfold Layout Builder (Background > Image): show it exactly as uploaded. */
body.vk-site .vk-hero--home[style*="background-image"] { background-size: cover; background-position: center; }
body.vk-site .vk-hero--home[style*="background-image"]::before,
body.vk-site .vk-hero--home[style*="background-image"]::after,
body.vk-site .vk-hero--home:has(.av-parallax)::before,
body.vk-site .vk-hero--home:has(.av-parallax)::after { display: none; }

/* Practice area cards that are only partly in view are dimmed by vk-kit.js; hovering one brings it back. */
body.vk-site .vk-card { transition: opacity .2s ease; }
body.vk-site .vk-card:hover { opacity: 1 !important; }
@media (prefers-reduced-motion: reduce) { body.vk-site .vk-card { transition: none; } }

/* Practice area cards: big photo banner, grid layout, hidden empty section */
body.vk-site .vk-card--photo::before { display: none; }
body.vk-site .vk-card__img { display: block; width: 100%; height: 300px; object-fit: cover; margin: 0 0 22px; }
@media (max-width: 640px) {
	body.vk-site .vk-card::before { height: 220px; }
	body.vk-site .vk-card__img { height: 220px; }
}
body.vk-site .vk-carousel--grid .vk-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; overflow: visible; scroll-snap-type: none; padding: 0; }
body.vk-site .vk-carousel--grid .vk-card { flex: none; min-width: 0; opacity: 1; }
@media (max-width: 991.98px) { body.vk-site .vk-carousel--grid .vk-cards { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 640px) { body.vk-site .vk-carousel--grid .vk-cards { grid-template-columns: 1fr; } }
body.vk-site .vk-areas-section:has(.vk-areas-empty) { display: none; }
