:root {
    /* Variables for customising website colour pallet */
    --ads-colour-primary: #222A68;
    --ads-colour-secondary: #574AE2;
    --ads-colour-accent: #f15c60;
    --ads-colour-background: #f8f8f8;
    --ads-colour-surface: #ededed;
    --ads-colour-text-heading: #222A68;
    --ads-colour-text-body: #222A68;
    --ads-colour-text-muted: #574AE2;
    --ads-colour-success: #2E8B57;
    --ads-colour-warning: #E9A32C;
    --ads-colour-error:   #D64550;

    /*
    Missing
    - colours for hover
    - anything else?
    */
}

/* Redefine Bootstrap classes that the template (for some reason >:/ ) overrides */

.mb-5 {
    margin-bottom: 3rem !important;
}

/* End redefine Bootstrap classes*/

/* GENERAL STYLING */

h2 {
    color: var(--ads-colour-primary);
}

.featured-icon-box {
    height: 80%;
}

/* GENERAL STYLING */

/* HEADER STYLES */

/* Main section of header */

/* Section of header with page links */
.site-header-menu,
.site-header-menu-inner
{
    background-color: var(--ads-colour-background) !important;
}

/* Header link text */
.mega-menu-link {
    color: var(--ads-colour-primary) !important;
}

/* Amazing Design Signs text in header*/
.brand-text {
    color: var(--ads-colour-primary) !important;
    font-weight: 900;
    line-height: 1.2;
    font-size: 1.25rem;

}

.mega-menu-link:hover,
.mega-menu-link:focus,
.mega-menu-item.active .mega-menu-link {
    color: var(--ads-colour-warning) !important;
}

/* Icons on header */
.widget_icon > i {
    color: var(--ads-colour-accent) !important;
}

/* Remove left divider on leftmost page link */
#menu > .menu > li:first-child > a::before {
    display: none !important;
}

/* Remove bottom padding from business name on header */
a.home-link > :first-child {
    margin-bottom: 0;
}

.home-link {
    display: flex;
    align-items: center;
    gap: 0.5rem; /* spacing between logo and text */
    text-decoration: none;
}

.brand-logo {
    height: 100px !important;
}

.site-branding {
    margin-right: 80px;
    padding: 0 0 !important; /* Override theme/main.css style */
}

.site-branding img {
    max-height: 100% !important; /* Override theme/main.css style */
}

/* END HEADER STYLES */

/* Make contact us form input text readable */
.input input,
.input textarea {
    color: black;
}

/* FOOTER STYLES */

.footer {
    background-color: var(--ads-colour-surface);
}

.widget-title,
.footer-text,
.footer-text a {
    color: var(--ads-colour-primary) !important;
}

.textwidget {
    max-width: 300px;
}

.ads-icon
{
    color: var(--ads-colour-accent) !important;
}

#menu-footer-service-link li a {
    padding-left: 0 !important;
}
#menu-footer-service-link li a::before {
    display: none !important;
}
#menu-footer-service-link,
#menu-footer-service-link li {
    display: block !important;
    padding-bottom: 11px !important;
}

/* END FOOTER STYLES */

/*Used in home page, specifically the Examples overview section*/
.fixed-aspect {
    position: relative;
    width: 100%;
    aspect-ratio: 700 / 635; /* Enforces the desired aspect ratio */
    overflow: hidden;
}

.fixed-aspect img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; /* Crops or zooms to fill the container */
}

/* Used in home page, for the What We Do overview section */

.fixed-aspect-1 {
    width: 90%;
}

.fixed-aspect-1 img {
    width: 90%;
    position: relative;
    top: -50px
}

@media (min-width: 768px) {
    .fixed-aspect-1 {
        position: relative;
        right: -120px;
    }

    .fixed-aspect-1 img {
        position: relative;
        left: -20px;
    }
}

#homepage-broken-section-background-rectangle {
    background-color: var(--ads-colour-surface);
    padding-top: 220px !important;
    padding-bottom: 220px !important;
}

/* All .featured-thumbnail, including ones on examples page */
.featured-thumbnail img {
    width: 250px;
    height: 250px;
    object-fit: cover;
}
/* Just Who We Are page .featured-thumbnail */
.who-we-are.featured-thumbnail img {
    border-radius: 50%;
}

.project-thumbnail {
    position: relative;
    width: 100%;
    aspect-ratio: 700 / 635; /* Enforces the desired aspect ratio */
    overflow: hidden;
}

.project-thumbnail img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; /* Crops or zooms to fill the container */
}

.btn-orange {
    background-color: #fe5602;
    border-color: #fe5602;
    color: white;
}

.btn-orange:hover {
    background-color: #dd4603;
    border-color: #dd4603;
    color: white;
}

.portfolio_2-section {
    margin-top: -100px !important;
}

.testimonial-avatar img {
    width: 100px;
    height: 90px !important;
    object-fit: cover;
    border-radius: 50%; /* Makes it circular */
}

.required-flag {
    color: var(--ads-colour-error);
    font-weight: bold;
}

/*Used in the Who We Are page*/
.ttm-team-list-title {
    font-weight: bold;
}

.ttm-contact-row {
    display: flex;
    gap: 40px; /* Adjust spacing between items */
    flex-wrap: wrap; /* Allows wrapping on smaller screens */
}

.ttm-contact-item {
    display: flex;
    flex-direction: column;
}

.ttm-team-list-title {
    font-weight: bold;
}

/* Used in What Retailers Require page*/
.ttm-row.welcome-section {
    padding-bottom: 0px;
}

.featured-icon-box.style6 {
    height: 300px;
    overflow: hidden;
}

rs-bullets {
    display: none !important;
}

.ttm-p_table-head {
    text-align: left;
}

.error-img-section {
    margin-top: -200px;
}

.dark-text {
    color: #000000;
}

