:root {
  --width-content-full: calc((100% - 1140px) / 2);
  --width-content-medium: 1100px;
  --background-image-home: url(/themes/custom/mahi_facelift/images/carrossel-home/fundo-banner-desktop.svg);
  --padding-container-1100: max(20px, calc((100vw - var(--width-padrao-1100)) / 2));

  --width-padrao-1100: 1100px;
  --width-padrao-1440: 1440px;

  /* ------------------------------ template full size 100vw --------------------------------------*/
  --width-full-content: 100vw;
  --max-width-full-content: 100vw;
  --margin-left-full-content: calc(50% - 50vw);
  --margin-right-full-content: calc(50% - 50vw);

  /* exemplo */

  /* 
  width:var(--width-full-content);
  max-width:var(--max-width-full-content);
  margin-left:var(--margin-left-full-content);
  margin-right: var(--margin-right-full-content);
  display: flex;
  justify-content: center;
  */

  /* ------------------------------ template full size 100vw com padding 1100px --------------------------------------*/

  /* exemplo */

  /* 
  width: var(--width-full-content);
  max-width: var(--max-width-full-content);
  margin-left: var(--margin-left-full-content);
  margin-right: var(--margin-right-full-content);

  padding-left: var(--padding-container-1100);
  padding-right: var(--padding-container-1100);
  */


  /* ------------------------------ template full size para 1440px --------------------------------------*/

  --position-content-1440: relative;
  --left-content-1440: 50%;
  --transform-content-1440: translateX(-50%);
  --width-content-1440: 100vw;
  --max-width-content-1440: 1440px;

  /* exemplo */

  /* 
    position: var(--position-content-1440);
    left: var(--left-content-1440);
    transform: var(--transform-content-1440);
    width: var(--width-content-1440);
    max-width: var(--max-width-content-1440); 
    */

  /* ------------------------------ template centralizado estourado pra direita --------------------------------------*/

  /* exemplo */
  /* width: calc(100vw - ((100vw - 1100px) / 2)); */

}


@media only screen and (max-width: 767px) {
  :root {
    --width-content-full: calc((100% - 1140px) / 2);
    --width-content-medium: 1100px;
    --background-image-home: url(/themes/custom/mahi_facelift/images/carrossel-home/fundo-banner-mobile.svg);

    --width-padrao-1100: 100%;
    --width-padrao-1440: 100%;

    /* ------------------------------ template full size 100vw --------------------------------------*/
    --width-full-content: 100%;
    --max-width-full-content: 100%;
    --margin-left-full-content: 0;
    --margin-right-full-content: 0;

    /* exemplo */

    /* 
  width:var(--width-full-content);
  max-width:var(--max-width-full-content);
  margin-left:var(--margin-left-full-content);
  margin-right: var(--margin-right-full-content);
  display: flex;
  justify-content: center;
  */


    /* ------------------------------ template full size para 1440px --------------------------------------*/

    --position-content-1440: relative;
    --left-content-1440: 0;
    --transform-content-1440: unset;
    --width-content-1440: 100%;
    --max-width-content-1440: 100%;


  }

}



