:root {
--navy:#112336;
--navy-2:#182d43;
--clay:#b45f3e;
--clay-dark:#94482f;
--limestone:#f1eee7;
--paper:#fbfaf7;
--ink:#1d252b;
--muted:#657078;
--line:#d9d7d1;
--white:#fff;
--serif:'Source Serif 4', Georgia, serif;
--sans:'Inter', Arial, sans-serif
}
* {
	box-sizing:border-box
}
html {
	scroll-behavior:smooth
}
body {
	margin:0;
	background:var(--paper);
	color:var(--ink);
	font-family:var(--sans);
	font-size:15px
}
a {
	color:inherit;
	text-decoration:none
}
button {
	font:inherit
}
.skip-link {
	position:absolute;
	top:-50px;
	left:20px;
	background:#fff;
	padding:10px;
	z-index:20
}
.skip-link:focus {
	top:10px
}
.site-header {
	height:88px;
	padding:0 clamp(24px, 5vw, 82px);
	display:flex;
	align-items:center;
	justify-content:space-between;
	background:/*rgba(255, 255, 255, .97)*/#fbfaf7;
	position:relative;
	z-index:12;
	border-bottom:1px solid rgba(17, 35, 54, .1)
}
.brand {
	display:flex;
	align-items:center;
	gap:13px
}
.brand-mark {
	width:48px;
	height:48px;
	background:var(--navy);
	color:#fff;
	position:relative;
	display:grid;
	place-items:center;
	font:700 17px var(--sans);
	letter-spacing:-1px
}
.brand-mark:before {
	content:'';
	position:absolute;
	top:0;
	right:0;
	border-style:solid;
	border-width:0 15px 15px 0;
	border-color:transparent var(--clay) transparent transparent
}
.brand-mark i {
	position:absolute;
	height:3px;
	width:25px;
	background:var(--clay);
	bottom:8px;
	left:11px
}
.brand-wordmark {
	line-height:.92;
	letter-spacing:.055em
}
.brand-wordmark strong {
	font-size:16px;
	display:block
}
.brand-wordmark small {
	font-size:10px;
	display:block;
	letter-spacing:.31em;
	margin-top:6px;
	color:var(--muted)
}
.main-nav {
	display:flex;
	align-items:center;
	gap:29px;
	font-size:12px;
	font-weight:500;
	color:#28343d
}
.main-nav>a:not(.header-cta), .dropdown-toggle {
padding:10px 0;
border:0;
background:none;
cursor:pointer
}
.main-nav>a:not(.header-cta):hover, .dropdown-toggle:hover {
color:var(--clay)
}
.nav-dropdown {
	position:relative
}
.dropdown-toggle span {
	font-size:16px;
	margin-left:4px
}
.dropdown-menu {
	position:absolute;
	top:36px;
	left:-18px;
	background:var(--navy);
	color:#fff;
	width:235px;
	padding:10px 17px;
	opacity:0;
	visibility:hidden;
	transform:translateY(7px);
transition:.2s
}
.nav-dropdown:hover .dropdown-menu, .nav-dropdown:focus-within .dropdown-menu, .nav-dropdown.open .dropdown-menu {
opacity:1;
visibility:visible;
transform:none
}
.dropdown-menu a {
	display:block;
	padding:11px 0;
	border-bottom:1px solid rgba(255, 255, 255, .15);
	font-size:11px
}
.dropdown-menu a:last-child {
	border:0
}
.dropdown-menu a:hover {
	color:#e9b59f
}
.header-cta {
	background:var(--navy);
	color:#fff;
	padding:13px 18px;
transition:.2s
}
.header-cta:hover {
	background:var(--clay)
}
.menu-toggle {
	display:none
}
.hero {
	height:calc(100svh - 88px);
	min-height:630px;
	max-height:870px;
	position:relative;
	overflow:hidden;
	background:var(--navy)
}
.hero-slide {
	position:absolute;
	inset:0;
	background-image:linear-gradient(90deg, rgba(12, 26, 40, .83), rgba(12, 26, 40, .45) 54%, rgba(12, 26, 40, .12)), var(--hero-image);
	background-size:cover;
	background-position:center;
	opacity:0;
	visibility:hidden;
transition:opacity .7s ease;
	display:flex;
	align-items:center
}
.hero-slide.active {
	opacity:1;
	visibility:visible
}
.hero-inner {
	width:min(760px, 80vw);
	margin-left:clamp(24px, 10vw, 165px);
	padding-bottom:20px;
	color:#fff
}
.eyebrow, .section-label {
	margin:0 0 20px;
	text-transform:uppercase;
	letter-spacing:.16em;
	font-size:10px;
	font-weight:700
}
.eyebrow {
	color:#e7b299
}
.hero h1, .hero h2 {
	font:600 clamp(54px, 7vw, 90px)/.94 var(--serif);
	letter-spacing:-.045em;
	margin:0 0 26px
}
.hero-copy {
	font-size:15px;
	line-height:1.75;
	color:rgba(255, 255, 255, .84);
	max-width:510px;
	margin:0 0 32px
}
.button {
	display:inline-flex;
	align-items:center;
	justify-content:space-between;
	gap:38px;
	padding:15px 18px;
	font-size:11px;
	font-weight:700;
	text-transform:uppercase;
	letter-spacing:.05em;
transition:.2s
}
.button-clay {
	background:var(--clay);
	color:#fff
}
.button-clay:hover {
	background:var(--clay-dark)
}
.button-light {
	background:#fff;
	color:var(--navy)
}
.button-light:hover {
	background:var(--limestone)
}
.button span {
	font-size:16px
}
.hero-controls {
	position:absolute;
	z-index:5;
	bottom:36px;
	right:clamp(24px, 5vw, 82px);
	display:flex;
	align-items:center;
	gap:16px
}
.slider-arrow {
	width:39px;
	height:39px;
	border:1px solid rgba(255, 255, 255, .55);
	background:rgba(10, 23, 34, .35);
	color:#fff;
	cursor:pointer
}
.slider-arrow:hover {
	background:var(--clay);
	border-color:var(--clay)
}
.hero-dots {
	display:flex;
	gap:7px
}
.hero-dots button {
	width:27px;
	height:2px;
	padding:0;
	border:0;
	background:rgba(255, 255, 255, .38);
	cursor:pointer
}
.hero-dots button.active {
	background:#fff
}
.section {
	padding:clamp(82px, 9vw, 135px) clamp(24px, 9vw, 150px)
}
.about {
	display:grid;
grid-template-columns:1.05fr .95fr;
	gap:clamp(45px, 8vw, 125px);
	align-items:center;
	background:#fff
}
.about-media {
	position:relative;
	padding:0 40px 40px 0
}
.about-media img {
	width:100%;
	height:560px;
	object-fit:cover;
	display:block
}
.about-media:after {
	content:'';
	position:absolute;
	right:0;
	bottom:0;
	width:72%;
	height:67%;
	background:var(--limestone);
	z-index:0
}
.about-media img, .about-note {
	position:relative;
	z-index:1
}
.about-note {
	position:absolute;
	left:28px;
	bottom:0;
	background:var(--navy);
	color:#fff;
	padding:21px 25px;
	min-width:230px
}
.about-note strong, .about-note span {
	display:block
}
.about-note strong {
	font:600 18px var(--serif);
	margin-bottom:5px
}
.about-note span {
	font-size:10px;
	color:#c5cdd3
}
.section-label {
	color:var(--clay);
	display:flex;
	align-items:center;
	gap:10px
}
.section-label:after {
	content:'';
	width:42px;
	height:1px;
	background:currentColor
}
.section-label.light {
	color:#e5af99
}
.about h2, .section-intro h2, .why h2, .sectors h2, .contact-strip h2 {
	font:600 clamp(39px, 4.3vw, 65px)/1.04 var(--serif);
	letter-spacing:-.035em;
	margin:0 0 27px
}
.about .lead {
	font:500 17px/1.65 var(--serif);
	color:#35434d
}
.about-content>p:not(.section-label):not(.lead) {
font-size:14px;
line-height:1.85;
color:var(--muted);
max-width:560px
}
.text-link {
	display:inline-flex;
	gap:24px;
	align-items:center;
	margin-top:18px;
	border-bottom:1px solid var(--clay);
	padding-bottom:7px;
	font-size:11px;
	font-weight:700;
	text-transform:uppercase;
	color:var(--navy)
}
.services {
	background:var(--limestone)
}
.section-intro {
	display:flex;
	justify-content:space-between;
	align-items:end;
	gap:35px;
	margin-bottom:48px
}
.section-intro h2 {
	margin-bottom:0
}
.section-intro>p {
	max-width:410px;
	font-size:14px;
	line-height:1.75;
	color:var(--muted);
	margin:0 0 7px
}
.service-grid {
	display:grid;
	grid-template-columns:repeat(2, 1fr);
	gap:22px
}
.service-card {
	display:grid;
	grid-template-columns:44% 56%;
	background:#fff;
	min-height:330px;
	overflow:hidden;
	border:1px solid #e3e0d8
}
.service-card img {
	width:100%;
	height:100%;
	object-fit:cover;
	filter:saturate(.82)
}
.service-card>div {
	padding:33px 32px;
	display:flex;
	flex-direction:column;
	align-items:flex-start
}
.service-card span {
	font-size:10px;
	letter-spacing:.1em;
	color:var(--clay);
	font-weight:700
}
.service-card h3 {
	font:600 27px/1.15 var(--serif);
	margin:16px 0 13px
}
.service-card p {
	font-size:12px;
	line-height:1.75;
	color:var(--muted);
	margin:0
}
.service-card a {
	font-size:10px;
	text-transform:uppercase;
	font-weight:700;
	margin-top:auto;
	padding-top:22px;
	color:var(--navy);
	border-bottom:1px solid var(--clay)
}
.service-card:hover img {
	transform:scale(1.025)
}
.service-card img {
transition:.5s
}
.why {
	background:#fff
}
.why-heading {
	max-width:680px;
	margin:0 auto 65px;
	text-align:center
}
.why-heading .section-label {
	justify-content:center
}
.why-heading .section-label:after {
	display:none
}
.why-grid {
	display:grid;
	grid-template-columns:repeat(4, 1fr);
	border-top:1px solid var(--line);
	border-bottom:1px solid var(--line)
}
.why-grid article {
	padding:38px 27px 34px;
	border-right:1px solid var(--line)
}
.why-grid article:last-child {
	border-right:0
}
.why-grid svg {
	width:39px;
	height:39px;
	color:var(--clay);
	margin-bottom:27px
}
.why-grid h3 {
	font:600 20px var(--serif);
	margin:0 0 12px
}
.why-grid p {
	font-size:12px;
	line-height:1.75;
	color:var(--muted);
	margin:0
}
.sectors {
	position:relative;
	background:url('https://images.unsplash.com/photo-1486406146926-c627a92ad1ab?auto=format&fit=crop&w=2200&q=86') center/cover;
	color:#fff;
	padding:clamp(90px, 9vw, 140px) clamp(24px, 9vw, 150px);
	isolation:isolate
}
.sectors-overlay {
	position:absolute;
	inset:0;
	background:rgba(15, 34, 52, .88);
	z-index:-1
}
.sectors-inner>h2 {
	max-width:720px;
	margin-bottom:60px
}
.sector-grid {
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	border-top:1px solid rgba(255, 255, 255, .28);
	border-left:1px solid rgba(255, 255, 255, .28)
}
.sector-grid div {
	min-height:150px;
	display:flex;
	align-items:center;
	gap:19px;
	border-right:1px solid rgba(255, 255, 255, .28);
	border-bottom:1px solid rgba(255, 255, 255, .28);
	padding:28px
}
.sector-grid svg {
	width:34px;
	height:34px;
	color:#e6ae97
}
.sector-grid span {
	font:500 17px var(--serif)
}
.contact-strip {
	background:var(--clay);
	color:#fff;
	padding:70px clamp(24px, 9vw, 150px);
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:9vw;
	align-items:end
}
.contact-strip h2 {
	margin:0
}
.contact-strip>div:last-child {
	padding-bottom:4px
}
.contact-strip>div:last-child p {
	font-size:13px;
	line-height:1.75;
	max-width:440px;
	margin:0 0 22px;
	color:rgba(255, 255, 255, .84)
}
.site-footer {
	background:#0d1d2b;
	color:#fff;
	padding:70px clamp(24px, 7vw, 115px) 24px
}
.footer-main {
	display:grid;
grid-template-columns:1.6fr .75fr 1fr 1fr;
	gap:55px;
	padding-bottom:58px
}
.footer-logo .brand-mark {
	background:#fff;
	color:var(--navy)
}
.footer-logo .brand-wordmark small {
	color:#9ba8b3
}
.footer-company>p {
	font-size:13px;
	line-height:1.75;
	color:#9ba8b3;
	max-width:300px;
	margin:24px 0
}
.socials {
	display:flex;
	gap:8px
}
.socials a {
	width:34px;
	height:34px;
	border:1px solid #445463;
	display:grid;
	place-items:center;
	font-size:10px;
	font-weight:700;
	text-transform:uppercase;
transition:.2s
}
.socials a:hover {
	background:var(--clay);
	border-color:var(--clay)
}
.footer-main>div:not(.footer-company) {
display:flex;
flex-direction:column;
align-items:flex-start;
gap:11px
}
.footer-main h3 {
	font-size:10px;
	text-transform:uppercase;
	letter-spacing:.15em;
	color:#e2a78f;
	margin:4px 0 13px
}
.footer-main>div:not(.footer-company)>a, .footer-main address {
font-size:13px;
line-height:1.65;
color:#a9b3bc;
font-style:normal
}
.footer-main>div:not(.footer-company)>a:hover {
color:#fff
}
.footer-bottom {
	text-align:center;
	border-top:1px solid #304151;
	padding-top:22px;
	color:#758594;
	font-size:12px;
	letter-spacing:.04em
}
.menu-toggle {
	width:42px;
	height:38px;
	border:0;
	background:none;
	padding:7px;
	cursor:pointer
}
.menu-toggle span {
	display:block;
	height:1px;
	background:var(--navy);
	margin:6px 0;
transition:.2s
}
@media(max-width:980px) {
.main-nav {
gap:15px
}
.about {
grid-template-columns:1fr 1fr
}
.about-media img {
height:470px
}
.service-card {
grid-template-columns:1fr
}
.service-card img {
height:240px
}
.why-grid {
grid-template-columns:repeat(2, 1fr)
}
.why-grid article:nth-child(2) {
border-right:0
}
.why-grid article:nth-child(-n+2) {
border-bottom:1px solid var(--line)
}
.footer-main {
grid-template-columns:1.3fr .8fr 1fr;
gap:40px
}
.footer-main>div:last-child {
grid-column:2/4
}
}
@media(max-width:860px) {
.site-header {
height:76px;
padding:0 20px
}
.brand-mark {
width:41px;
height:41px
}
.brand-wordmark strong {
font-size:14px
}
.main-nav {
display:none;
position:absolute;
top:76px;
left:0;
right:0;
background:#fff;
box-shadow:0 15px 25px rgba(0, 0, 0, .1);
padding:19px 22px 25px;
align-items:stretch;
gap:2px
}
.main-nav.open {
display:flex
}
.main-nav>a:not(.header-cta), .dropdown-toggle {
text-align:left;
padding:10px 0;
font-size:13px
}
.header-cta {
text-align:center;
margin-top:10px
}
.nav-dropdown {
display:flex;
flex-direction:column
}
.dropdown-menu {
position:static;
display:none;
opacity:1;
visibility:visible;
transform:none;
width:auto;
background:var(--limestone);
color:var(--navy);
padding:4px 14px
}
.nav-dropdown.open .dropdown-menu {
display:block
}
.menu-toggle {
display:block
}
.menu-toggle.active span:first-child {
transform:translateY(7px) rotate(45deg)
}
.menu-toggle.active span:nth-child(2) {
opacity:0
}
.menu-toggle.active span:last-child {
transform:translateY(-7px) rotate(-45deg)
}
.hero {
height:680px;
min-height:0
}
.hero-inner {
margin-left:25px;
width:calc(100% - 50px)
}
.hero-slide {
background-image:linear-gradient(90deg, rgba(12, 26, 40, .82), rgba(12, 26, 40, .37)), var(--hero-image)
}
.hero h1, .hero h2 {
font-size:49px
}
.hero-controls {
right:25px;
bottom:25px
}
.section {
padding:75px 24px
}
.about {
grid-template-columns:1fr
}
.about-media {
padding:0 24px 26px 0
}
.about-media img {
height:400px
}
.about-note {
left:16px
}
.section-intro {
display:block
}
.section-intro>p {
margin-top:22px
}
.service-grid {
grid-template-columns:1fr
}
.service-card {
grid-template-columns:40% 60%;
min-height:290px
}
.service-card img {
height:100%
}
.why-heading {
text-align:left
}
.why-heading .section-label {
justify-content:flex-start
}
.why-grid {
grid-template-columns:1fr
}
.why-grid article {
border-right:0;
border-bottom:1px solid var(--line)!important
}
.why-grid article:last-child {
border-bottom:0!important
}
.sector-grid {
grid-template-columns:1fr 1fr
}
.sector-grid div {
min-height:125px;
padding:20px
}
.contact-strip {
grid-template-columns:1fr;
padding:70px 24px;
gap:30px
}
.footer-main {
grid-template-columns:.8fr 1.2fr 1fr;
}
.footer-company {
grid-column:1/-1
}
.footer-main>div:last-child {
grid-column:auto
}
.footer-main {
gap:40px 25px
}
}
@media(max-width:520px) {
.service-card {
grid-template-columns:1fr
}
.service-card img {
height:210px
}
.sector-grid {
grid-template-columns:1fr
}
.sector-grid div {
min-height:100px
}
.footer-main {
grid-template-columns:1fr
}
.footer-company, .footer-main>div:last-child {
grid-column:1
}
.hero h1, .hero h2 {
font-size:30px
}
}
@media(prefers-reduced-motion:reduce) {
html {
scroll-behavior:auto
}
.hero-slide {
transition:none
}
}
@media(min-width:761px) {
.dropdown-menu {
background:#fff;
color:var(--navy);
width:250px;
padding:0;
box-shadow:0 12px 25px rgba(17, 35, 54, .13);
border-top:3px solid var(--clay)
}
.dropdown-menu a {
padding:14px 18px;
border-bottom:1px solid var(--line);
font-size:13px
}
.dropdown-menu a:hover {
background:var(--limestone);
color:var(--clay-dark)
}
.header-cta {
background:var(--clay)
}
.header-cta:hover {
background:var(--clay-dark)
}
}
@media(max-width:760px) {
.dropdown-menu {
background:var(--limestone);
color:var(--navy);
border-top:1px solid var(--line);
box-shadow:none
}
.dropdown-menu a {
border-bottom:1px solid var(--line)
}
}
.top-bar {
	height:42px;
	background:var(--navy);
	color:#fff;
	border-bottom:1px solid rgba(255, 255, 255, .12)
}
.top-bar-inner {
	height:100%;
	max-width:1540px;
	margin:0 auto;
	padding:0 clamp(24px, 5vw, 82px);
	display:flex;
	align-items:center;
	justify-content:space-between
}
.top-contacts {
	display:flex;
	align-items:center;
	gap:34px
}
.top-contacts a {
	display:flex;
	align-items:center;
	gap:9px;
	font-size:13px;
	font-weight:600;
	letter-spacing:.01em
}
.top-contacts svg {
	width:17px;
	height:17px;
	color:#e5a489
}
.top-socials {
	display:flex;
	align-items:center;
	gap:8px
}
.top-socials a {
	width:27px;
	height:27px;
	border:1px solid rgba(255, 255, 255, .3);
	display:grid;
	place-items:center;
	font-size:9px;
	font-weight:700;
	text-transform:uppercase;
	border-radius:50%
}
.top-socials a:hover {
	background:var(--clay);
	border-color:var(--clay)
}
.site-header {
	height:108px
}
.main-nav {
	width:100%;
	display:grid;
	grid-template-columns:1fr auto 1fr;
	align-items:center;
	gap:clamp(38px, 5vw, 90px);
	font-size:12px
}
.nav-side {
	display:flex;
	align-items:center;
	gap:clamp(20px, 2.3vw, 38px)
}
.nav-left {
	justify-content:flex-end
}
.nav-right {
	justify-content:flex-start
}
.desktop-brand {
	justify-self:center;
	min-width:190px;
	justify-content:center
}
.desktop-brand .brand-mark {
	width:55px;
	height:55px
}
.desktop-brand .brand-wordmark strong {
	font-size:18px
}
.desktop-brand .brand-wordmark small {
	font-size:10px
}
.mobile-brand {
	display:none
}
.hero {
	height:calc(100svh - 150px)
}
@media(max-width:860px) {
.top-bar {
height:auto;
min-height:44px
}
.top-bar-inner {
padding:8px 18px;
gap:10px
}
.top-contacts {
gap:12px;
flex-wrap:wrap
}
.top-contacts a {
font-size:10px;
gap:5px
}
.top-contacts svg {
width:13px;
height:13px
}
.top-socials {
gap:4px
}
.top-socials a {
width:23px;
height:23px
}
.site-header {
height:76px
}
.mobile-brand {
display:flex
}
.main-nav {
display:none;
grid-template-columns:1fr;
gap:0
}
.main-nav.open {
display:flex;
flex-direction:column
}
.desktop-brand {
display:none
}
.nav-side {
display:flex;
flex-direction:column;
align-items:stretch;
gap:1px
}
.nav-left, .nav-right {
justify-content:flex-start
}
.nav-side>a, .nav-side .dropdown-toggle {
width:100%
}
.hero {
height:680px
}
}
.nav-side>a, .nav-side .dropdown-toggle {
	padding:10px 0;
	border:0;
	background:none;
	font-size:14px;
	font-weight:500;
	cursor:pointer;
	white-space:nowrap
}
.nav-side>a:hover, .nav-side .dropdown-toggle:hover {
	color:var(--clay)
}
@media(max-width:760px) {
.nav-side>a, .nav-side .dropdown-toggle {
font-size:13px;
/*text-align:left*/
}
}
.service-intro-side {
	display:flex;
	align-items:flex-end;
	gap:35px
}
.service-intro-side>p {
	max-width:380px;
	font-size:14px;
	line-height:1.75;
	color:var(--muted);
	margin:0
}
.service-controls {
	display:flex;
	gap:6px
}
.service-controls button {
	width:42px;
	height:42px;
	border:1px solid var(--navy);
	background:transparent;
	color:var(--navy);
	cursor:pointer
}
.service-controls button:hover {
	background:var(--navy);
	color:#fff
}
.service-track {
	display:flex;
	gap:18px;
	overflow-x:auto;
	scroll-snap-type:x mandatory;
	padding:2px 0 15px;
	scrollbar-width:thin;
	scrollbar-color:var(--clay) transparent
}
.service-showcase-card {
	position:relative;
	flex:0 0 clamp(275px, 22vw, 370px);
	height:410px;
	overflow:hidden;
	scroll-snap-align:start;
	background:var(--navy)
}
.service-showcase-card img {
	width:100%;
	height:100%;
	object-fit:cover;
	display:block;
	filter:saturate(.82);
transition:transform .55s ease
}
.service-showcase-card:hover img {
	transform:scale(1.025)
}
.service-card-panel {
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	min-height:148px;
	padding:20px 21px 18px;
	background:rgba(251, 250, 247, .91);
	backdrop-filter:blur(7px);
	color:var(--ink);
	display:flex;
	flex-direction:column;
	align-items:flex-start
}
.service-card-panel:before {
	content:'';
	position:absolute;
	top:0;
	left:0;
	width:54px;
	height:3px;
	background:var(--clay)
}
.service-card-panel small {
	font-size:9px;
	text-transform:uppercase;
	letter-spacing:.1em;
	color:var(--muted);
	font-weight:700
}
.service-card-panel h3 {
	font:600 24px/1.08 var(--serif);
	margin:9px 0 17px
}
.service-card-panel a {
	font-size:9px;
	text-transform:uppercase;
	letter-spacing:.06em;
	font-weight:700;
	margin-top:auto
}
.service-card-panel a span {
	color:var(--clay);
	font-size:15px;
	padding-left:8px
}
@media(max-width:760px) {
.service-intro-side {
display:block
}
.service-intro-side>p {
margin:22px 0 18px
}
.service-showcase-card {
flex-basis:80vw;
height:385px
}
}
/* Homeowner-focused reasons and property sectors */
.client-reasons {
	background:#fff;
	display:grid;
grid-template-columns:minmax(280px, .8fr) minmax(620px, 1.7fr);
	gap:clamp(55px, 8vw, 120px);
	align-items:start
}
.reasons-intro {
	position:sticky;
	top:45px
}
.reasons-intro h2, .property-sectors-content h2 {
	font:600 clamp(39px, 4.3vw, 65px)/1.04 var(--serif);
	letter-spacing:-.035em;
	margin:0 0 24px
}
.reasons-intro>p:last-child {
	max-width:470px;
	color:var(--muted);
	font-size:14px;
	line-height:1.8;
	margin:0
}
.reason-list {
	display:grid;
	grid-template-columns:repeat(2, 1fr);
	border-top:1px solid var(--line);
	border-left:1px solid var(--line)
}
.reason-list article {
	min-height:275px;
	padding:28px 30px 32px;
	border-right:1px solid var(--line);
	border-bottom:1px solid var(--line);
	display:flex;
	flex-direction:column
}
.reason-mark {
	display:flex;
	align-items:center;
	justify-content:space-between;
	margin-bottom:46px
}
.reason-mark span {
	font-size:9px;
	font-weight:700;
	letter-spacing:.12em;
	color:var(--clay)
}
.reason-mark svg {
	width:31px;
	height:31px;
	stroke-width:1.45;
	color:var(--clay)
}
.reason-list h3 {
	font:600 22px/1.18 var(--serif);
	margin:0 0 12px
}
.reason-list p {
	font-size:12px;
	line-height:1.75;
	color:var(--muted);
	margin:0;
	max-width:290px
}
.property-sectors {
	display:grid;
	grid-template-columns:46% 54%;
	min-height:720px;
	background:var(--navy);
	color:#fff
}
.property-sectors-photo {
	position:relative;
	overflow:hidden
}
.property-sectors-photo:after {
	content:'';
	position:absolute;
	inset:0;
	background:linear-gradient(180deg, rgba(17, 35, 54, .05), rgba(17, 35, 54, .5))
}
.property-sectors-photo img {
	width:100%;
	height:100%;
	object-fit:cover;
	display:block;
	filter:saturate(.72) contrast(.95)
}
.property-photo-label {
	position:absolute;
	z-index:1;
	left:clamp(25px, 5vw, 75px);
	bottom:46px;
	border-left:3px solid var(--clay);
	padding:4px 0 4px 17px
}
.property-photo-label span, .property-photo-label strong {
	display:block
}
.property-photo-label span {
	text-transform:uppercase;
	font-size:9px;
	letter-spacing:.16em;
	color:#e8b5a0;
	margin-bottom:6px
}
.property-photo-label strong {
	font:500 20px var(--serif)
}
.property-sectors-content {
	padding:clamp(75px, 7vw, 115px) clamp(35px, 7vw, 115px);
	display:flex;
	flex-direction:column;
	justify-content:center
}
.property-sectors-content h2 {
	max-width:650px
}
.property-sectors-lead {
	font-size:13px;
	line-height:1.8;
	color:#bdc7cf;
	max-width:570px;
	margin:0 0 42px
}
.property-sector-grid {
	display:grid;
	grid-template-columns:repeat(2, 1fr);
	border-top:1px solid rgba(255, 255, 255, .23);
	border-left:1px solid rgba(255, 255, 255, .23)
}
.property-sector-grid div {
	min-height:94px;
	border-right:1px solid rgba(255, 255, 255, .23);
	border-bottom:1px solid rgba(255, 255, 255, .23);
	padding:21px 22px;
	display:flex;
	flex-direction:column;
	justify-content:center;
	gap:8px
}
.property-sector-grid span {
	font-size:9px;
	font-weight:700;
	letter-spacing:.12em;
	color:#e7a98f
}
.property-sector-grid strong {
	font:500 16px/1.3 var(--serif)
}
@media(max-width:980px) {
.client-reasons {
grid-template-columns:1fr;
gap:45px
}
.reasons-intro {
position:static;
max-width:680px
}
.property-sectors {
grid-template-columns:40% 60%
}
.property-sectors-content {
padding:75px 42px
}
}
@media(max-width:760px) {
.reason-list {
grid-template-columns:1fr
}
.reason-list article {
min-height:auto
}
.property-sectors {
grid-template-columns:1fr
}
.property-sectors-photo {
height:430px
}
.property-sectors-content {
padding:75px 24px
}
.property-sector-grid {
grid-template-columns:1fr 1fr
}
}
@media(max-width:520px) {
.property-sectors-photo {
height:350px
}
.property-sector-grid {
grid-template-columns:1fr
}
.property-sector-grid div {
min-height:80px
}
}

