@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 300;
	font-display: swap;
	src: url('fonts/OpenSans-Light.woff2') format('woff2'),
		url('fonts/OpenSans-Light.woff') format('woff');
}
@font-face {
	font-family: 'Open Sans';
	font-style: italic;
	font-weight: 300;
	font-display: swap;
	src: url('fonts/OpenSans-LightItalic.woff2') format('woff2'),
		url('fonts/OpenSans-LightItalic.woff') format('woff');
}
@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('fonts/OpenSans-Regular.woff2') format('woff2'),
		url('fonts/OpenSans-Regular.woff') format('woff');
}
@font-face {
	font-family: 'Open Sans';
	font-style: italic;
	font-weight: 400;
	font-display: swap;
	src: url('fonts/OpenSans-Italic.woff2') format('woff2'),
		url('fonts/OpenSans-Italic.woff') format('woff');
}
@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url('fonts/OpenSans-SemiBold.woff2') format('woff2'),
		url('fonts/OpenSans-SemiBold.woff') format('woff');
}
@font-face {
	font-family: 'Open Sans';
	font-style: italic;
	font-weight: 600;
	font-display: swap;
	src: url('fonts/OpenSans-SemiBoldItalic.woff2') format('woff2'),
		url('fonts/OpenSans-SemiBoldItalic.woff') format('woff');
}
@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url('fonts/OpenSans-Bold.woff2') format('woff2'),
		url('fonts/OpenSans-Bold.woff') format('woff');
}
@font-face {
	font-family: 'Open Sans';
	font-style: italic;
	font-weight: 700;
	font-display: swap;
	src: url('fonts/OpenSans-BoldItalic.woff2') format('woff2'),
		url('fonts/OpenSans-BoldItalic.woff') format('woff');
}
@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 800;
	font-display: swap;
	src: url('fonts/OpenSans-ExtraBold.woff2') format('woff2'),
		url('fonts/OpenSans-ExtraBold.woff') format('woff');
}
@font-face {
	font-family: 'Open Sans';
	font-style: italic;
	font-weight: 800;
	font-display: swap;
	src: url('fonts/OpenSans-ExtraBoldItalic.woff2') format('woff2'),
		url('fonts/OpenSans-ExtraBoldItalic.woff') format('woff');
}

body  {
	font-display: swap;
	background-color:#fff;
	font-family:'Open Sans',sans-serif;
	display: flex;
	flex-direction: column;
	margin: 0;
	overflow-x: hidden
}

.clear {
	width:100%;
	display:block;
	clear:both
}

p {
	margin-bottom:15px
}

img {
	max-width:100%;
	height:auto
}

ul {
	margin:0;
	padding:0
}

a {
	text-decoration:none
}

body.admin-bar:not(.custom-background-image)::before,
body:not(.custom-background-image)::after,
body:not(.custom-background-image)::before {
	display:none!important
}

.site,
.site-content {
	margin:0;
	float:none;
	padding:0;
	width:100%
}

#page {
	padding-top:100px;
}

.web-container {
	width:100%;
	max-width:1200px;
	margin:0 auto
}

.property-switch {
	padding:32px 16px 20px;
	background-color:#e8e9e4;
}

.property-switch-grid {
	display:grid;
	grid-template-columns:1fr auto 1fr;
	align-items:center;
	gap:clamp(8px, 2.5vw, 16px);
	max-width:520px;
	margin:0 auto;
}

.property-switch-link {
	position:relative;
	display:flex;
	align-items:center;
	justify-content:center;
	padding:18px 16px;
	font-family:'Open Sans';
	font-size:clamp(13px, 3.8vw, 19px);
	font-weight:700;
	text-align:center;
	color:#073d66;
	text-decoration:none;
	white-space:nowrap;
	background-color:#e8eff4;
	border-radius:999px;
	border:2px solid #b7c8d4;
	box-shadow:0 4px 12px rgba(7,61,102,.2);
	transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .15s ease,box-shadow .2s ease;
}

.property-switch-link:hover,
.property-switch-link:focus {
	border-color:#a94239;
	transform:translateY(-3px) scale(1.03);
	box-shadow:0 8px 18px rgba(7,61,102,.3);
}

.property-switch-link.is-active {
	background:#a94239;
	color:#fff;
	border-color:#a94239;
	box-shadow:0 4px 14px rgba(169,66,57,.45);
	cursor:default;
}

.property-switch-link.is-active::after {
	content:"";
	position:absolute;
	top:calc(100% + 14px);
	left:0;
	width:100%;
	height:6px;
	border-radius:3px;
	background-color:#a94239;
}

.property-switch-link.is-active:hover,
.property-switch-link.is-active:focus {
	transform:none;
	box-shadow:0 4px 14px rgba(169,66,57,.45);
}

.property-switch-or {
	display:flex;
	align-items:center;
	justify-content:center;
	font-family:'Open Sans';
	font-size:clamp(13px, 3.2vw, 16px);
	font-weight:800;
	letter-spacing:.08em;
	color:#073d66;
	white-space:nowrap;
}

.page-intro {
	padding:60px 0 40px;
	background-color:#fff;
}

.page-intro h1 {
	text-align:center;
	font-weight:600;
	text-transform:uppercase;
	font-size:38px;
	line-height:1.15;
	color:#073d66;
	margin:0 0 20px;
}

.page-intro .intro-lead {
	max-width:820px;
	margin:0 auto;
	text-align:center;
	font-size:18px;
	line-height:28px;
	color:#555;
}

.page-section {
	padding:60px 0;
	background-color:#e8e9e4;
}

.page-section h2 {
	max-width:820px;
	margin:0 auto 24px;
}

.content-prose {
	max-width:820px;
	margin:0 auto;
	font-size:16px;
	line-height:26px;
	color:#444;
}

.content-prose p {
	margin-bottom:18px;
}

.content-prose h3 {
	color:#073d66;
	font-size:20px;
	line-height:26px;
	font-weight:700;
	margin:8px 0 16px;
}

.content-callout {
	background:#fff;
	border-left:4px solid #a94239;
	border-radius:4px;
	padding:18px 22px;
	margin:24px auto 0;
	max-width:820px;
	box-shadow:0 2px 10px rgba(0,0,0,.06);
	font-size:15px;
	line-height:24px;
	color:#444;
}

.content-cta {
	max-width:820px;
	margin:24px auto 0;
	text-align:center;
	font-size:16px;
	line-height:26px;
	color:#073d66;
	font-weight:700;
}

.content-cta a {
	color:#a94239;
}

.content-cta-or {
	max-width:820px;
	margin:8px auto 0;
	text-align:center;
	font-size:14px;
	line-height:20px;
	color:#888;
}

.content-alt-cta {
	max-width:820px;
	margin:8px auto 0;
	text-align:center;
}

.content-alt-cta .content-cta {
	margin:0 0 14px;
}

.content-alt-cta .web-button a {
	font-size:16px;
	line-height:16px;
}

.content-checklist {
	max-width:820px;
	margin:0 auto;
	padding-left:24px;
	font-size:16px;
	line-height:26px;
	color:#444;
}

.content-checklist li {
	margin-bottom:16px;
	padding-left:6px;
}

.content-checklist li:last-child {
	margin-bottom:0;
}

.faq-section {
	padding:60px 0;
	background-color:#fff;
}

.faq-group {
	max-width:820px;
	margin:0 auto 40px;
}

.faq-group:last-child {
	margin-bottom:0;
}

.faq-group h3 {
	color:#073d66;
	font-size:20px;
	line-height:26px;
	text-transform:uppercase;
	letter-spacing:.03em;
	font-weight:700;
	margin:0 0 16px;
}

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

.faq-item {
	background:#fff;
	border:1px solid #dedbd5;
	border-radius:8px;
	overflow:hidden;
}

.faq-item summary {
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:16px;
	padding:16px 20px;
	cursor:pointer;
	font-weight:600;
	font-size:15px;
	line-height:22px;
	color:#073d66;
	list-style:none;
}

.faq-item summary::-webkit-details-marker {
	display:none;
}

.faq-item summary::marker {
	content:"";
}

.faq-item summary:hover {
	background-color:#f7f6f4;
}

.faq-item .faq-icon {
	flex-shrink:0;
	width:20px;
	height:20px;
	color:#a94239;
	transition:transform .2s ease;
}

.faq-item[open] .faq-icon {
	transform:rotate(180deg);
}

.faq-item[open] summary {
	border-bottom:1px solid #eee;
}

.faq-item .faq-answer {
	margin:0;
	padding:16px 20px 18px;
	font-size:15px;
	line-height:24px;
	color:#555;
}