:root {
  /* ===========================
     FONT WEIGHT
     =========================== */
  --font-weight-font-thin: 100;
  --font-weight-font-extralight: 200;
  --font-weight-font-light: 300;
  --font-weight-font-normal: 400;
  --font-weight-font-medium: 500;
  --font-weight-font-semibold: 600;
  --font-weight-font-bold: 700;
  --font-weight-font-extrabold: 800;
  --font-weight-font-black: 900;

  /* ===========================
     FONT SIZE (px)
     =========================== */
  --font-size-badge-sm: 10px;
  --font-size-badge-base: 11px;
  --font-size-text-xs: 12px;
  --font-size-text-sm: 14px;
  --font-size-text-base: 16px;
  --font-size-text-lg: 18px;
  --font-size-text-xl: 20px;
  --font-size-text-2xl: 24px;
  --font-size-text-3xl: 32px;
  --font-size-text-4xl: 36px;
  --font-size-text-5xl: 48px;
  --font-size-text-6xl: 60px;
  --font-size-text-7xl: 72px;
  --font-size-text-8xl: 96px;
  --font-size-text-9xl: 128px;


  /* ===========================
     FONT FAMILY
     =========================== */
  --font-heading: 'Raleway';
  --font-body: 'Arial';

  /* ===========================
     SPACING SCALE (px)
     =========================== */
  --spacing-0: 0px;
  --spacing-1: 4px;
  --spacing-2: 8px;
  --spacing-3: 12px;
  --spacing-4: 16px;
  --spacing-5: 20px;
  --spacing-6: 24px;
  --spacing-7: 28px;
  --spacing-8: 32px;
  --spacing-9: 36px;
  --spacing-10: 40px;
  --spacing-11: 44px;
  --spacing-12: 48px;
  --spacing-13: 52px;
  --spacing-14: 56px;
  --spacing-15: 60px;
  --spacing-16: 64px;
  --spacing-17: 80px;
  --spacing-18: 88px;
  --spacing-19: 104px;
  --spacing-20: 120px;
  --spacing-0-5: 2px;
  /* 0,5 */
  --spacing-1-5: 6px;
  /* 1,5 */
  --spacing-2-5: 10px;
  /* 2,5 */
  --spacing-3-5: 14px;
  /* 3,5 */

  /* ===========================
     RADIUS (px)
     =========================== */
  --radius-xs: 4px;
  --radius-sm: 6px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-xl: 16px;
  --radius-2xl: 20px;
  --radius-3xl: 36px;
  --radius-full: 9999px;

  /* ===========================
     BRAND COLORS
     =========================== */

  /* Verde Nobre */
  --color-verde-nobre-10: rgba(3, 57, 54, 0.1);
  --color-verde-nobre-50: rgba(3, 57, 54, 0.5);
  --color-verde-nobre-100: #033936;

  /* Verde Camargo */
  --color-verde-camargo-10: rgba(14, 82, 54, 0.1);
  --color-verde-camargo-50: rgba(14, 82, 54, 0.5);
  --color-verde-camargo-100: #0e5236;

  /* Verde Menta */
  --color-verde-menta-30: rgba(215, 249, 211, 0.3);
  --color-verde-menta-100: #d7f9d3;

  /* Amarelo */
  --color-amarelo-dourado: #774900;
  --color-amarelo-vivo-10: rgba(246, 167, 28, 0.1);
  --color-amarelo-vivo-100: #f6a71c;
  --color-amarelo-claro: #ffd16c;

  /* Roxo */
  --color-roxo-classico: #413d99;
  --color-roxo-brilho-20: rgba(104, 97, 242, 0.2);
  --color-roxo-brilho-100: #6861f2;
  --color-roxo-orquidea: #cfd0f9;

  /* Sazonais */
  --color-sazonal-amarelo: #f6a71c;
  --color-sazonal-rosa: #ef6291;
  --color-sazonal-azul: #6284ef;
  --color-sazonal-vermelho: #ed6464;
  --color-sazonal-lilas: #6861f2;
  --color-sazonal-laranja: #f45a1e;

  /* Cinza */
  --color-cinza-chumbo: #606060;
  --color-cinza-neblina: #c6c6c6;
  --color-cinza-neve: #efefef;

  /* ===========================
     UI COLORS
     =========================== */

  /* Text */
  --color-text-contrast: #242424;
  --color-text-default: #404040;
  --color-text-light: #808080;
  --color-text-disabled: #999999;

  /* Background */
  --color-bg-default: #f0f2f5;
  --color-bg-contrast: #f6f7f9;
  --color-bg-card: #ffffff;
  --color-bg-highlight: #e2e5e9;
  --color-bg-secondary: #b9bfc6;

  /* White */
  --color-white-20: rgba(255, 255, 255, 0.2);
  --color-white-100: #ffffff;

  /* Border */
  --color-border-default: #d9d9d9;
  --color-border-light: #e5e5e5;
  --color-border-dark: #b2b2b2;
  --color-border-error: rgba(247, 11, 58, 0.5);
  /* Semantic.Error.50 */
  --color-border-warning: #e89300;
  /* Semantic.Warning.100 */
  --color-border-info: #3865ff;
  /* Semantic.Info & Link.100 */

  /* Semantic */
  --color-semantic-success-10: rgba(0, 153, 110, 0.1);
  --color-semantic-success-50: rgba(0, 153, 110, 0.5);
  --color-semantic-success-100: #00996e;

  --color-semantic-warning-10: rgba(232, 147, 0, 0.1);
  --color-semantic-warning-50: rgba(232, 147, 0, 0.5);
  --color-semantic-warning-100: #e89300;

  --color-semantic-info-10: rgba(56, 101, 255, 0.1);
  --color-semantic-info-50: rgba(56, 101, 255, 0.5);
  --color-semantic-info-100: #3865ff;

  --color-semantic-error-10: rgba(247, 11, 58, 0.1);
  --color-semantic-error-50: rgba(247, 11, 58, 0.5);
  --color-semantic-error-100: #f70b3a;

  /* ===========================
     HEADINGS (DESKTOP)
     =========================== */
  --font-size-desktop-h1: 36px;
  /* text-4xl */
  --font-size-desktop-h2: 32px;
  /* text-3xl */
  --font-size-desktop-h3: 24px;
  /* text-2xl */
  --font-size-desktop-h4: 18px;
  /* text-lg */
  --font-size-desktop-h5: 16px;
  /* text-base */
  --font-size-desktop-h6: 14px;
  /* text-sm */

  /* ===========================
     HEADINGS (MOBILE)
     =========================== */
  --font-size-mobile-h1: 32px;
  /* text-3xl */
  --font-size-mobile-h2: 24px;
  /* text-2xl */
  --font-size-mobile-h3: 20px;
  /* text-xl */
  --font-size-mobile-h4: 18px;
  /* text-lg */
  --font-size-mobile-h5: 16px;
  /* text-base */
  --font-size-mobile-h6: 14px;
  /* text-sm */
}