/* Centred vertical header logo lockup */
@media(min-width:761px) {
.site-header {
height:77px
}
.desktop-brand {
min-width:220px;
flex-direction:column;
align-items:center;
gap:5px
}
.desktop-brand .brand-mark {
width:58px;
height:58px;
font-size:19px
}
.desktop-brand .brand-mark i {
width:30px;
left:14px;
bottom:10px
}
.desktop-brand .brand-wordmark {
text-align:center;
line-height:1
}
.desktop-brand .brand-wordmark strong {
font-size:20px;
letter-spacing:.035em;
color:var(--clay-dark)
}
.desktop-brand .brand-wordmark small {
font-size:9px;
letter-spacing:.38em;
margin-top:4px;
padding-left:.38em;
color:var(--muted)
}
.hero {
height:calc(100svh - 170px)
}
}
@media(max-width:760px) {
.mobile-brand {
flex-direction:row
}
.mobile-brand .brand-wordmark {
text-align:left
}
.hero {
height:680px
}
}
/* People-first third banner */
.team-slide {
	background-position:center 42%
}
.team-slide .hero-inner {
	width:min(1060px, 84vw)
}
.team-slide .hero-statement {
	max-width:760px;
	font-size:14px;
	line-height:1.5;
	font-weight:700;
	text-transform:uppercase;
	letter-spacing:.025em;
	color:#fff
}
@media(max-width:760px) {
.team-slide {
background-position:58% center
}
.team-slide .hero-inner {
width:calc(100% - 50px)
}
.team-slide .hero-statement {
font-size:12px;
line-height:1.55
}
}
/* Finished-home first banner */
.interior-slide {
	background-image:linear-gradient(rgba(13, 29, 43, .47), rgba(13, 29, 43, .47)), var(--hero-image);
	background-position:center;
	text-align:center
}
.interior-slide .hero-inner {
	width:min(980px, 86vw);
	margin:0 auto;
	padding-bottom:0
}
.interior-slide .hero-copy {
	max-width:680px;
	margin-left:auto;
	margin-right:auto;
	color:#fff
}
.interior-slide .eyebrow {
	justify-content:center;
	color:#f0b79f
}
.interior-slide h1 {
	text-shadow:0 2px 24px rgba(0, 0, 0, .22)
}
@media(max-width:760px) {
.interior-slide {
background-image:linear-gradient(rgba(13, 29, 43, .56), rgba(13, 29, 43, .56)), var(--hero-image);
background-position:58% center
}
.interior-slide .hero-inner {
width:calc(100% - 42px)
}
}
/* Reference-inspired services catalogue */
.services {
	background:#fff
}
.service-reference-intro {
	display:grid;
grid-template-columns:.8fr 1.2fr;
	gap:clamp(50px, 9vw, 145px);
	align-items:start;
	margin-bottom:55px
}
.service-reference-intro h2 {
	font:700 clamp(47px, 5vw, 76px)/.92 var(--sans);
	letter-spacing:-.055em;
	text-transform:uppercase;
	color:var(--clay);
	margin:0;
	max-width:560px
}
.service-reference-intro>p {
	font-size:16px;
	line-height:1.75;
	color:var(--ink);
	max-width:690px;
	margin:36px 0 0
}
.service-reference-grid {
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap:24px
}
.service-reference-card {
	border:1px solid rgba(180, 95, 62, .48);
	background:#fff;
	display:flex;
	flex-direction:column;
	min-width:0
}
.service-reference-card>img {
	width:100%;
	height:350px;
	object-fit:cover;
	display:block;
	filter:saturate(.83);
transition:transform .45s ease
}
.service-reference-card {
	overflow:hidden
}
.service-reference-card:hover>img {
	transform:scale(1.018)
}
.service-reference-card>div {
	padding:27px 30px 30px;
	display:flex;
	flex-direction:column;
	align-items:flex-start;
	min-height:245px
}
.service-reference-card span {
	font-size:9px;
	font-weight:700;
	letter-spacing:.13em;
	color:var(--muted)
}
.service-reference-card h3 {
	font:600 23px/1.15 var(--sans);
	letter-spacing:-.025em;
	color:var(--clay);
	margin:13px 0 13px
}
.service-reference-card p {
	font-size:13px;
	line-height:1.7;
	color:var(--ink);
	margin:0
}
.service-reference-card a {
	font-size:9px;
	text-transform:uppercase;
	letter-spacing:.06em;
	font-weight:700;
	color:var(--navy);
	border-bottom:1px solid var(--clay);
	padding-bottom:5px;
	margin-top:auto;
	padding-top:22px
}
@media(max-width:980px) {
.service-reference-intro {
grid-template-columns:1fr;
gap:20px
}
.service-reference-intro>p {
margin:0
}
.service-reference-grid {
grid-template-columns:repeat(2, 1fr)
}
}
@media(max-width:620px) {
.service-reference-grid {
grid-template-columns:1fr
}
.service-reference-card>img {
height:300px
}
.service-reference-card>div {
min-height:220px;
padding:25px 24px
}
.service-reference-intro h2 {
font-size:32px
}
}
/* Services carousel */
.service-reference-copy {
	display:flex;
	align-items:flex-end;
	justify-content:space-between;
	gap:35px;
	margin-top:36px
}
.service-reference-copy>p {
	font-size:16px;
	line-height:1.75;
	color:var(--ink);
	max-width:690px;
	margin:0
}
.service-carousel-controls {
	display:flex;
	gap:8px;
	flex:none
}
.service-carousel-controls button {
	width:48px;
	height:48px;
	border:1px solid var(--navy);
	background:#fff;
	color:var(--navy);
	cursor:pointer;
	font-size:17px;
transition:.2s
}
.service-carousel-controls button:hover, .service-carousel-controls button:focus-visible {
background:var(--navy);
color:#fff
}
.service-reference-grid {
	display:flex;
	grid-template-columns:none;
	gap:24px;
	overflow-x:auto;
	scroll-snap-type:x mandatory;
	scroll-behavior:smooth;
	scrollbar-width:thin;
	scrollbar-color:var(--clay) var(--limestone);
	padding-bottom:18px
}
.service-reference-grid::-webkit-scrollbar {
height:5px
}
.service-reference-grid::-webkit-scrollbar-track {
background:var(--limestone)
}
.service-reference-grid::-webkit-scrollbar-thumb {
background:var(--clay)
}
.service-reference-card {
	flex:0 0 calc((100% - 48px)/3);
	scroll-snap-align:start
}
.service-reference-grid:focus-visible {
outline:2px solid var(--clay);
outline-offset:5px
}
@media(max-width:980px) {
.service-reference-copy {
margin-top:0
}
.service-reference-card {
flex-basis:calc((100% - 24px)/2)
}
}
@media(max-width:620px) {
.service-reference-copy {
display:block
}
.service-carousel-controls {
margin-top:22px
}
.service-reference-card {
flex-basis:86%
}
}