.faq-item .faq-answer p {
	margin:0 0 10px;
}

.faq-item .faq-answer ul {
	list-style:disc;
	margin:0 0 10px 20px;
	padding:0;
}

.faq-item .faq-answer p:last-child,
.faq-item .faq-answer ul:last-child {
	margin-bottom:0;
}

.faq-item .faq-answer li {
	margin-bottom:6px;
}

.faq-item .faq-answer li:last-child {
	margin-bottom:0;
}

@media screen and (max-width:640px) {
	.page-intro h1 {
		font-size:28px;
	}
	.page-intro .intro-lead {
		font-size:16px;
		line-height:25px;
	}
}

.web-header {
	box-shadow:0 4px 10px rgba(0,0,0,.6);
	position:fixed;
	top:0;
	left:0;
	width:100%;
	z-index:9999
}

.web-header .top-content {
	background-color:#e9e6e6
}

.web-header .top-content .text-cont {
	text-align:right
}

.web-header .top-content a {
	background-position:left center;
	background-repeat:no-repeat;
	padding-left:30px;
	display:inline-block;
	vertical-align:middle
}

.web-header .top-content a.mail {
	font-size:14px;
	line-height:18px;
	font-weight:400;
	color:#073d66;
	background-image:url(assets/top-info-mail.png);
	margin-right:30px
}

.web-header .top-content a.mail:hover {
	color:#1f83cf
}

.web-header .top-content a.phone {
	font-size:14px;
	line-height:18px;
	color:#333;
	background-image:url(assets/top-info-phone.png);
	padding:10px 20px 10px 50px;
	background-color:#f1f1f1;
	background-position:15% center
}