.header-view-home h2 {
  margin-top: 0 !important;
}

.header-view-home {
  padding: 40px 0;
  padding-top: 80px;
}



/* ----- link box -------- */

.button-format-1 {
  color: white;
  padding: 10px 30px;
  border-radius: 10px;
  background: white;
  font-weight: 300;
  border: solid 2px var(--verde-nobre);
  color: var(--verde-nobre);
  font-weight: 700;
  border-radius: 20px;
  transition: all .5s;
}

.button-format-1:hover {
  background: var(--verde-nobre);
  color: white;
  font-weight: 700;
  padding: 10px 35px;
  border: solid 2px var(--verde-nobre);
}



@media only screen and (max-width: 767px) {
  .header-view-home {
    padding: 40px 0;
  }

}





.openid-connect-login-form form>div {
  display: flex;
  width: max-content;
  border: solid 1px #8C8C8C;
  border-radius: 1PX;
  align-items: center;
}

.openid-connect-login-form form>div::before {
  content: '-';
  background-image: url(/themes/custom/mahi_custom/images/microsoft.svg);
  display: block;
  height: 32px;
  width: 32px;
  background-repeat: no-repeat;
  background-size: cover;
  margin-left: 12px;
  margin-right: 12px;
}

.openid-connect-login-form form>div>input {
  background: none !important;
  color: #5e5e5e !important;
  padding: 20px 0;
  padding-right: 12px;
  font-weight: 500;
  margin-left: -55px;
  padding-left: 55px;
}

.klaro .cookie-modal .cm-btn.cm-btn-info,
.klaro .context-notice .cm-btn.cm-btn-info,
.klaro .cookie-notice .cm-btn.cm-btn-info {
  background-color: var(--verde-nobre) !important;
}

.klaro .cookie-modal .cm-btn.cm-btn-success,
.klaro .context-notice .cm-btn.cm-btn-success,
.klaro .cookie-notice .cm-btn.cm-btn-success {
  background: none;
  color: var(--verde-camargo);
  border: solid 2px;
  padding: 9px 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 30px;
  font-weight: bold;
  transition: all .5s ease;
}

