/*!
 * Garnet - Master
 * Copyright 2025 Punchmark
 */

/* ==============================
   Typography
============================== */

.display-1,
.display-2,
.display-3,
.display-4 {
    font-family: "garamond-premier-pro-display" !important;
    line-height: 1 !important;
}

.display-1 {
    font-size: calc(var(--bs-h1-size) + 3vw) !important;
}

.display-2 {
    font-size: calc(var(--bs-h2-size) + 2.5vw) !important;
}

.display-3 {
    font-size: calc(var(--bs-h2-size) + 1vw) !important;
}

.display-4 {
    font-size: calc(var(--bs-h2-size) + 0.5vw) !important;
}

.btn-light:hover,
.btn-light:focus {
    color: var(--bs-primary) !important;
}

/* ==============================
   Headings
============================== */

section[data-pagebuilder="section"] [data-widget-element="widgetHeader"] {
    z-index: 2 !important;
    position: relative !important;
}

section[data-pagebuilder="section"] [data-widget-element="widgetHeader"] > small,
section[data-pagebuilder="section"] [data-widget-element="widgetHeader"] > .small {
    display: block !important;
    font-family: var(--bs-p-family) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05rem !important;
    font-weight: 400 !important;
    font-size: 14px !important;
    margin-top: 0px !important;
    margin-bottom: 0px !important;
    color: var(--dark) !important;
    line-height: 1 !important;
}

/* ==============================
   Buttons
============================== */

.btn-link:after {
    display: none !important;
}

/* ==============================
   Global Alert
============================== */

.alert-global {
    background: var(--bs-dark) !important;
}

.alert-global .alert-link {
    text-decoration: underline;
    font-weight: 400 !important;
}

.alert-global .alert-link:hover, 
.alert-global .alert-link:focus, 
.alert-global .alert-link:active {
    text-decoration: none !important;
}

/* ==============================
   Top Toolbar
============================== */

@media (min-width: 768px) {
    .toolbar.top {
        display: none !important;
    }
}

.toolbar {
    background: var(--secondary) !important;
}

.toolbar .toolbar-item > div > a, 
.toolbar .toolbar-item > a {
    color: var(--bs-light) !important;
    opacity: 1;
    transition: opacity 0.2s linear;
}

.toolbar .toolbar-item > div > a:hover, 
.toolbar .toolbar-item > div > a:focus, 
.toolbar .toolbar-item > div > a:active, 
.toolbar .toolbar-item > a:hover, 
.toolbar .toolbar-item > a:focus, 
.toolbar .toolbar-item > a:active {
    color: var(--bs-light) !important;
    opacity: 0.7 !important;
}

@media (min-width: 1200px) {
    .toolbar > .toolbar-inner, 
    .toolbar.container > .toolbar-inner {
        padding: 0.15rem 0.625rem;
    }
}

.toolbar .social-networks .network {
    margin-right: 12px !important;
}

.toolbar .social-networks .network:last-child {
    margin-right: 0 !important;
}

/* ==============================
   Header / Content Toolbar
============================== */

header {
    padding-top: 0 !important;
}

header a#logo {
    min-height: 45px !important;
}

header .main-content > .row > .col {
    height: auto !important;
}

header .content-toolbar .content-toolbar-inner > ul > li > a > i,
header .content-toolbar .content-toolbar-inner > ul > li > a > i::before {
    font-size: 20px !important;
    width: 20px !important;
    height: 20px !important;
}

header .content-toolbar .content-toolbar-inner > ul > li > a > i,
header .content-toolbar .content-toolbar-inner > ul > li > a > i + span {
    font-size: 16px !important;
    color: var(--bs-dark) !important;
}

header .content-toolbar .content-toolbar-inner > ul > li > a > i + span {
    margin-left: 5px !important;
}

header .content-toolbar .content-toolbar-inner > ul > li > a:hover > i,
header .content-toolbar .content-toolbar-inner > ul > li > a:focus > i {
    color: var(--bs-primary) !important;    
    -webkit-text-stroke-width: 1px !important;
    -webkit-text-stroke-color: inherit !important;
}

header .content-toolbar .content-toolbar-inner > ul > li > a:hover > span,
header .content-toolbar .content-toolbar-inner > ul > li > a:focus > span {
    color: var(--bs-dark) !important;
}

@media (min-width: 768px) {    
    header {
        padding-top: 10px !important;
    }
    header a#logo {
        min-height: 65px !important;
    }
    header .main-content > .row > .col {
        height: auto !important;
    }
}

@media (min-width: 768px) AND (max-width: 991px) {
    header .content-toolbar .content-toolbar-inner > ul > li > a > i + span {
        display: none !important;
    }
}

@media (max-width: 991px) {
    header .content-toolbar .content-toolbar-inner > ul > li + li {
        margin-left: 1.25rem !important;
    }     
}

@media (max-width: 767px) {
    header .content-toolbar .content-toolbar-inner > ul + ul {
        margin: 0 !important;
    }
    header .content-toolbar .content-toolbar-inner > ul > li + li {
        margin-left: 1rem !important;
    }
}

@media (max-width: 400px) {
    header .content-toolbar .content-toolbar-inner > ul > li + li {
        margin-left: 0.625rem !important;
    }
}

/* ==============================
   Mobile Navigation
============================== */