.web-header .bot-content {
	position:relative;
	background-color:#f1f1f1;
	background: linear-gradient(to right, #073d66 20%, #f1f1f1 20%);
	height:71px
}

.web-header .bot-content .web-container {
	position:relative
}

.web-header .bot-content .web-container::before,
.web-header .bot-content .web-container::after {
	content:"";
	position:absolute;
	top:0;
	bottom:0;
	width:100vw
}

.web-header .bot-content .web-container::before {
	right:100%;
	background-color:#073d66
}

.web-header .bot-content .web-container::after {
	left:100%;
	background-color:#f1f1f1
}

.web-header .bot-content .left-logo-filler {
	position:absolute;
	top:0;
	left:0;
	width:max(0px, calc((100% - 1200px) / 2));
	height:71px;
	background-color:#073d66
}

.web-header .bot-content .left {
	position:relative;
	z-index:1;
	float:left;
	width:27%;
	height:71px;
	background-color:#073d66;
	display:flex;
	align-items:center;
	border-radius: 0 12px 12px 0;
	box-shadow: 3px 0 8px -3px rgba(0,0,0,.8)
}

.web-header .bot-content .left .image-cont {
	padding-top:5px
}

.web-header .bot-content .left .image-cont img {
	width:226.688px;
	height:32.625px
}

.web-header .bot-content .right {
	background-color:#f1f1f1;
	float:right;
	width:73%;
	height:71px;
	display:flex;
	align-items:center
}

.web-header .bot-content .right .menu-cont {
	height: 100%;
	flex-shrink:0;
	width:100%
}

.web-header .bot-content .right>.clear {
	display:none
}

.web-header .bot-content .right .main-navigation {
	height:100%;
	margin:0
}

.web-header .bot-content .right .main-navigation .primary-menu {
	height: 100%;
	display:flex;
	text-align:right;
	align-items:center;
	justify-content: flex-end;
}

.web-header .bot-content .right .main-navigation .primary-menu>li {
	float:none;
	display:inline-block;
	vertical-align:top
}

.web-header .bot-content .right .main-navigation .primary-menu>li.home-icon a {
	min-height: 25px;
	color:transparent!important;
	background-image:url(assets/home-icon.png);
	background-repeat:no-repeat;
	background-position:center center
}

.web-header .bot-content .right .main-navigation .primary-menu>li a {
	font-size:16px;
	line-height:20px;
	font-weight:400;
	color:#333;
	padding:0 18px;
	display:inline-block
}

.web-header .bot-content .right .main-navigation .primary-menu>li a:hover {
	color:#073d66
}

.web-header .bot-content .right .main-navigation .primary-menu>li:last-child a {
	padding-right:0
}

.web-header .bot-content .right .main-navigation .primary-menu>li a.contact-nav-btn {
	background-color:#984447;
	color:#fff;
	border-radius:999px;
	padding:8px 20px;
	margin-left:10px;
}

.web-header .bot-content .right .main-navigation .primary-menu>li a.contact-nav-btn:hover {
	background-color:#7a373a;
	color:#fff;
}

.web-header .bot-content .left .text-cont {
	padding-top:20px
}

.web-header .bot-content .right .main-navigation li.focus>ul,
.web-header .bot-content .right .main-navigation li:hover>ul {
	left:0;
	right:auto
}

.web-header .bot-content .right .main-navigation ul ul::after,
.web-header .bot-content .right .main-navigation ul ul::before {
	display:none
}

.web-header .bot-content .right .main-navigation .primary-menu>li li a {
	font-size:14px;
	line-height:18px;
	color:#666;
	font-weight:400;
	background-color:#f1f1f1;
	text-align:left;
	padding:10px 15px;
	display:block;
	box-sizing:border-box;
	border:1px solid #ddd
}

.web-header .bot-content .right .main-navigation .primary-menu>li li a:hover {
	background-color:#073d66;
	color:#fff
}

.web-header .bot-content .right .main-navigation .primary-menu>li li.sub-menu-child a {
	padding-left:32px;
	font-size:12px;
	font-style:italic;
	color:#888;
	background-color:#e8e8e8
}

.web-header .bot-content .right .main-navigation .primary-menu>li li.sub-menu-child a:hover {
	background-color:#073d66;
	color:#fff
}

.web-header .bot-content .right .main-navigation .primary-menu>li.menu-item-has-children {
	height:71px;
	display:flex;
	align-items:center
}

.web-header .bot-content .right .main-navigation .primary-menu>li.menu-item-has-children>a {
	position:relative;
	padding-right:25px
}

.web-header .bot-content .right .main-navigation .menu-item-has-children>a::after {
	content:"";
	position:absolute;
	top:50%;
	right:6px;
	transform:translateY(-50%);
	background-image:url(assets/menu-drop-icon.png);
	background-repeat:no-repeat;
	width:9px;
	height:7px
}

.web-header .bot-content .right .main-navigation .menu-item-has-children:hover a::after {
	background-image:url(assets/menu-up-icon.png)
}

.hm-section1 {
	background-repeat:no-repeat;
	border-bottom:8px solid #073d66;
	background-size:cover;
	background-position:center center
}

.hm-section1 .text-cont {
	text-align:center;
	padding:220px 0
}

.hm-section1 h1 {
	font-size:43px;
	line-height:47px;
	color:#f7f7f7;
	text-transform:uppercase;
	font-weight:600;
	margin-bottom:20px;
	text-shadow:1px 1px 5px #060606
}

.hm-section1 p {
	font-size:29px;
	line-height:33px;
	color:#f7f7f7;
	margin-bottom:30px;
	text-shadow:1px 1px 5px #060606
}

.hm-section1 .web-button {
	display:flex;
	justify-content:center;
	gap:24px
}

.hm-section1 .web-button a {
	flex:1 1 0;
	max-width:232px;
	text-align:center
}

.hm-section1 .web-button a,
.web-button a {
	background:#a94239;
	background:-moz-linear-gradient(top,#205176 0,#205176 49%,#073d66 49%,#073d66 100%);
	background:-webkit-linear-gradient(top,#205176 0,#205176 49%,#073d66 49%,#073d66 100%);
	background:linear-gradient(to bottom,#205176 0,#205176 49%,#073d66 49%,#073d66 100%);
	display:inline-block;
	box-sizing:border-box;
	color:#fff;
	font-weight:300;
	font-size:20px;
	line-height:20px;
	padding:12px 32px;
	border-radius:5px
}

.hm-section1 .web-button a:hover,
.web-button a:hover {
	background:#205176
}

.hm-section2 {
	background-color:#e8e9e4;
	padding: 35px 0 65px 0;
	scroll-margin-top: 80px;
}

.hm-section4 {
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center center;
	background-color:#e8e9e4;
	padding:50px 0
}

.hm-section2 h2,
.hm-section4 h2,
.hm-section5 h2,
.page-section h2,
.faq-section h2,
.web-cta .sec2-title h2 {
	text-align:center;
	font-weight:300;
	text-transform:uppercase;
	font-size:40px;
	line-height:44px;
	color:#666;
	margin:30px 0
}

.page-section h2 {
	text-align:left
}

.hm-section4 h2 {
	font-weight:700!important;
	color:#fff!important
}

.web-cta .sec2-title h2 {
	margin-bottom:21px
}

.hm-section4-intro {
	max-width:960px;
	margin:0 auto 40px;
	text-align:center;
	font-size:18px;
	line-height:28px;
	color:#fff;
	opacity:.85
}

.hm-section2 .list-cont ul {
	list-style:none;
	padding:0;
	margin:0;
	text-align:center
}

.hm-section2 .list-cont ul li {
	width:100%;
	max-width:270px;
	min-height:196px;
	background-repeat:no-repeat;
	background-position:center center;
	background-size:cover;
	position:relative;
	display:inline-block;
	vertical-align:top;
	margin:12px;
	border-radius:15px;
	overflow:hidden;
	transition:all .3s ease;
	-webkit-transition:all .3s ease;
	-ms-transition:all .3s ease;
	-moz-transition:all .3s ease
}

.hm-section2 .list-cont ul li:hover {
	cursor:pointer;
	box-shadow:0 0 5px rgba(0,0,0,.8)
}

.hm-section2 .list-cont ul li .tile-link {
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	z-index:2
}

.hm-section2 .list-cont ul li .cont-holder {
	position:absolute;
	top:50%;
	transform:translateY(-50%);
	width:100%;
	left:0;
	right:0;
	margin:0 auto;
	height:65px;
	box-sizing:border-box;
	transition:all .3s ease;
	-webkit-transition:all .3s ease;
	-ms-transition:all .3s ease;
	-moz-transition:all .3s ease;
	display:flex;
	align-items:center;
	justify-content:center;
	background:rgba(255,255,255,.56)
}

.hm-section2 .list-cont ul li .tile-link:focus + .cont-holder,
.hm-section2 .list-cont ul li .tile-link:hover + .cont-holder {
	background:#fff
}

.hm-section2 .list-cont ul li .web-button {
	display:none
}

.hm-section2 .list-cont ul li h3 {
	color:#333;
	text-align:center;
	text-transform:uppercase;
	font-weight:600;
	font-size:20px;
	line-height:24px;
	padding:5px 0;
	text-shadow:0 0 10px #fff;
	transition:all .3s ease;
	-webkit-transition:all .3s ease;
	-ms-transition:all .3s ease;
	-moz-transition:all .3s ease
}

.hm-section2 .list-cont ul li .tile-link:focus + .cont-holder h3,
.hm-section2 .list-cont ul li .tile-link:hover + .cont-holder h3 {
	color:#073d66
}

.hm-section2 .list-cont ul li .cont-holder .text-cont {
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
	height:100%;
	box-sizing:border-box
}

.hm-section2 .list-cont ul li:last-child .cont-holder .text-cont {
	padding-top:0
}

.hm-section2 .list-cont ul li .text-cont .web-button a {
	font-size:14px;
	line-height:14px
}

@media screen and (min-width:1221px) {
	.hm-section2 .list-cont ul li {
		margin:12px 30px
	}
}

.hm-section4 .list-cont ul {
	list-style:none;
	display:flex;
	flex-wrap:wrap;
	align-items:stretch;
	padding:0;
	margin:0
}

.hm-section4 .list-cont ul li {
	text-align:left;
	width:25%;
	padding:0 35px;
	box-sizing:border-box;
	border-left:1px solid rgba(255,255,255,.3)
}

.hm-section4 .list-cont ul li:first-child {
	border-left:none;
	padding-left:0
}

.hm-section4 .list-cont ul li:last-child {
	padding-right:0
}

.hm-section4 .list-cont ul li .why-num {
	display:block;
	font-weight:700;
	font-size:34px;
	line-height:1;
	color:#fff;
	opacity:.45;
	margin-bottom:14px
}

.hm-section4 .list-cont ul li h3 {
	color:#fff;
	font-weight:700;
	font-size:20px;
	line-height:26px;
	margin:0 0 10px;
	letter-spacing:0
}

.hm-section4 .list-cont ul li p {
	font-size:16px;
	line-height:24px;
	font-weight:400;
	color:#fff;
	opacity:.85;
	margin:0;
	letter-spacing:0
}

.hm-section5 {
	padding:50px 0 15px;
	background-color:#f3f2ee;
	scroll-margin-top: 80px
}

.hm-section5 .testi-cont {
	max-width:760px;
	margin:0 auto
}

.hm-section5 .testi-cont .testi-carousel {
	position:relative;
	overflow:hidden;
	margin-bottom:20px
}

.hm-section5 .testi-cont .testi-track {
	display:flex;
	align-items:flex-start;
	gap:24px;
	overflow-x:auto;
	scroll-snap-type:x mandatory;
	scroll-behavior:smooth;
	-webkit-overflow-scrolling:touch;
	scrollbar-width:none;
	-ms-overflow-style:none
}

.hm-section5 .testi-cont .testi-track::-webkit-scrollbar {
	display:none
}

.hm-section5 .testi-cont .testi-slide {
	flex:0 0 62%;
	width:62%;
	min-width:0;
	scroll-snap-align:center;
	opacity:.4;
	transition:opacity .35s ease
}

.hm-section5 .testi-cont .testi-slide.is-active {
	opacity:1
}

.hm-section5 .testi-cont .testi-slide:not(.is-active) {
	cursor:pointer
}

.hm-section5 .testi-cont .testi-card {
	background:#fff;
	border-radius:12px;
	padding:28px 30px;
	text-align:left;
	box-shadow:0 4px 18px rgba(0,0,0,.08);
	min-height:330px;
	display:flex;
	flex-direction:column;
	min-width:0;
	box-sizing:border-box
}

.hm-section5 .testi-cont .testi-card-top {
	display:flex;
	align-items:center;
	justify-content:space-between;
	margin-bottom:16px;
	flex-shrink:0
}

.hm-section5 .testi-cont .testi-google-icon {
	display:block;
	width:28px;
	height:28px;
	flex-shrink:0
}

.hm-section5 .testi-cont .testi-stars {
	display:flex;
	gap:3px
}

.hm-section5 .testi-cont .testi-stars svg {
	width:18px;
	height:18px;
	fill:#fbbc05;
	flex-shrink:0
}

.hm-section5 .testi-cont .testi-text {
	font-size:14px;
	line-height:22px;
	color:#555;
	font-weight:300;
	margin-bottom:12px
}

.hm-section5 .testi-cont .testi-more {
	display:none;
	margin:0;
	padding:0;
	border:none;
	background:none;
	color:#1f83cf;
	font-weight:400;
	font-size:13px;
	line-height:16px;
	white-space:nowrap;
	cursor:pointer
}

.hm-section5 .testi-cont .testi-card.has-overflow .testi-more {
	display:inline
}

.hm-section5 .testi-cont .testi-more:hover {
	color:#073d66;
	text-decoration:underline
}

.hm-section5 .testi-cont .testi-author {
	font-weight:700;
	font-style:italic;
	font-size:13px;
	line-height:18px;
	color:#073d66;
	flex-shrink:0
}

.hm-section5 .testi-cont .testi-controls {
	display:flex;
	align-items:center;
	justify-content:center;
	gap:18px;
	margin-bottom:32px
}

.hm-section5 .testi-cont .testi-nav-btn {
	flex:0 0 auto;
	width:40px;
	height:40px;
	padding:0;
	border-radius:50%;
	border:none;
	background:#fff;
	color:#073d66;
	box-shadow:0 4px 14px rgba(0,0,0,.1);
	display:flex;
	align-items:center;
	justify-content:center;
	cursor:pointer;
	transition:background .2s ease,color .2s ease
}

.hm-section5 .testi-cont .testi-nav-btn svg {
	width:16px;
	height:16px
}

.hm-section5 .testi-cont .testi-nav-btn.next svg {
	transform:scaleX(-1)
}

.hm-section5 .testi-cont .testi-nav-btn:hover {
	background:#073d66;
	color:#fff
}

.hm-section5 .testi-cont .testi-nav-btn:disabled {
	opacity:.35;
	cursor:default;
	pointer-events:none
}

.hm-section5 .testi-cont .web-button {
	text-align:center
}

.hm-section5 .testi-cont .web-button a {
	font-size:16px;
	line-height:16px
}

@media screen and (min-width:992px) {
	.hm-section5 .testi-cont .testi-slide {
		flex-basis:42%;
		width:42%;
		scroll-snap-align:start
	}
	.hm-section5 .testi-cont .testi-card {
		min-height:380px
	}
}

.web-logo {
	background-color:#e8e9e4;
	padding:30px 0
}

.web-logo ul {
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:center;
	text-align:center
}

.web-logo ul li {
	list-style:none;
	margin:0 50px
}

.web-logo .image-cont img {
	max-height:102px;
	width:auto;
	display:block
}

.web-logo ul li.badge-li {
	margin:15px 12px
}

.web-logo .text-badge {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	padding:11px 22px;
	border-radius:999px;
	white-space:nowrap;
	text-align:center;
	font-size:13px;
	line-height:1.3;
	font-weight:700;
	letter-spacing:.2px;
	color:#fff;
	box-shadow:0 4px 10px rgba(7,61,102,.2)
}

.web-logo .text-badge.badge-navy {
	background:linear-gradient(135deg,#0e5a94,#073d66 60%,#052540)
}

.web-logo .text-badge.badge-rust {
	background:linear-gradient(135deg,#c1584c,#a94239 60%,#7c2f28)
}

.web-cta {
	background-size:cover;
	background-repeat:no-repeat;
	background-position:center center
}

.web-cta > .web-container {
	padding:48px 0
}

.web-cta .text-cont {
	text-align:center
}

.web-cta .text-cont h5 {
	font-size:26px;
	line-height:30px;
	color:#fff;
	font-weight:700;
	text-transform:uppercase;
	letter-spacing:2px;
	margin-bottom:15px
}

.web-cta .text-cont p {
	font-weight:400;
	font-size:18px;
	line-height:28px;
	color:rgba(255,255,255,.85)
}

.web-cta .web-button a {
	background:#fff;
	color:#073d66
}

.web-cta .web-button a:hover {
	background:#e8e9e4
}

.web-cta .text-cont p strong {
	color:#fff;
	font-weight:700
}

.web-cta .text-cont .contact-location-card p {
	font-weight:400;
	font-size:15px;
	line-height:22px;
	color:#666
}

.web-widget {
	background-color:#333;
	padding:30px 0
}

.web-widget .left {
	float:left
}

.web-widget .right {
	float:right
}

.web-widget .left .widget .widget-title {
	font-family:'Open Sans',sans-serif;
	font-weight:400;
	font-size:19px;
	line-height:23px;
	color:#ffffff86;
	text-transform:capitalize;
	margin-bottom:10px
}

.web-widget .left .widget {
	border:0;
	padding:0
}

.web-widget .left .widget-area {
	width:auto!important;
	margin:0 120px 0 0!important
}

.web-widget .left .widget-area:last-of-type {
	margin:0!important
}

.web-widget .left .widget-area #menu-quick-links {
	margin-bottom:20px
}

.web-widget .left .widget-area #menu-quick-links li a {
	font-size:14px;
	line-height:18px;
	color:#999
}

.web-widget .left .widget-area #menu-quick-links li a:hover {
	color:#e5e4e4
}

.web-widget .left .widget-area #menu-quick-links li {
	list-style:none;
	margin-bottom:5px
}

.web-widget .left .widget-area .mail a {
	font-size:14px;
	line-height:18px;
	background-image:url(assets/widget-icons-mail.png)
}

.web-widget .left .widget-area .phone a {
	font-size:14px;
	line-height:18px;
	background-image:url(assets/widget-icons-phone.png);
	padding:10px 0
}

.web-widget .left .widget-area .widget-info a {
	font-weight:400;
	color:#ccc;
	text-decoration:none;
	box-shadow:none;
	display:inline-block;
	vertical-align:top;
	background-repeat:no-repeat;
	padding-left:30px;
	background-position:left center;
}

.web-widget .left .widget-area .widget-info .mail a:hover {
	color:#5c95b8
}

.about-section1 {
	background-position:center center;
	min-height:330px
}

.about-section1 h1 {
	font-size:55px;
	line-height:59px;
	color:#fff;
	padding:150px 0;
	font-weight:600;
	text-align:center
}

.about-section2 {
	padding:70px 0
}

.about-section2 p {
	font-size:17px;
	line-height:29px;
	color:#666;
	margin-bottom:20px
}

.about-section2 .about-cont .left {
	float:left;
	width:25%
}

.about-section2 .about-cont .right {
	float:right;
	width:72%
}

.about-section2 .about-cont .right .about-social ul li {
	list-style:none;
	display:inline-block;
	vertical-align:top
}

.about-section2 .about-cont .right .about-social ul li img:hover {
	opacity:.7;
	transition:all .3s ease;
	-webkit-transition:all .3s ease;
	-ms-transition:all .3s ease;
	-moz-transition:all .3s ease
}

.about-section2 .about-cont .right h2 {
	font-size:28px;
	line-height:32px;
	color:#3a3535;
	margin-bottom:20px;
	font-weight:600
}

.about-section2 .about-cont .right h2 em {
	color:#073d66;
	font-size:13px;
	line-height:17px;
	font-weight:400
}

.about-section2 .about-cont .right h2 span {
	display:block;
	padding-top:7px;
	font-size:18px;
	font-weight:400;
	color:#073d66;
	line-height:22px
}

.contact-section1 {
	padding:70px 0
}

.contact-section1 .web-container {
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	align-items:flex-start;
	gap:35px
}

.contact-section1 .sec2-title {
	flex:0 0 100%;
	width:100%
}

.contact-section1 .left {
	width:auto;
	flex:0 1 500px;
	float:none
}

.contact-section1 .right {
	width:auto;
	flex:1 1 300px;
	max-width:420px;
	float:none
}

.contact-section1 .left .form-cont {
	height:calc(61.2vh + 5px);
	min-height:617px;
	max-width:100%;
	overflow:hidden;
	position:relative
}

.contact-section1 .left .form-cont iframe {
	position:absolute;
	top:0;
	left:0;
	width:calc(100% / 0.75);
	height:calc(100% / 0.75);
	transform:scale(0.75);
	transform-origin:0 0
}

.contact-section1 .left .form-cont .input-cont.firstname {
	width:48%;
	float:left
}

.contact-section1 .left .form-cont .input-cont.lastname {
	width:48%;
	float:right
}

.contact-section1 .left .form-cont .input-cont label {
	display:block;
	text-transform:uppercase;
	font-weight:600;
	font-size:15px;
	line-height:19px;
	color:#073d66;
	padding-bottom:10px
}

.contact-section1 .left .form-cont .input-cont {
	margin-bottom:25px
}

.contact-section1 .left .form-cont .input-cont input,
.contact-section1 .left .form-cont .input-cont textarea {
	width:100%;
	max-width:100%;
	box-sizing:border-box;
	border-radius:0;
	border:1px solid #e9e6e6;
	font-weight:400;
	padding:10px;
	background-color:#fff;
	font-family:'Open Sans',sans-serif;
	color:#333;
	font-size:15px;
	line-height:19px
}

.contact-section1 .left .form-cont .input-cont.message {
	background-color:#f1f1f1;
	border-color:#ccc;
	padding:15px;
	border-radius:3px;
	border-style:solid;
	border-width:1px;
	color:#000;
	font-family:sans-serif;
	width:70%
}

.contact-section1 .left .form-cont .input-cont.message .cf-input {
	margin-bottom:0
}

.contact-section1 .left .cf-button input {
	font-size:15px;
	font-weight:700;
	text-decoration:none;
	text-transform:uppercase;
	color:#fff;
	font-family:Lato;
	padding:12px 25px;
	border-radius:5px;
	background:#a94239;
	background:-moz-linear-gradient(top,#205176 0,#205176 49%,#073d66 49%,#073d66 100%);
	background:-webkit-linear-gradient(top,#205176 0,#205176 49%,#073d66 49%,#073d66 100%);
	background:linear-gradient(to bottom,#205176 0,#205176 49%,#073d66 49%,#073d66 100%);
	border:0;
	font-family:'Open Sans',sans-serif
}

.contact-section1 .left .cf-button input:hover {
	background:#205176
}

.contact-section1 .right .text-cont {
	text-align:left
}

.contact-locations {
	display:flex;
	flex-direction:column;
	gap:12px;
	margin-bottom:20px
}

.contact-location-card {
	background:#f7f7f5;
	border-left:4px solid #073d66;
	border-radius:4px;
	padding:14px 16px
}

.contact-location-card h3 {
	color:#073d66;
	font-size:16px;
	line-height:20px;
	margin:0 0 6px;
	display:flex;
	align-items:center;
	gap:8px;
	flex-wrap:wrap
}

.contact-location-card p {
	font-size:15px;
	line-height:22px;
	color:#666;
	margin:0 0 4px
}

.contact-location-card p:last-child {
	margin-bottom:0
}

.contact-section1 .right .text-cont ul {
	margin:0 0 25px;
	padding:0
}

.contact-section1 .right .text-cont ul li {
	list-style:none;
	font-size:16px;
	font-weight:400;
	line-height:26px;
	color:#666
}

.contact-section1 .right .text-cont ul li strong {
	color:#073d66;
	text-transform:uppercase;
	font-size:15px;
	line-height:19px;
	margin:20px 0 5px;
	display:block
}

.contact-section1 .right .text-cont ul li:first-child strong {
	margin-top:0
}

.contact-section1 .right .text-cont ul li p {
	font-size:16px;
	line-height:26px;
	color:#666
}

.contact-section1 .right .text-cont ul li p a {
	color:#666;
	font-weight:400
}

.contact-section1 .right .text-cont ul li p a:hover {
	color:#a62e25
}

.testimonial-section2 {
	padding:70px 0
}

.about-section2 h1,
.contact-section1 h1,
.testimonial-section2 h1 {
	font-size:34px;
	line-height:37px;
	color:#073d66;
	font-weight:600;
	margin:0 0 30px;
	text-transform:capitalize;
	text-align:center
}

.contact-section1 h1 {
	margin-bottom:21px
}

.contact-intro {
	text-align:center;
	max-width:640px;
	margin:0 auto;
	font-size:16px;
	line-height:26px;
	color:#666
}

.testimonial-section2 h2 {
	text-align:center;
	font-weight:300;
	text-transform:uppercase;
	font-size:34px;
	color:#333;
	margin-bottom:50px;
	line-height:38px
}

.testimonial-section2 .list-cont ul li {
	border-top:1px solid #eee;
	padding:20px 0;
	list-style:none
}

.testimonial-section2 .list-cont ul li .left {
	float:left;
	width:50%;
	padding:30px;
	box-sizing:border-box;
	border-right:1px solid #eee
}

.testimonial-section2 .list-cont ul li .right {
	float:right;
	width:50%;
	padding:30px;
	box-sizing:border-box
}

.testimonial-section2 .list-cont ul li p {
	font-size:17px;
	line-height:27px;
	color:#666;
	font-weight:400;
	margin:0;
	position:relative;
	padding-bottom:20px
}

.testimonial-section2 .list-cont ul li .line {
	width:40px;
	border-bottom:2px solid #073d66;
	display:block
}

.testimonial-section2 .list-cont ul li .author-cont p {
	font-weight:300;
	font-style:italic
}

.testimonial-section2 .list-cont ul li .image-cont {
	margin-bottom:20px
}

.expertise-section2 {
	padding:70px 0
}

.expertise-section2 .content-cont .left {
	width:23%;
	float:left
}

.expertise-section2 .content-cont .left ul li {
	margin-bottom:10px;
	list-style:none
}

.expertise-section2 .content-cont .left ul li a {
	font-size:15px;
	line-height:24px;
	color:#073d66;
	font-weight:600;
	padding:14px 15px;
	box-sizing:border-box;
	border-radius:8px;
	background:#f1f1f1;
	display:block;
	transition:all .3s ease;
	-ms-transition:all .3s ease;
	-moz-transition:all .3s ease;
	-webkit-transition:all .3s ease;
	cursor:pointer
}

.expertise-section2 .content-cont .left ul li.active a {
	background-color:#073d66;
	color:#fff
}

.expertise-section2 .content-cont .left ul li a:hover,
.expertise-section2.conveyancing .left ul li.tab2 a,
.expertise-section2.family-law .left ul li.tab4 a,
.expertise-section2.immigration .left ul li.tab3 a,
.expertise-section2.leasing-commercial .left ul li.tab5 a,
.expertise-section2.wills-probate .left ul li.tab1 a {
	background-color:#073d66;
	color:#fff
}

.expertise-section2 .content-cont .right {
	width:75%;
	float:right
}

.error-sec1 h2,
.expertise-section2 .content-cont .right h2 {
	font-size:34px;
	line-height:37px;
	color:#073d66;
	font-weight:600;
	margin:0 0 24px
}

.expertise-section2 .content-cont .right a,
.expertise-section2 .content-cont .right p,
.expertise-section2 .content-cont .right ul li {
	font-size:17px;
	line-height:25px;
	color:#666;
	font-weight:400;
	margin:0 0 20px
}

.expertise-section2 .content-cont .right a {
	color:#073d66
}

.expertise-section2 .content-cont .right a:hover {
	color:#5c95b8
}

.expertise-section2 .content-cont .right ul {
	margin-bottom:20px
}

.expertise-section2 .content-cont .right .text-cont ul li {
	list-style:none;
	margin-bottom:10px;
	background-image:url(assets/list-check.png);
	background-repeat:no-repeat;
	background-position:left 5px;
	padding-left:30px
}

.expertise-section2 .content-cont .right ul li.active {
	display:block
}

.expertise-section2 .content-cont .right ul li.inactive {
	display:none
}

.inner-button {
	text-align:center;
	margin-top:40px;
	display:block
}

.content-cont .right .inner-button a {
	background:#a94239;
	background:-moz-linear-gradient(top,#205176 0,#205176 49%,#073d66 49%,#073d66 100%);
	background:-webkit-linear-gradient(top,#205176 0,#205176 49%,#073d66 49%,#073d66 100%);
	background:linear-gradient(to bottom,#205176 0,#205176 49%,#073d66 49%,#073d66 100%);
	display:inline-block;
	color:#fff;
	font-weight:300;
	font-size:20px;
	line-height:20px;
	padding:12px 32px;
	border-radius:5px;
	color:#fff
}

.content-cont .right .inner-button a:hover {
	color:#fff;
	background:#205176
}

.error-sec1 {
	padding:120px 0;
	text-align:center
}

.error-sec1 h2 {
	margin:0;
	font-size:40px;
	line-height:45px;
	font-size:34px;
	line-height:37px;
	color:#073d66;
	font-weight:600
}

.error-sec1 p {
	font-size:20px;
	line-height:30px;
	color:#666;
	margin-bottom:20px;
	margin:30px 0
}

@media screen and (max-width:1220px) {
	.web-header .bot-content .left .image-cont img {
		width:181.35px;
		height:26.1px
	}
	.hm-section4 .list-cont ul li p {
		font-size:15px;
		line-height:21px
	}
	.web-container {
		max-width:960px
	}
	.web-header .bot-content .right {
		width:68%
	}
	.web-header .bot-content .left {
		width:32%
	}
	.hm-section1 p {
		font-size:23px;
		line-height:27px
	}
	.hm-section1 h1 {
		font-size:34px;
		line-height:38px
	}
	.hm-section1 .web-button a {
		font-size:19px;
		line-height:19px
	}
	.hm-section4 .list-cont ul li {
		padding:0 18px
	}
	.web-logo ul li {
		margin:0 25px
	}
	.about-section1 h1 {
		font-size:51px;
		line-height:55px
	}
	.hm-section2 .list-cont ul li h3 {
		font-size:16px;
		line-height:19.2px
	}
}

@media screen and (max-width:980px) {
	.web-container {
		max-width:748px
	}
	.web-header .right .menu-cont {
		display:none
	}
	.web-header .bot-content .right {
		width:58%;
		justify-content:flex-end
	}
	.web-header .right .res-menu-cont {
		float:right;
		padding:6px 0
	}
	.responsive-menu-subarrow {
		background-color:#073d66!important;
		border:none!important
	}
	.responsive-menu-subarrow:hover {
		background-color:#073d66!important
	}
	.hm-section1 h1 {
		font-size:34px;
		line-height:38px
	}
	.hm-section1 p {
		font-size:20px;
		line-height:24px
	}
	.hm-section1 .text-cont {
		padding:180px 0
	}
	.hm-section1 .web-button a {
		font-size:18px;
		line-height:18px
	}
	.hm-section2 .list-cont ul li {
		margin:11px
	}
	.hm-section2 .list-cont ul li h3 {
		font-size:16px;
		line-height:19.2px
	}
	.hm-section4 .list-cont ul li {
		width:50%;
		padding:20px 25px
	}
	.hm-section4 .list-cont ul li:nth-child(odd) {
		border-left:none;
		padding-left:0
	}
	.hm-section4 .list-cont ul li:nth-child(even) {
		padding-right:0
	}
	.hm-section4 .list-cont ul li:nth-child(n+3) {
		border-top:1px solid rgba(255,255,255,.3);
		margin-top:10px;
		padding-top:20px
	}
	.hm-section4 .list-cont ul li h3 {
		font-size:19px;
		line-height:25px
	}
	.hm-section4 .list-cont ul li p {
		font-size:16px;
		line-height:22px
	}
	.hm-section2 h2,
	.hm-section4 h2,
	.hm-section5 h2,
	.page-section h2,
	.faq-section h2,
	.web-cta .sec2-title h2 {
		font-size:36px;
		line-height:40px
	}
	.web-header .bot-content .left {
		width:42%
	}
	.web-header .bot-content .left .image-cont {
		padding:17px 0
	}
	.web-header .bot-content .left .image-cont img {
		width:152.750px;
		height:21.984px
	}
	#page {
		padding-top:100px
	}
	.web-widget .left .widget-area {
		margin:0 90px 0 0!important
	}
	.web-logo ul {
		text-align:center
	}
	.web-logo ul li {
		margin:15px 35px
	}
	.about-section1 h1 {
		font-size:47px;
		line-height:51px
	}
	.about-section2 .about-cont .left {
		width:33%
	}
	.about-section2 .about-cont .right {
		width:62%
	}
	.contact-section1 .left .form-cont .input-cont.firstname,
	.contact-section1 .left .form-cont .input-cont.lastname {
		width:100%;
		float:none
	}
	.testimonial-section2 h2 {
		font-size:31px;
		line-height:35px
	}
	.error-sec1 h2,
	.expertise-section2 .content-cont .right h2 {
		font-size:31px;
		line-height:34px
	}
	.about-section2 h1 {
		display:block;
		margin-left:auto
	}
}

@media screen and (max-width:909px) {
	.comments-area,
	.content-bottom-widgets,
	.entry-content,
	.entry-footer,
	.entry-header,
	.entry-summary,
	.image-navigation,
	.page-content,
	.page-header,
	.post-navigation,
	.post-thumbnail {
		margin:0
	}
	.web-widget .left .widget-area {
		float:left
	}
	.hm-section2 .list-cont ul li h3 {
		font-size:16px;
		line-height:19.2px
	}
}

@media screen and (max-width:768px) {
	.web-header .bot-content .left .image-cont img {
		width:152.750px;
		height:21.984px
	}
	.web-container {
		max-width:620px
	}
	.web-header .bot-content .left,
	.web-header .bot-content .right {
		width:50%
	}
	.hm-section1 p {
		font-size:17px;
		line-height:21px
	}
	.hm-section1 .text-cont {
		padding:140px 0
	}
	.hm-section1 .web-button a {
		font-size:17px;
		line-height:17px
	}
	.hm-section2 h2,
	.hm-section4 h2,
	.hm-section5 h2,
	.page-section h2,
	.faq-section h2,
	.web-cta .sec2-title h2 {
		font-size:32px;
		line-height:36px
	}
	.hm-section5 .testi-cont .testi-slide {
		flex-basis:68%;
		width:68%
	}
	.hm-section2 .list-cont ul li {
		max-width:100%;
		margin:20px 0
	}
	.web-widget .left {
		float:none;
		display:block;
		width:100%
	}
	.web-widget .left .widget-area {
		float:left;
		margin:0!important;
		width:50%!important
	}
	.hm-section2 .list-cont ul li h3 {
		font-size:14.4px;
		line-height:17.6px
	}
	.web-header .right .res-menu-cont {
		padding:5px 0
	}
	.about-section2 .about-cont .left {
		width:100%;
		text-align:center;
		float:none;
		margin-bottom:30px
	}
	.about-section2 .about-cont .right {
		width:100%;
		float:none
	}
	.about-section2 .about-cont .right h2 {
		font-size:25px;
		line-height:29px;
		text-align:center
	}
	.about-section2 .about-cont .right h2 span {
		font-size:17px
	}
	.testimonial-section2 h2 {
		font-size:28px;
		line-height:32px
	}
	.testimonial-section2 .list-cont ul li .left,
	.testimonial-section2 .list-cont ul li .right {
		float:none;
		width:100%;
		box-sizing:border-box;
		border-right:0;
		padding:30px 0;
		border-bottom:1px solid #eee
	}
	.testimonial-section2 .list-cont ul li .right {
		border-bottom:0
	}
	.testimonial-section2 .list-cont ul li {
		padding:0
	}
	.expertise-section2 .content-cont .left {
		width:100%;
		float:none;
		text-align:center;
		margin-bottom:50px
	}
	.expertise-section2 .content-cont .right {
		width:100%;
		float:none
	}
	.expertise-section2 .content-cont .right h2 {
		text-align:center
	}
	#page {
		padding-top:100px
	}
	.testimonial-section2 h1 {
		padding-left:0
	}
}

@media screen and (max-width:640px) {
	.web-container {
		max-width:420px
	}
	.web-header .top-content .text-cont {
		display:flex;
		flex-wrap:wrap;
		justify-content:center;
		align-items:center;
		gap:10px 20px
	}
	.web-header .top-content a.mail {
		margin-right:0
	}
	.web-header .right .res-menu-cont {
		float:right;
		padding:0
	}
	.web-header .bot-content .left {
		width:52%
	}
	.web-header .bot-content .right {
		width:48%
	}
	.web-header .bot-content .left .image-cont {
		padding:15px 0
	}
	.web-header .bot-content .left .image-cont img {
		width:152.750px;
		height:21.984px
	}
	#page {
		padding-top:94px
	}
	.hm-section1 h1 {
		font-size:30px;
		line-height:34px
	}
	.hm-section2 h2,
	.hm-section4 h2,
	.hm-section5 h2,
	.page-section h2,
	.faq-section h2,
	.web-cta .sec2-title h2 {
		font-size:28px;
		line-height:32px;
		margin-bottom:30px
	}
	.web-cta .sec2-title h2 {
		margin-bottom:21px
	}
	.hm-section4-intro {
		font-size:16px;
		line-height:24px;
		margin-bottom:30px
	}
	.hm-section4 .list-cont ul li {
		width:100%;
		padding:20px 0
	}
	.hm-section4 .list-cont ul li:nth-child(odd),
	.hm-section4 .list-cont ul li:nth-child(even),
	.hm-section4 .list-cont ul li:nth-child(n+3) {
		border-left:none;
		border-top:1px solid rgba(255,255,255,.3);
		padding:20px 0;
		margin-top:0
	}
	.hm-section4 .list-cont ul li:first-child {
		border-top:none;
		padding-top:0
	}
	.hm-section4 .list-cont ul li h3 {
		font-size:19px;
		line-height:24px
	}
	.hm-section4 .list-cont ul li p {
		font-size:16px;
		line-height:22px
	}
	.hm-section5 .testi-cont .testi-track {
		gap:16px
	}
	.hm-section5 .testi-cont .testi-slide {
		flex-basis:76%;
		width:76%
	}
	.hm-section5 .testi-cont .testi-card {
		padding:20px 18px;
		min-height:350px
	}
	.hm-section5 .testi-cont .testi-google-icon {
		width:24px;
		height:24px
	}
	.hm-section5 .testi-cont .testi-stars svg {
		width:15px;
		height:15px
	}
	.hm-section5 .testi-cont .testi-text {
		font-size:15px;
		line-height:22px
	}
	.web-cta .text-cont h5 {
		font-size:22px;
		line-height:26px
	}
	.web-widget .left .widget-area,
	.web-widget .left .widget-area:last-of-type {
		width:100%!important;
		margin-bottom:30px!important
	}
	.web-widget .right {
		float:none;
		width:100%
	}
	.web-cta .text-cont p {
		font-size:18px;
		line-height:22px
	}
	.hm-section2 .list-cont ul li h3 {
		font-size:16px;
		line-height:20px
	}
	.web-logo ul li {
		margin:15px 25px
	}
	.about-section1 h1 {
		font-size:43px;
		line-height:47px;
		padding:120px 0
	}
	.contact-section1 .left .form-cont .input-cont.message {
		width:100%
	}
	.testimonial-section2 h2 {
		font-size:25px;
		line-height:29px
	}
	.testimonial-section2 .list-cont ul li .image-cont {
		text-align:center
	}
	.testimonial-section2 .list-cont ul li .line {
		margin:0 auto
	}
	.error-sec1 h2,
	.expertise-section2 .content-cont .right h2 {
		font-size:28px;
		line-height:31px
	}
	.testimonial-section2 .list-cont ul li .author-cont p {
		text-align:center
	}
	.about-section2 h1,
	.contact-section1 h1,
	.testimonial-section2 h1 {
		font-size:25px;
		line-height:29px
	}
}

@media screen and (max-width:440px) {
	.web-header .bot-content .left .image-cont img {
		width:152.750px;
		height:21.984px
	}
	.web-container {
		max-width:calc(100% - 40px)
	}
	.web-header .bot-content .left {
		width:70%
	}
	.web-header .bot-content .right {
		width:30%
	}
	.hm-section1 h1 {
		font-size:22px;
		line-height:26px
	}
	.hm-section1 p {
		font-size:16px;
		line-height:20px
	}
	.hm-section1 .web-button a,
	.web-button a {
		font-size:17px;
		line-height:17px
	}
	.hm-section1 .web-button {
		flex-direction:column;
		align-items:center;
		gap:12px
	}
	.hm-section1 .web-button a {
		max-width:none;
		width:100%
	}
	#page {
		padding-top:92px
	}
	.hm-section1 .text-cont {
		padding:100px 0
	}
	.hm-section2 h2,
	.hm-section4 h2,
	.hm-section5 h2,
	.page-section h2,
	.faq-section h2,
	.web-cta .sec2-title h2 {
		font-size:24px;
		line-height:28px
	}
	.hm-section4-intro {
		font-size:15px;
		line-height:22px;
		margin-bottom:25px
	}
	.hm-section4 .list-cont ul li h3 {
		font-size:17px;
		line-height:22px
	}
	.hm-section4 .list-cont ul li p {
		font-size:15px;
		line-height:20px
	}
	.hm-section5 .testi-cont .testi-track {
		gap:10px
	}
	.hm-section5 .testi-cont .testi-slide {
		flex-basis:84%;
		width:84%
	}
	.hm-section5 .testi-cont .testi-card {
		padding:14px 12px;
		border-radius:8px;
		min-height:300px
	}
	.hm-section5 .testi-cont .testi-card-top {
		margin-bottom:10px
	}
	.hm-section5 .testi-cont .testi-google-icon {
		width:18px;
		height:18px
	}
	.hm-section5 .testi-cont .testi-stars {
		gap:2px
	}
	.hm-section5 .testi-cont .testi-stars svg {
		width:11px;
		height:11px
	}
	.hm-section5 .testi-cont .testi-text {
		font-size:12px;
		line-height:18px;
		margin-bottom:12px
	}
	.hm-section5 .testi-cont .testi-author {
		font-size:12px;
		line-height:16px
	}
	.hm-section5 .testi-cont .testi-controls {
		gap:12px;
		margin-bottom:24px
	}
	.hm-section5 .testi-cont .testi-nav-btn {
		width:32px;
		height:32px
	}
	.hm-section5 .testi-cont .testi-nav-btn svg {
		width:13px;
		height:13px
	}
	.web-cta .text-cont p {
		font-size:16px;
		line-height:20px
	}
	.web-cta .text-cont h5 {
		font-size:19px;
		line-height:23px
	}
	.web-logo ul li {
		display:block;
		margin:15px 0
	}
	.about-section1 h1 {
		font-size:39px;
		line-height:43px;
		padding:100px 0
	}
	.about-section2 p {
		font-size:16px;
		line-height:28px
	}
	.about-section2 .about-cont .right h2 {
		font-size:23px;
		line-height:27px
	}
	.about-section2 .about-cont .right h2 span {
		font-size:16px
	}
	.testimonial-section2 h2 {
		font-size:22px;
		line-height:26px
	}
	.testimonial-section2 .list-cont ul li p {
		font-size:16px;
		line-height:26px
	}
	.expertise-section2 .content-cont .right p,
	.expertise-section2 .content-cont .right ul li {
		font-size:16px;
		line-height:24px
	}
	.error-sec1 h2,
	.expertise-section2 .content-cont .right h2 {
		font-size:25px;
		line-height:28px
	}
	.content-cont .right .inner-button a {
		font-size:17px;
		line-height:17px
	}
	.about-section2 .about-cont .right h2 em {
		display:block
	}
	.about-section1 {
		min-height:290px
	}
	.web-header .top-content a.phone {
		font-size:12px;
		line-height:16px;
		padding:10px 15px 10px 30px;
		background-position:8% center
	}
	.web-header .top-content a.mail {
		font-size:12px;
		line-height:15px;
		margin:0;
		padding-left:20px
	}
}

@media screen and (max-width:300px) {
	.web-header .bot-content .left .image-cont img {
		width:152.750px;
		height:21.984px
	}
	.web-container {
		max-width:calc(100% - 32px)
	}
	.hm-section1 h1 {
		font-size:18px;
		line-height:22px
	}
	.hm-section1 p,
	.hm-section4 .list-cont ul li p {
		font-size:14px;
		line-height:18px
	}
	.hm-section1 .web-button a,
	.web-button a {
		font-size:14px;
		line-height:14px
	}
	,
	.hm-section2 h2,
	.hm-section4 h2,
	.hm-section5 h2,
	.page-section h2,
	.faq-section h2,
	.web-cta .sec2-title h2 {
		font-size:22px;
		line-height:26px
	}
	.hm-section4 .list-cont ul li h3 {
		font-size:16px;
		line-height:20px
	}
	.hm-section5 .testi-cont .testi-track {
		gap:6px
	}
	.hm-section5 .testi-cont .testi-slide {
		flex-basis:90%;
		width:90%
	}
	.hm-section5 .testi-cont .testi-card {
		padding:10px 8px;
		min-height:230px
	}
	.hm-section5 .testi-cont .testi-card-top {
		margin-bottom:8px
	}
	.hm-section5 .testi-cont .testi-google-icon {
		width:15px;
		height:15px
	}
	.hm-section5 .testi-cont .testi-stars svg {
		width:9px;
		height:9px
	}
	.hm-section5 .testi-cont .testi-text {
		font-size:11px;
		line-height:16px;
		margin-bottom:10px
	}
	.hm-section5 .testi-cont .testi-author {
		font-size:11px;
		line-height:14px
	}
	.hm-section5 .testi-cont .testi-controls {
		gap:10px;
		margin-bottom:18px
	}
	.hm-section5 .testi-cont .testi-nav-btn {
		width:28px;
		height:28px
	}
	.hm-section5 .testi-cont .testi-nav-btn svg {
		width:11px;
		height:11px
	}
	.web-cta .text-cont p {
		font-size:14px;
		line-height:18px
	}
	.web-cta .text-cont h5 {
		font-size:17px;
		line-height:21px
	}
	.about-section1 h1 {
		font-size:35px;
		line-height:39px;
		padding:100px 0
	}
	.about-section2 p {
		font-size:15px;
		line-height:27px
	}
	.about-section2 .about-cont .right h2 {
		font-size:21px;
		line-height:25px
	}
	.about-section2 .about-cont .right h2 span {
		font-size:15px
	}
	.contact-section1 .right .text-cont ul li p {
		font-size:15px;
		line-height:25px
	}
	.testimonial-section2 h2 {
		font-size:20px;
		line-height:24px
	}
	.testimonial-section2 .list-cont ul li p {
		font-size:15px;
		line-height:25px
	}
	.expertise-section2 .content-cont .right p,
	.expertise-section2 .content-cont .right ul li {
		font-size:15px;
		line-height:23px
	}
	.about-section1 {
		min-height:270px
	}
}

/* Mobile nav (replaces the old Responsive Menu plugin) */
.web-header .right .res-menu-cont {
	display:none;
	position:relative
}

.menu-trigger {
	display:block;
	width:34px;
	height:26px;
	position:relative;
	background:transparent;
	border:0;
	padding:0;
	cursor:pointer
}

.menu-trigger span {
	display:block;
	position:absolute;
	left:0;
	width:100%;
	height:3px;
	background:#073d66;
	border-radius:2px;
	transition:all .3s ease
}

.menu-trigger span:nth-child(1) {
	top:0
}

.menu-trigger span:nth-child(2) {
	top:11px
}

.menu-trigger span:nth-child(3) {
	top:22px
}

.menu-trigger.is-active span:nth-child(1) {
	top:11px;
	transform:rotate(45deg)
}

.menu-trigger.is-active span:nth-child(2) {
	opacity:0
}

.menu-trigger.is-active span:nth-child(3) {
	top:11px;
	transform:rotate(-45deg)
}

.mobile-menu {
	display:none;
	position:absolute;
	top:100%;
	right:0;
	width:280px;
	max-width:90vw;
	background:#073d66;
	box-shadow:0 4px 10px rgba(0,0,0,.4);
	z-index:9999
}

.mobile-menu.is-open {
	display:block
}

.mobile-menu ul {
	list-style:none;
	margin:0;
	padding:0
}

.mobile-menu li {
	border-top:1px solid rgba(255,255,255,.15)
}

.mobile-menu li:first-child {
	border-top:0
}

.mobile-menu a {
	display:block;
	padding:14px 20px;
	color:#fff;
	font-size:15px;
	text-decoration:none
}

.mobile-menu a:hover {
	background:#0764ab
}

.mobile-menu li.has-children>ul {
	background:#062f4d
}

.mobile-menu li.has-children>ul a {
	padding-left:35px;
	font-size:14px
}

.mobile-menu li.has-children>ul li.sub-menu-child>a {
	padding-left:55px;
	font-size:13px;
	font-style:italic;
	color:rgba(255,255,255,.75)
}

/* Desktop submenu hide/show (this behaviour lived in the WP parent theme, not the child theme's style.css) */
.web-header .bot-content .right .main-navigation li {
	position:relative
}

.web-header .bot-content .right .main-navigation ul ul {
	display:none;
	position:absolute;
	top:100%;
	min-width:200px;
	z-index:100;
	margin:0;
	list-style:none
}

.web-header .bot-content .right .main-navigation ul ul li {
	list-style:none;
	text-align:center
}

.web-header .bot-content .right .main-navigation li.focus>ul,
.web-header .bot-content .right .main-navigation li:hover>ul {
	display:block
}

@media screen and (max-width:980px) {
	.web-header .right .res-menu-cont {
		display:block
	}
}

.back-to-top-btn {
	position:fixed;
	right:24px;
	bottom:24px;
	border:0;
	border-radius:24px;
	background:#fff;
	color:#073d66;
	display:flex;
	align-items:center;
	gap:8px;
	padding:12px 20px;
	font-family:'Open Sans',sans-serif;
	font-size:14px;
	font-weight:600;
	cursor:pointer;
	box-shadow:0 4px 10px rgba(0,0,0,.4);
	opacity:0;
	visibility:hidden;
	transform:translateY(10px);
	transition:opacity .25s ease,transform .25s ease,background-color .2s ease;
	z-index:9999
}

.back-to-top-btn.is-visible {
	opacity:1;
	visibility:visible;
	transform:translateY(0)
}

.back-to-top-btn:hover {
	background:#f1f1f1
}

.back-to-top-btn svg {
	width:18px;
	height:18px;
	flex-shrink:0;
	fill:none;
	stroke:currentColor;
	stroke-width:2.5;
	stroke-linecap:round;
	stroke-linejoin:round
}

@media screen and (max-width:600px) {
	.back-to-top-btn {
		right:16px;
		bottom:16px;
		padding:10px 16px;
		font-size:13px
	}
}

.photo-placeholder {
	box-sizing:border-box;
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	gap:10px;
	border:2px dashed #99a3ab;
	border-radius:6px;
	background-color:#f4f5f2;
	color:#66707a;
	text-align:center;
	padding:20px
}

.photo-placeholder svg {
	width:40px;
	height:40px;
	fill:none;
	stroke:currentColor;
	stroke-width:1.5;
	stroke-linecap:round;
	stroke-linejoin:round
}

.photo-placeholder span {
	font-size:13px;
	line-height:18px;
	font-weight:600;
	text-transform:uppercase;
	letter-spacing:.03em
}

.about-hero {
	background-color:#e8e9e4;
	padding:40px 0
}

.about-hero .photo-placeholder {
	max-width:1200px;
	height:360px;
	margin:0 auto;
	border-radius:8px
}

.about-hero .photo-placeholder svg {
	width:56px;
	height:56px
}

.about-hero-photo {
	display:block;
	width:100%;
	max-width:900px;
	aspect-ratio:1200/515;
	margin:0 auto;
	border-radius:8px;
	object-fit:cover;
	object-position:center 53%
}

.content-callout cite {
	display:block;
	margin-top:10px;
	font-style:normal;
	font-weight:700;
	color:#073d66
}

.testimonial-callout {
	background:#eef3f7;
	border-left-width:4px;
	border-radius:4px 16px 16px 4px;
	padding-left:46px;
	position:relative
}

.testimonial-callout::before {
	content:"\201C";
	position:absolute;
	left:12px;
	top:8px;
	font-family:Georgia,'Times New Roman',serif;
	font-size:44px;
	line-height:1;
	color:#a94239;
	opacity:.4
}

.testimonial-callout p {
	font-style:italic
}

.testimonial-callout cite {
	font-style:normal
}

.content-callout p:last-of-type {
	margin-bottom:0
}

.page-section--white {
	background-color:#fff
}

.timeline-grid {
	display:grid;
	grid-template-columns:repeat(2,1fr);
	gap:28px;
	max-width:980px;
	margin:0 auto
}

.timeline-item {
	background:#fff;
	border-radius:6px;
	border-top:4px solid #a94239;
	padding:24px 26px;
	box-shadow:0 2px 10px rgba(0,0,0,.06)
}

.timeline-year {
	display:inline-block;
	font-size:14px;
	font-weight:700;
	letter-spacing:.05em;
	text-transform:uppercase;
	color:#a94239;
	margin-bottom:8px
}

.timeline-item h3 {
	color:#073d66;
	font-size:19px;
	line-height:24px;
	margin:0 0 10px
}

.timeline-item p {
	font-size:15px;
	line-height:23px;
	color:#444;
	margin:0
}

.expertise-grid {
	display:grid;
	grid-template-columns:repeat(2,1fr);
	gap:24px;
	max-width:980px;
	margin:24px auto 0
}

.expertise-card {
	display:block;
	background:#f7f7f5;
	border-radius:6px;
	padding:26px 28px;
	transition:box-shadow .2s ease,transform .2s ease
}

.expertise-card:hover {
	box-shadow:0 6px 18px rgba(0,0,0,.1);
	transform:translateY(-3px)
}

.expertise-card h3 {
	color:#073d66;
	font-size:19px;
	margin:0 0 10px
}

.expertise-card p {
	font-size:15px;
	line-height:23px;
	color:#444;
	margin:0
}

.team-list {
	display:flex;
	flex-direction:column;
	gap:32px
}

.team-member {
	display:grid;
	grid-template-columns:220px 1fr;
	gap:30px;
	align-items:start;
	background:#fff;
	border-radius:6px;
	padding:24px;
	box-shadow:0 2px 10px rgba(0,0,0,.06)
}

.team-photo-placeholder {
	aspect-ratio:1/1;
	width:100%
}

.team-photo {
	aspect-ratio:1/1;
	width:100%;
	object-fit:cover;
	object-position:50% 65%;
	border-radius:6px;
	display:block
}

.team-bio h3 {
	color:#073d66;
	font-size:19px;
	margin:0
}

.team-qualifications {
	display:block;
	font-size:13px;
	font-weight:400;
	color:#777;
	margin-top:2px
}

.team-role {
	color:#a94239;
	font-weight:700;
	font-size:14px;
	text-transform:uppercase;
	letter-spacing:.03em;
	margin:8px 0
}

.team-bio p:last-child {
	font-size:15px;
	line-height:23px;
	color:#444;
	margin:0
}

.locations-grid {
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:24px;
	max-width:1180px;
	margin:24px auto 0
}

.location-card {
	display:block;
	background:#f7f7f5;
	border-radius:6px;
	padding:24px 28px;
	border-left:4px solid #073d66;
	transition:box-shadow .2s ease,transform .2s ease
}

.location-card:hover {
	box-shadow:0 6px 18px rgba(0,0,0,.1);
	transform:translateY(-3px)
}

.location-card h3 {
	color:#073d66;
	font-size:19px;
	margin:0 0 12px;
	display:flex;
	align-items:center;
	gap:10px;
	flex-wrap:wrap
}

.location-tag {
	font-size:12px;
	font-weight:700;
	text-transform:uppercase;
	letter-spacing:.03em;
	color:#fff;
	background:#a94239;
	padding:3px 9px;
	border-radius:3px
}

.location-tag.tag-blue {
	background:#205176
}

.location-card p {
	font-size:15px;
	line-height:23px;
	color:#444;
	margin:0 0 8px
}

.location-card p:last-child {
	margin-bottom:0
}

@media screen and (max-width:768px) {
	.timeline-grid,
	.expertise-grid,
	.locations-grid {
		grid-template-columns:1fr
	}
}

@media screen and (max-width:640px) {
	.about-hero .photo-placeholder {
		height:220px
	}
	.team-member {
		grid-template-columns:1fr
	}
	.team-photo-placeholder,
	.team-photo {
		max-width:220px;
		margin:0 auto
	}
}
