
:root{
  --blocks-padding: .5rem;
  --blocks-color-level-1: #f19dc9;
  --blocks-color-level-2: #f19dc9;
  --blocks-color-level-3: #db2886;
  --bs-offcanvas-padding-y: 2rem;
  --bs-offcanvas-padding-xy: 2rem;
}

body {
  font-family: var(--bs-body-font-family);
  font-size: var(--bs-body-font-size);
  font-weight: var(--bs-body-font-weight);
  line-height: var(--bs-body-line-height);
  color: var(--bs-body-color);
  background-color: var(--bs-body-bg);
}

.h1, .h2, .h3, .h4, .h5, h1, h2, h3, h4, h5 {
  font-weight: 600;
  margin-top: 2.5rem;
  margin-bottom: 1.5rem;
  letter-spacing: -.03rem;
  line-height: 1.2;
}
h1, .h1{
  font-size: var(--fs-h1);
}
h2, .h2{
  font-size: var(--fs-h2);
}

h3, .h3{
  font-weight: 600;
  font-size: var(--fs-h3);
}
h4{
  font-weight: 600;
  font-size: var(--fs-h4);
}

p{
  margin-top: 1.4rem;
  margin-bottom: 1.4rem;
}

a{
  color: inherit;
  text-decoration: none;
}

article a{
  text-decoration: underline;
}

html :where(.wp-block) {
  max-width: unset;
}
html :where(.wp-block)[data-align=wide] {
  max-width: unset;
}
html :where(.editor-styles-wrapper) .block-editor-block-list__layout.is-root-container>.wp-block[data-align=full] {
    margin-left: unset;
    margin-right: unset;
}
div[class*="wp-block"]{
  margin-bottom: 1rem;
}
.block-editor-block-list__layout.is-root-container > .alignfull {
  max-width: 100% !important;
}

.fs-xsmall{font-size: var(--fs-xsmall)}
.fs-small{font-size: var(--fs-small)}
.fs-medium{font-size: var(--fs-medium)}
.fs-large{font-size: var(--fs-large)}
.fs-xlarge{font-size: var(--fs-xlarge)}

.g-icon{

}


.text-cursive{
  font-family: "Playfair Display", serif;
  font-style: italic;
  font-weight: 800;
  font-size: 35px !important;
  line-height: 1.25;
}

@media (min-width: 769px) {
  .wp-block-cover{
    padding: 2em;
  }
  .text-cursive{
    font-size: 45px !important;
  }
}

.wp-block-quote {
  font-weight: 600;
  padding-left: 1.3rem;
  position: relative;
  overflow: hidden;
  margin-top: 1.6rem;
  margin-bottom: 1.6rem;
}
.wp-block-quote::before{
  position: absolute;
  color: var(--color-black);
}
.wp-block-quote p {
  margin: 0;
}
.wp-block-quote p + p {
  margin-top: 1rem;
}
.wp-block-quote::before {
  content: '"';
  left: 0;
  font-size: 1.4em;
  line-height: 1;
}

.block-editor-block-list__layout.is-root-container > :where(:not(.alignleft):not(.alignright):not(.alignfull)){
  max-width: var(--wp--style--global--content-size) !important;
}

 .is-layout-constrained > .row{
  margin-right: calc(-.5* var(--bs-gutter-x)) !important;
  margin-left: calc(-.5* var(--bs-gutter-x)) !important;
}

/**
 * Groups
 */
 .wp-block-post-content .wp-block-group{
   /* padding: var(--blocks-padding); */
   border: 1px dashed var(--blocks-color-level-1);
 }

 /* Default container (similar to Bootstrap .container) */