/* Archival About image */
.about-media>img[src*="attard-about-heritage-collage"] {
object-position:center;
filter:saturate(.8) contrast(.98)
}
.about-media {
	padding:0
}
.about-media:after {
	display:none
}
/* Why clients choose us — restrained interaction */
.reason-list article {
	position:relative;
	overflow:hidden;
transition:transform .35s ease, background-color .35s ease, box-shadow .35s ease, filter .35s ease
}
.reason-list article:nth-child(1), .reason-list article:nth-child(2), .reason-list article:nth-child(3), .reason-list article:nth-child(4) {
background:var(--navy-2);
border-color:rgba(255, 255, 255, .18)
}
.reason-list article h3 {
	color:#fff
}
.reason-list article p {
	color:#bdc7cf
}
.reason-list article:before {
	content:'';
	position:absolute;
	left:0;
	top:0;
	width:3px;
	height:0;
	background:var(--clay);
transition:height .35s ease
}
.reason-mark svg {
transition:transform .35s ease, color .35s ease
}
.reason-list h3 {
transition:color .35s ease
}
.client-reasons.effects-ready .reasons-intro, .client-reasons.effects-ready .reason-list article {
	opacity:0;
	transform:translateY(24px)
}
.client-reasons.effects-ready .reasons-intro {
	transform:translateX(-20px)
}
.client-reasons.effects-ready.is-visible .reasons-intro, .client-reasons.effects-ready.is-visible .reason-list article {
	opacity:1;
	transform:none;
transition:opacity .65s ease, transform .65s cubic-bezier(.2, .7, .2, 1)
}
.client-reasons.effects-ready.is-visible .reason-list article:nth-child(1) {
transition-delay:.08s
}
.client-reasons.effects-ready.is-visible .reason-list article:nth-child(2) {
transition-delay:.16s
}
.client-reasons.effects-ready.is-visible .reason-list article:nth-child(3) {
transition-delay:.24s
}
.client-reasons.effects-ready.is-visible .reason-list article:nth-child(4) {
transition-delay:.32s
}
.client-reasons.is-visible .reason-list article:hover {
	transform:translateY(-6px);
	filter:brightness(1.08);
	box-shadow:0 18px 34px rgba(17, 35, 54, .2);
	z-index:1;
	transition-delay:0s
}
.reason-list article:hover:before {
	height:100%
}
.reason-list article:hover .reason-mark svg {
	transform:translateY(-4px) rotate(-4deg);
	color:var(--clay-dark)
}
.reason-list article:hover h3 {
	color:#e5a489
}
@media(prefers-reduced-motion:reduce) {
.client-reasons.effects-ready .reasons-intro, .client-reasons.effects-ready .reason-list article {
opacity:1;
transform:none;
transition:none
}
.reason-list article, .reason-list article:before, .reason-mark svg, .reason-list h3 {
transition:none
}
}
/* Purely typographic Attard Bro Group wordmark */
.text-brand {
	gap:0
}
.text-brand .brand-wordmark {
	display:inline-flex;
	flex-direction:column;
	align-items:center;
	line-height:1;
	color:var(--navy)
}
.text-brand .brand-wordmark strong {
	font:600 24px/1 var(--serif);
	letter-spacing:.075em;
	white-space:nowrap
}
.text-brand .brand-wordmark strong:after {
	content:'';
	display:block;
	width:43px;
	height:2px;
	margin:7px auto 5px;
	background:var(--clay)
}
.text-brand .brand-wordmark small {
	font:700 9px/1 var(--sans);
	letter-spacing:.42em;
	margin:0 0 0 .42em;
	color:var(--clay)
}
.desktop-brand.text-brand {
	min-width:220px
}
.desktop-brand.text-brand .brand-wordmark strong {
	font-size:27px
}
.mobile-brand.text-brand .brand-wordmark {
	align-items:flex-start
}
.mobile-brand.text-brand .brand-wordmark strong {
	font-size:20px
}
.mobile-brand.text-brand .brand-wordmark strong:after {
	margin-left:0
}
.footer-logo.text-brand .brand-wordmark {
	align-items:flex-start;
	color:#fff
}
.footer-logo.text-brand .brand-wordmark strong {
	font-size:25px
}
.footer-logo.text-brand .brand-wordmark strong:after {
	margin-left:0
}
.footer-logo.text-brand .brand-wordmark small {
	color:#e5a489
}
/* Internal pages */
.inner-page .nav-side>a.active {
	color:var(--clay);
	position:relative
}
.inner-page .nav-side>a.active:after {
	content:'';
	position:absolute;
	left:0;
	right:0;
	bottom:4px;
	height:1px;
	background:var(--clay)
}
.inner-hero {
	min-height:420px;
	display:grid;
	grid-template-columns:minmax(185px, 22vw) 1fr;
	position:relative;
	overflow:hidden;
	color:#fff;
	background:var(--navy);
	isolation:isolate
}
.inner-hero:before {
	content:'';
	position:absolute;
	inset:0;
	background:linear-gradient(90deg, rgba(11, 27, 42, .96) 0%, rgba(17, 35, 54, .8) 48%, rgba(17, 35, 54, .42) 100%);
	z-index:-1
}
.inner-hero:after {
	content:'';
	position:absolute;
	inset:0;
	background:var(--inner-image) center 48%/cover no-repeat;
	z-index:-2;
	filter:saturate(.72)
}
.inner-hero-about {
--inner-image:url('assets/attard-group-team-hero.png')
}
.inner-hero-contact {
--inner-image:url('https://images.unsplash.com/photo-1511818966892-d7d671e672a2?auto=format&fit=crop&w=2200&q=86');
	min-height:340px
}
.inner-hero-mark {
	border-right:1px solid rgba(255, 255, 255, .22);
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	gap:20px;
	padding:38px 24px;
	text-align:center;
	background:rgba(180, 95, 62, .16)
}
.inner-hero-mark svg {
	width:47px;
	height:47px;
	color:#efb69e;
	stroke-width:1.25
}
.inner-hero-mark span {
	max-width:145px;
	font-size:9px;
	line-height:1.6;
	font-weight:700;
	text-transform:uppercase;
	letter-spacing:.15em;
	color:#f2d0c2
}
.inner-hero-copy {
	align-self:center;
	padding:65px clamp(38px, 8vw, 135px)
}
.inner-hero-copy .eyebrow {
	margin-bottom:16px
}
.inner-hero-copy h1 {
	font:600 clamp(52px, 6vw, 88px)/.98 var(--serif);
	letter-spacing:-.045em;
	margin:0 0 20px;
	max-width:880px
}
.inner-hero-contact .inner-hero-copy h1 {
	font-size:clamp(46px, 5vw, 73px)
}
.inner-hero-copy>p:last-child {
	font-size:14px;
	line-height:1.75;
	color:rgba(255, 255, 255, .82);
	max-width:650px;
	margin:0
}
.about-introduction {
	display:grid;
grid-template-columns:.9fr 1.1fr;
	gap:clamp(55px, 10vw, 160px);
	background:#fff
}
.about-intro-heading h2, .about-story h2, .principles-heading h2, .about-capabilities h2, .contact-details h2, .query-panel h2, .location-copy h2 {
	font:600 clamp(40px, 4.5vw, 67px)/1.03 var(--serif);
	letter-spacing:-.04em;
	margin:0
}
.about-intro-copy {
	padding-top:30px
}
.about-intro-copy .lead {
	font:500 20px/1.55 var(--serif);
	color:#33414b;
	margin:0 0 24px
}
.about-intro-copy>p:not(.lead) {
font-size:14px;
line-height:1.88;
color:var(--muted);
margin:0 0 18px
}
.about-story {
	display:grid;
	grid-template-columns:1fr 1fr;
	min-height:690px;
	background:var(--navy);
	color:#fff
}
.about-story-media {
	background:var(--limestone);
	display:flex;
	align-items:center;
	justify-content:center;
	padding:55px
}
.about-story-media img {
	width:100%;
	height:100%;
	max-height:580px;
	object-fit:contain;
	display:block;
	filter:saturate(.72) contrast(.98)
}
.about-story-content {
	display:flex;
	flex-direction:column;
	justify-content:center;
	padding:clamp(65px, 8vw, 125px)
}
.about-story-content h2 {
	margin-bottom:30px
}
.about-story-content>p:not(.section-label) {
font-size:14px;
line-height:1.82;
color:#bdc8d0;
max-width:590px;
margin:0 0 16px
}
.text-link-light {
	color:#fff;
	border-color:#e6a98f
}
.company-principles {
	background:var(--limestone)
}
.principles-heading {
	display:grid;
grid-template-columns:.75fr 1.25fr;
	gap:70px;
	align-items:end;
	margin-bottom:55px
}
.principles-grid {
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	border-top:1px solid var(--line);
	border-left:1px solid var(--line)
}
.principles-grid article {
	position:relative;
	min-height:310px;
	padding:34px 32px;
	border-right:1px solid var(--line);
	border-bottom:1px solid var(--line);
	background:rgba(255, 255, 255, .46);
	display:flex;
	flex-direction:column
}
.principles-grid article>span {
	font-size:9px;
	letter-spacing:.13em;
	color:var(--clay);
	font-weight:700
}
.principles-grid svg {
	width:36px;
	height:36px;
	color:var(--clay);
	stroke-width:1.4;
	margin:42px 0 30px
}
.principles-grid h3 {
	font:600 24px/1.18 var(--serif);
	margin:0 0 12px
}
.principles-grid p {
	font-size:12px;
	line-height:1.75;
	color:var(--muted);
	margin:0;
	max-width:290px
}
.about-capabilities {
	background:var(--clay);
	color:#fff;
	display:grid;
grid-template-columns:.8fr 1.2fr;
	gap:clamp(55px, 10vw, 150px)
}
.about-capabilities h2 {
	max-width:520px
}
.capability-list {
	border-top:1px solid rgba(255, 255, 255, .35)
}
.capability-list a {
	display:grid;
	grid-template-columns:50px 1fr auto;
	align-items:center;
	gap:15px;
	min-height:76px;
	border-bottom:1px solid rgba(255, 255, 255, .35);
	font:500 20px var(--serif);
transition:.2s
}
.capability-list a:hover {
	padding-left:10px;
	background:rgba(255, 255, 255, .06)
}
.capability-list span {
	font:700 9px var(--sans);
	letter-spacing:.12em;
	color:#f6d0c1
}
.capability-list i {
	font:400 18px var(--sans);
	font-style:normal
}
.contact-main {
	display:grid;
grid-template-columns:.83fr 1.17fr;
	gap:clamp(60px, 9vw, 145px);
	background:#fff;
	align-items:start
}
.contact-details h2 {
	margin-bottom:25px
}
.contact-intro {
	font-size:14px;
	line-height:1.82;
	color:var(--muted);
	max-width:520px;
	margin:0 0 42px
}
.contact-methods {
	border-top:1px solid var(--line)
}
.contact-methods>a {
	display:grid;
	grid-template-columns:44px 1fr;
	gap:18px;
	padding:24px 0;
	border-bottom:1px solid var(--line);
	align-items:start
}
.contact-methods>a:hover strong {
	color:var(--clay)
}
.contact-methods svg {
	width:30px;
	height:30px;
	color:var(--clay);
	stroke-width:1.4
}
.contact-methods span {
	font-size:12px;
	line-height:1.65;
	color:var(--muted)
}
.contact-methods small, .contact-methods strong {
	display:block
}
.contact-methods small {
	font-size:9px;
	text-transform:uppercase;
	letter-spacing:.14em;
	color:var(--clay);
	font-weight:700;
	margin-bottom:5px
}
.contact-methods strong {
	font:600 18px var(--serif);
	color:var(--ink);
	margin-bottom:3px;
transition:.2s
}
.query-panel {
	background:var(--limestone);
	padding:clamp(35px, 5vw, 70px)
}
.query-kicker {
	font-size:9px;
	text-transform:uppercase;
	letter-spacing:.16em;
	font-weight:700;
	color:var(--clay);
	margin:0 0 12px
}
.query-panel h2 {
	font-size:clamp(38px, 4vw, 57px);
	margin-bottom:38px
}
.query-form {
	display:flex;
	flex-direction:column;
	gap:20px
}
.form-row {
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:18px
}
.query-form label {
	display:flex;
	flex-direction:column;
	gap:9px;
	font-size:10px;
	text-transform:uppercase;
	letter-spacing:.08em;
	font-weight:700;
	color:#34424d
}
.query-form input, .query-form select, .query-form textarea {
	width:100%;
	border:1px solid #cbc9c3;
	background:#fff;
	color:var(--ink);
	font:400 13px var(--sans);
	padding:14px 15px;
	border-radius:0;
	outline:0
}
.query-form input, .query-form select {
	height:49px
}
.query-form textarea {
	resize:vertical;
	min-height:135px;
	line-height:1.6
}
.query-form input:focus, .query-form select:focus, .query-form textarea:focus {
	border-color:var(--clay);
	box-shadow:0 0 0 2px rgba(180, 95, 62, .1)
}
.query-form .button {
	border:0;
	cursor:pointer;
	align-self:flex-start;
	min-width:178px
}
.form-note {
	font-size:9px;
	line-height:1.55;
	color:var(--muted);
	margin:0
}
.form-status {
	font-size:12px;
	font-weight:600;
	color:var(--clay-dark);
	margin:0;
	min-height:18px
}
.contact-location {
	display:grid;
grid-template-columns:1.08fr .92fr;
	min-height:520px;
	background:var(--navy);
	color:#fff
}
.location-map {
	position:relative;
	overflow:hidden;
	background:#d8d8d2
}
.location-map iframe {
	display:block;
	width:100%;
	height:100%;
	min-height:520px;
	border:0;
	filter:saturate(.82) contrast(.96)
}
.map-grid {
	position:absolute;
	inset:-50px;
	background-color:#e8e7e1;
	background-image:linear-gradient(28deg, transparent 46%, rgba(17, 35, 54, .13) 47%, rgba(17, 35, 54, .13) 50%, transparent 51%), linear-gradient(115deg, transparent 46%, rgba(17, 35, 54, .1) 47%, rgba(17, 35, 54, .1) 50%, transparent 51%);
	background-size:145px 115px;
	transform:rotate(-6deg) scale(1.15)
}
.location-map:after {
	content:none
}
.map-pin {
	position:absolute;
	left:50%;
	top:48%;
	transform:translate(-50%, -50%);
	width:68px;
	height:68px;
	border-radius:50%;
	background:var(--clay);
	display:grid;
	place-items:center;
	color:#fff;
	box-shadow:0 0 0 14px rgba(180, 95, 62, .18)
}
.map-pin svg {
	width:30px;
	height:30px
}
.location-copy {
	padding:clamp(65px, 8vw, 120px);
	display:flex;
	flex-direction:column;
	justify-content:center
}
.location-copy h2 {
	margin-bottom:25px
}
.location-copy>p:not(.section-label) {
font-size:14px;
line-height:1.82;
color:#bdc8d0;
max-width:520px;
margin:0 0 28px
}
.location-copy .button {
	align-self:flex-start
}
 @media(max-width:980px) {
.inner-hero {
grid-template-columns:160px 1fr
}
.about-introduction, .about-capabilities, .contact-main {
grid-template-columns:1fr;
gap:50px
}
.about-story {
grid-template-columns:44% 56%
}
.about-story-media {
padding:30px
}
.principles-heading {
grid-template-columns:1fr;
gap:25px
}
.contact-location {
grid-template-columns:45% 55%
}
}
@media(max-width:760px) {
.inner-page .nav-side>a.active:after {
display:none
}
.inner-hero {
grid-template-columns:1fr;
min-height:400px
}
.inner-hero-contact {
min-height:430px
}
.inner-hero-mark {
position:absolute;
left:20px;
top:22px;
width:52px;
height:52px;
padding:0;
border:1px solid rgba(255, 255, 255, .3);
z-index:2
}
.inner-hero-mark svg {
width:24px;
height:24px
}
.inner-hero-mark span {
display:none
}
.inner-hero-copy {
padding:105px 24px 58px
}
.inner-hero-copy h1 {
font-size:48px
}
.inner-hero-contact .inner-hero-copy h1 {
font-size:43px
}
.about-introduction {
padding-top:75px;
padding-bottom:75px
}
.about-intro-copy {
padding-top:0
}
.about-story {
grid-template-columns:1fr
}
.about-story-media {
min-height:430px;
padding:28px
}
.about-story-content {
padding:70px 24px
}
.principles-grid {
grid-template-columns:1fr
}
.principles-grid article {
min-height:250px
}
.about-capabilities {
padding-top:75px;
padding-bottom:75px
}
.form-row {
grid-template-columns:1fr
}
.query-panel {
padding:35px 24px
}
.contact-location {
grid-template-columns:1fr
}
.location-map {
min-height:360px
}
.location-map iframe {
min-height:360px
}
.location-copy {
padding:70px 24px
}
}
@media(max-width:520px) {
.inner-hero-copy h1 {
font-size:35px
}
.inner-hero-contact .inner-hero-copy h1 {
font-size:39px
}
.about-intro-heading h2, .about-story h2, .principles-heading h2, .about-capabilities h2, .contact-details h2, .location-copy h2 {
font-size:30px
}
.capability-list a {
font-size:17px;
grid-template-columns:35px 1fr auto
}
.contact-methods>a {
grid-template-columns:36px 1fr
}
.contact-methods svg {
width:25px;
height:25px
}
}
/* Services overview and detail pages */
.service-index-hero {
--inner-image:url('https://images.unsplash.com/photo-1541888946425-d81bb19240f5?auto=format&fit=crop&w=2200&q=86')
}
.service-overview-intro {
	display:grid;
grid-template-columns:.86fr 1.14fr;
	gap:clamp(65px, 10vw, 165px);
	align-items:center;
	background:#fff
}
.service-overview-copy h2, .directory-heading h2, .process-intro h2, .trust-heading h2, .detail-intro-copy h2, .detail-feature-copy h2, .delivery-heading h2, .assurance-heading h2, .faq-heading h2 {
	font:600 clamp(40px, 4.5vw, 68px)/1.02 var(--serif);
	letter-spacing:-.04em;
	margin:0
}
.service-overview-copy .lead, .detail-intro-copy .lead {
	font:500 19px/1.55 var(--serif);
	color:#33414b;
	margin:27px 0 18px
}
.service-overview-copy>p:not(.section-label):not(.lead), .detail-intro-copy>p:not(.section-label):not(.lead) {
font-size:14px;
line-height:1.85;
color:var(--muted);
margin:0 0 25px
}
.service-overview-visual {
	position:relative;
	padding:34px 0 42px 38px
}
.service-overview-visual img {
	position:relative;
	z-index:1;
	width:100%;
	height:570px;
	object-fit:cover;
	display:block;
	filter:saturate(.77)
}
.service-visual-frame {
	position:absolute;
	z-index:0;
	left:0;
	right:38px;
	top:0;
	bottom:0;
	border:1px solid var(--clay)
}
.service-visual-note {
	position:absolute;
	z-index:2;
	left:0;
	bottom:0;
	background:var(--navy);
	color:#fff;
	padding:20px 24px;
	min-width:240px
}
.service-visual-note span, .service-visual-note strong {
	display:block
}
.service-visual-note span {
	font-size:9px;
	text-transform:uppercase;
	letter-spacing:.14em;
	color:#e5a489;
	margin-bottom:5px
}
.service-visual-note strong {
	font:600 19px var(--serif)
}
.services-directory {
	background:var(--limestone)
}
.directory-heading {
	display:grid;
grid-template-columns:.75fr 1.25fr;
	gap:65px;
	align-items:end;
	margin-bottom:55px
}
.directory-heading .section-label {
	align-self:start
}
.directory-list {
	border-top:1px solid #c9c5bc
}
.directory-item {
	display:grid;
	grid-template-columns:72px 1fr 42px;
	gap:28px;
	align-items:center;
	padding:29px 20px;
	border-bottom:1px solid #c9c5bc;
transition:background .25s, padding .25s
}
.directory-item:hover {
	background:#fff;
	padding-left:30px
}
.directory-number {
	font-size:10px;
	font-weight:700;
	letter-spacing:.14em;
	color:var(--clay)
}
.directory-item>div {
	display:grid;
grid-template-columns:minmax(240px, .75fr) 1.25fr;
	gap:38px;
	align-items:center
}
.directory-item small {
	display:block;
	font-size:9px;
	text-transform:uppercase;
	letter-spacing:.12em;
	color:var(--clay);
	font-weight:700;
	margin-bottom:7px
}
.directory-item h3 {
	font:600 28px/1.12 var(--serif);
	margin:0
}
.directory-item p {
	font-size:12px;
	line-height:1.7;
	color:var(--muted);
	max-width:560px;
	margin:0
}
.directory-item>svg {
	width:24px;
	color:var(--clay);
transition:transform .25s
}
.directory-item:hover>svg {
	transform:translate(4px, -4px)
}
.service-process {
	display:grid;
grid-template-columns:.78fr 1.22fr;
	gap:clamp(65px, 9vw, 145px);
	background:var(--navy);
	color:#fff
}
.process-intro h2 {
	max-width:540px
}
.process-intro>p:last-child {
	font-size:13px;
	line-height:1.8;
	color:#bdc8d0;
	max-width:480px;
	margin:25px 0 0
}
.process-steps {
	border-top:1px solid rgba(255, 255, 255, .26)
}
.process-steps article {
	display:grid;
	grid-template-columns:45px 155px 1fr;
	gap:20px;
	align-items:center;
	min-height:105px;
	border-bottom:1px solid rgba(255, 255, 255, .26)
}
.process-steps span {
	font-size:9px;
	font-weight:700;
	color:#e8aa90;
	letter-spacing:.12em
}
.process-steps h3 {
	font:600 20px var(--serif);
	margin:0
}
.process-steps p {
	font-size:12px;
	line-height:1.65;
	color:#bdc8d0;
	margin:0
}
.service-trust {
	background:#fff
}
.trust-heading {
	display:grid;
grid-template-columns:.75fr 1.25fr;
	gap:65px;
	align-items:end;
	margin-bottom:55px
}
.trust-grid {
	display:grid;
	grid-template-columns:repeat(5, 1fr);
	border-top:1px solid var(--line);
	border-left:1px solid var(--line)
}
.trust-grid article {
	min-height:285px;
	padding:29px 24px;
	border-right:1px solid var(--line);
	border-bottom:1px solid var(--line);
	background:var(--paper);
transition:background .25s, transform .25s
}
.trust-grid article:nth-child(even) {
background:var(--limestone)
}
.trust-grid article:hover {
	background:var(--navy);
	color:#fff;
	transform:translateY(-5px)
}
.trust-grid svg {
	width:34px;
	height:34px;
	color:var(--clay);
	stroke-width:1.45;
	margin-bottom:56px
}
.trust-grid h3 {
	font:600 20px/1.2 var(--serif);
	margin:0 0 12px
}
.trust-grid p {
	font-size:12px;
	line-height:1.7;
	color:var(--muted);
	margin:0
}
.trust-grid article:hover p {
	color:#bdc8d0
}
.service-detail-hero {
	min-height:430px;
--inner-image:var(--detail-image)
}
.service-detail-hero:after {
	background-position:center var(--detail-position, 50%)
}
.detail-intro {
	display:grid;
grid-template-columns:.92fr 1.08fr;
	gap:clamp(65px, 10vw, 155px);
	background:#fff;
	align-items:start
}
.detail-scope {
	/*border-top:1px solid var(--line)*/
}
.detail-scope-label {
	margin:0;
	padding:0 0 16px;
	font-size:9px;
	font-weight:700;
	text-transform:uppercase;
	letter-spacing:.14em;
	color:var(--clay)
}
.detail-scope li {
	list-style:none;
	display:grid;
	grid-template-columns:36px 1fr;
	gap:13px;
	align-items:center;
	padding:18px 0;
	border-bottom:1px solid var(--line);
	font:500 17px var(--serif)
}
.detail-scope li span {
	font:700 9px var(--sans);
	color:var(--clay);
	letter-spacing:.12em
}
.detail-scope ul {
	padding:0;
	margin:0
}
.detail-feature {
	display:grid;
	grid-template-columns:1fr 1fr;
	min-height:690px;
	background:var(--limestone)
}
.detail-feature-media {
	position:relative;
	padding:45px 0 45px 45px
}
.detail-feature-media:before {
	content:'';
	position:absolute;
	left:0;
	right:45px;
	top:0;
	bottom:0;
	border:1px solid var(--clay)
}
.detail-feature-media img {
	position:relative;
	width:100%;
	height:100%;
	object-fit:cover;
	display:block;
	filter:saturate(.78)
}
.detail-feature-copy {
	display:flex;
	flex-direction:column;
	justify-content:center;
	padding:clamp(65px, 8vw, 125px)
}
.detail-feature-copy>p:not(.section-label) {
font-size:14px;
line-height:1.85;
color:var(--muted);
max-width:560px;
margin:25px 0 0
}
.detail-feature-points {
	display:flex;
	gap:18px;
	flex-wrap:wrap;
	margin-top:30px
}
.detail-feature-points span {
	font-size:9px;
	font-weight:700;
	text-transform:uppercase;
	letter-spacing:.11em;
	color:var(--clay);
	border-bottom:1px solid var(--clay);
	padding-bottom:6px
}
.service-delivery {
	background:#fff
}
.delivery-heading {
	display:grid;
grid-template-columns:.75fr 1.25fr;
	gap:65px;
	align-items:end;
	margin-bottom:55px
}
.delivery-grid {
	display:grid;
	grid-template-columns:repeat(4, 1fr);
	border-top:1px solid var(--line);
	border-left:1px solid var(--line)
}
.delivery-grid article {
	min-height:300px;
	padding:31px 28px;
	border-right:1px solid var(--line);
	border-bottom:1px solid var(--line);
	display:flex;
	flex-direction:column
}
.delivery-grid span {
	font-size:9px;
	font-weight:700;
	letter-spacing:.13em;
	color:var(--clay)
}
.delivery-grid svg {
	width:34px;
	height:34px;
	color:var(--clay);
	stroke-width:1.4;
	margin:45px 0 29px
}
.delivery-grid h3 {
	font:600 22px/1.18 var(--serif);
	margin:0 0 12px
}
.delivery-grid p {
	font-size:12px;
	line-height:1.72;
	color:var(--muted);
	margin:0
}
.service-assurance {
	background:var(--navy);
	color:#fff
}
.assurance-heading {
	text-align:center;
	max-width:820px;
	margin:0 auto 55px
}
.assurance-heading .section-label {
	justify-content:center
}
.assurance-heading .section-label:after {
	display:none
}
.assurance-grid {
	display:grid;
	grid-template-columns:repeat(5, 1fr);
	border-top:1px solid rgba(255, 255, 255, .24);
	border-left:1px solid rgba(255, 255, 255, .24)
}
.assurance-grid article {
	min-height:245px;
	padding:27px 24px;
	border-right:1px solid rgba(255, 255, 255, .24);
	border-bottom:1px solid rgba(255, 255, 255, .24)
}
.assurance-grid span {
	font-size:9px;
	font-weight:700;
	color:#e8aa90;
	letter-spacing:.12em
}
.assurance-grid h3 {
	font:600 19px/1.2 var(--serif);
	margin:52px 0 11px
}
.assurance-grid p {
	font-size:11px;
	line-height:1.72;
	color:#bdc8d0;
	margin:0
}
.service-faq {
	display:grid;
grid-template-columns:.72fr 1.28fr;
	gap:clamp(60px, 9vw, 140px);
	background:var(--paper)
}
.faq-list {
	border-top:1px solid var(--line)
}
.faq-list details {
	border-bottom:1px solid var(--line);
	padding:0
}
.faq-list summary {
	list-style:none;
	cursor:pointer;
	padding:23px 40px 23px 0;
	font:600 18px/1.35 var(--serif);
	position:relative
}
.faq-list summary::-webkit-details-marker {
display:none
}
.faq-list summary:after {
	content:'+';
	position:absolute;
	right:4px;
	top:21px;
	font:400 22px var(--sans);
	color:var(--clay)
}
.faq-list details[open] summary:after {
	content:'−'
}
.faq-list details p {
	font-size:12px;
	line-height:1.78;
	color:var(--muted);
	max-width:650px;
	margin:-3px 35px 23px 0
}
@media(max-width:1100px) {
.trust-grid, .assurance-grid {
grid-template-columns:repeat(3, 1fr)
}
.trust-grid article, .assurance-grid article {
min-height:250px
}
}
@media(max-width:980px) {
.service-overview-intro, .detail-intro {
grid-template-columns:1fr;
gap:55px
}
.service-overview-visual {
max-width:750px
}
.directory-heading, .trust-heading, .delivery-heading {
grid-template-columns:1fr;
gap:25px
}
.service-process {
grid-template-columns:1fr;
gap:55px
}
.detail-feature {
grid-template-columns:44% 56%
}
.delivery-grid {
grid-template-columns:repeat(2, 1fr)
}
.service-faq {
grid-template-columns:1fr;
gap:45px
}
}
@media(max-width:760px) {
.service-overview-visual {
padding:24px 0 28px 24px
}
.service-overview-visual img {
height:430px
}
.service-visual-frame {
right:24px
}
.directory-item {
grid-template-columns:42px 1fr 24px;
gap:12px;
padding:25px 6px
}
.directory-item>div {
display:block
}
.directory-item p {
margin-top:12px
}
.directory-item h3 {
font-size:20px
}
.process-steps article {
grid-template-columns:32px 100px 1fr;
gap:10px
}
.trust-grid, .assurance-grid {
grid-template-columns:1fr
}
.trust-grid article, .assurance-grid article {
min-height:auto
}
.trust-grid svg {
margin-bottom:35px
}
.detail-feature {
grid-template-columns:1fr
}
.detail-feature-media {
min-height:460px;
padding:28px 0 28px 28px
}
.detail-feature-media:before {
right:28px
}
.detail-feature-copy {
padding:70px 24px
}
.delivery-grid {
grid-template-columns:1fr
}
.delivery-grid article {
min-height:250px
}
.service-faq {
padding-top:75px;
padding-bottom:75px
}
}
@media(max-width:520px) {
.service-overview-copy h2, .directory-heading h2, .process-intro h2, .trust-heading h2, .detail-intro-copy h2, .detail-feature-copy h2, .delivery-heading h2, .assurance-heading h2, .faq-heading h2 {
font-size:30px
}
.process-steps article {
grid-template-columns:28px 1fr
}
.process-steps p {
grid-column:2
}
.detail-feature-media {
min-height:360px
}
}
/* Why choose us and sectors pages */
.why-inner-hero {
--inner-image:url('assets/attard-group-team-hero.png')
}
.sectors-inner-hero {
--inner-image:url('https://images.unsplash.com/photo-1600607687920-4e2a09cf159d?auto=format&fit=crop&w=2200&q=86')
}
.why-inner-hero .inner-hero-copy h1, .sectors-inner-hero .inner-hero-copy h1 {
	max-width:1050px
}
.why-introduction {
	display:grid;
grid-template-columns:.86fr 1.14fr;
	gap:clamp(65px, 10vw, 155px);
	background:#fff;
	align-items:start
}
.why-introduction h2, .why-principles-heading h2, .why-site-copy h2, .sectors-intro-copy h2, .sector-directory-heading h2, .sector-approach-copy h2 {
	font:600 clamp(40px, 4.5vw, 68px)/1.02 var(--serif);
	letter-spacing:-.04em;
	margin:0
}
.why-introduction>div:last-child {
	padding-top:30px
}
.why-introduction .lead, .sectors-intro-copy .lead {
	font:500 19px/1.58 var(--serif);
	color:#33414b;
	margin:0 0 22px
}
.why-introduction>div:last-child>p:not(.lead) {
font-size:14px;
line-height:1.85;
color:var(--muted);
margin:0
}
.why-principles {
	background:var(--limestone)
}
.why-principles-heading, .sector-directory-heading {
	display:grid;
grid-template-columns:.75fr 1.25fr;
	gap:65px;
	align-items:end;
	margin-bottom:58px
}
.why-principles-list {
	border-top:1px solid #c9c5bc
}
.why-principles-list article {
	display:grid;
	grid-template-columns:145px 1fr;
	gap:45px;
	padding:38px 25px;
	border-bottom:1px solid #c9c5bc;
transition:background .25s
}
.why-principles-list article:hover {
	background:#fff
}
.why-principle-number {
	display:flex;
	align-items:center;
	justify-content:space-between;
	color:var(--clay)
}
.why-principle-number span {
	font-size:9px;
	font-weight:700;
	letter-spacing:.13em
}
.why-principle-number svg {
	width:35px;
	height:35px;
	stroke-width:1.45
}
.why-principles-list article>div:last-child {
	display:grid;
grid-template-columns:minmax(240px, .75fr) 1.25fr;
	gap:45px;
	align-items:start
}
.why-principles-list h3 {
	font:600 28px/1.15 var(--serif);
	margin:0
}
.why-principles-list p {
	font-size:13px;
	line-height:1.75;
	color:var(--muted);
	max-width:600px;
	margin:0
}
.why-site-view {
	display:grid;
	grid-template-columns:1fr 1fr;
	min-height:710px;
	background:var(--navy);
	color:#fff
}
.why-site-photo {
	position:relative;
	overflow:hidden
}
.why-site-photo>img {
	width:100%;
	height:100%;
	object-fit:cover;
	display:block;
	filter:saturate(.75)
}
.why-site-photo:after {
	content:'';
	position:absolute;
	inset:0;
	background:linear-gradient(180deg, rgba(17, 35, 54, .03), rgba(17, 35, 54, .53))
}
.why-site-caption {
	position:absolute;
	z-index:1;
	left:clamp(28px, 5vw, 75px);
	bottom:48px;
	border-left:3px solid var(--clay);
	padding-left:17px
}
.why-site-caption span, .why-site-caption strong {
	display:block
}
.why-site-caption span {
	font-size:9px;
	text-transform:uppercase;
	letter-spacing:.14em;
	color:#e9b19a;
	margin-bottom:6px
}
.why-site-caption strong {
	font:600 20px var(--serif)
}
.why-site-copy {
	padding:clamp(70px, 8vw, 125px);
	display:flex;
	flex-direction:column;
	justify-content:center
}
.why-site-copy h2 {
	margin-bottom:42px
}
.site-view-list {
	border-top:1px solid rgba(255, 255, 255, .25)
}
.site-view-list>div {
	display:grid;
	grid-template-columns:45px 1fr;
	gap:18px;
	padding:24px 0;
	border-bottom:1px solid rgba(255, 255, 255, .25)
}
.site-view-list span {
	font-size:9px;
	font-weight:700;
	letter-spacing:.12em;
	color:#e7a98f
}
.site-view-list p {
	font-size:12px;
	line-height:1.72;
	color:#bdc8d0;
	margin:0
}
.site-view-list strong {
	display:block;
	font:600 18px var(--serif);
	color:#fff;
	margin-bottom:4px
}
.sectors-introduction {
	display:grid;
grid-template-columns:.88fr 1.12fr;
	gap:clamp(65px, 9vw, 145px);
	align-items:center;
	background:#fff
}
.sectors-intro-copy>p:not(.section-label):not(.lead) {
font-size:14px;
line-height:1.85;
color:var(--muted);
margin:0 0 25px
}
.sectors-intro-copy .lead {
	margin-top:26px
}
.sectors-intro-photo {
	position:relative;
	padding:36px 0 38px 38px
}
.sectors-intro-photo:before {
	content:'';
	position:absolute;
	left:0;
	right:38px;
	top:0;
	bottom:0;
	border:1px solid var(--clay)
}
.sectors-intro-photo img {
	position:relative;
	width:100%;
	height:560px;
	object-fit:cover;
	display:block;
	filter:saturate(.76)
}
.sectors-intro-photo>div {
	position:absolute;
	left:0;
	bottom:0;
	background:var(--navy);
	color:#fff;
	padding:20px 24px;
	min-width:260px
}
.sectors-intro-photo span, .sectors-intro-photo strong {
	display:block
}
.sectors-intro-photo span {
	font-size:9px;
	text-transform:uppercase;
	letter-spacing:.14em;
	color:#e7a98f;
	margin-bottom:5px
}
.sectors-intro-photo strong {
	font:600 18px var(--serif)
}
.sector-directory {
	background:var(--limestone)
}
.sector-directory-grid {
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	border-top:1px solid var(--line);
	border-left:1px solid var(--line)
}
.sector-directory-grid article {
	min-height:330px;
	padding:31px 29px;
	border-right:1px solid var(--line);
	border-bottom:1px solid var(--line);
	background:rgba(255, 255, 255, .45);
transition:background .25s, transform .25s
}
.sector-directory-grid article:hover {
	background:#fff;
	transform:translateY(-4px)
}
.sector-directory-grid article>div {
	display:flex;
	align-items:center;
	justify-content:space-between;
	color:var(--clay);
	margin-bottom:70px
}
.sector-directory-grid span {
	font-size:9px;
	font-weight:700;
	letter-spacing:.13em
}
.sector-directory-grid svg {
	width:36px;
	height:36px;
	stroke-width:1.4
}
.sector-directory-grid h3 {
	font:600 24px/1.18 var(--serif);
	margin:0 0 13px
}
.sector-directory-grid p {
	font-size:12px;
	line-height:1.75;
	color:var(--muted);
	margin:0;
	max-width:310px
}
.sector-approach {
	display:grid;
grid-template-columns:.8fr 1.2fr;
	gap:clamp(60px, 9vw, 145px);
	background:var(--navy);
	color:#fff;
	padding:clamp(82px, 9vw, 135px) clamp(24px, 9vw, 150px)
}
.sector-approach-copy h2 {
	max-width:520px;
	margin-bottom:26px
}
.sector-approach-copy>p:last-child {
	font-size:13px;
	line-height:1.8;
	color:#bdc8d0;
	max-width:520px;
	margin:0
}
.sector-approach-list {
	border-top:1px solid rgba(255, 255, 255, .28)
}
.sector-approach-list a {
	display:grid;
	grid-template-columns:45px 1fr auto;
	gap:18px;
	align-items:center;
	min-height:84px;
	border-bottom:1px solid rgba(255, 255, 255, .28);
transition:padding .2s, background .2s
}
.sector-approach-list a:hover {
	padding-left:12px;
	background:rgba(255, 255, 255, .05)
}
.sector-approach-list span {
	font-size:9px;
	font-weight:700;
	letter-spacing:.12em;
	color:#e7a98f
}
.sector-approach-list strong {
	font:600 20px var(--serif)
}
.sector-approach-list i {
	font-style:normal;
	color:#e7a98f
}
@media(max-width:980px) {
.why-introduction, .sectors-introduction {
grid-template-columns:1fr;
gap:52px
}
.why-introduction>div:last-child {
padding-top:0
}
.why-principles-heading, .sector-directory-heading {
grid-template-columns:1fr;
gap:25px
}
.why-site-view {
grid-template-columns:44% 56%
}
.sector-directory-grid {
grid-template-columns:repeat(2, 1fr)
}
.sector-approach {
grid-template-columns:1fr;
gap:55px
}
}
@media(max-width:760px) {
.why-principles-list article {
grid-template-columns:42px 1fr;
gap:18px;
padding:28px 8px
}
.why-principle-number {
display:block
}
.why-principle-number svg {
margin-top:22px;
width:29px
}
.why-principles-list article>div:last-child {
display:block
}
.why-principles-list h3 {
font-size:24px
}
.why-principles-list p {
margin-top:12px
}
.why-site-view {
grid-template-columns:1fr
}
.why-site-photo {
min-height:430px
}
.why-site-copy {
padding:70px 24px
}
.sectors-intro-photo {
padding:25px 0 28px 25px
}
.sectors-intro-photo:before {
right:25px
}
.sectors-intro-photo img {
height:430px
}
.sector-directory-grid {
grid-template-columns:1fr
}
.sector-directory-grid article {
min-height:265px
}
.sector-directory-grid article>div {
margin-bottom:45px
}
.sector-approach {
padding:75px 24px
}
}
@media(max-width:520px) {
.why-introduction h2, .why-principles-heading h2, .why-site-copy h2, .sectors-intro-copy h2, .sector-directory-heading h2, .sector-approach-copy h2 {
font-size:30px
}
.sectors-intro-photo img {
height:360px
}
.why-site-photo {
min-height:360px
}
}

@media(max-width:1024px) {
.site-header{padding:0 clamp(24px, 2vw, 82px);}  
/*.nav-right{justify-content:flex-end;}
.nav-left{justify-content:flex-start;}*/
.nav-side{gap:clamp(20px, 4.3vw, 38px);}
.hero{min-height:575px;}
.hero-inner{margin-left:clamp(24px, 4vw, 165px);}
.interior-slide .hero-inner{width: min(980px, 95vw);}
.section{padding:clamp(82px, 9vw, 135px) clamp(24px, 3vw, 150px);}

    
}    

@media(max-width:860px) {
.nav-side{gap:1px; width:100%;} 
.dropdown-toggle span{float:right;}
.hero{min-height:445px; height:auto;} 
.site-footer{padding:70px clamp(24px, 3.5vw, 115px) 24px;}
.about-content>p:not(.section-label):not(.lead){max-width:inherit;}

}   

@media(max-width:480px) {
.reasons-intro h2, .property-sectors-content h2, .about h2, .section-intro h2, .why h2, .sectors h2, .contact-strip h2{font-size:30px;}
.query-panel h2{font-size:30px;}
.service-reference-card h3{font-size:20px;}

}



