/*!
Theme Name: ABK
Author: Vakarchuk
Author URI: https://vakarchuk.pro/
Description: Custom Theme
Version: 1.0.0
Text Domain: abk
Tags: custom-theme
*/

:root{
	--primary: #B9A58D;
    --primary-hover: #937E65;
    --text: #414559;    
    --btn-bg: #2F343E;
    --dark: #1F2129;
    --gray: #87879B;
}

@font-face {
	font-family: 'Kyiv Type Serif';
	src: url('./fonts/KyivTypeSerif-Regular.woff2') format('woff2'),
	     url('./fonts/KyivTypeSerif-Regular.woff') format('woff'),
	     url('./fonts/KyivTypeSerif-Regular.ttf') format('truetype');
	font-weight: 400;
	font-style: normal;
}
@font-face {
	font-family: 'Kyiv Type Serif';
	src: url('./fonts/KyivTypeSerif-Medium.woff2') format('woff2'),
	     url('./fonts/KyivTypeSerif-Medium.woff') format('woff'),
	     url('./fonts/KyivTypeSerif-Medium.ttf') format('truetype');
	font-weight: 500;
	font-style: normal;
}
@font-face {
	font-family: 'Kyiv Type Titling';
	src: url('./fonts/KyivTypeTitling-Regular.woff2') format('woff2'),
	     url('./fonts/KyivTypeTitling-Regular.woff') format('woff'),
	     url('./fonts/KyivTypeTitling-Regular.ttf') format('truetype');
	font-weight: 400;
	font-style: normal;
}
@font-face {
	font-family: 'Kyiv Type Titling';
	src: url('./fonts/KyivTypeTitling-Medium.woff2') format('woff2'),
	     url('./fonts/KyivTypeTitling-Medium.woff') format('woff'),
	     url('./fonts/KyivTypeTitling-Medium.ttf') format('truetype');
	font-weight: 500;
	font-style: normal;
}