/* .wp-block-group {
     --bs-gutter-x: 1.5rem;
     --bs-gutter-y: 0;
     width: 100%;
     max-width: 1320px;
     margin-left: auto;
     margin-right: auto;
     padding-right: calc(var(--bs-gutter-x)* .5);
     padding-left: calc(var(--bs-gutter-x)* .5);
 } */

 /* Wide-aligned block (similar to Bootstrap .container-fluid with a max-width) */
 /* .wp-block-group.alignwide,.wp-block[data-align="wide"] > .wp-block-group {
     width: 90%;
     max-width: 1320px;
     margin-left: auto;
     margin-right: auto;
 } */

 /* Full-width block (similar to Bootstrap .container-fluid) */
 /* .wp-block-group.alignfull, .wp-block[data-align="full"] > .wp-block-group {
     width: 100vw;
     max-width: 100%;
     margin-left: 0;
     margin-right: 0;
     padding-right: calc(var(--bs-gutter-x)* .5);
     padding-left: calc(var(--bs-gutter-x)* .5);
 } */


 @media (max-width: 768px) {
    .container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl, .row{
      --bs-gutter-x: 3rem;
    }
     body:not(.editor-styles-wrapper) .wp-block-group {
         padding-left: 0;
         padding-right: 0;
     }
    body:not(.editor-styles-wrapper) .wp-block-group.alignwide {
         width: 100%;
     }
 }
 @media (max-width: 576px) {

     .wp-block-group {
         max-width: 100%;
         padding-left: 10px;
         padding-right: 10px;
     }
 }


 /**
  * Columns
  */
  .wp-block-columns{
    --bs-gutter-x: 1.5rem;
    --bs-gutter-y: 0;
    display: flex;
    flex-wrap: wrap;
    margin-top: calc(-1* var(--bs-gutter-y));
    margin-right: calc(-.5* var(--bs-gutter-x));
    margin-left: calc(-.5* var(--bs-gutter-x));
    gap: 0;
  }

  .wp-block-post-content .wp-block-columns{
    --bs-gutter-y: 0 !important;
    padding: .5rem;
    border: 1px dashed var(--blocks-color-level-1);
  }
  .wp-block-post-content .wp-block-column{
    border: 1px dashed var(--blocks-color-level-2);
  }

  .wp-block-columns .wp-block-column{
    flex-shrink: 0;
    width: 100%;
    max-width: 100%;
    padding-right: calc(var(--bs-gutter-x)* .5);
    padding-left: calc(var(--bs-gutter-x)* .5);
    margin-top: unset;
    /* flex: 1 0 0%; */
  }

  /**
   * Background images & overlay
   */
  .wp-block-columns.has-background-image,
  .wp-block-column.has-background-image,
  div.has-background-image[class*="col"]{
    position: relative;
  }

  .wp-block-columns.has-background-image:before,
  .wp-block-column.has-background-image:before,
  div.has-background-image[class*="row"] > .background-image:before,
  div.has-background-image[class*="col"] > .background-image:before{
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: var(--bg-overlay-opacity);
    background-color: #000;
    z-index: 0;
  }
  .wp-block-column.has-background-image > *{
    z-index: 1;
    position: relative;
  }

  div.has-background-image[class*="col"] > .background-image{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: -1;
  }

  div.has-background-image[class*="col"] > .background-image > img{
    width: 100%;
   height: 100%;
   object-fit: cover;
   display: block;
  }

  /*------------------------------------*\
    Forms
  \*------------------------------------*/
  .form-label{
    font-size: 17px;
    margin-bottom: .3rem;
    font-weight: 400;
    color: var(--color-grey-dark);
  }

  .form-control, .form-select{
    padding: .704rem 1rem;
    font-size: 17px;
    border-radius: 10px;
    border: 1px solid var(--color-grey);
  }

  .form-control:focus, .form-select:focus, .form-check-input:focus{
    box-shadow: 0 0 0 .25rem rgb(var(--color-primary-rgb) / 25%);
    border-color: var(--color-primary);
  }

  .form-text{
    font-size: 15px;
    color: var(--color-grey-dark);
  }

  .form-check-label{
    font-size: 17px;
    font-weight: 400;
    color: var(--color-grey-dark);
  }

  .form-check{
    padding-left: 1.8em;
  }
  .form-check-input{
    width: 1.2em;
    height: 1.2em;
    margin-left: -1.8em;
    border-color: var(--color-grey);
  }
  .form-check-input:checked {
    background-color: var(--color-primary);
    border-color: var(--color-primary);
  }


  /**
   * Buttons
   */
  .wp-block-buttons{
    display: flex;
    gap: .5rem;
    margin: 2.5rem 0 2rem;
    flex-wrap: wrap;
  }
  .wp-block-buttons>.wp-block-button {
    white-space: nowrap;
  }
  .wp-block-button__link {
    --bs-btn-padding-x: 2.5rem;
    --bs-btn-padding-y: calc(1.4em - 2px);
    --bs-btn-font-size: 14px;
    --bs-btn-font-weight: 600;
    --bs-btn-line-height: 1.2;
    --bs-btn-border-radius: 15px;
    --bs-btn-color: var(--color-white);
    --bs-btn-bg: var(--color-black);
    --bs-btn-border-width: 1px;
    --bs-btn-border-color: var(--color-black);
    --bs-btn-hover-color: var(--color-white);
    --bs-btn-hover-bg: var(--color-black);
    --bs-btn-hover-border-color: transparent;
    --bs-btn-active-color: var(--bs-body-color);
    --bs-btn-active-bg: var(--bs-btn-bg);
    --bs-btn-active-border-color: transparent;
    --bs-btn-text-color: var(--color-black);
    --bs-btn-text-hover-color: var(--color-grey-dark);
    --bs-btn-disabled-opacity: 0.65;
    padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
    font-family: var(--bs-btn-font-family);
    font-size: var(--bs-btn-font-size);
    font-weight: var(--bs-btn-font-weight);
    line-height: var(--bs-btn-line-height);
    color: var(--bs-btn-color) !important;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: .04rem;
    vertical-align: middle;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);
    border-radius: var(--bs-btn-border-radius);
    background-color: var(--bs-btn-bg) !important;
    transition: color .05s ease-in-out, background-color .05s ease-in-out, border-color .05s ease-in-out;
    transition: none;
    position: relative;
  }

  /* Styles */
  .is-style-outline > .wp-block-button__link{
    border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);
    padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
    --bs-btn-bg: transparent;
    --bs-btn-color: var(--color-black);
  }

  .is-style-text > .wp-block-button__link{
    --bs-btn-bg: transparent;
    --bs-btn-hover-bg: transparent;
    --bs-btn-active-bg: transparent;
    --bs-btn-active-border-color: transparent;
    --bs-btn-hover-border-color: transparent;
    --bs-btn-color: var(--bs-btn-text-color);
    --bs-btn-hover-color: var(--bs-btn-text-hover-color);
    --bs-btn-border-color: transparent;
  }

  /* States */
   .wp-block-button__link:before{
    content: "";
    height: calc(100% + (var(--bs-btn-border-width) * 2));
    width: 100%;
    position: absolute;
    top: calc(var(--bs-btn-border-width) * -1);
    left: 0;
    border-radius: var(--bs-btn-border-radius);
    background-color: #ffffff;
    opacity: 0;
    transition: opacity .05s ease-in-out;
  }
  .wp-block-button__link:hover:before{
    opacity: 0.15;
  }
  .wp-block-button__link:active:before{
    opacity: 0.2;
  }

  .is-style-text > .wp-block-button__link:before{
    background-color: var(--bs-btn-color);
  }
  .is-style-outline > .wp-block-button__link:before{
    background-color: var(--bs-btn-border-color);
  }

  .wp-block-button__link:active,
  .wp-block-button__link.active {
    /* --bs-btn-bg: var(--bs-btn-active-bg);
    --bs-btn-color: var(--bs-btn-active-color);
    --bs-btn-border-color: var(--bs-btn-active-border-color); */
  }
  .wp-block-button__link:hover {
    /* --bs-btn-bg: var(--bs-btn-hover-bg);
    --bs-btn-color: var(--bs-btn-hover-color) !important;
    --bs-btn-border-color: var(--bs-btn-hover-border-color); */
  }

  .wp-block-button__link[disabled]{
    --bs-btn-bg: var(--bs-btn-disabled-bg);
    --bs-btn-color: var(--bs-btn-disabled-color) !important;
    --bs-btn-border-color: var(--bs-btn-disabled-bg);
    opacity: var(--bs-btn-disabled-opacity);
    cursor: not-allowed;
  }
  .wp-block-button__link[disabled]:before{
    display: none;
  }

  .wp-block-button__link > .material-symbols-rounded{
    vertical-align: middle;
    line-height: 0;
    font-size: 20px;
    max-width: 20px;
  }
  .wp-block-button__link > svg{
    --button-icon-svg-size: 20px;
    height: var(--button-icon-svg-size);
    width: var(--button-icon-svg-size);
    transform: translateY(2px);
    margin-top: -5px;
    max-width: 20px;
  }

  /* Colors */

   .has-blue-background-color{
    --bs-btn-active-bg: var(--color-blue-hover);
    --bs-btn-hover-bg: var(--color-blue-hover);
    --bs-btn-active-border-color: var(--color-blue-hover);
    --bs-btn-hover-border-color: var(--color-blue-hover);
    --bs-btn-active-color: var(--color-white);
    --bs-btn-hover-color: var(--color-white);

    --bs-btn-text-color: var(--color-blue);
    --bs-btn-text-hover-color: var(--color-blue-hover);
  }

  .has-red-background-color{
   --bs-btn-active-bg: var(--color-red-hover);
   --bs-btn-hover-bg: var(--color-red-hover);
   --bs-btn-active-border-color: var(--color-red-hover);
   --bs-btn-hover-border-color: var(--color-red-hover);
   --bs-btn-active-color: var(--color-white);
   --bs-btn-hover-color: var(--color-white);

   --bs-btn-text-color: var(--color-red);
   --bs-btn-text-hover-color: var(--color-red-hover);
 }

 /**
  * Spacer
  */
 .editor-styles-wrapper .block-library-spacer__resize-container{
    background: repeating-linear-gradient(45deg, transparent, transparent 10px, #ded8df 10px, #ded8df 20px);
}

/**
 * Number counter
 */
 .number-counter{
    font-size: var(--fs-small);
    font-weight: 500;
 }
  .number-counter .value{
    font-size: var(--fs-xlarge);
    line-height: 1.2;
  }

  /**
   * Cover block
   */
   @media (max-width: 1199px) {
     .wp-block-cover > .wp-block-cover__inner-container{
       max-width: 100% !important;
     }
   }

  /**
   * Images
   */
   figure{

   }
   figure.wp-block-image, figure.wp-block-gallery{
     margin: 2rem 0;
     width: 100%;
   }
   figure.wp-block-image > figcaption{
     font-size: var(--fs-small);
   }
   .wp-block-image.alignright {
      text-align: right;
    }
    figure.wp-block-gallery{
      display: flex;
    }


   .are-vertically-aligned-top{
     align-items: flex-start;
   }
   .are-vertically-aligned-center{
     align-items: center;
   }
   .are-vertically-aligned-bottom{
     align-items:flex-end;
   }


   /**
    * Posts Grid &
    * Block - latest-posts
    */
    .posts-grid{
      display: flex;
      flex-wrap: wrap;
      gap: 4rem;
    }
    .posts-grid > .post,
    .posts-grid > li{
      width: calc(50% - 2rem);
    }

    @media (max-width: 1199px) {
      .posts-grid{
        gap: 2rem;
      }
      .posts-grid > .post{
        width: calc(50% - 1rem);
      }
    }
     @media (max-width: 768px) {
       .posts-grid > .post{
         width: 100%;
       }
     }

     .cover-image,
     .featured-image,
     .posts-grid .wp-block-latest-posts__featured-image{
       align-items: center;
       background-position: 50%;
       box-sizing: border-box;
       display: flex;
       justify-content: center;
       min-height: 500px;
       overflow: hidden;
       overflow: clip;
       position: relative;
       z-index: 0;
       background-color: var(--color-olive-medium);
     }
     .posts-grid .wp-block-latest-posts__featured-image{
       max-height: 300px;
     }

     @media (max-width: 1199px) {
       .posts-grid .featured-image{
         min-height: 300px;
       }
     }
     .cover-image > img,
     .featured-image > img,
     .posts-grid .featured-image > a > img{
       border: none;
       bottom: 0;
       box-shadow: none;
       height: 100%;
       left: 0;
       margin: 0;
       max-height: none;
       max-width: none;
       object-fit: cover;
       outline: none;
       padding: 0;
       position: absolute;
       right: 0;
       top: 0;
       width: 100%;
       z-index: -1;
     }

     .cover-image > img.object-position-top,
     .featured-image > img.object-position-top,
     .posts-grid .featured-image > a > img.object-position-top{
       object-position: top;
     }


     .cover-image:not(.logo):before {
       content: "";
       position: absolute;
       right: 0;
       top: 0;
       width: 100%;
       height: 100%;
       background-color: #000000;
       z-index: 0;
       opacity: 0;
     }

     .cover-image.overlay-1:before{opacity: .1;}
     .cover-image.overlay-2:before{opacity: .2;}
     .cover-image.overlay-3:before{opacity: .3;}
     .cover-image.overlay-4:before{opacity: .4;}
     .cover-image.overlay-5:before{opacity: .5;}
     .cover-image.overlay-6:before{opacity: .6;}
     .cover-image.overlay-7:before{opacity: .7;}
     .cover-image.overlay-8:before{opacity: .8;}
     .cover-image.overlay-9:before{opacity: .9;}

     .cover-image > .content {
         z-index: 0;
     }

     .featured-image.logo > svg,
     .featured-image.logo > a > svg,
     .cover-image.logo > svg,
     .cover-image.logo > a > svg{
       height: 130px;
       padding: 1rem;
     }

     .cover-image.mh-600,
     .featured-image.mh-600{min-height: 600px;}
     .cover-image.mh-700,
     .featured-image.mh-700{min-height: 700px;}
     .cover-image.mh-800,
     .featured-image.mh-800{min-height: 800px;}

     .cover-image.h-500,
     .featured-image.h-500{height: 500px;}


     @media (max-width: 1199px) {
       article .cover-image{
         aspect-ratio: 16 / 9;
         min-height: inherit !important;
       }
     }

     .posts-grid .title{text-decoration: none;}

     .read-more{
        border-bottom: 1px solid var(--color-black);
        font-size: var(--fs-medium);
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: space-between;
        text-decoration: none;
        color: var(--bs-body-color);
        padding: 0 0 .5rem 0;
        line-height: 1.4;
        transition: padding .35s ease;
        text-transform: uppercase;
     }
     .read-more:hover{
       padding-left: 1.5rem;
     }
     .read-more:after{
       content: "\f3dd";
       font-family: 'Material Symbols Rounded';
       font-weight: normal;
       font-style: normal;
       display: inline-block;
       line-height: 1;
       font-size: 50px;
       font-weight: 100;
       color: var(--color-olive-dark);
       transition: transform .35s ease;
       margin-left: 1rem;
     }
     .read-more:hover:after{
       transform: rotate(15deg);
     }



   /**
    * Block - collapse
    */
    .kwb-collapse{

    }
    .kwb-collapse > a{
      border-bottom: 1px solid var(--color-black);
      font-size: var(--fs-large);
      font-weight: 500;
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: space-between;
      text-decoration: none;
      color: var(--bs-body-color);
      padding: 1rem 0 .5rem 1rem;
      line-height: 1.4;
      transition: padding .35s ease;
    }
    .kwb-collapse > a:hover{
      padding-left: 1.5rem;
    }
    .kwb-collapse > a:hover:after{
      transform: rotate(15deg);
    }
    .kwb-collapse > a > span{
      font-size: var(--fs-small);
      font-weight: 300;
      margin-left: auto;
    }
    .kwb-collapse > a:after{
      content: "\f3dd";
      font-family: 'Material Symbols Rounded';
      font-weight: normal;
      font-style: normal;
      display: inline-block;
      line-height: 1;
      font-size: 50px;
      font-weight: 100;
      color: var(--color-olive-dark);
      transition: transform .35s ease;
      margin-left: 1rem;
    }
    .kwb-collapse > a[aria-expanded="true"]:after{
      transform: rotate(90deg);
    }

    .kwb-collapse > .collapse > .wrap,
    .kwb-collapse > .collapsing > .wrap{
      background-color: rgb(147 129 91 / 90%);
      color: var(--color-olive);
      width: 80%;
      margin-left: auto;
    }
    @media (max-width: 1199px){
      .kwb-collapse > .collapse > .wrap,
      .kwb-collapse > .collapsing > .wrap{
        width: 100%;
      }
    }

    @media (max-width: 700px){
      .kwb-collapse > a{
        flex-wrap: wrap;
      }
      .kwb-collapse > a > span{
        width: 100%;
        order: 3;
        padding: 0 !important;
        text-align: start !important;
      }

    }


    /* .kwb-collapse > .collapsing > .wrap > *:first-of-type{ margin-top: 0 !important; }
    .kwb-collapse > .collapsing > .wrap > *:last-of-type{ margin-bottom: 0 !important; } */
   /**
    * Bootstrap extension
    */

    /* === Padding Classes (p-6, px-6, etc.) === */
    .p-6 { padding: 5rem !important; }
    .px-6 { padding-left: 5rem !important; padding-right: 5rem !important; }
    .py-6 { padding-top: 5rem !important; padding-bottom: 5rem !important; }
    .ps-6 { padding-left: 5rem !important; }
    .pe-6 { padding-right: 5rem !important; }
    .pt-6 { padding-top: 5rem !important; }
    .pb-6 { padding-bottom: 5rem !important; }

    /* === Responsive Padding Classes === */
    @media (min-width: 576px) {
        .p-sm-6 { padding: 5rem !important; }
        .px-sm-6 { padding-left: 5rem !important; padding-right: 5rem !important; }
        .py-sm-6 { padding-top: 5rem !important; padding-bottom: 5rem !important; }
        .ps-sm-6 { padding-left: 5rem !important; }
        .pe-sm-6 { padding-right: 5rem !important; }
        .pt-sm-6 { padding-top: 5rem !important; }
        .pb-sm-6 { padding-bottom: 5rem !important; }
    }

    @media (min-width: 768px) {
        .p-md-6 { padding: 5rem !important; }
        .px-md-6 { padding-left: 5rem !important; padding-right: 5rem !important; }
        .py-md-6 { padding-top: 5rem !important; padding-bottom: 5rem !important; }
        .ps-md-6 { padding-left: 5rem !important; }
        .pe-md-6 { padding-right: 5rem !important; }
        .pt-md-6 { padding-top: 5rem !important; }
        .pb-md-6 { padding-bottom: 5rem !important; }
    }

    @media (min-width: 992px) {
        .p-lg-6 { padding: 5rem !important; }
        .px-lg-6 { padding-left: 5rem !important; padding-right: 5rem !important; }
        .py-lg-6 { padding-top: 5rem !important; padding-bottom: 5rem !important; }
        .ps-lg-6 { padding-left: 5rem !important; }
        .pe-lg-6 { padding-right: 5rem !important; }
        .pt-lg-6 { padding-top: 5rem !important; }
        .pb-lg-6 { padding-bottom: 5rem !important; }
    }

    @media (min-width: 1200px) {
        .p-xl-6 { padding: 5rem !important; }
        .px-xl-6 { padding-left: 5rem !important; padding-right: 5rem !important; }
        .py-xl-6 { padding-top: 5rem !important; padding-bottom: 5rem !important; }
        .ps-xl-6 { padding-left: 5rem !important; }
        .pe-xl-6 { padding-right: 5rem !important; }
        .pt-xl-6 { padding-top: 5rem !important; }
        .pb-xl-6 { padding-bottom: 5rem !important; }
    }

    @media (min-width: 1400px) {
        .p-xxl-6 { padding: 5rem !important; }
        .px-xxl-6 { padding-left: 5rem !important; padding-right: 5rem !important; }
        .py-xxl-6 { padding-top: 5rem !important; padding-bottom: 5rem !important; }
        .ps-xxl-6 { padding-left: 5rem !important; }
        .pe-xxl-6 { padding-right: 5rem !important; }
        .pt-xxl-6 { padding-top: 5rem !important; }
        .pb-xxl-6 { padding-bottom: 5rem !important; }
    }

    /* === Grid Gap (g-6, gx-6, gy-6) === */
    .g-6 { --bs-gutter-x: 5rem !important; --bs-gutter-y: 5rem !important; }
    .gx-6 { --bs-gutter-x: 5rem !important; }
    .gy-6 { --bs-gutter-y: 5rem !important; }

    /* === Responsive Grid Gaps === */
    @media (min-width: 576px) {
        .g-sm-6 { --bs-gutter-x: 5rem !important; --bs-gutter-y: 5rem !important; }
        .gx-sm-6 { --bs-gutter-x: 5rem !important; }
        .gy-sm-6 { --bs-gutter-y: 5rem !important; }
    }

    @media (min-width: 768px) {
        .g-md-6 { --bs-gutter-x: 5rem !important; --bs-gutter-y: 5rem !important; }
        .gx-md-6 { --bs-gutter-x: 5rem !important; }
        .gy-md-6 { --bs-gutter-y: 5rem !important; }
    }

    @media (min-width: 992px) {
        .g-lg-6 { --bs-gutter-x: 5rem !important; --bs-gutter-y: 5rem !important; }
        .gx-lg-6 { --bs-gutter-x: 5rem !important; }
        .gy-lg-6 { --bs-gutter-y: 5rem !important; }
    }

    @media (min-width: 1200px) {
        .g-xl-6 { --bs-gutter-x: 5rem !important; --bs-gutter-y: 5rem !important; }
        .gx-xl-6 { --bs-gutter-x: 5rem !important; }
        .gy-xl-6 { --bs-gutter-y: 5rem !important; }
    }

    @media (min-width: 1400px) {
        .g-xxl-6 { --bs-gutter-x: 5rem !important; --bs-gutter-y: 5rem !important; }
        .gx-xxl-6 { --bs-gutter-x: 5rem !important; }
        .gy-xxl-6 { --bs-gutter-y: 5rem !important; }
    }


    /* === Margin (all sides) === */
    .m-6  { margin: 5rem !important; }

    /* Axes */
    .mx-6 { margin-inline: 5rem !important; }   /* start + end */
    .my-6 { margin-block:  5rem !important; }   /* top + bottom */

    /* Individual sides (logical) */
    .mt-6 { margin-block-start: 5rem !important; }
    .me-6 { margin-inline-end:  5rem !important; }
    .mb-6 { margin-block-end:   5rem !important; }
    .ms-6 { margin-inline-start:5rem !important; }

    /* === Responsive variants === */
    /* sm ≥576px */
    @media (min-width: 576px) {
      .m-sm-6  { margin: 5rem !important; }
      .mx-sm-6 { margin-inline: 5rem !important; }
      .my-sm-6 { margin-block:  5rem !important; }
      .mt-sm-6 { margin-block-start: 5rem !important; }
      .me-sm-6 { margin-inline-end:  5rem !important; }
      .mb-sm-6 { margin-block-end:   5rem !important; }
      .ms-sm-6 { margin-inline-start:5rem !important; }
    }

    /* md ≥768px */
    @media (min-width: 768px) {
      .m-md-6  { margin: 5rem !important; }
      .mx-md-6 { margin-inline: 5rem !important; }
      .my-md-6 { margin-block:  5rem !important; }
      .mt-md-6 { margin-block-start: 5rem !important; }
      .me-md-6 { margin-inline-end:  5rem !important; }
      .mb-md-6 { margin-block-end:   5rem !important; }
      .ms-md-6 { margin-inline-start:5rem !important; }
    }

    /* lg ≥992px */
    @media (min-width: 992px) {
      .m-lg-6  { margin: 5rem !important; }
      .mx-lg-6 { margin-inline: 5rem !important; }
      .my-lg-6 { margin-block:  5rem !important; }
      .mt-lg-6 { margin-block-start: 5rem !important; }
      .me-lg-6 { margin-inline-end:  5rem !important; }
      .mb-lg-6 { margin-block-end:   5rem !important; }
      .ms-lg-6 { margin-inline-start:5rem !important; }
    }

    /* xl ≥1200px */
    @media (min-width: 1200px) {
      .m-xl-6  { margin: 5rem !important; }
      .mx-xl-6 { margin-inline: 5rem !important; }
      .my-xl-6 { margin-block:  5rem !important; }
      .mt-xl-6 { margin-block-start: 5rem !important; }
      .me-xl-6 { margin-inline-end:  5rem !important; }
      .mb-xl-6 { margin-block-end:   5rem !important; }
      .ms-xl-6 { margin-inline-start:5rem !important; }
    }

    /* xxl ≥1400px */
    @media (min-width: 1400px) {
      .m-xxl-6  { margin: 5rem !important; }
      .mx-xxl-6 { margin-inline: 5rem !important; }
      .my-xxl-6 { margin-block:  5rem !important; }
      .mt-xxl-6 { margin-block-start: 5rem !important; }
      .me-xxl-6 { margin-inline-end:  5rem !important; }
      .mb-xxl-6 { margin-block-end:   5rem !important; }
      .ms-xxl-6 { margin-inline-start:5rem !important; }
    }


