/* Navbar overrides */
#mainNav .navbar-nav .nav-item.active .nav-link{
    color: #bf1932;
}

.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: #bf1932; /* Core colour */
    --bs-btn-border-color: #bf1932;

    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #a31529; /* Slightly darker on hover */
    --bs-btn-hover-border-color: #9b1326;

    --bs-btn-focus-shadow-rgb: 191, 25, 50; /* RGB version of #bf1932 */

    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #8c1122; /* Even darker for active state */
    --bs-btn-active-border-color: #7f0f1f;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);

    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #bf1932;
    --bs-btn-disabled-border-color: #bf1932;
}

body {
    background-color: #212529;
}

.page-section {
    background-color: white;
}

.bg-light {
    background-color: #ddd !important;
}

footer {
    background: white;
}

/* Headers */
header.masthead.masthead-home {
  background-image: url("../assets/img/header-images/header-walling.jpg");
}
header.masthead.masthead-building {
  background-image: url("../assets/img/header-images/header-walling.jpg");
}

/* Logo overrides */
@media (min-width: 992px) {
    #mainNav .navbar-brand img {
        height: 5rem;
        transition: height 0.3s 
ease-in-out;
    }
}

@media (min-width: 992px) {
    #mainNav.navbar-shrink .navbar-brand svg, #mainNav.navbar-shrink .navbar-brand img {
        height: 3.5rem;
    }
}

body, p {
    font-family: 'DM Sans', 'Helvetica', 'Arial', sans-serif;
}

h1, h2, h3,h4,h5,h6, header.masthead .masthead-heading {
    font-family: 'DM Serif', 'Times New Roman', serif;
}

.btn-social {
    height: 4rem;
    width: 4rem;
}

#contact {
    background-color: #1a1a1a; /* or match your site’s dark tone */
}

#contact .fa-stack {
    transition: transform 0.2s ease;
}

#contact .fa-stack:hover {
    transform: scale(1.1);
}

#contact a:hover {
    color: #bf1932 !important;
    text-decoration: underline;
}


#contact .fa-stack-2x { color: #bf1932; }        /* brand red background circle */
#contact .contact-link:hover .fa-stack-2x { filter: brightness(0.9); }
#contact .contact-link:hover { color: #ffffff; text-decoration: underline; }

blockquote.blockquote-custom p {
    margin:0;
}

.blockquote-custom {
  position: relative;
}

.blockquote-custom p {
  color: #f8f9fa; /* light text if on dark background */
}

.blockquote-custom::before {
  content: "“";
  position: absolute;
  left: -60px;
  top: -40px;
  font-size: 10rem;
  font-family: serif;
  line-height: 1;
  color: rgba(191,25,50,0.9);
}

@media (max-width: 992px) {
.blockquote-custom::before {
  left: 0px;
  top: -30px;
  font-size: 4rem;
}
}

:root {
--bs-link-color: #dab965;
--bs-yellow: #dab965;
}

#mainNav .navbar-nav .nav-item .nav-link.active, #mainNav .navbar-nav .nav-item .nav-link:hover {
  color: #dab965;
}

.text-shadow {
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.5),0 0 20px rgba(0, 0, 0, 0.2);
}

@media (min-width: 1500px) {
html {
  font-size: 18px;
}
}


.service-icon {
    width: auto;
    height: 200px;
    object-fit: cover;
    border-radius: 10px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
    transition: transform 0.2s ease;
    max-width: 90%;
}

.service-icon:hover {
    /* transform: scale(1.05); */
}

section#contact {
    background-color: #212529;
    background-image: url(../assets/img/map-image.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;        /* makes the image fill the area */
}

.balanced-text {
  text-wrap: balance;
}

@media (max-width: 992px) {
#mainNav .navbar-brand img {
    height: 2.5rem;
}
}

.page-section {
    padding: 3rem 0 1rem 0;
}

/* Cookie Consent Overrides */

.freeprivacypolicy-com---palette-light.freeprivacypolicy-com---nb {
	background: none;
	background-color:rgba(0,0,0,0) !important;
}

.cc-nb-main-container {
	width:90%;
	margin:auto;
	background-color: white;
	font-family: "DM Sans", sans-serif;
	color: #6c757d !important;
} 

.cc-pc-container, .cc-pc-container h3, .cc-pc-container .cc-cp-body-tabs-item {

	font-family: "DM Sans", sans-serif !important;
}

.freeprivacypolicy-com---palette-light .cc-nb-okagree,.freeprivacypolicy-com---palette-light .cc-cp-foot-save {
	background-color: #C01A33 !important;
}

.freeprivacypolicy-com---palette-light .cc-nb-reject {
	background-color: #EAEAEA !important;
	color: #111 !important;
}

.freeprivacypolicy-com---palette-light .cc-nb-okagree:focus {
	box-shadow: 0 0 0 2px #dab965 !important;
}

.freeprivacypolicy-com---nb button.cc-nb-okagree, .freeprivacypolicy-com---nb button.cc-nb-reject, .freeprivacypolicy-com---nb .cc-nb-changep {
	margin-right: 1rem !important;
}

.freeprivacypolicy-com---pc-dialog, .freeprivacypolicy-com---pc-dialog .cc-cp-body-tabs-item-link {
	font-family: Spectral, serif;
}

.freeprivacypolicy-com---pc-dialog input[type=checkbox].cc-custom-checkbox:checked+label:before {
    background: #C01A33 !important;
}

.cc-cp-foot-byline {
	visibility: hidden;
}

.freeprivacypolicy-com---pc-dialog .cc-pc-container {
	border-radius: 5px;
}

.freeprivacypolicy-com---pc-dialog .cc-pc-head {
	border-radius: 5px 5px 0 0;
}

.cc-nb-main-container,.freeprivacypolicy-com---pc-dialog .cc-cp-foot {
	border-radius: 0 0 5px 5px;
}

.grey {

    filter: grayscale(1);
}