/*
 Theme Name:   R.W.Wolf Theme
 Theme URI:    https://paramountdigital.co.uk/
 Description:  R.W.Wolf WordPress theme built upon GeneratePress.
 Author:       Paramount Digital
 Author URI:   https://paramountdigital.co.uk
 Template:     generatepress
 Version:      1.0.0
*/

/*
 * Root variables — filler values, replace per brand.
 */
:root {
    /* colours */
    --color-primary: #b88a44;
    --color-secondary: #C1995C;
    --color-dark: #1a1a1a;
    --color-light: #f4f3f0;
    --color-white: #ffffff;
    --color-text: #1a1a1a;
    --color-border: #d9d9d9;

    /* typography */
    --font-heading: "Canela Text Trial", Georgia, serif;
    --font-body: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;

    /* layout */
    --container-max: 1580px;
    --section-padding: 50px;
    --section-row-gap: 30px;
    --radius: 8px;
}

html {
    box-sizing: border-box;
}
*,
*:before,
*:after {
    box-sizing: border-box;
    min-height: 0;
    min-width: 0;
}

/* default section styles */
.site-main > * {
    margin-bottom: 0;
}
section {
    padding: var(--section-padding) 0;
}
@media (max-width: 575px) {
    section {
        padding: calc(var(--section-padding) * 0.6) 0;
    }
}

/* container settings */
#page,
#page .site-content {
    width: 100%;
    max-width: 100%;
    padding: 0;
}
#page .site-content .site-main {
    margin: 0;
}
.site-content .content-area {
    width: 100%;
    background: linear-gradient(0deg, #fafafa, transparent);
}
.container,
.grid-container {
    --bs-gutter-x: 15px;
    width: 100%;
    padding-right: var(--bs-gutter-x, 15px);
    padding-left: var(--bs-gutter-x, 15px);
    margin-right: auto;
    margin-left: auto;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    row-gap: var(--section-row-gap);
}
@media (min-width: 992px) {
    .container,
    .grid-container {
        max-width: var(--container-max);
    }
}
@media (max-width: 991px) {
    .container,
    .grid-container {
        --bs-gutter-x: 20px;
        padding-right: var(--bs-gutter-x, 20px);
        padding-left: var(--bs-gutter-x, 20px);
    }
}

/* background colour helpers (mapped to the element_background_colour field) */
.background-dark {
    background: var(--color-dark);
    color: var(--color-white);
}
.background-light {
    background: var(--color-light);
}
.background-white {
    background: var(--color-white);
}
section.background-dark:has(+ .background-dark) {
    margin-bottom: -1px;
    padding-bottom: 0;
}

/* footr styles */
.site-footer {
    background: var(--color-primary);
    color: #fff;
}
.site-footer .footer-widgets-container .inner-padding {
    margin: auto;
}
.footer-widgets-container {
    justify-content: center;
}
.site-footer .footer-widgets-container .inside-footer-widgets {
    margin: 0;
}
.inside-footer-widgets>div {
    flex: 0 0 85px;
}

@media (max-width: 991px) {
    /* override GP widget-areas.css flex layout */
    .site-footer .inside-footer-widgets {
        display: block;
    }
}

.main-navigation .inside-navigation .main-nav ul li a {
    line-height: 21px;
    padding: 8px 18px;
    font-size: 16px;
}
.main-navigation {
    margin: 16px 0 20px 0;
}

/* social links (social_links shortcode) */
.c-social-links {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    list-style: none;
    margin: 0;
    padding: 0;
}
.c-social-links li a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: var(--radius);
    transition: background 0.2s ease;
}
.c-social-links li a:hover {
    background: rgba(255, 255, 255, 0.2);
}

/* company info (company_info shortcode) */
.c-company-info dl {
    margin: 0;
}
.c-company-info dt {
    font-weight: 700;
    margin-top: 15px;
}
.c-company-info dd {
    margin: 0;
}
.c-company-info a {
    color: inherit;
}

/* pd icon footer credit */
.pd-icon-link {
    color: unset;
    text-decoration: unset;
}
