/*
    Theme Name: Premier Terrain Custom Theme
    Theme URI: https://stebbinsmedia.com
    Version: 1.0
    Description: Custom Theme for Premier Terrain
    Author: Stebbins Media
    Author URI: https://stebbinsmedia.com
    template: bb-theme
*/

/* ================================================================================================
 * General
 * ============================================================================================= */

.fl-page {
    font-size: 18px;
    color: #000000;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'trajan-pro-3', serif;
}

h1 {
    font-size: 54px;
    font-weight: semi-bold;
    text-transform: uppercase;
}

h2 {
    font-size: 40px;
    text-transform: uppercase;
}

h3 {
    font-size: 30px;
}

.fl-page a {
    transition: color 300ms ease-in-out;
}

.fl-page a.fl-button,
.fl-page a.fl-button:hover,
.fl-page a.fl-button:focus,
.fl-page a.fl-button:visited,
.fl-page button.gform_button,
.fl-page button.gform_button:hover,
.fl-page button.gform_button:focus,
.fl-page button.gform_button:visited {
    color: #000000;
    background-color: #998558;
    border-radius: 0;
    border: 0;
    font-family: 'trajan-pro-3', serif;
    font-size: 18px;
    font-weight: semi-bold;
    text-transform: uppercase;
    transition: color 300ms ease-in-out, background-color 300ms ease-in-out;
}

.fl-page a.fl-button .fl-button-text,
.fl-page a.fl-button:hover .fl-button-text,
.fl-page a.fl-button:focus .fl-button-text,
.fl-page a.fl-button:visited .fl-button-text
.fl-page button.gform_button {
    color: #000000;
    transition: color 300ms ease-in-out;
}

.fl-page a.fl-button:hover,
.fl-page a.fl-button:focus,
.fl-page button.gform_button:hover,
.fl-page button.gform_button:focus {
    background-color: #5f5337;
}

.fl-page a.fl-button:hover .fl-button-text,
.fl-page a.fl-button:focus .fl-button-text,
.fl-page button.gform_button:hover,
.fl-page button.gform_button:focus {
    color: #ffffff;
}

.fl-page button.gform_button,
.fl-page button.gform_button:hover,
.fl-page button.gform_button:focus,
.fl-page button.gform_button:visited {
    padding: 12px 24px;
}

.pt-subtitle-title h2 {
    font-size: 30px;
}

.pt-subtitle-title h2 strong {
    font-size: 50px;
    font-weight: 600 !important;
}

blockquote {
    border: 0;
}

/* ================================================================================================
 * Header
 * ============================================================================================= */

/* ================================================================================================
 * Footer
 * ============================================================================================= */

.pt-footer .fl-row-content-wrap {
    background-size: auto 100%;
}

.pt-footer-column-title {
    font-family: 'trajan-3-pro', serif;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 12px;
}

.pt-footer-column-2 .fl-menu a {
    margin-left: -12px;
}

.pt-footer-social-icons .fl-icon a {
    display: flex;
    justify-content: center;
    align-items: center;
    border: 2px solid #ffffff;
    border-radius: 100%;
    aspect-ratio: 1;
    width: 38px;
    height: 38px;
    text-decoration: none !important;
    opacity: 0.75;
    transition: opacity 300ms ease-in-out;
}

.pt-footer-social-icons .fl-icon a:hover {
    opacity: 1.0;
}

.pt-footer-social-icons .fl-icon a i::before {
    position: relative;
    font-size: 22px;
    top: -2px;
}

.pt-footer-bottom-list {
    font-size: 18px;
}

.pt-footer-bottom-list > .fl-module {
    display: flex;
}

.pt-footer-bottom-list > .fl-module:not(:last-child)::after {
    content: "|";
    margin-left: 10px;
}

/* ================================================================================================
 * Home
 * ============================================================================================= */

.pt-home-products .fl-module-box {
    flex-direction: column;
    align-items: center;
    background-color: #ffffff;
    padding: 24px 24px 48px 24px;
    border: 2px solid #998558;
    border-radius: 35px;
    box-shadow: 0 4px 4px rgba(0, 0, 0, 0.52);
}

.pt-home-products .fl-heading-text {
    font-size: 25px;
    text-align: center;
}

.pt-home-products .fl-module-heading,
.pt-home-products .fl-module-rich-text {
    width: 100%;
}

.pt-home-products .fl-module-heading {
    margin: 30px 0 40px 0;
}

.pt-home-products .fl-module-box > .fl-module:last-child {
    margin-top: auto;
}

.pt-home-products .fl-photo-img {
    border-radius: 25px;
}

.pt-home-products p {
    margin-bottom: 0;
}

.fl-page .pt-bottom-testimonials .bx-pager {
    position: relative;
    top: 90px;
}

.fl-page .pt-bottom-testimonials .bx-pager button.bx-pager-link {
    border-radius: 0;
    background-color: #1d212a;
    opacity: 1.0;
    width: 14px;
    height: 14px;
}

.fl-page .pt-bottom-testimonials .bx-pager button.bx-pager-link.active {
    background-color: #998558;
}

/* ================================================================================================
 * Box Slider
 * ============================================================================================= */

.pt-box-slides {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
}

.pt-box-slider-wrapper {
    position: relative;
}

.fl-page .pt-box-slider-wrapper .bx-prev,
.fl-page .pt-box-slider-wrapper .bx-next {
    position: absolute;
    top: calc(50% - 40px);
    transform: translateY(-50%);
    display: none !important;
}

.fl-page .pt-box-slider-wrapper .bx-prev {
    right: 100%;
}

.fl-page .pt-box-slider-wrapper .bx-next {
    left: 100%;
}

.fl-page .pt-box-slider-wrapper .bx-pager {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    bottom: 0;
    position: static;
    margin-top: 30px;
}

.fl-page .pt-box-slider-wrapper a.bx-pager-link,
.fl-page .pt-box-slider-wrapper button.bx-pager-link {
    display: block;
    background-color: #979797;
    color: transparent;
    border: 0;
    border-radius: 100%;
    width: 14px;
    height: 14px;
    padding: 0;
    margin: 0;
}

.fl-page .pt-box-slider-wrapper a.bx-pager-link.active,
.fl-page .pt-box-slider-wrapper button.bx-pager-link.active {
    background-color: #040404;
}