@media (max-width: 767px) {
    nav.navbar #main-navigation .mobile-top {
        display: flex;
        flex-flow: column wrap;
    }    
    nav.navbar #main-navigation .mobile-bottom {
        display: none !important;
    }
    nav.navbar .navbar-nav .nav-item .nav-link {
        font-size: 16px !important;
        color: var(--bs-dark) !important;
    }
    nav.navbar .navbar-nav .nav-item .nav-link:hover, 
    nav.navbar .navbar-nav .nav-item .nav-link:focus, 
    nav.navbar .navbar-nav .nav-item .nav-link:active {
        color: var(--bs-primary) !important;
    }
    nav.navbar .navbar-nav .nav-item .nav-link {
        line-height: 1.05 !important;
        box-shadow: none;
        padding: 30px 25px 5px !important;
        text-transform: uppercase !important;
        font-weight: 700 !important;
        font-size: 16px !important;
        letter-spacing: 0.125rem !important;
    }
    nav.navbar .navbar-nav .nav-item.dropdown .dropdown-menu {
        padding-bottom: 17px !important;
    }
    nav.navbar .navbar-nav .nav-item.dropdown .dropdown-menu .dropdown-menu {
        padding-bottom: 0 !important;
    }
    nav.navbar .navbar-nav .nav-item.dropdown .dropdown-menu .dropdown-item {
        padding-left: 25px !important;
        padding-top: 15px !important;
        padding-bottom: 7px !important;
        font-weight: 500 !important;
    }
    nav.navbar .navbar-nav .nav-item.dropdown .dropdown-item, 
    nav.navbar .navbar-nav .nav-item.dropdown .dropdown-submenu, 
    nav.navbar .navbar-nav .nav-item.dropdown .mobile-dropdown,
    nav.navbar .navbar-nav .nav-item.dropdown .dropdown-submenu .dropdown-menu .dropdown-item {
        border-color: transparent !important;
    }
    nav.navbar .navbar-nav .nav-item.dropdown .dropdown-menu .dropdown-menu-children .dropdown-item {
        padding-left: 40px !important;
    }
    nav.navbar .navbar-nav .nav-item > .nav-link-and-plus-wrap,
    nav.navbar .navbar-nav .nav-item .dropdown-menu .dropdown.dropdown-submenu > .nav-link-and-plus-wrap,
    nav.navbar .navbar-nav .nav-item .dropdown-menu .dropdown.dropdown-submenu > .nav-link-and-plus-wrap > .dropdown-plus,
    nav.navbar .navbar-nav .nav-item .dropdown-menu .dropdown.dropdown-submenu > .nav-link-and-plus-wrap > .dropdown-plus > i.icon-plus { 
        align-items: flex-end !important;
    }
    nav.navbar .navbar-nav .nav-item > .nav-link-and-plus-wrap .dropdown-plus,
    nav.navbar .navbar-nav .nav-item.show > .nav-link-and-plus-wrap .dropdown-plus,
    nav.navbar .navbar-nav .nav-item .dropdown-menu .dropdown.dropdown-submenu > .nav-link-and-plus-wrap > .dropdown-plus,
    nav.navbar .navbar-nav .nav-item .dropdown-menu .dropdown.dropdown-submenu.show > .nav-link-and-plus-wrap > .dropdown-plus {
        height: 30px !important;
        width: 40px !important;
        padding-bottom: 4px !important;
        display: flex !important;
        justify-content: flex-start !important;
        align-items: flex-end !important;
    }
    nav.navbar .navbar-nav .nav-item.dropdown .dropdown-menu .dropdown-plus > i::before,
    nav.navbar .navbar-nav > .nav-item.has-a-plus > .nav-link-and-plus-wrap > .dropdown-plus > i.icon-plus::before,
    nav.navbar .navbar-nav .nav-item.dropdown .dropdown-menu .dropdown-submenu.show .nav-link-and-plus-wrap .dropdown-plus > i::before {
        content: "\e909" !important;
        height: 18px !important;
        width: 18px !important;
        transition: all 0.3s ease-in-out !important;
        transform-origin: center !important;
    }    
    nav.navbar .navbar-nav .nav-item > .nav-link-and-plus-wrap .dropdown-plus > i, 
    nav.navbar .navbar-nav .nav-item.show > .nav-link-and-plus-wrap .dropdown-plus > i,
    nav.navbar .navbar-nav .nav-item.dropdown .dropdown-menu .dropdown-plus > i,
    nav.navbar .navbar-nav .nav-item.dropdown .dropdown-menu .dropdown-submenu.show .nav-link-and-plus-wrap .dropdown-plus > i {
        align-items: flex-end !important;
        height: 18px !important;
        width: 18px !important;
        transform-origin: center !important;
    }    
    nav.navbar .navbar-nav > .nav-item.has-a-plus.show > .nav-link-and-plus-wrap > .dropdown-plus > i.icon-plus {
        transform: scale(1) rotate(-180deg) !important;
        transform-origin: center !important;
    }
    nav.navbar .navbar-nav > .nav-item.has-a-plus > .dropdown-menu .dropdown.dropdown-submenu.show > .nav-link-and-plus-wrap > .dropdown-plus > i.icon-plus {
        transform: scale(0.75) rotate(-180deg) !important;
        transform-origin: center !important;
    }
    nav.navbar #main-navigation .mobile-top .mobile-top-search {
        background: #f6f6f6 !important; 
        border-color: var(--bs-input-border-color) !important;
    }
    nav.navbar #main-navigation .mobile-top .input-group {
        background: #ffffff !important;
    }
    nav.navbar #main-navigation .mobile-top-toolbar {
        margin-top: auto !important;
        background: var(--bs-input-bg-color) !important;
        border-top: 1px solid var(--bs-input-border-color) !important;
    }
    nav.navbar #main-navigation .mobile-top-toolbar a {
        line-height: 1.05 !important;
        box-shadow: none !important;
        text-transform: uppercase !important;
        font-size: 15px !important;
        letter-spacing: 0.125rem !important;
    }
    nav.navbar #main-navigation .mobile-top-toolbar .toolbar-item .dropdown-menu a {
        text-transform: none !important;
        font-size: 0.9rem !important;
        font-weight: 500 !important;
        letter-spacing: 0.05rem !important;
    }
    nav.navbar #main-navigation .mobile-top-toolbar .toolbar-item > a {
        justify-content: flex-start !important;
    }
    nav.navbar #main-navigation .mobile-top-toolbar .toolbar-item > a > i {
        display: inline !important;
    }
    nav.navbar #main-navigation .mobile-top-toolbar .toolbar-item > a > i + span {
        display: inline !important;
        margin-left: 7px !important;
        font-weight: 500 !important;
    }
    body.sitemanager-menu-open nav.navbar #main-navigation .mobile-top-toolbar,
    body.sitemanager-menu-closed nav.navbar #main-navigation .mobile-top-toolbar {
        padding-top: 24px !important;
        padding-bottom: 24px !important;
        border-color: rgba(0,0,0,0.1) !important;
    }    
    nav.navbar #main-navigation .mobile-top-toolbar .toolbar-item > a,
    nav.navbar #main-navigation .mobile-top-toolbar .toolbar-item > a.dropdown-toggle {
        padding-top: 14px !important;
        padding-bottom: 14px !important;
        padding-left: 10px !important;
    }    
    nav.navbar #main-navigation .mobile-top-toolbar .toolbar-item > a.dropdown-toggle::after {
        font-family: var(--bs-icon-font) !important;
        content: "\e909" !important;
        transform: rotate(0deg) scale(1.0) !important;
        margin-left: auto !important;
        margin-right: 8px !important;
    }
    nav.navbar #main-navigation .mobile-top-toolbar .toolbar-item.dropdown.show .dropdown-toggle::after, 
    nav.navbar #main-navigation .mobile-top-toolbar .toolbar-item.dropdown.menu-open .dropdown-toggle::after {
        transform: rotate(-180deg) scale(1.0) !important;
    }
}