.klaro .cookie-modal .cm-list-input:checked+.cm-list-label .slider,
.klaro .context-notice .cm-list-input:checked+.cm-list-label .slider,
.klaro .cookie-notice .cm-list-input:checked+.cm-list-label .slider {
  background-color: var(--verde-camargo);
}

.klaro .cookie-modal .cm-list-label .slider.round,
.klaro .context-notice .cm-list-label .slider.round,
.klaro .cookie-notice .cm-list-label .slider.round {
  background-color: var(--text-color);
}

.klaro .cookie-modal .cm-list-input.required:checked+.cm-list-label .slider,
.klaro .context-notice .cm-list-input.required:checked+.cm-list-label .slider,
.klaro .cookie-notice .cm-list-input.required:checked+.cm-list-label .slider {
  background-color: var(--verde-camargo);
  opacity: 1;
}

.klaro .cookie-modal .cm-list-input.only-required+.cm-list-label .slider,
.klaro .context-notice .cm-list-input.only-required+.cm-list-label .slider,
.klaro .cookie-notice .cm-list-input.only-required+.cm-list-label .slider {
  background-color: var(--text-color);
  opacity: 1;
}

.klaro .cookie-modal .cm-list-input.half-checked:checked+.cm-list-label .slider,
.klaro .context-notice .cm-list-input.half-checked:checked+.cm-list-label .slider,
.klaro .cookie-notice .cm-list-input.half-checked:checked+.cm-list-label .slider {
  background-color: var(--text-color);
  opacity: 1;
}

.klaro .cookie-modal a,
.klaro .context-notice a,
.klaro .cookie-notice a {
  color: var(--verde-nobre);
  font-family: Raleway;
  font-weight: 400;
  font-style: Regular;
  font-size: 14px;
  leading-trim: NONE;
  line-height: 100%;
  letter-spacing: 0%;
  text-align: center;
  min-height: auto;
}

.klaro button {
  height: 40px;
}

.klaro-close:hover {
  background-color: var(--verde-camargo);
  color: #ffffff;
}

.cm-btn-info {
  background-color: var(--verde-azulado) !important;
}

.klaro .cookie-modal-notice {
  position: absolute;
  width: 100%;
  top: auto;
  right: auto;
  left: auto;
  min-height: auto;
  padding: 20px 150px;
  height: auto;
  margin: 0;
  transform: none;
  max-width: 1100px;
  margin: auto;
  justify-self: center;
  border-radius: 70px;
  padding: 20px !important;
  border: 1px solid rgba(215, 249, 211, 1);
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.15);
  outline: none !important;
  height: auto;
  padding: 20px !important;
  margin: 0;
  bottom: 0;
  height: auto;
  overflow: visible;
  bottom: 20px;
}

.cn-body {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: row;
  max-width: 90%;
  margin: auto;
}

#id-cookie-notice {
  margin: 0;
  margin-top: 20px;
  margin-top: 0;
}

#id-cookie-notice span {
  font-size: 19px;
  font-family: Arial;
  font-weight: 400;
  font-style: Regular;
  font-size: 14px;
  leading-trim: NONE;
  line-height: 16px;
  letter-spacing: 0%;
}

.cn-decline {
  position: absolute;
  right: 40px;
  height: 30px !important;
  min-height: auto;
  border: solid 1px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50px;
  height: 10px;
  color: var;
  color: var(--verde-nobre);
  background: white;
  line-height: normal;
  top: -12px;
}

.klaro.klaro-close-enabled p#id-cookie-notice {
  display: flex;
}

.klaro .cookie-modal .cm-btn.cm-btn-info,
.klaro .cookie-notice .cm-btn.cm-btn-info {
  background: none !important;
  color: rgba(119, 73, 0, 1);
  border: solid 2px;
  padding: 9px 20px;
  border-radius: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
  transition: all .5s ease;
}

.klaro .cookie-modal-notice .cn-ok {
  margin-top: 0;
}

.cm-purpose.ac-checked label {
  background: none !important;
}

