/* Colour Variables */
:root {
    --bs-primary: #005983;
    --bs-secondary: #01a8df;  
    --bs-success: #0d9276;  
    --bs-danger: #e74c3c;  
    --bs-warning: #f39c12;  
    --bs-info: #01a8df;  
    --bs-light: #fff6e9;  
    --bs-dark: #003e5c;  
    --bs-dark-rgb: 0, 62, 92;
    --bs-light-rgb: 255, 249, 240;
    --bs-heading-color: #005983;
}
.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: #005983;
    --bs-btn-border-color: #005983;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #4c8aa8;
    --bs-btn-hover-border-color: #4c8aa8;
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #4c8aa8;
    --bs-btn-active-border-color: #4c8aa8;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #005983;
    --bs-btn-disabled-border-color: #005983;
}
.btn-secondary {
    --bs-btn-color: #fff;
    --bs-btn-bg: #0d9276;
    --bs-btn-border-color: #0d9276;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #55b29f;
    --bs-btn-hover-border-color: #55b29f;
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #55b29f;
    --bs-btn-active-border-color: #55b29f;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #0d9276;
    --bs-btn-disabled-border-color: #0d9276;
}
.btn {
    font-family: franklin-gothic-atf, sans-serif;
}
a {
    text-decoration: none;
}
.icon {
    background-color: var(--bs-secondary);
    border-radius:150px;
    width:220px;
    height:220px;
    margin:0 auto;
    padding-top:35px;
    img {
        width:150px;
    }
}

/* Fonts */
:root {
    --bs-body-font-family: classico-urw, sans-serif;
}
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
    font-family: franklin-gothic-atf, sans-serif;
    margin-bottom:1.5rem;
}

/* Navbar */
.navbar {
    filter: drop-shadow(0px 0px 10px #999999);
}
.navbar-brand img {
    height:80px;
}
.nav-item {
    font-family: franklin-gothic-atf, sans-serif;
    text-transform: uppercase;
}
.navbar .btn {
    text-transform: uppercase;
}
@media (max-width: 991.98px) {
    .navbar-collapse {
        text-align:center;
        font-size:1.5rem;
    }
    .nav-item {
        margin-top:0.5em;
        margin-bottom:0.5em;
    }
    .navbar-collapse .btn {
        margin-top:0.5em;
        margin-bottom:1em;
        font-size:1em;
    }
}
.nav-link.active {
    color: var(--bs-navbar-hover-color);
}
/* Hero Banner */
section:has(> .hero) {
    filter: drop-shadow(0px 0px 10px #999999);
}
.hero h1 {
    text-shadow: 1px 1px 10px #005983;
    font-family:classico-urw, sans-serif;
    font-weight:900;
    color:#fff;
    max-width:780px;
}
.hero img {
    max-width:150px;
    margin-top:2em;
}
.hero img:first-of-type {
    margin-right:2em;
}

/* CTA */
.cta {
    background:#cfe9e4;
}
.cta p {
    font-style:italic;
}

/* Tiles */
.tile {
    padding-top:1em;
}
.tile-img {
    position: relative;
    width: 100%;
    height:430px;
    overflow: hidden;
    filter: drop-shadow(0px 3px 3px #303030);
    display: flex; 
    justify-content: center; 
    align-items: center; 
    border-radius: 10px;
    img {
        filter: grayscale(100%);
        -webkit-filter: grayscale(100%);
        -webkit-transition: all 1s ease;
    }
}

.tiles-md .tile-img {
    height:20vw;
}

@media (max-width: 767.98px) {
    .tile-img, .tiles-md .time-img {
        height:250px !important;
    }
}

.tile-img:hover {
    img {
        filter: grayscale(0%);
        filter: gray;
        -webkit-filter: grayscale(0%);
        filter: none;
        transition: 1s ease;
    }
}

.tile-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position:center;
}

/* Footer */
footer h4 {
    color: white;
}
footer img {
    filter: drop-shadow(0px 0px 5px #fff);
}
.legal {
    background:var(--bs-secondary);
}
footer {
    a {
        color:#FFF;
        text-decoration:underline;
    }
    a:hover {
        color:var(--bs-secondary);
        transition: 0.5s ease;
        -webkit-transition: all 0.5s ease;
    }
}
.legal {
    a {
        color:#FFF;
        text-decoration:underline;
    }
    a:hover {
        color:var(--bs-primary);
        transition: 0.5s ease;
        -webkit-transition: all 0.5s ease;
    }
}
@media (max-width: 767.98px) {
    footer, .legal {
      text-align: center;
    }
}

/* Services */
.featured-img {
    border-radius: 10px;
    width: 100%;
    height:430px;
    overflow: hidden;
    display: flex; 
    justify-content: center; 
    align-items: center;     
}
.featured-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position:center;    
}
@media (max-width: 767.98px) {
    .featured-img {
        height:250px;
    }
}
.drop-shadow {
    filter: drop-shadow(0px 0px 10px #999999);
}
.footer-cta {
    text-align:left;
    button, .form-check {
        margin:10px 0;
    }
    ul {
        padding:0;
        width:250px;
        margin:0 auto;
        list-style: none;
        font-weight:900;
        font-size:1.5rem;
        color:var(--bs-primary);
    }
    ul li:before {
        content: '✓ ';
        color:var(--bs-success);
    }
    ul li {
        padding:10px 0;
    }
}
.form-group {
    padding:5px 0;
}

.error-message {
    font-size: 0.9em;
    color: red;
    margin-top: 5px;
    display: block;
}

#map_canvas {
    height:400px;
}

.landing {
    padding:1em;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    p {
        font-size:1.2em;
    }
}
@media (min-width: 767.98px) {
    .landing {
        position:absolute;
        top:50%;
        margin-top:-271px;
        width:100%;
    }
}