/*
Theme Name: Buska - Hello Elementor Child
Template: hello-elementor
Author: Luson Media (James V. & Max R.)
Version: 3.4.4
Updated: 2025-12-19

*/

#footer-icons i,
#footer-icons .elementor-icon {
    color: #283E7D !important;
}

#event-button {
    display: inline-block;
    background-color: #D7BD87;
    color: #ffffff;
    border-radius: 5px;
    padding: 24px 24px !important;
    text-decoration: none;
    border: 1px solid transparent;
    transition: all 0.3s ease;
    line-height: 0;
    vertical-align: middle;
}

#event-button:hover {
    background-color: #ffffff;
    border: 1px solid #283e7d;
    color: #283e7d;
}

/* GPS Event styling */
.gps-events {
    text-align: center;
}
.gps-events .event-title {
    font-size: 18px;
    margin-bottom: -15px;
    color: #222222;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
}

h1, h2, h3, h4, h5 {
    margin-block-start: 0;
}
.meet-the-team img {
    background: #eee;
}
.elementor-gallery__container .e-gallery-item:first-child .e-gallery-image {
    background-position: top center !important;
}

/*Sticky Header*/
.elementor-location-header {
    position: sticky;
    top: 0;
    z-index: 999;
    transition: transform 0.35s ease;
    will-change: transform;
}

.elementor-location-header.header-hidden {
    transform: translateY(-100%);
}
header .e-con-inner {
    border-bottom: 1px solid #777;         max-width: 1440px !important;
    width: 94% !important;
}
.home header .e-con-inner {
    border-bottom: none;
}
.elementor-button {
    background-color:#D7BD87 !important;
    border: 1px solid #D7BD87 !important;
    color: white !important;
}
.elementor-button:hover {
    background-color:transparent !important;
    border: 1px solid #283E7D !important;
    color: #283E7D !important;

}
.blue .elementor-button:hover {
    background-color: #576ca1 !important;
    border: 1px solid #fff !important;
    color: #fff !important;

}
/*___________*/


/*List Shit*/
ul {
    margin-left: 0;
    padding-left: 20px;
    padding-bottom: 5px;
}
ul li {
    margin-left: 0;
    padding-left: 0px;
    padding-bottom: 5px;
}
@media screen and (max-width: 767px) {
    ul, ul li  {
        list-style-position: inside;
        margin: 0 auto;
        width: fit-content;
        padding-left: 0px;
    }
}
.elementor-icon-list-item {margin-bottom: 15px !important;}

.centered-list {
    list-style-position: inside;
}
.centered-list li {
    padding: 0 0 7px 0;
}
/*Meh Random P justify/center*/
.page-content .elementor-widget-text-editor p, .blog .elementor-widget-text-editor p {
    text-align-last: center;
}
.blog footer .elementor-widget-text-editor  p {
    text-align-last: left;
}
.page-content .elementor-widget-text-editor.left p {
    text-align: left;
    text-align-last: left;
}
.page-content .elementor-widget-text-editor.right p {
    text-align: right;
    text-align-last: right;
}
/*___________*/



/* Home Page Service Section */
.services small {
    margin-bottom: 3px;
    position: relative;
    font-size: 15px;
    display: block;
}
.services .elementor-image-box-description a {
    color: #5E73A7;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 15px;
    transition: all 0.3s;
    margin-top: -7px;
    display: block;
}
.services .elementor-image-box-description a:hover {
    color: #333;
}
.services a {transition: all 0.3s}
.services a:hover {opacity: 0.55;}

/*blog page begin your journey button*/
.elementor-9 .elementor-element.elementor-element-1b636d96 .elementor-button:hover {
    background-color: #ffffff;
    border: 1px solid #283e7d !important;
    color: #283e7d !important;
}

.elementor-9 .elementor-element.elementor-element-1b636d96 .elementor-button {
    background-color: #D7BD87 !important;
    color: #ffffff !important;
    border: 1px solid transparent !important;
    transition: all 0.3s ease;
    line-height: 0;
}