@media (max-width:575px) {    
    nav.navbar #main-navigation {
        width: calc(100% - 72px) !important;
        transform: translateX(-100%) !important
    }
    html body #page-wrap {
        transform: translateX(0px) !important;
        transition: 300ms ease-in-out 100ms !important
    }
    html body.nav-left-back-open #page-wrap,
    html body.nav-left-back-open.grid-menu-open #page-wrap {
        transform: translateX(calc(100% - 72px)) !important
    }
}

/* ==============================
   Desktop Navigation
============================== */

@media (min-width: 768px) { 
    nav.navbar .navbar-nav:not(.navbar-left):not(.navbar-right) {
        justify-content: space-between !important;
    }
    nav.navbar .navbar-nav .nav-item .nav-link {
        font-size: 16px !important;
        color: var(--bs-dark) !important;
    }
    nav.navbar .navbar-nav .nav-item:not(.dropdown):hover .nav-link,
    nav.navbar .navbar-nav .nav-item:not(.dropdown):focus .nav-link,
    nav.navbar .navbar-nav .nav-item.dropdown-is-open .nav-link,
    nav.navbar .navbar-nav .nav-item.dropdown-is-open:hover .nav-link,
    nav.navbar .navbar-nav .nav-item.dropdown-is-open:focus .nav-link {
        font-weight: 600 !important;
        text-decoration-line: underline !important;
        text-decoration-color: var(--bs-primary) !important;
        text-decoration-style: solid !important;
        text-decoration-thickness: 2px !important;
        text-underline-offset: calc(var(--bs-container-padding-x) * .25) !important;
    }
    nav.navbar .navbar-nav .nav-item.dropdown .dropdown-menu.dropdown-menu-wide .dropdown-item.dropdown-item-parent {
        font-size: 14px !important;
        font-weight: 600 !important;
        letter-spacing: 0.0625rem !important;
        text-transform: uppercase !important;
    }
}

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

footer {
    padding-top: 60px !important;
    background: var(--secondary) !important;
}

footer > .container {
    padding-bottom: 10px !important;
}

