/*** ---------- Buttons ---------- ***/
a { color: var(--clr-text); }

.btn, .gform_button, .gform_next_button, .gform_previous_button, .button { 
    --fs: 1.4rem; 
    --lh: 1; 
    --p: 0 1.6rem; 
    --br: 1rem; 
    --gap: .8rem;

    --clr: #fff; --bg-clr: var(--clr-primary); --border: 1px solid var(--clr-primary); --box-shadow: none; 
    --hover-clr: var(--clr); --hover-bg-clr: var(--bg-clr); --hover-border: var(--border); --hover-box-shadow: var(--box-shadow); 
    --focus-clr: var(--hover-clr); --focus-bg-clr: var(--hover-bg-clr); --focus-border: var(--hover-border); --focus-box-shadow: var(--box-shadow); 
    --active-clr: var(--focus-clr); --active-bg-clr: var(--focus-bg-clr); --active-border: var(--focus-border); --active-box-shadow: var(--focus-box-shadow); 

    text-transform: uppercase; font-weight: 700; display: inline-flex; justify-content: center; align-items: center; min-height: 5rem; gap: var(--gap); font-size: var(--fs); line-height: var(--lh); padding: var(--p); color: var(--clr); background: var(--bg-clr); border-radius: var(--br); border: var(--border); box-shadow: var(--box-shadow); text-align: center; text-decoration: none; vertical-align: middle; cursor: pointer; user-select: none; 
    
    transition-duration: var(--ts-duration);
    transition-timing-function: var(--ts-function);

    backdrop-filter: blur(.8rem); -webkit-backdrop-filter: blur(.8rem); font-family: var(--font-primary); transition-property: color, background-color, border-color, box-shadow, -webkit-box-shadow;
}
.btn span, .gform_button span, .gform_next_button span, .gform_previous_button span, .button span { font: inherit; color: inherit; }
.btn i, .gform_button i, .gform_next_button i, .gform_previous_button i { --clr: inherit; --w: 1.9rem; --h: 1.9rem; }

.btn i.wpb-icon--calendar { --w: 1.3rem; --h: 1.3rem; }
.btn i.wpb-icon--arrow-top-right { --w: 1.4rem; --h: 1.4rem; }

.btn:hover, .gform_button:hover, .gform_next_button:hover, .gform_previous_button:hover, .button:hover { color: var(--hover-clr)!important; background: var(--hover-bg-clr)!important; border: var(--hover-border)!important; box-shadow: var(--hover-box-shadow)!important; }
.btn:hover i, .gform_button:hover i, .gform_next_button:hover i, .gform_previous_button:hover i { --clr: var(--hover-clr); }
.btn:focus, .gform_button:focus, .gform_next_button:focus, .gform_previous_button:focus, .gform_button:focus { color: var(--focus-clr)!important; background: var(--focus-bg-clr)!important; border: var(--focus-border)!important; box-shadow: var(--focus-box-shadow)!important; }
.btn:focus i, .gform_button:focus i, .gform_next_button:focus i, .gform_previous_button:focus i, .gform_button:focus i { --clr: var(--focus-clr); }
.btn:active, .gform_next_button:active, .gform_previous_button:active, .button:active { color: var(--active-clr)!important; background: var(--active-bg-clr)!important; border: var(--active-border)!important; box-shadow: var(--active-box-shadow)!important; }
.btn:active i, .gform_next_button:active i, .gform_previous_button:active i { --clr: var(--active-clr); }

.btn.btn--small { --p: 0 1.5rem; --fs: 1.4rem; min-height: 3.3rem; }
.btn.btn--large { --p: 0 2.2rem; --fs: 1.5rem; min-height: 5.2rem; }

.btn.btn--square { --p: 0; aspect-ratio: 1/1; }

.btn.btn--primary, .button { --clr: var(--clr-dark); --bg-clr: var(--clr-primary); --border: 1px solid transparent; }
.btn.btn--primary{ --hover-bg-clr: rgb(var(--clr-primary-rgb), .7); }
.btn.btn--white { --clr: var(--clr-dark); --bg-clr: #fff; --border: 1px solid #fff; --box-shadow: none; --hover-clr: #fff; --hover-bg-clr: var(--clr-dark); --hover-border: 1px solid var(--clr-dark); }
.btn.btn--outline { --clr: #fff; --bg-clr: transparent; --border: 1px solid rgba(255,255,255,.12); --box-shadow: none; --hover-clr: #fff; --hover-bg-clr: var(--clr-dark); --hover-border: 1px solid var(--clr-dark); }

.btn.btn--gradient, .btn.btn--gradient-1 { --bg-clr: transparent; --border: none; --box-shadow: inset 0 0 0px 1px rgba(255,255,255,.12); --hover-bg-clr: var(--clr-primary); --hover-clr: var(--clr-dark); }
.btn.btn--gradient::after, .btn.btn--gradient-1::after { z-index: -1; content: ''; position: absolute; top: .1rem; right: .1rem; bottom: .1rem; left: .1rem; border-radius: var(--br); background: var(--gradient-1); transition: opacity var(--ts-duration) var(--ts-function); }
.btn.btn--gradient-1::after { background: var(--gradient-2); }

.btn.btn--gradient:hover::after, .btn.btn--gradient-1:hover::after,
.btn.btn--gradient:focus::after, .btn.btn--gradient-1:focus::after,
.btn.btn--gradient:active::after, .btn.btn--gradient-1:active::after { opacity: 0; }

.btn:hover i.wpb-icon--arrow-top-right,
.btn:hover i.wpb-icon--arrow-top-right { transform: rotate(45deg); }

.btn-link-wrapper { font-size: 1.5rem; text-transform: uppercase; font-style: italic; }
.btn-link-wrapper .btn.btn--link { border-bottom: .2rem solid #fff!important; min-height: 3rem; }
.btn-link-wrapper > span { opacity: .8; }

.btn.btn--link { --p: 0; --br: 0; --clr: #fff; --bg-clr: transparent; --border: 1px solid transparent; --box-shadow: none; }
.btn.btn--back { --fs: 1.8rem; --p: 0; --br: 0; --clr: var(--clr-primary); --hover-clr: rgb(var(--clr-primary-rgb), .7); --bg-clr: transparent; --border: 1px solid transparent; --box-shadow: none; min-height: auto; backdrop-filter: none; }


.btn-group { --gap: 2.4rem; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-align: center; -ms-flex-align: center; align-items: center; gap: var(--gap); }  
.btn-group.btn-group--flush { --gap: 0; flex-wrap: nowrap; }
.btn-group.btn-group--flush > * { border-radius: 0; }
.btn-group.btn-group--flush > *:first-child { border-top-left-radius: var(--br); border-bottom-left-radius: var(--br); }
.btn-group.btn-group--flush > *:last-child { border-top-right-radius: var(--br); border-bottom-right-radius: var(--br); }

.btn-group.btn-group--align-center{ justify-content: center; }
.btn-group.btn-group--align-right{ justify-content: right; }

@media (min-width: 992px) {
    .btn { --p: 0 2.4rem; }
    .btn.btn--large { --fs: 1.6rem; min-height: 5.8rem; --p: 0 3.2rem; }

    .btn i.wpb-icon--calendar { --w: 1.3rem; --h: 1.3rem; }
}