/*___________*/



/* Empowered by Buska Pink */
.page-id-240 .services a {
    color: #c71b79 !important
}
.page-id-240 .services a:hover {
    color: #333 !important;
}
.page-id-240 .elementor-135 .elementor-element.elementor-element-70431442:not(.elementor-motion-effects-element-type-background), .page-id-240 .elementor-135 .elementor-element.elementor-element-26d5f117:not(.elementor-motion-effects-element-type-background), .page-id-240 .elementor-135 .elementor-element.elementor-element-add2c02:not(.elementor-motion-effects-element-type-background), .elementor-135 .elementor-element.elementor-element-add2c02 > .elementor-motion-effects-container > .elementor-motion-effects-layer, .page-id-240 .elementor-135 .elementor-element.elementor-element-0d3ab7d:not(.elementor-motion-effects-element-type-background), .elementor-135 .elementor-element.elementor-element-0d3ab7d > .elementor-motion-effects-container > .elementor-motion-effects-layer {
    background-color: #890754 !important;
}
.page-id-376 .elementor-135 .elementor-element.elementor-element-70431442:not(.elementor-motion-effects-element-type-background), .page-id-376 .elementor-135 .elementor-element.elementor-element-26d5f117:not(.elementor-motion-effects-element-type-background), .page-id-376 .elementor-135 .elementor-element.elementor-element-add2c02:not(.elementor-motion-effects-element-type-background), .elementor-135 .elementor-element.elementor-element-add2c02 > .elementor-motion-effects-container > .elementor-motion-effects-layer, .page-id-376 .elementor-135 .elementor-element.elementor-element-0d3ab7d:not(.elementor-motion-effects-element-type-background)
{
    background-color: #006EB8 !important;
}
.page-id-376 .elementor-135 .elementor-element.elementor-element-1e99f475 .elementor-social-icon {
    background-color: #FFFFFF7A !important;
}
.page-id-240 .elementor-135 .elementor-element.elementor-element-1e99f475 .elementor-social-icon  {
    background-color: #ed5a95 !important;
}
.page-id-240 .elementor-135 .elementor-element.elementor-element-1e99f475 .elementor-social-icon svg {
    fill: #ffffff !important;
}

.page-id-240 .elementor-135 .elementor-element.elementor-element-1e99f475 .elementor-social-icon:hover  {
    background-color: #FFFFFF7A !important;
}
.elementor-135 .elementor-element.elementor-element-1e99f475 .elementor-social-icon svg:hover {
    fill: #ffffff !important;
}

.page-id-376 a.phone, .page-id-240 a.phone {
    color: #FFFFFF7A !important;
}


.page-id-376 a.phone, .page-id-240 a.phone:hover {
    color: #fff !important;
    transition: all 0.3s ease;
}

/*___________*/



/*Blog Page Stuff */
.elementor-widget-image a {
    display: block;
}
.elementor-kit-3 button:focus {
    background-color: transparent !important;
}
.blog a.elementor-button.elementor-button {
    background: transparent !important;
    border: none !important;
    color: #566DA1 !important;
}
.blog a.elementor-button.elementor-button:hover {
    background: transparent !important;
    border: none !important;
    color: #333 !important;
}

.elementor-widget-theme-post-content h3 {
    margin-top: 20px;
}

.elementor-widget-theme-post-content hr { margin: 20px 0;
}


/*___________*/




/*Downloads Page */
.elementor-image-box-content {
    padding: 0 20px 20px;
}
.elementor-1040 .elementor-element.elementor-element-3e5593a .elementor-image-box-description strong {
    color:#283E7D;
}
.elementor-1040 .elementor-element.elementor-element-3e5593a:has(:hover) .elementor-image-box-description strong {
    color: #D6BC87;
}
/*___________*/




