/* ==========================================================================
   BOOTSTRAP BUTTON CUSTOMIZATION STYLESHEET
   Extends Bootstrap's .btn class for modern flat premium visual identity
   ========================================================================== */

/* Customizing Bootstrap's .btn class */
.btn:focus,
.btn:active{
    outline: none!important;
    border-color: transparent;
    box-shadow: none;
}
.btn {
    border-radius: 0;
    /* Strictly sharp corners */
    font-family: var(--font-museo);
    font-size: 16px;
    font-weight: 300; 
    padding-top: 13px;
    padding-bottom: 13px;
    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); 
    border-radius: 50px;
}

/* Premium flat white button design */
.btn-white {
    background-color: var(--light);
    color: var(--dark) !important;
    border: 1px solid var(--light);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
}

.btn-white:hover,
.btn-white:focus {
    background-color: transparent;
    color: var(--light) !important;
    border-color: var(--light);
    box-shadow: 0 8px 25px rgba(240, 240, 240, 0.15);
}

.btn-icon {
    position: relative;
    padding: 0;
    width: 49px;
    height: 49px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.btn-icon .btn-icon-wrapper {
    right: 12px;
}

.btn-icon .btn-icon-wrapper i {
    font-size: 24px;
}

/* Absolute Floating Icon System */
.btn-has-icon {
    position: relative;
    padding-left: 24px;
    padding-right: 60px;
    /* Reserves space on the right for floating icon */
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    /* Aligns button text strictly left */
} 