.klaro .cookie-modal .cm-btn.cm-btn-info:hover,
.klaro .cookie-notice .cm-btn.cm-btn-info:hover,
.klaro .cookie-notice .cm-btn.cm-btn-success:hover {
  color: white;
  border-color: var(--verde-camargo);
  background-color: var(--verde-camargo) !important;
}

.klaro .cookie-modal .cm-modal.cm-klaro {
  overflow: visible;
}

@media only screen and (max-width: 767px) {
  .klaro .cookie-modal-notice {
    padding: 20px;
  }

  .cn-body {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    max-width: 90%;
    margin: auto;
    text-align: center;
  }

  .klaro.klaro-close-enabled p#id-cookie-notice {
    margin: 0;
    padding: 0;
    text-align: start;
  }

  #id-cookie-notice span {
    font-size: 14px;
  }

  .klaro .cookie-modal a,
  .klaro .context-notice a,
  .klaro .cookie-notice a {
    color: var(--verde-camargo);
    font-size: 14px;
  }

  .klaro .cookie-modal-notice {
    padding: 20px;
    border-radius: 10px;
    max-width: 90%;
  }

  #id-cookie-notice span {
    font-size: 14px;
    margin-bottom: 20px;
  }

  .klaro .cookie-modal .cm-btn.cm-btn-info,
  .klaro .cookie-notice .cm-btn.cm-btn-info,
  .klaro .cookie-notice .cm-btn.cm-btn-success {
    font-size: 12px;
  }
}

@media only screen and (max-width: 599px) {
  .cm-modal h1 {
    font-size: 26px !important;
    line-height: normal;
  }

  .cm-modal h1 span {
    font-size: 26px !important;
    line-height: normal;
  }

  .klaro .cookie-modal .cm-modal.cm-klaro {
    max-width: 80%;
    left: 10%;
  }
}

.cm-modal.cm-klaro:focus,
.cm-modal.cm-klaro:focus-visible,
.context-notice:focus,
.context-notice:focus-visible,
.cookie-notice:focus,
.cookie-notice:focus-visible {
  box-shadow: none !important;
}


.klaro .cookie-modal .cm-btn.cm-btn-info:hover,
.klaro .cookie-notice .cm-btn.cm-btn-info:hover,
.klaro .cookie-notice .cm-btn.cm-btn-success:hover {
  color: white !important;
  border-color: var(--verde-camargo) !important;
  background-color: var(--verde-camargo) !important;
}


.klaro {

  & .cookie-modal .cm-btn,
  & .cookie-modal .cm-btn.cm-btn-info,
  & .cookie-modal .cm-btn.cm-btn-success,
  & .cookie-modal .cm-btn.cm-btn-decline,
  & .cookie-modal .cm-btn.cm-btn-danger,
  & .context-notice .cm-btn,
  & .context-notice .cm-btn.cm-btn-info,
  & .context-notice .cm-btn.cm-btn-success,
  & .context-notice .cm-btn.cm-btn-decline,
  & .context-notice .cm-btn.cm-btn-danger,
  & .cookie-notice .cm-btn,
  & .cookie-notice .cm-btn.cm-btn-info,
  & .cookie-notice .cm-btn.cm-btn-success,
  & .cookie-notice .cm-btn.cm-btn-decline,
  & .cookie-notice .cm-btn.cm-btn-danger,
  &.learn-more-as-button .cookie-notice:not(.cookie-modal-notice) a.cm-link.cn-learn-more {
    &:hover {
      color: var(--klaro-button-text-color-hover);
      border: var(--klaro-button-border-hover);
      background-color: var(--klaro-button-bg-hover);
      color: var(--verde-camargo);
      border-color: var(--verde-camargo);
      border-width: 2px;
    }
  }
}

.klaro_toggle_dialog {
  right: 5px;
  bottom: 5px;
}


@media only screen and (max-width: 767px) {

  .klaro_toggle_dialog {
    right: 15px;
    bottom: 75px;
    left: auto;
  }

  .page-type-navegation .tablesaw {
    width: 100% !important;
  }

  .page-type-navegation .tablesaw .tablesaw-priority-3,
  .page-type-navegation .tablesaw .tablesaw-priority-5 {
    display: table-cell;
  }

}