/* =========================================================
Virtual Advisor form styling (scoped)
========================================================= */
.gpswp-va-form{
    --va-ink: #fff;
    --va-muted: rgba(33,36,46,.70);
    --va-border: rgba(33,36,46,.14);
    --va-border-strong: rgba(33,36,46,.22);
    --va-bg: #ffffff;
    --va-soft: #F8F9FC;
    --va-accent: #BC9E6D;
    --va-danger: #B42318;

    color: var(--va-ink);
    font-family: inherit;
}

.gpswp-va-form .row{
    margin-left: -10px;
    margin-right: -10px;
}
.gpswp-va-form [class*="col-"]{
    padding-left: 10px;
    padding-right: 10px;
}

/* field blocks */
.gpswp-va-form .form-group{
    margin-bottom: 18px;
}

/* labels */
.gpswp-va-form label{
    display: inline-block;
    margin-bottom: 8px;
    font-weight: 600;
    letter-spacing: .01em;
    color: var(--va-ink);
    font-size: 14px;
}

/* inputs */
.gpswp-va-form .form-control{
    height: 48px;
    padding: 12px 14px;
    border-radius: 5px !important;
    border: 1px solid var(--va-border);
    background: var(--va-bg);
    box-shadow: 0 1px 0 rgba(0,0,0,.02);
    color: #222222 !important;
    font-size: 15px;
    transition: border-color .18s ease, box-shadow .18s ease, transform .06s ease;
}

.gpswp-va-form .form-control::placeholder{
    color: rgba(33,36,46,.45);
}

.gpswp-va-form .form-control:hover{
    border-color: var(--va-border-strong);
}

.gpswp-va-form .form-control:focus{
    outline: none;
    border-color: rgba(188,158,109,.75);
    box-shadow: 0 0 0 4px rgba(188,158,109,.18);
}




/* Recaptcha spacing */
.gpswp-va-form [data-site-key]{
    margin-top: 6px;
}
.gpswp-va-form .g-recaptcha-message span{
    display: inline-block;
    margin-top: 10px;
    color: var(--va-danger) !important;
    font-weight: 600;
}

/* Sending message */
.gpswp-va-form .sending-message{
    background: var(--va-soft);
    border: 1px solid var(--va-border);
    border-radius: 14px;
    padding: 12px 14px;
    margin-bottom: 14px;
}
.gpswp-va-form .sending-message p{
    margin: 0;
    color: var(--va-muted);
    font-weight: 600;
}

/* Submit button */
.gpswp-va-form input[type="submit"].btn.btn-primary, .e-link-in-bio__ctas a .e-link-in-bio__cta-text{
    height: 45px;
    width: 160px;
    padding: 0 10px !important;
    border-radius: 5px;
    border: 1px solid transparent;
    background: #d2bc89 !important;
    color: #fff;
    font-size: 14px;
    letter-spacing: .02em;
    transition: all 0.3;
}

.gpswp-va-form input[type="submit"].btn.btn-primary:hover, .e-link-in-bio__ctas a .e-link-in-bio__cta-text:hover {
    background: #576CA1 !important;
    transition: all 0.3s;
}

.gpswp-va-form input[type="submit"].btn.btn-primary:active{
    transform: translateY(1px);
}

/* Error message area */
.gpswp-va-form .error-message.alert.alert-danger{
    border-radius: 14px;
    border: 1px solid rgba(180,35,24,.25);
    background: rgba(180,35,24,.08);
    color: #7A271A;
    font-weight: 600;
    padding: 12px 14px;
}

/* Optional: mark invalid fields (if your JS adds .has-error or .is-invalid) */
.gpswp-va-form .has-error .form-control,
.gpswp-va-form .form-control.is-invalid{
    border-color: rgba(180,35,24,.45);
    box-shadow: 0 0 0 4px rgba(180,35,24,.12);
}