footer div.logo {
    margin-top: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

footer div.logo img {
    max-width: 240px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    filter: invert(1) brightness(100%) !important;
}

footer .footerlinks li a {
    display: block !important;
    padding: 0.3125rem 0 !important;
    opacity: 1 !important;
    color: var(--bs-light) !important;
    letter-spacing: 0.1rem !important;
    transition: opacity 0.2s linear !important;
    text-decoration: none !important;
}

footer .footerlinks li a:hover, 
footer .footerlinks li a:focus, 
footer .footerlinks li a:active {
    color: var(--bs-light) !important;
    opacity: 0.7 !important;
}

footer .social-networks {
    margin-top: 1.25rem !important;
    margin-bottom: 1.25rem !important;
}

footer .social-networks .network {
    opacity: 1 !important;
    transition: opacity 0.2s linear !important;
}

footer .social-networks .network:hover, 
footer .social-networks .network:focus, 
footer .social-networks .network:active {
    opacity: 0.7 !important;
}

footer .social-networks .network,
footer .social-networks .network:first-child, 
footer .social-networks .network:last-child {
    margin-left: 10px !important;
    margin-right: 10px !important;
}

footer .subscribe-widget-xl > form > .d-md-flex {
    display: block !important;
}

footer .subscribe-widget-xl > form label {
    font-weight: 500 !important;
    white-space: nowrap !important;
    text-transform: none !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0.625rem !important;
    display: block !important;
}

footer .subscribe-widget-xl > form p {
    margin: 0 auto 1rem auto !important;
    display: block !important;
}

footer p.copyrights {
    padding: 0px 1.25rem !important;
    margin: 2rem auto 2rem auto !important;
}

footer > .footer-section:nth-child(2) {
    padding: 1.25rem !important;
    margin: 2.5rem 0.625rem 0.625rem 0.625rem !important;
    background-color: rgba(255,255,255,0.05) !important;
    border: 1px solid rgba(255,255,255,0) !important;
    border-radius: 0px !important;    
}

footer > .footer-section:nth-child(1) > .container > .row > .col-12.col-sm-12.col-md-auto.col-lg-auto:nth-child(1) {
    order: 2 !important;
}

footer > .footer-section:nth-child(1) > .container > .row > .col-12.col-sm-12.col-md-auto.col-lg-auto:nth-child(2) {
    order: 1 !important;
}

footer > .footer-section:nth-child(1) > .container > .row > .col-12.col-sm-12.col-md-auto.col-lg-auto:nth-child(3) {
    order: 3 !important;
}

@media (min-width: 768px) {
    footer .social-networks {
        margin-top: 1.25rem !important;
        margin-bottom: 0 !important;
    }
    footer > .footer-section:nth-child(1) > .container > .row > .col-12.col-sm-12.col-md-auto.col-lg-auto:nth-child(1) {
        order: 1 !important;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        flex-direction: column !important;
    }
    footer > .footer-section:nth-child(1) > .container > .row > .col-12.col-sm-12.col-md-auto.col-lg-auto:nth-child(2) {
        order: 2 !important;
    }
    footer > .footer-section:nth-child(1) > .container > .row > .col-12.col-sm-12.col-md-auto.col-lg-auto:nth-child(3) {
        order: 3 !important;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        flex-direction: column !important;
    }
    footer > .footer-section:nth-child(2) {
        margin-left: auto !important;
        margin-right: auto !important;
        max-width: 600px !important;
    }
}

@media (max-width: 400px) {
    footer > .footer-section:nth-child(2) .input-group {
        flex-direction: column !important;        
    }
    footer > .footer-section:nth-child(2) .input-group > .form-control {
        width: 100% !important;
        margin-bottom: 0.625rem !important;
    }
    footer > .footer-section:nth-child(2) .input-group > .input-group-btn {
        width: 100% !important;
    }    
    footer > .footer-section:nth-child(2) .input-group > .input-group-btn > .btn {
        width: 100% !important;
    }
    footer > .footer-section:nth-child(2) .input-group > .form-control,
    footer > .footer-section:nth-child(2) .input-group > .input-group-btn > .btn {
        padding: 0.375rem 0.75rem !important;
        height: 40px !important;
        min-height: 40px !important;
    }
}

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

footer a:focus-visible {
    outline: 2px dashed var(--bs-light);
    outline-offset: 2px;
}

/* ==============================
   Dark Section
============================== */

section[data-pagebuilder="section"].dark-section {
    background: var(--bs-dark) !important;
}

/* ==============================
   Accent-section - 2 image layout with large text
============================== */

section[data-pagebuilder="section"].accent-section {
    padding: 0 !important;
}

section[data-pagebuilder="section"].accent-section [data-pagebuilder="section-container"] {
    padding-top: 80px !important;
    padding-bottom: 40px !important;
    padding-left: 0px !important;
    padding-right: 0px !important;
    max-width: 100% !important;
}

section[data-pagebuilder="section"].accent-section [data-pagebuilder="row"] {
    padding: 0 !important;
    margin: 0 !important;
    position: relative !important;
}

section[data-pagebuilder="section"].accent-section [data-pagebuilder="column"] {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

section[data-pagebuilder="section"].accent-section [data-pagebuilder="column"],
section[data-pagebuilder="section"].accent-section [data-pagebuilder="widget"],
section[data-pagebuilder="section"].accent-section [data-pagebuilder="widget"] .content-block,
section[data-pagebuilder="section"].accent-section [data-pagebuilder="widget"] .content-block > .d-flex {
    position: static !important;
}

section[data-pagebuilder="section"].accent-section [data-pagebuilder="widget"].image-block-left .widget-inner {
    max-width: 70% !important;
    margin-left: auto !important;
    margin-right: 0 !important;
}

section[data-pagebuilder="section"].accent-section [data-pagebuilder="widget"].image-block-right .widget-inner {
    max-width: 70% !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    margin-top: 50px !important;
}

section[data-pagebuilder="section"].accent-section.accent-section-alternate [data-pagebuilder="widget"].image-block-left .widget-inner {
    max-width: 70% !important;
    margin-left: auto !important;
    margin-right: 0 !important;
    margin-top: 50px !important;
}

section[data-pagebuilder="section"].accent-section.accent-section-alternate [data-pagebuilder="widget"].image-block-right .widget-inner {
    max-width: 70% !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    margin-top: 0 !important;
}

section[data-pagebuilder="section"].accent-section [data-widget-element="widgetHeader"],
section[data-pagebuilder="section"].accent-section [data-widget-element="widgetParagraph"] {
    color: var(--bs-light) !important;
}

section[data-pagebuilder="section"].accent-section [data-widget-element="widgetHeader"] {
    z-index: 5 !important;
    margin-bottom: 0 !important;
    position: absolute !important;
    top: calc(50% - 80px) !important;
    left: 50% !important;
    transform: translate(-50%,-50%) !important;        
    font-size: 31vw !important;
}

section[data-pagebuilder="section"].accent-section [data-widget-element="widgetParagraph"].image-stack-small-text {
    font-family: var(--bs-h3-family) !important;
    font-style: italic !important;
    text-align: center !important;
    font-size: 18px !important;
    max-width: 100% !important;
    position: absolute !important;
    top: -50px !important;
    left: 0 !important;
    right: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

section[data-pagebuilder="section"].accent-section [data-widget-element="widgetParagraph"]:not(.image-stack-small-text) {
    padding-left: 20% !important;
    padding-right: 20% !important;
    padding-top: 80px !important;
    padding-bottom: 30px !important;
    margin: 0 !important;
    width: 200% !important;
    text-align: center !important;
}

section[data-pagebuilder="section"].accent-section.accent-section-alternate [data-widget-element="widgetParagraph"]:not(.image-stack-small-text) {
    margin: 0 0 0 -100% !important;
}

@media (min-width: 768px) {
    section[data-pagebuilder="section"].accent-section [data-pagebuilder="section-container"] {
        padding-top: 80px !important;
        padding-bottom: 80px !important;
    }
    section[data-pagebuilder="section"].accent-section [data-pagebuilder="widget"].image-block-left .widget-inner, 
    section[data-pagebuilder="section"].accent-section [data-pagebuilder="widget"].image-block-right .widget-inner {
        max-width: 60% !important;
    }
    section[data-pagebuilder="section"].accent-section.accent-section-alternate [data-pagebuilder="widget"].image-block-left .widget-inner,
    section[data-pagebuilder="section"].accent-section.accent-section-alternate [data-pagebuilder="widget"].image-block-right .widget-inner {
        max-width: 60% !important;
    }
    section[data-pagebuilder="section"].accent-section [data-pagebuilder="widget"].image-block-right .widget-inner {
        margin-top: 160px !important;
    }
    section[data-pagebuilder="section"].accent-section.accent-section-alternate [data-pagebuilder="widget"].image-block-right .widget-inner {
        margin-top: 0 !important;
    }
    section[data-pagebuilder="section"].accent-section.accent-section-alternate [data-pagebuilder="widget"].image-block-left .widget-inner {
        margin-top: 160px !important;
    }
    section[data-pagebuilder="section"].accent-section [data-widget-element="widgetHeader"] {
        font-size: 28vw !important;
    } 
    section[data-pagebuilder="section"].accent-section [data-widget-element="widgetParagraph"].image-stack-small-text {
        font-size: 24px !important;
        text-align: right !important;
        max-width: 60% !important;
        top: 0 !important;
        left: 20% !important;
        right: 0 !important;
    }
    section[data-pagebuilder="section"].accent-section [data-widget-element="widgetParagraph"]:not(.image-stack-small-text) {
        padding-left: 40% !important;
        padding-right: 30px !important;
        padding-top: 80px !important;
        padding-bottom: 40px !important;
        width: 100% !important;
        text-align: left !important;
    }    
    section[data-pagebuilder="section"].accent-section.accent-section-alternate [data-widget-element="widgetParagraph"].image-stack-small-text {
        text-align: left !important;
        max-width: 60% !important;
        top: 0 !important;
        left: 20% !important;
        right: 0px !important;
    }    
    section[data-pagebuilder="section"].accent-section.accent-section-alternate [data-widget-element="widgetParagraph"]:not(.image-stack-small-text) {
        padding-left: 40px !important;
        padding-right: 40% !important;
        padding-top: 80px !important;
        padding-bottom: 40px !important;
        margin: 0 !important;
        width: 100% !important;
        text-align: left !important;
    }
    
}

@media (min-width: 1200px) {
    section[data-pagebuilder="section"].accent-section [data-pagebuilder="section-container"] {
        padding-top: 100px !important;
        padding-bottom: 100px !important;
    }
    section[data-pagebuilder="section"].accent-section.accent-section-alternate [data-pagebuilder="section-container"] {
        padding-top: 100px !important;
        padding-bottom: 100px !important;
    }
}


/* =================================
   Testimonials Carousel
================================= */

.testimonials-carousel .owl-carousel .owl-item .review-description::before,
.testimonials-carousel .owl-carousel .owl-item .review-description::after {
    display: none !important;
}

.testimonials-carousel::before, 
.testimonials-carousel::after {
    position: absolute !important;
    top: 0 !important;
    font-size: 20vw !important;
    line-height: 1 !important;
    color: var(--primary) !important;
    font-family: var(--bs-h2-family) !important;
    font-style: normal !important;
}

.testimonials-carousel::before {
    content: open-quote !important;
    left: 0 !important;
}

.testimonials-carousel::after {
    content: close-quote !important;
    right: 0 !important;
}

.testimonials-carousel::before {
    top: 1rem !important;
}

.testimonials-carousel::after {
    top: 1rem !important;
}

.testimonials-carousel .star-rating i {
    color: var(--primary) !important;
}

.testimonials-carousel .testimonials-owl-carousel .owl-item .review-description {
    padding: 0 10vw !important;
}

.testimonials-carousel .testimonials-owl-carousel .owl-item .review-description::before, 
.testimonials-carousel .testimonials-owl-carousel .owl-item .review-description::after {
    display: none !important;
}

@media (min-width: 768px) {
    .testimonials-carousel::before, 
    .testimonials-carousel::after {
        font-size: 10vw !important;
    }
}
  
@media (min-width: 1200px) {
    .testimonials-carousel::before, 
    .testimonials-carousel::after {
        font-size: 145px !important;
    }
    .testimonials-carousel .testimonials-owl-carousel .owl-item .review-description {
        padding: 0 100px !important;
    }
}

/* =================================
   Staff Widget
================================= */

section[data-pagebuilder="section"] .meet-our-staff {
    margin-top: 0 !important;
}

section[data-pagebuilder="section"] .meet-our-staff-grid { 
    margin-top: 1.25rem !important;
}

section[data-pagebuilder="section"] .meet-our-staff .staff-member-name, 
section[data-pagebuilder="section"] .meet-our-staff .staff-member-title,
section[data-pagebuilder="section"] .meet-our-staff-grid .staff-member-name,
section[data-pagebuilder="section"] .meet-our-staff-grid .staff-member-title {
    text-align: center !important;
}

section[data-pagebuilder="section"] .meet-our-staff .staff-member-name,
section[data-pagebuilder="section"] .meet-our-staff-grid .staff-member-name {
    font-size: var(--bs-h3-size) !important;
    font-family: var(--bs-h3-family) !important;
    color: var(--primary) !important;
    margin-top: -10px !important;
    position: relative !important;
    z-index: 2 !important;
}

section[data-pagebuilder="section"] .meet-our-staff-grid .staff-member-name {
    margin-top: 0px !important;
}

section[data-pagebuilder="section"] .meet-our-staff .staff-member-title,
section[data-pagebuilder="section"] .meet-our-staff-grid .staff-member-title {
    text-transform: uppercase !important;
    letter-spacing: 0.05rem !important;
    font-weight: 500 !important;
    font-size: 14px !important;
    margin-top: 1px !important;
}

/* =================================
   Store Services Widget
================================= */

.widget-store-services {
    position: relative !important;
    border-top: 1px solid var(--bs-light) !important;
    margin-top: 1.25rem !important;
    padding-top: 1.75rem !important;
}

.widget-store-services,
.widget-store-services .row,
.widget-store-services .col-12,
.widget-store-services .service-block,
.widget-store-services .service-block .service-title,
.widget-store-services .service-block .service-description {
    color: inherit;
}

.widget-store-services .service-description {
    display: none !important;
}

.widget-store-services .service-block .service-title {    
    transition: opacity 0.15s linear !important;
    opacity: 1 !important;
    font-size: var(--bs-p-size) !important;
    font-family: var(--bs-p-family) !important;
    font-weight: 500 !important;
    letter-spacing: 0.06rem !important;
}

.widget-store-services .service-block:hover .service-title,
.widget-store-services .service-block:focus .service-title {
    opacity: 0.75 !important;
}

/* =================================
   Custom Galleries in Tabs
================================= */

section[data-pagebuilder="section"].custom-gallery-garnet .nav-tabs {
    border: none !important;
    margin-bottom: 2rem !important;
}

section[data-pagebuilder="section"].custom-gallery-garnet .nav-tabs .nav-item .nav-link, 
section[data-pagebuilder="section"].custom-gallery-garnet .nav-tabs .nav-item .nav-link.active {
    background: transparent !important;
    color: #fff !important;
}

section[data-pagebuilder="section"].custom-gallery-garnet .nav-tabs .nav-item .nav-link {
    border: none !important;
    font-family: var(--bs-h3-family) !important;
    font-style: italic !important;
    font-size: 24px !important;
}

section[data-pagebuilder="section"].custom-gallery-garnet .nav-tabs .nav-item .nav-link:hover, 
section[data-pagebuilder="section"].custom-gallery-garnet .nav-tabs .nav-item .nav-link:focus, 
section[data-pagebuilder="section"].custom-gallery-garnet .nav-tabs .nav-item .nav-link.active {
   color: var(--primary) !important;
}

section[data-pagebuilder="section"].custom-gallery-garnet .nav-tabs .nav-item {
    position: relative;
}

section[data-pagebuilder="section"].custom-gallery-garnet .nav-tabs .nav-item:before {
    content: '•';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: -3px;
    color: #fff !important;
    font-size: 16px;
}

section[data-pagebuilder="section"].custom-gallery-garnet .nav-tabs .nav-item:first-child:before {
    display: none !important;
}

section[data-pagebuilder="section"].custom-gallery-garnet .gallery-item-image {
    position: relative !important;
}

section[data-pagebuilder="section"].custom-gallery-garnet .gallery-item-image:hover::before,
section[data-pagebuilder="section"].custom-gallery-garnet .gallery-item-image:focus::before,
section[data-pagebuilder="section"].custom-gallery-garnet .gallery-item:hover .gallery-item-image::before,
section[data-pagebuilder="section"].custom-gallery-garnet .gallery-item:focus .gallery-item-image::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: rgba(var(--bs-primary-rgb),0.5) !important;
    z-index: 10 !important;
    transition: background 0.3s ease-in-out !important;
}

/* ==============================
   Offset Column Slider Section
============================== */

section[data-pagebuilder="section"].offset-column-slider, 
section[data-pagebuilder="section"].offset-column-slider [data-pagebuilder="section-container"],
section[data-pagebuilder="section"].offset-column-slider [data-pagebuilder="section-container"] [data-pagebuilder="row"] {
    overflow: visible !important;
}    

section[data-pagebuilder="section"].offset-column-slider [data-pagebuilder="section-container"],
section[data-pagebuilder="section"].offset-column-slider [data-pagebuilder="section-container"] [data-pagebuilder="row"] {
    background: inherit !important;
}

section[data-pagebuilder="section"].offset-column-slider .offset-column-slider-carousel {
    padding-top: 30px !important;
    padding-right: 60px !important;
    padding-left: 0.625rem !important;
    padding-right: 0.625rem !important;
    position: relative !important;
    z-index: 1 !important;
}

section[data-pagebuilder="section"].offset-column-slider .offset-column-slider-carousel .owl-stage-outer {
    width: 150% !important;
    max-width: 150% !important; 
    overflow: visible !important;
    transform: none;
}

section[data-pagebuilder="section"].offset-column-slider .offset-column-slider-carousel .owl-dots {
    transform: translateX(0px) !important;
}

section[data-pagebuilder="section"].offset-column-slider .offset-column-slider-header {
    display: flex !important;
    align-items: center !important;
    background: inherit !important;
    position: relative !important;
    z-index: 10 !important;
}

@media (min-width:768px) {
    section[data-pagebuilder="section"].offset-column-slider .offset-column-slider-header {
        padding-left: 30px !important;
    }
}

section[data-pagebuilder="section"].offset-column-slider .offset-column-slider-header:after {
    content: '' !important;
    position: absolute !important;
    background: inherit !important;
    height: 100% !important;
    width: 9999px !important;
    right: -6px !important;
    top: 0 !important;
    z-index: -1 !important;
}

/* ==============================
   PageBuilder Only - Owl Carousel - Navigation (Theme wide)
============================== */

section[data-pagebuilder="section"] .owl-carousel .owl-nav {
    opacity: 1 !important;
}

section[data-pagebuilder="section"] .owl-carousel .owl-nav button {
    background: rgba(255,255,255,0.35) !important;
    border-radius: 50% !important;
}

section[data-pagebuilder="section"] .owl-carousel .owl-nav button i {
    color: var(--bs-dark) !important;
    font-size: 16px !important;
    -webkit-text-stroke-width: 1px !important;
    -webkit-text-stroke-color: inherit !important;
}

section[data-pagebuilder="section"] .owl-carousel .owl-nav button:hover, 
section[data-pagebuilder="section"] .owl-carousel .owl-nav button:focus {
    background: rgba(255,255,255,1) !important;
}

section[data-pagebuilder="section"] .owl-carousel .owl-nav button:hover i,
section[data-pagebuilder="section"] .owl-carousel .owl-nav button:focus i {
    color: var(--bs-primary) !important;
}

section[data-pagebuilder="section"] .owl-carousel .owl-nav button.disabled {
    opacity: 0 !important;
    pointer-events: none !important;
}

section[data-pagebuilder="section"] [data-pagebuilder="section-container"] .owl-carousel .owl-nav button.owl-prev {
    left: 5px !important;
}

section[data-pagebuilder="section"] [data-pagebuilder="section-container"] .owl-carousel .owl-nav button.owl-next {
    right: 5px !important;
}

section[data-pagebuilder="section"] [data-pagebuilder="section-container"] .owl-carousel .owl-nav button.owl-prev i {
    transform: translateX(-1px) !important;
}

section[data-pagebuilder="section"] [data-pagebuilder="section-container"] .owl-carousel .owl-nav button.owl-next i {
    transform: translateX(1px) !important;
}

section[data-pagebuilder="section"] .owl-carousel .owl-dots,
section[data-pagebuilder="section"] .owl-carousel .owl-dots.disabled {
    opacity: 1 !important;
    visibility: visible !important;
    display: flex !important;
    height: 5px !important;
    max-height: 5px !important;
    margin-top: 40px !important;
    margin-bottom: 40px !important;
    max-width: 80% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

section[data-pagebuilder="section"] .owl-carousel .owl-dots button.owl-dot {
    flex: 1 !important;
    width: auto !important;
    height: 5px !important;
    border-radius: 0 !important;
    background: rgba(0,0,0,0.05) !important;
    margin: 0 !important;
    opacity: 1 !important;
}

section[data-pagebuilder="section"] .owl-carousel .owl-dots button.owl-dot.active {
    background: var(--bs-primary) !important;
}

section[data-pagebuilder="section"] .owl-carousel .owl-dots.disabled,
section[data-pagebuilder="section"] .owl-carousel .owl-dots button.owl-dot span {
    display: none !important;
}

/* ==============================
   Product carousel
============================== */

section[data-pagebuilder="section"] .owl-carousel .owl-item .product-title {
    line-height: 1 !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05rem !important;
    padding-top: 1.25rem !important;    
}

section[data-pagebuilder="section"] .owl-carousel .owl-item .product-price {
    line-height: 1 !important;
    font-size: 14px !important;
    font-weight: 300 !important;
    letter-spacing: 0.05rem !important;
    padding-bottom: 1.25rem !important;
}

section[data-pagebuilder="section"].default .widget-product-carousel .owl-carousel .owl-item .widget > a.widget-inner {
    position: relative !important;
}

section[data-pagebuilder="section"].default .widget-product-carousel .owl-carousel .owl-item .widget > a.widget-inner::after {
    content: '' !important;
    display: block !important;
    background: var(--bs-dark) !important;
    opacity: .03 !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 10 !important;
}


/* ==============================
   Paragraphs as titles (widgets, not banners...)
============================== */

section[data-pagebuilder="section"] .owl-carousel .owl-item [data-widget-element="widgetParagraph"] {
    line-height: 1 !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    letter-spacing: 0.05rem !important;
    padding-left: 0.625rem !important;
    padding-right: 0.625rem !important;
}

/* ==============================
   Social Grid Widget
============================== */

section[data-pagebuilder="section"].garnet-social-grid {
    padding: 2.5rem 0.625rem 1.25rem 0.625rem !important;
}

section[data-pagebuilder="section"].garnet-social-grid [data-pagebuilder="section-container"] {
    padding: 0 1.25rem !important;
}

section[data-pagebuilder="section"] [data-widget-element="widgetHeader"].social-grid-heading,
section[data-pagebuilder="section"].garnet-social-grid [data-widget-element="widgetHeader"] {
    margin-bottom: -20px !important;    
    font-size: 70px !important;
}

section[data-pagebuilder="section"].garnet-social-grid .grid .grid-item > .widget {
    padding: 0 !important;
}

section[data-pagebuilder="section"].garnet-social-grid .grid .grid-sizer, 
section[data-pagebuilder="section"].garnet-social-grid .grid .grid-item,
section[data-pagebuilder="section"].garnet-social-grid .grid .grid-item-double-width {
    width: 50% !important;
}

section[data-pagebuilder="section"].garnet-social-grid .social-description {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

section[data-pagebuilder="section"].garnet-social-grid .social-interactions,
section[data-pagebuilder="section"].garnet-social-grid .star-rating {
    display: none !important;
}

@media (min-width: 768px) {
    section[data-pagebuilder="section"].garnet-social-grid .grid .grid-sizer, 
    section[data-pagebuilder="section"].garnet-social-grid .grid .grid-item,
    section[data-pagebuilder="section"].garnet-social-grid .grid .grid-item-double-width {
        width: 20% !important;
    }
    section[data-pagebuilder="section"] [data-widget-element="widgetHeader"].social-grid-heading,
    section[data-pagebuilder="section"].garnet-social-grid [data-widget-element="widgetHeader"] {
        margin-bottom: -20px !important;    
        font-size: 70px !important;
    }
    section[data-pagebuilder="section"] [data-widget-element="widgetHeader"].social-grid-heading > small,
    section[data-pagebuilder="section"].garnet-social-grid [data-widget-element="widgetHeader"] > small {
        margin-bottom: 0px !important;
    }
    section[data-pagebuilder="section"].garnet-social-grid .grid .grid-item:nth-child(7) {
        display: none !important;
    }
}

@media (min-width: 1200px) {
    section[data-pagebuilder="section"] [data-widget-element="widgetHeader"].social-grid-heading,
    section[data-pagebuilder="section"].garnet-social-grid [data-widget-element="widgetHeader"] {
        margin-bottom: -40px !important;    
        font-size: 120px !important;
    }
}

/* ==============================
   Text Overlay Widget (Allows for content flow sizing)
============================== */

[data-widget-element="widgetBgImageSrc"] > .widget-text-overlay {
    position: absolute !important;
}

[data-widget-element="widgetBgImageSrc"] > img.opacity-on.placeholder-shown {
    position: absolute !important;    
    width: 100% !important;
    height: 100% !important;
}

[data-widget-element="widgetBgImageSrc"] > img:not(.opacity-on.placeholder-shown) + .widget-text-overlay,
[data-widget-element="widgetBgImageSrc"] > img:not(.opacity-on.placeholder-shown) + .background-click-area + .widget-text-overlay {
    position: absolute !important;
}

/* =========================
    Image Icons
========================= */

section[data-pagebuilder="section"] [data-widget-element="widgetBgImageSrc"].bg-half {
    background-size: auto 70% !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}

section[data-pagebuilder="section"] [data-widget-element="widgetBgImageSrc"].bg-contain {
    background-size: contain !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}

section[data-pagebuilder="section"] [data-widget-element="widgetBgImageSrc"].bg-contain.max-width-100,
section[data-pagebuilder="section"] [data-widget-element="widgetBgImageSrc"].bg-contain.max-width-200 {
    max-width: 48px !important;
}