@font-face {
  font-family: 'icomoon';
  src:
    url('./fonts/icomoon.ttf?t6mzcz') format('truetype'),
    url('./fonts/icomoon.woff?t6mzcz') format('woff'),
    url('./fonts/icomoon.svg?t6mzcz#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="ico-"], [class*=" ico-"] {
  font-family: 'icomoon' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.ico-close:before { content: "\e900";}
.ico-menu:before { content: "\e901";}
.ico-map:before { content: "\e902";}
.ico-user:before { content: "\e903";}
.ico-facebook:before { content: "\e904";}
.ico-viber:before { content: "\e905";}
.ico-telegram:before { content: "\e906";}
.ico-phone:before { content: "\e907";}
.ico-calendar:before { content: "\e908";}
.ico-arrow:before { content: "\e909";}
.ico-mail:before { content: "\e90a";}
.ico-check:before { content: "\e90b";}
.ico-warning:before { content: "\e90c";}

.ico-rotate { display: inline-block; transform:rotate(180deg);}

.kyiv-serif { font-family: 'Kyiv Type Serif';}
.kyiv-titling { font-family: 'Kyiv Type Titling';}

body { background: #FAF9FE; font-family: 'Open Sans', serif; color:var(--text); font-size:16px; line-height: 24px; letter-spacing: 0.02em;}
#wrapper { width:100%; min-width:320px; position:relative; overflow:hidden; min-height:100vh; padding-top: 84px;}
.container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl { padding-left:30px; padding-right:30px;}
.container, .container-lg, .container-md, .container-sm, .container-xl { max-width: 1200px;}
.container-small { max-width: 812px;}

a { color:inherit; text-decoration: none; transition: all 0.2s ease;}
a:hover { color:inherit; text-decoration: none;}
h1, h2, h3, h4, h5, h6 { font-family: 'Kyiv Type Serif'; font-weight:500; margin: 0 0 24px;}
h1, .section-title { font-size: 36px; line-height:42px; margin-bottom: 28px; text-align: center; text-transform: uppercase;}
h2 { font-size:24px; line-height: 28px; text-transform: uppercase; letter-spacing: 0.19em; margin-bottom: 28px;}
h3 { font-size:22px; line-height: 24px;}
h4 { font-size: 20px; line-height: 24px;}
h5 { font-size: 18px; line-height: 24px;}
h6 { font-size: 16px; line-height:24px;}
img { max-width: 100%; height: auto;}

.row { margin-left: -12px; margin-right: -12px;}
.col, [class^="col-"], [class*=" col-"] { padding-left: 12px; padding-right: 12px;}

/* header */
.page-header { background: var(--dark); color:white; padding: 0; border-bottom:1px solid #272934;}
.page-header>.container { height: 83px;}
.navbar-brand { padding: 0; margin: 0; width: 117px;}
.page-header .navbar-brand { margin-right: 18px;}
@media (min-width: 1200px) {
    #navi { margin-right:135px;}
}
.main-menu li, .footer-menu li { margin: 0 16px;}
.main-menu li a, .footer-menu li a { display: block; position: relative; font-family: 'Kyiv Type Serif'; font-size: 14px; line-height: 24px; padding: 4px 0; text-transform: uppercase;}
.main-menu li.active>a, .main-menu li a:hover, .footer-menu li.active>a, .footer-menu li a:hover { color:var(--primary);}
.main-menu li a:before { content:''; display: block; position: absolute; left:0; bottom:-25px; width:0; height: 2px; background: var(--primary); transition: all 0.2s ease;}
.main-menu li.active>a:before, .main-menu li a:hover:before { width: 100%;}
.navbar-toggler { background:none; border:none; color:#fff; font-size:24px; line-height:24px; padding:4px; border-radius:0; box-shadow:none;}
.navbar-toggler:focus { box-shadow: none;}
.header-contacts { border-top:1px solid rgba(255,255,255,0.1); padding: 16px 0 30px;}
.contact-item { padding: 14px 0 14px 62px; max-width: 372px;}
.contact-item .contact-label { font-size: 16px; line-height: 32px; font-weight: 500; letter-spacing: 0.12em; color:var(--primary-hover); margin-bottom: 6px;}
.contact-item .contact-info { position: relative; font-size: 20px; line-height: 32px; padding: 3px 0; font-weight: 500; color:var(--btn-bg);}
.contact-item .contact-info a { text-decoration: underline;}
.contact-item .contact-info a:hover { color:var(--primary-hover);}
.contact-item .contact-info .ico { display: block; font-size: 38px; position: absolute; left:-62px; top:50%; transform:translateY(-50%); color:var(--primary-hover);}
.header-contacts .contact-item { margin: 0 auto;}
.header-contacts .contact-item .contact-info { color:#fff;}

/* home */
.home-hero-content { position: relative; color:#fff; z-index: 1; padding: 50px 0 114px;}
.home-hero-content:before { content:''; display: block; position: absolute; left:0; top:-1px; width: 100%; height: 105%; background: url('./img/home-bg.jpg') no-repeat center; background-size:cover; clip-path: polygon(0 0, 100% 0, 100% 65%, 0 100%);}
.home-hero-content .container { position: relative; z-index: 2;}
.home-heading { text-align: center;}
.home-heading .site-name { color:var(--primary); letter-spacing: 0.12em; margin-bottom: 40px;}
.home-hero-content .hero-block { padding-top: 64px; text-align: center;}
.home-hero-content .hero-text { position: relative; font-size: 24px; line-height: 34px; padding: 56px 11% 25px;}
.home-hero-content .hero-text:before, .home-hero-content .hero-text:after { display: block; position: absolute; font-size: 169px; line-height: 200px; color:var(--primary); letter-spacing: 0;}
.home-hero-content .hero-text:before { content:'“'; left:0; top:-28px;}
.home-hero-content .hero-text:after { content:'”'; right:0; bottom:-100px;}
.home-hero-content .hero-leader { display: inline-block; text-align: left; margin-left: 20px;}
.home-hero-content .leader-name { font-size: 53px; line-height: 64px; font-weight: 500; letter-spacing: 0;}
.leader-position { font-size: 20px; line-height: 32px; margin-top: 9px;}
.home-hero-content .leader-signature { text-align: right; margin-top: 13px;}
.home-hero-content .leader-signature img { height: 70px; width: auto;}
.leader-photo { max-width: 472px; margin-left: auto; margin-right: auto;}
.home-hero-content .hero-scroll { display: block; position: absolute; left:50%; transform:translateX(-50%); bottom:24px;}

/* content */
.section { padding: 70px 0;}
.dark-section { background: #252A35; color:#fff;}
.buttons-more { margin-top: 46px;}
.btn { box-shadow: none !important; background: var(--btn-bg); color:#fff; font-size: 15px; line-height: 32px; border:none; border-radius: 3px; padding: 12px 24px;}
.btn:hover { background: var(--primary-hover); color:#fff;}
.item-thumb { display: block; position: relative;}
.item-thumb img { display: block; position: absolute; left:0; top:0; width: 100%; height: 100%; object-fit: cover; object-position: center;}
.item-date { font-family: 'Kyiv Type Serif'; font-size: 14px; line-height: 32px; font-weight:500; color:var(--gray); text-transform: lowercase;}
.item-date .ico { display: inline-block; vertical-align: top; font-size: 16px; line-height: 32px; margin-right: 10px;}
.page-heading { display: flex; align-items: center; position: relative; text-align: center; padding: 50px 0; min-height: 310px; background-position: center center; background-repeat: no-repeat; background-size: cover;}
.page-heading:before { content:''; display: block; position: absolute; z-index: 1; left:0; top:0; width: 100%; height: 100%; background: rgba(18,21,27,0.8); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px);}
.page-heading .container { position: relative; z-index: 2;}
.page-heading .page-title, .home-heading .page-title, .section-heading .section-title { display: flex; align-items: center; margin: 0;}
.page-heading .page-title, .home-heading .page-title { color:#fff;}
.page-heading .page-title, .section-heading .section-title { letter-spacing: 0.32em;}
.page-heading .page-title span, .section-heading .section-title span { flex-shrink: 0; max-width: 80%; padding: 0 48px;}
.home-heading .page-title { letter-spacing: 0.06em;}
.home-heading .page-title span { flex-shrink: 0; padding: 0 36px;}
.page-heading .page-title:before, .page-heading .page-title:after, .home-heading .page-title:before, .home-heading .page-title:after, .section-heading .section-title:before, .section-heading .section-title:after { content:''; display: block; flex-basis: 100%; height: 1px; background: rgba(255,255,255,0.1);}
.section-heading .section-title:before, .section-heading .section-title:after { background: rgba(0,0,0,0.1);}
.page-heading .page-subtitle, .section-heading .section-subtitle { font-size: 24px; line-height: 28px; margin-top: 48px;}
.page-heading .page-subtitle, .dark-section .section-heading .section-subtitle { color:var(--primary);}
.section-heading { text-align: center; margin-bottom: 70px;}
.section-heading .section-title { color:#252A35;}
.dark-section .section-heading .section-title { color:#fff;}
.dark-section .section-heading .section-title:before, .dark-section .section-heading .section-title:after { background: rgba(255,255,255,0.1);}
.main-content { padding: 40px 0;}
.main-content.single-content { padding-top: 60px;}
.single-heading { text-align: center; margin-bottom: 42px;}
.single-heading h1 { font-size: 40px; line-height: 56px; text-transform: none; letter-spacing: 0.06em; margin-bottom: 12px;}
.single-heading .item-date { color:var(--primary-hover); padding-top: 13px; position: relative; max-width: 296px; margin: 0 auto; border-top:1px solid rgba(42,41,42,0.1);}
.entry-content { font-size: 18px; line-height: 32px;}
.entry-content p { margin-bottom: 28px;}
.entry-content ul, .entry-content ol { margin-bottom: 28px;}
.entry-content a { text-decoration: underline;}
.entry-content a:hover { color:var(--primary);}
.entry-content .btn { text-decoration: none;}
.entry-content img { display: block; margin-top: 40px; margin-bottom: 40px;}
.content-gallery { margin-top: 40px; margin-bottom: 16px;}
.content-gallery .gallery-item { display: block; position: relative; height: 250px; margin-bottom: 24px;}
.content-gallery-4 .gallery-item { height:238px;}
.content-gallery .gallery-item img { display: block; position: absolute; left:0; top:0; width: 100%; height: 100%; object-fit: cover; object-position:center; margin: 0;}
.entry-content.entry-content-small { font-size: 14px; line-height: 24px;}
.entry-content-small p, .entry-content-small ul, .entry-content-small ol { margin-bottom: 24px;}
.entry-content-small img { margin-top: 30px; margin-bottom: 30px;}
.entry-content>p:first-child img, .entry-content>a:first-child img, .entry-content>:first-child { margin-top: 0;}

.btn-more { display: inline-block; font-size: 13px; line-height: 20px; padding: 12px 24px; border-radius: 2px; text-align: center; text-decoration: none; transition: all 0.3s ease;}
.btn-more-2 { color:var(--text); border:1px solid var(--text);}
.btn-more-2:hover { background:var(--text); color:#fff;}
.btn-more-1 { background: rgba(245, 241, 237, 0.25); color:#fff; border:1px solid transparent; padding: 13px 16px; font-weight: 600;}
.btn-more-3 { color:rgba(255,255,255,0.7); border:1px solid rgba(255,255,255,0.7); padding: 13px 16px; font-weight: 600;}
.btn-more-1:hover, .btn-more-3:hover { background:#F5F1ED; border-color:transparent; color:#2A292A;}

/* news */
.news-item { background: #fff; color:var(--text); margin: 0 0 24px; box-shadow: 0px 10px 20px 0px rgba(0,0,0,0.06);}
.news-item .item-thumb { height: 100%; min-height: 380px;}
.news-item .item-entry { padding: 24px 0;}
.news-item .item-tags, .news-item .item-title, .news-item .item-date { margin-bottom: 16px;}
.news-item .item-tags { line-height: 20px; color:var(--primary); font-weight: 500;}
.news-item .item-title { font-size: 36px; line-height: 42px; letter-spacing: 0; font-weight: 500;}
.news-item .item-excerpt { line-height: 28px; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis;}
.news-item .item-excerpt > :last-child { margin-bottom: 0;}
.news-item .item-more { margin-top: 16px;}
.news-item.news-item-grid .item-thumb { padding-bottom: 62.64%; height:auto; min-height:220px;}
.news-item.news-item-grid .item-entry { padding: 24px;}
.news-item.news-item-grid .item-tags, .news-item.news-item-grid .item-title, .news-item.news-item-grid .item-date { margin-bottom: 10px;}
.news-item.news-item-grid .item-title { font-size: 28px; line-height: 34px;}
.news-item.news-item-grid .item-date, .news-item.news-item-grid .item-date .ico { line-height: 24px;} 
.news-item.news-item-grid .item-excerpt { font-size: 14px; line-height: 24px;}
.news-item.news-item-grid .item-more { margin-top: 16px;}
.ico-prev, .ico-next { display: inline-block; width: 24px; height: 24px; position: relative;}
.ico-prev:before, .ico-next:before { content:''; display: block; position: absolute; left:50%; top:50%; width: 12px; height: 12px; border:1px solid currentColor; border-width: 1px 1px 0 0;}
.ico-prev:before { transform:translate(-50%,-50%) rotate(-135deg); margin-left: 4px;}
.ico-next:before { transform:translate(-50%,-50%) rotate(45deg); margin-left: -4px;}
.pagination-wrap { margin-top: 46px;}
.pagination { justify-content: center; flex-wrap:wrap; margin: 0 -5px 10px;}
.pagination .page-item { margin: 0 5px 10px;}
.page-item:not(:first-child) .page-numbers { margin-left: 0;}
.pagination .page-numbers { display: block; width: 56px; height: 56px; color:var(--text); background-color:transparent; border: 1px solid var(--text); margin: 0; border-radius: 2px !important; box-shadow: none; font-size: 15px; line-height: 24px; padding: 15px 5px; text-align: center;}
.pagination .active .page-numbers, .pagination .page-numbers.current { background-color: var(--btn-bg); border-color:var(--btn-bg); color:#fff;}
.pagination a.page-numbers:hover { background-color:var(--text); border-color:var(--text); color:#fff;}
.pagination a.page-numbers:active { background-color:var(--dark); border-color:var(--text); color:#fff;}
.pagination .page-item.disabled .page-numbers { color:var(--text); background-color: #fff; border-color:var(--text); opacity: 0.4;}

/* news carousel */
.owl-stage { display: flex;}
.slide-item { height: 100%;}
.slide-item .news-item { margin: 0; height: 100%;}
.owl-carousel .owl-nav button.owl-prev, .owl-carousel .owl-nav button.owl-next { position: absolute; top:50%; transform:translateY(-50%); width: 56px; height: 60px; background: rgba(0,0,0,0.3); border-radius: 3px; color:#fff; font-size:8px; text-align: center; line-height: 60px;}
.owl-carousel .owl-nav button.owl-prev { left:-40px;}
.owl-carousel .owl-nav button.owl-next { right:-40px;}
.owl-carousel .owl-nav button.owl-prev:hover, .owl-carousel .owl-nav button.owl-next:hover { background: rgba(0,0,0,0.6);}
.owl-carousel .owl-dots { display: flex; justify-content: center; margin-top: 44px;}
.owl-carousel button.owl-dot { padding: 4px !important;}
.owl-carousel button.owl-dot span { display: block; width: 8px; height: 8px; background: #d9d9d9; border-radius: 50%;}
.owl-carousel button.owl-dot.active span, .owl-carousel button.owl-dot:hover span { background: #746E80;}

/* practice */
.practice-item { position: relative; min-height: 373px; height: calc(100% - 24px); color:#fff; padding: 24px; margin-bottom: 24px; border-radius: 4px; box-shadow: 0px 10px 20px 0px rgba(0,0,0,0.06);}
.practice-item .item-thumb { position: absolute; left:0; top:0; width: 100%; height: 100%; border-radius: 4px; overflow: hidden; background: #1f2129;}
.practice-item .item-inner { display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; position: relative; height: 100%; padding: 8px; border-radius: 0 20px 0 20px; background: rgba(0,0,0,0.2); backdrop-filter: blur(29px); -webkit-backdrop-filter: blur(29px); z-index: 2;}
.practice-item .item-title { font-size: 30px; line-height: 36px; font-weight: 500; margin: 0;}
.practice-item .item-more { width: 100%; margin: 18px 8px 0; padding-top:18px; border-top:1px solid rgba(255,255,255,0.1);}
.home-practice-list .practice-item .item-thumb:before { content:''; display: block; position: absolute; left:0; top:0; width: 100%; height: 100%; background: rgba(0,0,0,0.5); z-index: 1;}
.home-practice-list .practice-item .item-inner { background: none; backdrop-filter:none; -webkit-backdrop-filter:none; border-radius:0;}
.home-practice-list .practice-item .item-more { border-top:1px solid rgba(255,255,255,0.2);}
.home-practice-list .btn-more-3 { background: rgba(245, 241, 237, 0.25); color:#fff; border:1px solid transparent; padding: 13px 16px; font-weight: 600;}
.home-practice-list .btn-more-3:hover { background:#F5F1ED; border-color:transparent; color:#2A292A;}

/* lawyers */
.leader-section { padding: 70px 0;}
.leader-heading { position: relative; padding-bottom: 32px; margin-bottom: 32px;}
.leader-heading h2 { font-size: 48px; line-height: 58px; margin: 0; text-transform: none; letter-spacing: 0;}
.leader-heading .leader-position { color:var(--primary-hover);}
.leader-heading:after { content:''; display: block; position: absolute; left:0; bottom:0; width: 100%; max-width: 338px; height: 1px; background: rgba(70, 65, 89, 0.1);}
.entry-content.leader-text { font-size:16px;}
.lawyer-item { text-align: center; padding: 28px 18px 24px; max-width: 380px; margin:0 auto 24px;}
.lawyer-item .item-thumb { height: auto; padding-bottom: 100%; overflow: hidden; border-radius: 80px 4px 80px 4px; margin-bottom: 44px;}
.lawyer-item .item-thumb img { border-radius: 80px 4px 80px 4px; transform:scale(1); transition:all 0.2s ease;}
.lawyer-item .item-thumb:hover img { transform:scale(1.05);}
.lawyer-item .item-entry { padding: 0 6px;}
.lawyer-item .item-caption { position: relative; padding-bottom: 16px;}
.lawyer-item .item-caption:after { content:''; display: block; position: absolute; left:50%; bottom:0; transform:translateX(-50%); width: 175px; max-width:100%; height: 1px; background: rgba(70, 65, 89, 0.1);}
.lawyer-item .item-title { font-size: 32px; line-height: 38px; font-weight: 500; margin: 0;}
.lawyer-item .item-position { line-height: 20px; margin-top: 16px; font-weight: 500; color:var(--primary-hover);}
.lawyer-item .item-info { margin-top: 16px;}

/* contacts */
.white-box { background: #fff; padding: 48px; border-radius: 4px; box-shadow: 0px 20px 40px 0px rgba(0,0,0,0.06);}
.box-caption { position: relative; text-align: center; padding-bottom: 28px; margin-bottom: 28px;}
.box-caption h2 { margin: 0;}
.box-caption .subtitle { font-size: 18px; line-height: 24px; color:var(--primary-hover); margin-top: 28px;}
.box-caption:after { content:''; display: block; position: absolute; left:50%; transform:translateX(-50%); bottom:0; width: 100%; max-width: 184px; height: 1px; background: rgba(70, 65, 89, 0.1);}
.contacts-form-inner { max-width: 410px; margin: 0 auto;}
.form-group { margin-bottom: 28px;}
.form-group .form-label { font-size:16px; line-height: 24px; font-family: 'Kyiv Type Serif'; margin-bottom: 0;}
.form-control { font-family: 'Kyiv Type Serif'; padding:16px 0 15px 0; color:var(--text); border:none; border-bottom:1px solid rgba(70, 65, 89, 0.1);}
textarea.form-control { height:106px;}
.form-control:focus { color:var(--text); border-color:rgba(70, 65, 89, 0.1); box-shadow: none;}
.input-group .form-control { padding-right: 45px; padding-left: 40px;}
.input-group-text, .input-group-check { position: absolute; left:0; top:16px; padding: 0; font-size:24px; line-height: 24px; color:var(--primary); background:none; border:none; border-radius: 0; z-index: 4;}
.input-group-check { display: none; left:auto; right:12px; text-align: center; width: 24px;}
.form-control:focus ~ .input-group-text { color:var(--primary-hover);}
.form-control.valid ~ .input-group-check { display: block; font-size: 10px; color:#88865A;}
.form-control.error ~ .input-group-check { display: block; font-size: 15px; color:#A61111;}
.form-control.error ~ .input-group-check .ico:before { content: "\e90c";}
.input-group-text.input-group-check { left:auto; right:0;}
.form-group label.error { width: 100%; order:1; color:#A61111; font-family: 'Kyiv Type Serif';}
.map-wrapper { position: relative; height: 378px;}
.map-wrapper iframe, .map-wrapper img { display: block; position: absolute; left:0; top:0; width: 100%; height: 100%; margin: 0; object-fit: cover; object-position:center;}

/* footer */
.pre-footer { background: #21252F; color:#fff; padding: 26px 0 29px;}
.pf-phone, .pf-email { padding: 9px 0; font-size: 20px; line-height: 32px; letter-spacing: 0.06em;}
.pf-phone .ico, .pf-email .ico { display: inline-block; color:var(--primary); font-size: 24px; line-height: 30px; padding-top: 2px; margin-right: 10px; vertical-align: top;}
.pf-email .ico { line-height: 28px; padding-top: 4px;}
.pf-email a { color:var(--primary); text-decoration: underline;}
.pf-phone a:hover, .pf-email a:hover { color:var(--primary); text-decoration: none;}
.page-footer { background: #1A1B22; color:#fff; text-align: center; padding: 27px 0 21px;}
.footer-menu { border-top:1px solid rgba(255,255,255,0.15); margin-top: 35px; padding: 32px 0 24px;}
.copyright { line-height: 32px; color:var(--gray); margin-top: 24px;}

@media (max-width: 991px) {
    #navi { justify-content: flex-end;}
    .main-menu li { margin: 0 8px;}
    .main-menu li a { font-size: 13px;}
    
    .home-hero-content { padding: 50px 0 30px;}
    .home-hero-content:before { clip-path: polygon(0 0, 100% 0, 100% 80%, 0 95%);}
    .home-heading .page-title span { flex-shrink: 1; min-width: 400px;}
    .home-hero-content .hero-block { padding-top: 26px;}
    .home-hero-content .hero-text { padding: 56px 40px;}
    .home-hero-content .hero-text:before, .home-hero-content .hero-text:after { font-size: 128px; line-height:142px;}
    .home-hero-content .hero-text:before { top:-10px;}
    .home-hero-content .hero-text:after { bottom:-10px;}
    .home-hero-content .hero-leader { display: block; margin-left:0;}
    .home-hero-content .leader-name { font-size: 40px; line-height: 48px;}
    .home-hero-content .leader-signature { margin-top: 24px;}
    .home-hero-content .leader-photo { margin-top: 54px;}
    .home-hero-content .hero-scroll { display: none;}
    
    .owl-stage-outer { margin-left: -30px; margin-right: -30px; padding-left: 30px; padding-right: 30px;}
    .news-carousel { padding-top:60px;}
    .news-carousel .owl-nav { display: flex; justify-content: center; position: absolute; left:0; top:-20px; width: 100%;}
    .news-carousel .owl-nav button.owl-prev, .news-carousel .owl-nav button.owl-next { position: relative; top:auto; transform:none; left:auto; right:auto;  margin: 0 12px;}
    
    .leader-section { padding: 30px 0 60px;}
    .leader-section .leader-photo { margin-top: 30px;}
}
@media (max-width: 767px) {
    .page-header .navbar-brand { margin: 0; position: absolute; left:50%; top:50%; transform:translate(-50%,-50%);}
    #navi { position: fixed; top:83px; left:0; width: 100%; height: calc(100% - 83px); background: var(--dark); overflow: auto;}
    .navi-inner { padding: 0 30px;}
    .main-menu { border-top:1px solid rgba(255,255,255,0.1); text-align: center; padding: 30px 0;}
    .main-menu li { padding: 20px 0; margin: 0;}
    .main-menu li a { font-size: 24px; line-height: 32px; padding: 10px 0;}
    .main-menu li a:before { display: none;}
    
    h1, .section-title { font-size: 32px;}
    .page-heading .page-title span, .section-heading .section-title span { padding: 0 24px;}
    .page-heading .page-subtitle, .section-heading .section-subtitle { font-size: 20px;}
    .home-heading .page-title span { min-width: 380px;}
    
    .single-heading h1 { font-size: 36px; line-height: 48px; margin-bottom: 16px;}
    .single-heading .item-date { padding-top: 16px;}
    .entry-content img, .content-gallery { margin-top: 30px; margin-bottom: 30px;}
    
    .news-item { margin-bottom:40px;}
    .news-item .col-thumb { padding-right: 0; padding-left: 0;}
    .news-item .item-thumb { height: 320px; min-height: 320px;}
    .news-item .item-entry { padding: 24px 12px;}
    .pagination-wrap { margin-top: 30px;}
    .owl-carousel .owl-dots { margin-top: 36px;}
    
    .lawyer-item { padding-bottom: 16px;}
    
    .white-box { padding: 48px 32px;}
    .map-wrapper { height:600px;}
    
    .pre-footer { padding: 21px 0 31px;}
    .page-footer { padding-bottom: 32px;}
    .footer-menu { padding: 48px 0 24px;}
    .footer-menu li { padding: 12px 0;}
}
@media (max-width: 460px) {
    .container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl { padding-left:6.25vw; padding-right:6.25vw;}
    .owl-stage-outer { margin-left: -6.25vw; margin-right: -6.25vw; padding-left:6.25vw; padding-right:6.25vw;}
    
    .main-menu li { padding: 16px 0;}
    .main-menu li a { font-size: 20px; line-height: 28px;}
    .contact-item { padding-left: 54px;}
    .contact-item .contact-info .ico { left:-54px;}
    .contact-item .contact-info { font-size: 18px;}
    
    .page-heading .page-subtitle, .section-heading .section-subtitle { margin-top: 40px;}
    .home-hero-content { padding-bottom:0;}
    .home-hero-content:before { clip-path: polygon(0 0, 100% 0, 100% 85%, 0 95%);}
    .home-heading .page-title span { min-width: 280px;}
    .home-hero-content .hero-text { font-size: 20px; line-height: 28px;}
    .home-hero-content .leader-name { font-size: 32px; line-height: 36px;}
    
    .page-title, .section-title { font-size: 24px;}
    .entry-content { font-size: 16px; line-height: 28px;}
    
    .news-item .item-title { font-size: 24px; line-height:30px;}
    .news-item .item-excerpt { font-size: 14px; line-height: 24px;}
    
    .practice-item { min-height: 358px;}
    .practice-item .item-title { font-size: 24px; line-height: 30px;}
    
    .lawyer-item .item-thumb { margin-bottom: 36px;}
    .lawyer-item .item-entry { padding: 0;}
    .lawyer-item .item-title { font-size: 24px; line-height: 32px;}
    
    .pf-phone, .pf-email { font-size: 16px;}
}