/* Better mobile spacing */
@media (max-width: 767px){
    .gpswp-va-form .form-control,
    .gpswp-va-form .input-group-btn > .btn{
        height: 46px;
    }
}
/*___________*/

/* CF7 form */
.wpcf7 form .rf-wrap{
    max-width: 100%;
}

/* Section titles */
.wpcf7 form .rf-title{
    font-size: 25px;
    font-weight: 500;
    margin: 0 0 24px;
    color: #1b1b1f;
}
.wpcf7 form .rf-title--spaced{
    margin-top: 22px;
}
.rf-wrap h3 {
    display: flex;
    align-items: center;
    text-align: center;
    font-weight: 400;
    margin: 1.75rem; 0 1.75rem;
    color: #2b2b2b; /* or inherit */
}

.rf-wrap h3::before,
.rf-wrap h3::after {
    content: "";
    flex: 1;
    height: 1px;
    background: currentColor;
    opacity: .35;
    position: relative;
    top: 5px;
}

.rf-wrap h3::before {
    margin-right: 20px;
}

.rf-wrap h3::after {
    margin-left: 20px;
}
/* Grid layout */
.wpcf7 form .rf-grid{
    display: grid;
    column-gap: 18px;
    row-gap: 0px;
    margin-top: -10px
}
.wpcf7 form .rf-grid--4{
    grid-template-columns: repeat(4, minmax(0, 1fr));
}
.wpcf7 form .rf-grid--mt{
    margin-top: 0px;
}

/* Field + label */
.wpcf7 form .rf-field{
    display: block;
    margin: 0;
}
.wpcf7 form .rf-label{
    display: block;
    font-size: 15px;
    font-weight: 600;
    color: #2b2b33;
    margin-bottom: 8px;
}

/* Inputs */
.wpcf7 form input[type="text"],
.wpcf7 form input[type="email"],
.wpcf7 form input[type="tel"]{
    width: 100%;
    height: 42px;
    border: 1px solid rgba(24, 24, 36, 0.10);
    border-radius: 7px;
    background: #c7cbe6; /* lavender fill like the screenshot */
    padding: 10px 12px;
    font-size: 14px;
    color: #101014;
    outline: none;
    box-shadow: none;
}

/* Focus */
.wpcf7 form input:focus{
    border-color: rgba(24, 24, 36, 0.45);
    background: #c1c6e3;
}

/* CF7 validation */
.wpcf7 form .wpcf7-not-valid-tip{
    font-size: 12px;
    margin-top: 6px;
}
.wpcf7 form input.wpcf7-not-valid{
    border-color: rgba(220, 38, 38, 0.55);
}

/* Submit */
.wpcf7 form .rf-actions{
    display: flex;
    justify-content: center;
    margin-top: 22px;
}
.wpcf7 form input[type="submit"]{
    background: #d7bd87; /* gold */
    color: #fff;
    border: 0;
    border-radius: 6px;
    padding: 12px 28px;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    cursor: pointer;
}
.wpcf7 form input[type="submit"]:hover{
    filter: brightness(1.05);
}
.wpcf7 form input[type="submit"]:active{
    transform: translateY(1px);
}

/* Responsive */
@media (max-width: 1024px){
    .wpcf7 form .rf-grid--4{
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (max-width: 600px){
    .wpcf7 form .rf-grid--4{
        grid-template-columns: 1fr;
    }
}

/*___________*/




/*====================================
Mobile Dropdown Stuff ================================= */
@media (max-width: 1024px){
    .elementor-nav-menu__align-end .elementor-nav-menu {
        MARGIN: 0;
        WIDTH: 100% !IMPORTANT;
        PADDING: 0 !IMPORTANT;
        margin-inline-start:unset !Important;
        justify-content: center !important;
    }
    .elementor-nav-menu__align-end .elementor-nav-menu  li {
        width: 100%;
    }
    .elementor-nav-menu--dropdown {
        border-radius: 0px !important;
    }
}
/*___________*/