/* #fcac04; brand yellow */

@import url('https://fonts.googleapis.com/css2?family=Anton&family=Lobster&display=swap');

body {
    font-family: Nunito Sans, sans-serif;
    background-color: rgb(255, 255, 255);
}

.logo {
    width: 200px;
    height: 200px;
    max-height: 160px;
    position: relative;

}

#footer {
    height: 250px;
    background: linear-gradient(to bottom, rgb(0, 0, 0) 10%, rgb(0, 0, 0) 100%);
    /* W3C */
    padding-top: 20px;
    padding-bottom: 20px;
}

.navbar {

    background-color: black;
    background: linear-gradient(to bottom, rgb(0, 0, 0) 10%, rgb(0, 0, 0) 100%);
    /* W3C */
    color: white;
    height: 50px;

}

/* Make the small navbar logo overlap the bottom of the navbar like a badge */
.navbar-brand {
    position: relative;
    /* create a positioned ancestor for the img */
    padding-bottom: 0;
    /* reduce default spacing so overlap looks correct */
}

.navbar-brand img {
    display: block;
    position: relative;
    bottom: -18px;
    /* pull the image down so it overlaps the navbar bottom */
    width: 100px;
    /* keep the size consistent with markup */
    max-width: 40vw;
    height: auto;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.35);

}

@media (max-width: 576px) {
    .navbar-brand img {
        bottom: -12px;
        width: 80px;
    }
}

.navbar-dark .navbar-toggler {
    background-color: rgba(0, 0, 0, 0.91);
}

.navbar-dark .navbar-nav .nav-link {
    color: rgba(255, 255, 255, 1);
}

.navbar-dark .navbar-nav .nav-link:hover {
    color:
}

.navbar-dark .navbar-nav .nav-link:active {
    color: rgba(255, 255, 255, 1);
}

.navbar-dark .navbar-nav .nav-link:focus {
    color: rgba(255, 255, 255, 1);
}

/* Call button in navbar */
.btn-call {
    background-color: #fcac04;
    /* brand yellow */
    color: #000;
    font-weight: 700;
    border-radius: 6px;
    padding: 6px 12px;
    margin-left: 8px;
    text-decoration: none;
}

.btn-call:hover,
.btn-call:focus {
    background-color: #ffbf3a;
    color: #000;
}

@media (max-width: 767px) {

    /* show call button on small screens as well, but inside collapsed menu it's fine to hide; provide a floating sticky call button */
    .btn-call.d-none.d-md-inline-block {
        display: none !important;
    }

    .floating-call {
        display: block;
    }
}

/* Floating sticky call button (mobile) */
.floating-call {
    position: fixed;
    right: 16px;
    bottom: 16px;
    z-index: 1060;
    /* above navbar and other elements */
    padding: 12px 14px;
    border-radius: 28px;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.35);
}

/* page specific: */
#home-call-to-action {
    /* Hero section */



    /* Background image with a dark overlay for legibility. Prefer jpg; keep flexible with avif/webp fallbacks if served by server. */
    background-image: linear-gradient(rgba(0, 0, 0, 0.075), rgba(0, 0, 0, 0.65)), url("images/home/residential-demolition-in-redding.avif");
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    color: #fff;
    text-align: center;
}

/* Full-width band for Getting Started */
.bg-band {
    background-color: #fcac04
        /* subtle brand tint */
}

.getting-started .card {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(255, 255, 255, 0.95));
}

.getting-started h3 {
    color: #222;
    font-weight: 700;
}

.getting-started p {
    color: #222;
}

@media (min-width: 992px) {
    #home-call-to-action {
        min-height: 72vh;
    }
}

@media (max-width: 576px) {
    #home-call-to-action {
        /* min-height: 50vh; */
        padding-top: 36px;
        padding-bottom: 36px;
        background-image: linear-gradient(rgba(0, 0, 0, 0.45), rgba(0, 0, 0, 0.45)), url("images/home/IMG_9190.jpg");
    }

    #home-stand-out {
        font-size: 1.8rem;
    }
}

#home-stand-out {
    font-family: "Anton", sans-serif;

    font-optical-sizing: auto;
    font-style: normal;
    color: #fce704;
    font-size: 4.0rem;
    /* base size for large screens */
    line-height: 1.05;
    /* tighten line-height so taller glyphs don't add extra spacing */
    transform: scaleY(1.08);
    /* subtle vertical stretch to make glyphs appear taller */
    transform-origin: center top;
    -webkit-font-smoothing: antialiased;
    /* subtle multi-layer drop shadow for better legibility */
    text-shadow: 0 6px 14px rgba(0, 0, 0, 0.65),
        0 2px 6px rgba(0, 0, 0, 0.4),
        0 1px 0 rgba(255, 255, 255, 0.06);
}

/* Responsive adjustments for hero headline */
@media (max-width: 992px) {
    #home-stand-out {
        font-size: 3rem;
    }
}

@media (max-width: 768px) {
    #home-stand-out {
        font-size: 2.25rem;
    }
}

@media (max-width: 576px) {
    #home-stand-out {
        font-size: 1.6rem;
        text-shadow: 0 3px 8px rgba(0, 0, 0, 0.6), 0 1px 0 rgba(255, 255, 255, 0.05);
    }
}

#home-why-us h2 {

    line-height: 1.5em;
    font-size: 36px;
    font-weight: 100;
    padding-bottom: 20px;
    text-align: center;
}

/* Reusable section heading with brand-color underline */
.section-heading {
    position: relative;
    display: inline-block;
    /* shrink to content so underline width percentage is relative to text */
}

.section-heading::after {
    content: "";
    display: block;
    width: 100%;

    padding-top: 15px;
    margin-bottom: 15px;
    border-bottom: 4px solid #fcac04;
    /* logo color */
}

#home-why-us p {
    text-align: center;
    font-size: 24px;
    font-weight: 100;
}

.instagram {
    width: 120px;
    vertical-align: middle;
}

.facebook {
    width: 120px;
}


a[href^="tel:"] {
    color: inherit;
    text-decoration: underline;
    cursor: auto;
}

/* Contact Us CTA: smaller hero variant used near footer */
.contact-cta {
    background-image: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.65)), url("images/home/000-large.jpg");
    background-size: cover;
    background-position: center center;
    color: #fff;
    text-align: center;
}

#contact-stand-out {
    font-family: "Anton", sans-serif;
    color: #fce704;
    font-size: 2.25rem;
    text-shadow: 0 4px 10px rgba(0, 0, 0, 0.6);
    margin-bottom: 0.5rem;
}

@media (max-width: 576px) {
    .contact-cta {
        padding: 2.25rem 1rem;
    }

    #contact-stand-out {
        font-size: 1.4rem;
    }
}

/* Reusable Anton heading for h2 and similar headings */
.anton-heading {
    font-family: "Anton", sans-serif;
    font-weight: 400;
    /* Anton is typically bold by default; keep regular weight */
    letter-spacing: 0.5px;
    color: #222;
    /* default color for headings */
    line-height: 1.05;
}

/* Anton styling specifically for the Getting Started steps (①, ②, ③) */
.anton-step {
    font-family: "Anton", sans-serif;
    letter-spacing: 1px;
    color: #ffffff;
    /* steps are on a dark/bg-band so keep white */
}

.anton-step .step-number {
    font-size: 2.25rem;
    /* size for the circled numerals */
    color: #000000;
    ;
    ;
}

/* Logo placed near the top of the hero */
.hero-logo {
    position: relative;

    margin-bottom: 15%;
    ;
}