/*Utility Classes*/

/*Colors*/
:root {
    --color-lightblue: #18BCEE;
    --color-darkblue: #004E8F;
    --color-verydarkblue: #00396A;
    --color-white: #ffffff;
    --color-mediumblue: #008BFF;
    --color-darkmediumblue: #0073D1;
    --color-bluegray: #81A4CD;
    --color-verylightblue: #cfe5f7;
    --color-cream: #F7F7F7;
    --color-black: #000000;
    --color-gray: #77787b;
    --color-blackgray: #444F58;
    --color-darkblack: #383838;
}


/*Background Colors (not a brand color - currently in use)*/
.darkblue-background {
    background-color: #00539f;
}


/*Hide Completely*/
.hide-completely {
    display: none !important;
}


/*Utility class for full width*/
.custom-fullwidth {
    max-width: none !important;
    width: 100%;
}


/*Utility Class - custom-fullwidth*/
.custom-fullwidth>div.container {
    max-width: none !important;
    width: 100%;
    padding-left: 0 !important;
    padding-right: 0 !important;

}

.custom-fullwidth>.container>.row {
    margin-left: 0 !important;
    margin-right: 0 !important;
}


@media (min-width: 990px) {
    .custom-fullwidth .container>.row>.col-md-10.col-lg-12 {
        max-width: none !important;
        display: block;
        flex: none !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .custom-fullwidth .container>.row {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}

@media (min-width: 768px) {
    .custom-fullwidth .container>.row>.col-md-10.col-lg-12 {
        max-width: none !important;
        display: block !important;
        flex: none !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .custom-fullwidth .container>.row {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}

@media (max-width: 800px) {

    .custom-fullwidth .container>.row>.col-md-10.col-lg-12,
    .custom-fullwidth .container>.row {
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
    }
}




/* Utility Classes */
/* ================================
   Margin Top (0px – 100px)
=================================== */

.util-mt-0 {
    margin-top: 0 !important;
}

.util-mt-10 {
    margin-top: 10px !important;
}

.util-mt-20 {
    margin-top: 20px !important;
}

.util-mt-30 {
    margin-top: 30px !important;
}

.util-mt-40 {
    margin-top: 40px !important;
}

.util-mt-50 {
    margin-top: 50px !important;
}

.util-mt-60 {
    margin-top: 60px !important;
}

.util-mt-70 {
    margin-top: 70px !important;
}

.util-mt-80 {
    margin-top: 80px !important;
}

.util-mt-90 {
    margin-top: 90px !important;
}

.util-mt-100 {
    margin-top: 100px !important;
}

/* ================================
   Margin Bottom (0px – 100px)
=================================== */

.util-mb-0 {
    margin-bottom: 0 !important;
}

.util-mb-10 {
    margin-bottom: 10px !important;
}

.util-mb-20 {
    margin-bottom: 20px !important;
}

.util-mb-30 {
    margin-bottom: 30px !important;
}

.util-mb-40 {
    margin-bottom: 40px !important;
}

.util-mb-50 {
    margin-bottom: 50px !important;
}

.util-mb-60 {
    margin-bottom: 60px !important;
}

.util-mb-70 {
    margin-bottom: 70px !important;
}

.util-mb-80 {
    margin-bottom: 80px !important;
}

.util-mb-90 {
    margin-bottom: 90px !important;
}

.util-mb-100 {
    margin-bottom: 100px !important;
}

/* ================================
   Padding Top (0px – 100px)
=================================== */

.util-pt-0 {
    padding-top: 0 !important;
}

.util-pt-10 {
    padding-top: 10px !important;
}

.util-pt-20 {
    padding-top: 20px !important;
}

.util-pt-30 {
    padding-top: 30px !important;
}

.util-pt-40 {
    padding-top: 40px !important;
}

.util-pt-50 {
    padding-top: 50px !important;
}

.util-pt-60 {
    padding-top: 60px !important;
}

.util-pt-70 {
    padding-top: 70px !important;
}

.util-pt-80 {
    padding-top: 80px !important;
}

.util-pt-90 {
    padding-top: 90px !important;
}

.util-pt-100 {
    padding-top: 100px !important;
}

/* ================================
   Padding Bottom (0px – 100px)
=================================== */

.util-pb-0 {
    padding-bottom: 0 !important;
}

.util-pb-10 {
    padding-bottom: 10px !important;
}

.util-pb-20 {
    padding-bottom: 20px !important;
}

.util-pb-30 {
    padding-bottom: 30px !important;
}

.util-pb-40 {
    padding-bottom: 40px !important;
}

.util-pb-50 {
    padding-bottom: 50px !important;
}

.util-pb-60 {
    padding-bottom: 60px !important;
}

.util-pb-70 {
    padding-bottom: 70px !important;
}

.util-pb-80 {
    padding-bottom: 80px !important;
}

.util-pb-90 {
    padding-bottom: 90px !important;
}

.util-pb-100 {
    padding-bottom: 100px !important;
}




/* Block Styles - Utility classes for Block Editor and Core Blocks Selection */

/* Thin */
.mizuho-font-weight-100,
.mizuho-font-weight-100 li {
    font-weight: 100 !important;
}

/* Light */
.mizuho-font-weight-300,
.mizuho-font-weight-300 li {
    font-weight: 300 !important;
}

/* Light Extended */
.mizuho-font-weight-350,
.mizuho-font-weight-350 li {
    font-weight: 350 !important;
}

/* Roman */
.mizuho-font-weight-400,
.mizuho-font-weight-400 li {
    font-weight: 400 !important;
}

/* Medium */
.mizuho-font-weight-500,
.mizuho-font-weight-500 li {
    font-weight: 500 !important;
}

/* Medium Extended */
.mizuho-font-weight-550,
.mizuho-font-weight-550 li {
    font-weight: 550 !important;
}

/* 75 Bold */
.mizuho-font-weight-700,
.mizuho-font-weight-700 li {
    font-weight: 700 !important;
}

/* Heavy Extended */
.mizuho-font-weight-750,
.mizuho-font-weight-750 li {
    font-weight: 750 !important;
}

/* Black Condensed */
.mizuho-font-weight-900,
.mizuho-font-weight-900 li {
    font-weight: 900 !important;
}



/*Block Editor has-background-color*/
.has-gutenberg-blocks .has-background {
    position: relative;
    z-index: 0;
}

/*Adding pseudo element to make background color full width*/
.has-gutenberg-blocks .has-background::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    right: 50%;
    width: 100vw;
    transform: translateX(-50%);
    background-color: inherit;
    z-index: -1;
}


/*Block Editor Color Palette Styles*/
/* Text colors */
.has-lightblue-color {
    color: #18BCEE !important;
}

.has-darkblue-color {
    color: #004E8F !important;
}

.has-verydarkblue-color {
    color: #00396A !important;
}

.has-mediumblue-color {
    color: #008BFF !important;
}

.has-darkmediumblue-color {
    color: #0073D1 !important;
}

.has-bluegray-color {
    color: #81A4CD !important;
}

.has-cream-color {
    color: #f7f7f7 !important;
}

.has-white-color {
    color: #ffffff !important;
}

.has-black-color {
    color: #000000 !important;
}

.has-blackgray-color {
    color: #444F58 !important;
}

.has-gray-color {
    color: #77787b !important;
}

.has-darkblack-color {
    color: #383838 !important;
}

.has-orange-color {
    color: #ce6e3c !important;
}

.has-yellow-color {
    color: #cdbc48 !important;
}

.has-maroon-color {
    color: #933349 !important;
}

.has-purple-color {
    color: #7b4572 !important;
}

.has-lime-color {
    color: #a5ae45 !important;
}

.has-turquoise-color {
    color: #3aaeaf !important;
}



/* Background colors */
.has-primary-blue-background-color {
    background-color: #1a73e8 !important;
}

.has-lightblue-background-color {
    background-color: #18BCEE !important;
}

.has-darkblue-background-color {
    background-color: #004E8F !important;

}

.has-verydarkblue-background-color {
    background-color: #00396A !important;
 
}

.has-mediumblue-background-color {
    background-color: #008BFF !important;
 
}

.has-darkmediumblue-background-color {
    background-color: #0073D1 !important;
  
}

.has-bluegray-background-color {
    background-color: #81A4CD !important;
  
}

.has-cream-background-color {
    background-color: #f7f7f7 !important;
   
}

.has-white-background-color {
    background-color: #ffffff !important;
   
}

.has-black-background-color {
    background-color: #000000 !important;
  
}

.has-blackgray-background-color {
    background-color: #444F58 !important;
   
}

.has-gray-background-color {
    background-color: #77787b !important;
   
}

.has-darkblack-background-color {
    background-color: #383838 !important;
   
}

.has-orange-background-color {
    background-color: #ce6e3c !important;
   
}

.has-yellow-background-color {
    background-color: #cdbc48 !important;

}

.has-maroon-background-color {
    background-color: #933349 !important;
  
}

.has-purple-background-color {
    background-color: #7b4572 !important;
 
}

.has-lime-background-color {
    background-color: #a5ae45 !important;
    
}

.has-turquoise-background-color {
    background-color: #3aaeaf !important;
}


/*Uppercase Block Style*/
.is-style-uppercase {
    text-transform: uppercase !important;
}



/* Lowercase class - add class in block editor */
.is-style-lowercase {
    text-transform: lowercase !important;
}

/* Lowercase Buttons */
.is-style-lowercase .wp-block-button__link {
    text-transform: lowercase !important;
}


/*Block Editor Font Sizes*/
.has-xs-font-size {
    font-size: clamp(0.8125rem, 0.78rem + 0.2vw, 0.875rem) !important; /* 13px → 14px */
}

.has-small-font-size {
    font-size: clamp(0.9375rem, 0.9rem + 0.25vw, 1rem) !important; /* 15px → 16px */
}

.has-medium-font-size {
    font-size: clamp(1rem, 0.95rem + 0.4vw, 1.125rem) !important; /* 16px → 18px */
}

.has-large-font-size {
    font-size: clamp(1.125rem, 1rem + 0.5vw, 1.25rem) !important; /* 18px → 20px */
}

.has-xl-font-size {
    font-size: clamp(1.25rem, 1.1rem + 0.6vw, 1.375rem) !important; /* 20px → 22px */
}

.has-xxl-font-size {
    font-size: clamp(1.375rem, 1.2rem + 0.7vw, 1.5rem) !important; /* 22px → 24px */
}

.has-xxxl-font-size {
    font-size: clamp(2rem, 1.5rem + 1.8vw, 2.25rem) !important; /* 32px → 36px */
}

.has-very-large-heading-font-size {
    font-size: clamp(2.25rem, 1.7rem + 2.5vw, 2.625rem) !important; /* 36px → 42px */
}
