/* @import url('http://example.com/example_style.css'); */

/***********************************************/
/* CSS @imports must be at the top of the file */
/* Add them above this section                 */
/***********************************************/

/*****************************************/
/* Start your style declarations here    */
/*****************************************/

/* Definir variables de colores desde el theme */









/* Variables CSS */
:root {
  --color-primary: #5F656F;
  --color-secondary: #348FAF;
  --color-orange: #E29857;
  --color-wine: #954456;
  --color-green: #818461;
  --color-ocre: #897B63;
  --color-light: #EFF1F5;
}

/* Clases Utilitarias */
.bg-primary { background-color: var(--color-primary); }
.bg-secondary { background-color: var(--color-secondary); }
.bg-blue, .hs-button.bg-blue, [type="button"].bg-blue { background-color: var(--color-secondary); }
.bg-orange, .hs-button.bg-orange { background-color: var(--color-orange); }
.bg-wine, .hs-button.bg-wine, [type="button"].bg-wine { background-color: var(--color-wine); }
.bg-green, .hs-button.bg-green, [type="button"].bg-green { background-color: var(--color-green); }
.bg-ocre, .hs-button.bg-ocre, [type="button"].bg-ocre { background-color: var(--color-ocre); }
.bg-light,[type="button"].bg-light { background-color: var(--color-light); }

.bg-dark {
  background-color: rgba(95, 101, 111, 0.3);
}
.bg-lightgray { background-color: #F7F7F7; }



.text-primary { color: var(--color-primary); }
.text-secondary { color: var(--color-secondary); }
.text-blue { color: var(--color-secondary); }
.text-orange { color: var(--color-orange); }
.text-wine { color: var(--color-wine); }
.text-green { color: var(--color-green); }
.text-ocre { color: var(--color-ocre); }
.text-light { color: var(--color-light); }
.text-white { color: #fff; }
.text-lightgray_color { color: #F7F7F7; }

.border-primary { border-color: var(--color-primary); }
.border-secondary { border-color: var(--color-secondary); }
.border-orange { border-color: var(--color-orange); }
.border-wine { border-color: var(--color-wine); }
.border-green { border-color: var(--color-green); }
.border-ocre { border-color: var(--color-ocre); }
.border-light { border-color: var(--color-light); }
/* The overflow-wrap is meant to prevent long/large words from breaking the mobile responsiveness of a page (e.g. horizontal scrolling). It is preferred to reduce font sizes on mobile to address this, with this CSS specifically helping with extreme scenarios where a reduction in font size is not possible. */









body {
  line-height: 1.4;
  overflow-wrap: break-word;

  font-family: Montserrat
}

/* Handles word breaking for a few specific languages which handle breaks in words differently. If your content is not translated into these languages, you can safely remove this.  */

html[lang^="ja"] body,
html[lang^="zh"] body,
html[lang^="ko"] body {
  line-break: strict;
  overflow-wrap: normal;
  word-break: break-all;
}

/* Paragraphs */

p {
  font-size: 1rem;
  margin: 0 0 1.4rem;
}

/* Anchors */

a {
  cursor: pointer;
}

/* Headings */

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0 0 1.4rem;
}

body h1 {
  font-size: 84px;
  font-weight: bold;
  /*max-width: 900px;*/
  line-height: 90px;
  text-wrap: balance;
}
body h2 {
  font-size: 60px;
  font-weight: bold;
  /*max-width: 820px;*/
  line-height: 68px;
  text-wrap: balance;
}


/* Lists */

ul,
ol {
  margin: 0 0 1.4rem;
  line-height: 1.75;
}
.hs_cos_wrapper_type_rich_text ol, .hs_cos_wrapper_type_rich_text ul {
  list-style: auto;
}

ul ul,
ol ul,
ul ol,
ol ol {
  margin: 0;
  line-height: 1.75;
}

ul.no-list {
  list-style: none;
  margin: 0;
  padding-left: 0;
}
.hs_cos_wrapper_type_rich_text ul, .hs_cos_wrapper_type_rich_text ol {
  list-style: disc;
  margin-left: 1rem;
}
.hs_cos_wrapper_type_rich_text ul li:has(span[style="color: #e29857;"])::marker {
  color: #E29857;
}

ul > li,
ol > li {
  margin-block: .5rem;
  font-size: 1rem;
}
ul > li ul > li,
ol > li ol > li {
  margin-block: 0;
}

ul > li a, ol > li a {
  text-decoration: none;
}

/* Code blocks */

pre {
  overflow: auto;
}

code {
  vertical-align: bottom;
}

/* Blockquotes */

blockquote {
  border-left: 2px solid;
  margin: 0 0 1.4rem;
  padding-left: 0.7rem;
}

/* Horizontal rules */

hr {
  border: none;
  border-bottom: 1px solid #CCC;
}

.hs_cos_wrapper_type_rich_text > p {
  margin-block: 1rem;
}

footer.footer ul[role=menu] li a {
  line-height: 2;
}


body h1 > span[style="text-decoration: underline;"] {
  /*
  text-decoration: none !important;
  position: relative;
  */
  text-underline-position: under;
  text-underline-position: from-font;
  text-decoration-line: underline;
  text-decoration-thickness: 24px !important;
  text-decoration-color: #E29857 !important;
}
/*
body h1 > span[style="text-decoration: underline;"]:before {
content: "";
height: 50%;
width: 100%;
position: absolute;
color: red;
bottom: -50%;
}
*/


@media (max-width: 1024px) {

  body h1 {
    font-size: 68px;
    line-height: 74px;
  }
  body .span6 h1 {
    font-size: 58px;
    line-height: 64px;
  }
  body h2 {
    font-size: 52px;
    line-height: 58px;
  }
  body .span6 h2 {
    font-size: 46px;
    line-height: 54px;
  }
  .hs_cos_wrapper_type_form h3#hs_cos_wrapper_module_17391433653725_title {
    font-size: 46px !important;
    line-height: 52px !important;
    margin-bottom: 2rem !important;
    display: inline-block !important;
    text-align: center !important;
    width: 100%;
  }
}

@media (max-width: 768px) {
  body h1 {
    font-size: 62px;
    line-height: 68px;
    max-width: 90svw;
  }
  body .span6 h1 {
    font-size: 56px;
    line-height: 60px;
  }
  body h2 {
    font-size: 46px;
    line-height: 50px;
    max-width: 90svw;
  }
  body .span6 h2 {
    font-size: 40px;
    line-height: 50px;
  }
  .hs_cos_wrapper_type_form h3#hs_cos_wrapper_module_17391433653725_title {
    font-size: 40px !important;
    line-height: 46px !important;
  }
}

@media (max-width: 476px) {
  body h1 {
    font-size: 54px;
    line-height: 60px;
    max-width: 90svw;
  }
  body .span6 h1 {
    font-size: 52px;
    line-height: 58px;
  }
  body h2 {
    font-size: 40px;
    line-height: 48px;
    max-width: 90svw;
  }
  body .span6 h2 {
    font-size: 36px;
    line-height: 44px;
  }
  .hs_cos_wrapper_type_form h3#hs_cos_wrapper_module_17391433653725_title {
    font-size: 40px !important;
    line-height: 46px !important;
  }
}


@media (max-width: 416px) {
  body h1 {
    font-size: 46px;
    line-height: 54px;
  }
  body .span6 h1 {
    font-size: 42px;
    line-height: 50px;
  }
  body h2 {
    font-size: 36px;
    line-height: 44px;
  }
  body .span6 h2 {
    font-size: 32px;
    line-height: 40px;
  }
  .hs_cos_wrapper_type_form h3#hs_cos_wrapper_module_17391433653725_title {
    font-size: 36px !important;
    line-height: 42px !important;
  }
}
/* @import url('http://example.com/example_style.css'); */

/***********************************************/
/* CSS @imports must be at the top of the file */
/* Add them above this section                 */
/***********************************************/

/*****************************************/
/* Start your style declarations here    */
/*****************************************/




.flex {
  display: flex;
}
.fixed {
  position: fixed;
}
.flex-col {
  flex-direction: column;
}
.justify-between {
  justify-content: space-between;
}
.justify-center {
  justify-content: center;
}
.justify-end {
  justify-content: flex-end;
}
.items-center {
  align-items: center;
}
.items-end {
  align-items: flex-end;
}

.inline-flex {
  display: inline-flex;
}
.column {
  flex-direction: column;
}


.br-1 {
  border-radius: 12px;
}
.br-2 {
  border-radius: 18px;
}
.br-3 {
  border-radius: 22px;
}

.hs_cos_wrapper_type_rich_text {
  box-sizing: border-box;
  display: inline-block;
  width: 100%;
}

.hs_cos_wrapper_type_module:has(> .hs-button) {
  width: fit-content;
}

.span6 {
  width: 50%;
}

@media (max-width: 1440px) {
  .hs_cos_wrapper_type_rich_text {
    padding-inline: 1rem;
  }
}

@media (max-width: 768px) {
  .span6 {
    width: 100%;
  }
}

@media (min-width: 768px) {
  main .container, .container {
    width: 100%;
    max-width: 100%;
  }
}

@media (min-width: 640px) {
  main .container, .container {
    width: 100%;
    max-width: 100%;
  }
}




div[data-global-resource-path]:has(header#main-header) {
  position: sticky;
  top: 0;
  z-index: 99;
}

header#main-header:has(.mega-menu:not(.hidden)) {
  background-color: rgb(255 255 255);
}

header span#hs_cos_wrapper_my_logo {
  z-index: 999;
}

header img.hs-image-widget {
  max-width: 160px;
}

header div#nav-section {
  align-items: flex-end;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

button#burger-button {
  background-color: transparent;
  height: 1.5rem;
  margin: 0;
  padding: 0;
  position: relative;
  width: 2rem;
  z-index: 9999;
}
button#burger-button div {
  rotate: 0deg;
  position: absolute;
  margin: 0;
  width: 100%;
  transition: all .3s cubic-bezier(0.4, 0, 0.2, 1);
}
button#burger-button[aria-expanded="false"] div:nth-child(1) {
  left: 0;
  top: 0;
}
button#burger-button[aria-expanded="false"] div:nth-child(2) {
  left: 0;
  top: 50%;
  translate: 0 -50%;
  opacity: 1;
  transition-delay: .15s;
}
button#burger-button[aria-expanded="false"] div:nth-child(3) {
  left: 0;
  bottom: 0;
}

button#burger-button[aria-expanded="true"] div:nth-child(1) {
  rotate: 45deg;
  top: .6rem;
}
button#burger-button[aria-expanded="true"] div:nth-child(2) {
  opacity: 0;
}
button#burger-button[aria-expanded="true"] div:nth-child(3) {
  rotate: -45deg;
  top: .6rem;
}




nav#main-menu ul li.has-children.active > span::after {
  background-color: #5F656F;
}
nav#main-menu ul li.not-children > a:hover::after {
  background-color: #5F656F;
}
.mega-menu > .grid ul li a:hover::after {
  background-color: #5F656F;
}
.mega-menu > .grid ul li a.active::after,
.mega-menu > .grid ul li a.text-secondary:hover::after {
  background-color: #348FAF;
}


nav#main-menu ul li,
.mega-menu ul li {
  font-size: 16px;
}

.mega-menu {
  padding: 1rem 2rem;
}

.mega-menu ul li a {
  transition: color 0.3s ease;
}








header span#hs_cos_wrapper_module_173872983277616_language_switcher {
  display: grid;
  place-content: center;
  position: relative;
}
header span#hs_cos_wrapper_module_173872983277616_language_switcher .lang_list_class {
  right: 0;
  -webkit-transform: translateX(0);
  transform: translateX(0);
  width: 200px;
  left: unset;
}
header span#hs_cos_wrapper_module_173872983277616_language_switcher .lang_list_class:after, header span#hs_cos_wrapper_module_173872983277616_language_switcher .lang_list_class:before {
  right: 0;
  left: unset;
  margin-left: 0;
}






nav#secondary-menu a.small-button.flex.items-center.justify-between.hs-icon-button.arrow-icon.btn-ocre {
  display: none;
}


.lang_list_class li {
  margin-block: 0 !important;
}
.lang_list_class li a:hover {
  color: #348FAF !important;
}

@media (max-width: 768px) {

  header div#nav-section.active nav ul li a:not(.btn-ocre), header div#nav-section.active nav ul li span {
    font-size: 18px;
    text-align: left;
    color: #5F656F;
  }
  nav#secondary-menu ul.flex {
    gap: 1rem;
  }
  nav#main-menu ul li.p-1,
  nav#secondary-menu ul.flex li {
    margin: 0;
  }
  nav#secondary-menu ul.flex li:first-child a.small-button {
    border: none;
    padding: 0;
    color: #5F656F;
  }

  .mega-menu {
    display: none !important;
  }

  nav#secondary-menu {
    flex-direction: column;
  }
  header span#hs_cos_wrapper_module_173872983277616_language_switcher {
    margin: 0;
    justify-content: flex-start;
  }
  header span#hs_cos_wrapper_module_173872983277616_language_switcher .globe_class {
    width: 100%;
    background-image: none;
  }
  header span#hs_cos_wrapper_module_173872983277616_language_switcher .lang_list_class {
    display: flex;
    position: relative;
    width: 100%;
    right: unset;
    top: unset;
    padding: 0;
    align-items: center;
  }
  header span#hs_cos_wrapper_module_173872983277616_language_switcher .lang_list_class:after, header span#hs_cos_wrapper_module_173872983277616_language_switcher .lang_list_class:before {
    content: none;
  }
  header span#hs_cos_wrapper_module_173872983277616_language_switcher .lang_list_class li {
    border: none !important;
    text-align: left;
    background-color: transparent;
    padding: 0 1rem 0 0 !important;
  }
  header span#hs_cos_wrapper_module_173872983277616_language_switcher .lang_list_class li a {
    font-size: 15px !important;
  }
  nav#secondary-menu ul li a {
    font-weight: 500;
  }

}

@media (max-width: 476px) {

}
/* Definir variables de colores desde el theme */









form.hs-form-private.hs-form.stacked.hs-custom-form {
  font-family: Montserrat
}

/* Fields */

.hs-form-field {
  margin-bottom: 1.4rem;
}

/* Labels */

form label {
  display: block;
  font-size: 0.875rem;
  margin-bottom: 0.35rem;
}

/* Form Title */
.form-title {
  margin-bottom: 0;
}

/* Help text */

form legend {
  font-size: 0.875rem;
}

/* Inputs */

form.hs-form-private.hs-form.stacked.hs-custom-form .input .hs-input:not([type="checkbox"], [type="radio"]) {
  width: 100%;
}
form.hsfc-FormWrapper[aria-label="HubSpot Form"] input.hsfc-TextInput,
form.hsfc-Form input.hsfc-TextInput,
form input[type=text:not(.hsfc-TextInput)],
form.hs-form-private.hs-form stacked.hs-custom-form input[type=text],
form input[type=search],
form input[type=email],
form input[type=password],
form input[type=tel],
form input[type=number],
form input[type=file],
form select,
form textarea {
  display: inline-block;
  font-size: 0.875rem;
  padding: 0.7rem;
  width: 100%;
  -webkit-appearance: none;
  appearance: none;
  padding-inline: .7rem;
}
form select:after {
  content: "";
}

form textarea {
  resize: vertical;
}

form fieldset {
  max-width: 100% !important;
}

/* Inputs - checkbox/radio */

form .inputs-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

form .inputs-list > li {
  display: block;
  margin: 0.7rem 0;
}

form .inputs-list input,
form .inputs-list span {
  vertical-align: middle;
}

form input[type=checkbox],
form input[type=radio] {
  cursor: pointer;
  margin-right: 0.35rem;
}

/* Inputs - date picker */

.hs-dateinput {
  position: relative;
}

.hs-dateinput:before {
  content:'\01F4C5';
  position: absolute;
  right: 10%;
  top: 50%;
  transform: translateY(-50%);
}

.fn-date-picker .pika-table thead th {
  color: #FFF;
}

.fn-date-picker td.is-selected .pika-button {
  border-radius: 0;
  box-shadow: none;
}

.fn-date-picker td .pika-button:hover,
.fn-date-picker td .pika-button:focus {
  border-radius: 0 !important;
  color: #FFF;
}

/* Inputs - file picker */

form input[type=file] {
  background-color: transparent;
  border: initial;
  padding: initial;
}

/* Headings and text */

form .hs-richtext,
form .hs-richtext p {
  font-size: 0.875rem;
  margin: 0 0 1.4rem;
}

form .hs-richtext img {
  max-width: 100% !important;
}

/* GDPR */

.legal-consent-container .hs-form-booleancheckbox-display > span {
  margin-left: .5rem !important;
}

/* Validation */

.hs-form-required {
  color: #EF6B51;
}

.hs-input.invalid.error {
  border-color: #EF6B51;
}

.hs_error_rollup li .hs-main-font-element,
.hs-error-msg {
  color: #EF6B51;
  margin-top: 0.35rem;
}

/* Submit button */

form input[type=submit],
form .hs-button {
  cursor: pointer;
  display: inline-block;
  text-align: center;
  transition: all 0.15s linear;
  white-space: normal;
}

/* Captcha */

.grecaptcha-badge {
  margin: 0 auto;
}


/* Search button input field and suggestions */
.body-container-wrapper .hs-search-field__button {
  padding: 15px;
}

.body-container-wrapper .hs-search-field__bar--button-inline .hs-search-field__button {
  margin-left: 6px;
  margin-bottom: 0;
}

.body-container-wrapper .hs-search-field__button svg {
  height: 15px;
  fill: #fff;
}

.body-container-wrapper .hs-search-field__bar > form > .hs-search-field__input {
  padding: 10px;
}

.body-container-wrapper .hs-search-field__suggestions li a {
  color: #494A52;
  padding: 0.35rem 0.7rem;
  text-decoration: none;
  transition: background-color 0.3s;
}



[data-hsfc-id=Renderer] .hsfc-PhoneInput__FlagAndCaret {
  border: none;
  background-color: transparent;
  margin-top: 14px;
}

form.hs-form-private.hs-form.stacked.hs-custom-form input[type="submit"] {
  background-color: #348FAF;
}


form.hsfc-FormWrapper[aria-label="HubSpot Form"] label:not(.hs-error-msg) {
  color: #5F656F;
  font-size: 14px;
  font-family: Montserrat;
  line-height: 1.4;
  overflow-wrap: break-word;
}


.hsfc-PhoneInput .hsfc-PhoneInput__FlagAndCaret input.hsfc-TextInput {
  margin-top: 0 !important;
}

form.hsfc-FormWrapper[aria-label="HubSpot Form"] input.hsfc-TextInput,
form.hsfc-Form input.hsfc-TextInput,
form.hs-form-private.hs-form.stacked.hs-custom-form .input > select.hs-input, form.hs-form-private.hs-form.stacked.hs-custom-form .input > textarea.hs-input {
  width: 100%;
}


form input[type="checkbox"] {
  accent-color: #348FAF;
}
.hs_politica_de_privacidad.hs-politica_de_privacidad.hs-fieldtype-booleancheckbox.field.hs-form-field * {
  font-size: 10px;
}


@media (max-width: 768px) {
  form.hs-form-private.hs-form.stacked.hs-custom-form {
    padding-inline: 1rem;
  }
}

form.hs-form-private.hs-form.stacked.hs-custom-form input.hs-input,
form.hs-form-private.hs-form.stacked.hs-custom-form select.hs-input,
form.hs-form-private.hs-form.stacked.hs-custom-form textarea.hs-input,
form.hs-form-private.hs-form.stacked.hs-custom-form input[name=email] {
  background-color: transparent;
  border: 1px solid;
  border-radius: 10px;
  position: relative;
  min-height: 48px;
  padding: .86rem;
}

form.hs-form-private.hs-form.stacked.hs-custom-form li.hs-form-booleancheckbox .hs-form-booleancheckbox-display {
  display: flex;
  align-items: center;
}






/********************/


input#register-email,
input#hs-login-widget-email, input#hs-login-widget-password {
  border-color: #5F656F;
}
/* Variables del theme */















/*
a:not(.button, .hs-button, .main-menu-link, footer.footer ul li a, .big-button, .small-button, .not-decoration, #hs-link-my_logo, .hs_cos_wrapper_type_logo > a)::after {
  background-color: transparent;
  bottom: 0;
  content: "";
  display: block;
  height: 2px;
  left: 0;
  position: absolute;
  transition: all .3s ease-in-out;
  width: 1px;
}
a:not(.button, .hs-button, .main-menu-link, footer.footer ul li a, .big-button, .small-button, .not-decoration, #hs-link-my_logo, .hs_cos_wrapper_type_logo > a):hover::after {
  background-color: #5F656F;
  content: "";
  width: 100%;
}
*/

/* Botón primario */

.button, a.cta_button {
  background-color: #5F656F;
  color: #FFFFFF;
  border-radius: 12px;
  padding: 12px;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  display: inline-flex;
  text-align: center;

  font-size: 16px;

  border: 1px solid #5F656F;
  box-sizing: content-box; 
}
.button:hover, a.cta_button:hover {
  background-color: #5F656F;
}

.hs-cta-wrapper .hs-cta-node a.cta_button {
  background-color: #5F656F !important;
  color: #FFFFFF !important;
  border-radius: 12px !important;
  padding: 12px !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  display: inline-flex !important;
  text-align: center !important;

  font-size: 16px !important;

  border: 1px solid #5F656F !important;
  box-sizing: content-box !important;
}
.hs-cta-wrapper .hs-cta-node a.cta_button span.text-sm {
  vertical-align: middle;
  display: inline-flex;
  align-items: center;
}

.hs-button {
  background-color: #5F656F;
  color: #FFFFFF;
  border-radius: 12px;
  padding: 12px;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  display: inline-flex;
  text-align: center;

  font-size: 16px;

  border: 1px solid #5F656F;
  box-sizing: content-box; 
}

.hs-button:has(span.icon) {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.hs-button:hover {
  background-color: #5F656F;
}

.hs-line-button {
  background-color: transparent;
  color: #5F656F; 
  border: 1px solid #5F656F;
  box-sizing: content-box;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.hs-line-button:hover {
  background-color: #5F656F;
  color: #FFFFFF;
}

.big-button, .hs-icon-button.big-button {
  border-radius: 18px;
}

.hs-icon-button {
  color: #FFFFFF;
  border-radius: 12px;
  padding: 12px;
  transition: all 0.3s ease-in-out;
  display: inline-block;
  text-align: center;
  gap: 12px;

  border: 1px solid transparent; 
  box-sizing: content-box; 
}
.hs-button span.icon,
.hs-icon-button span.icon {
  background-color: #fff;
  height: 28px;
  width: 28px;
  border-radius: 8px;
  display: grid;
  place-content: center;
}
.hs-button svg.inline-block,
.hs-icon-button svg.inline-block {
  padding: .25rem;
  height: 28px;
  width: 28px;
  transition: rotate .3s cubic-bezier(0.4, 0, 0.2, 1);
}
.hs-button:hover svg.inline-block,
.hs-icon-button:hover svg.inline-block {
  rotate: 35deg;
}

.small-button, .small-button.hs-icon-button {
  font-size: 12px;
  border-radius: 10px;
  padding: 10px;
  font-weight: normal;
  gap: 8px;
}
.hs-icon-button.small-button span.icon {
  height: 18px;
  width: 18px;
  border-radius: 5px;
}
.small-button.hs-icon-button svg.inline-block {
  height: 14px;
  padding: 0;
  width: 14px;
}
.small-button.hs-icon-button:hover svg.inline-block {
  rotate: 35deg;
}

.hs-icon-button.big-button {
  text-align: left;
}
.hs-icon-button.big-button span.icon {
  height: 82px;
  width: 52px;
}
.hs-icon-button.big-button span.text-sm {
  max-width: 140px;
}


.btn-dark svg.inline-block path {
  fill: #5F656F;
}
.btn-blue svg.inline-block path {
  fill: #348FAF;
}
.btn-orange svg.inline-block path {
  fill: #E29857;
}
.btn-wine svg.inline-block path {
  fill: #954456;
}
.btn-green svg.inline-block path {
  fill: #818461;
}
.btn-ocre svg.inline-block path {
  fill: #897B63;
}
.btn-light svg.inline-block path {
  fill: #5F656F;
}

.btn-dark, .btn-dark:hover, .btn-dark[type="submit"] {
  background-color: #5F656F;
  border-color: #5F656F;
}
.btn-blue, .btn-blue:hover, .btn-blue[type="submit"] {
  background-color: #348FAF;
  border-color: #348FAF;
}
.btn-orange, .btn-orange:hover, .btn-orange[type="submit"] {
  background-color: #E29857;
  border-color: #E29857;
}
.btn-wine, .btn-wine:hover, .btn-wine[type="submit"] {
  background-color: #954456;
  border-color: #954456;
}
.btn-green, .btn-green:hover, .btn-green[type="submit"] {
  background-color: #818461;
  border-color: #818461;
}
.btn-ocre, .btn-ocre:hover, .btn-ocre[type="submit"] {
  background-color: #897B63;
  border-color: #897B63;
}
.btn-light, .btn-light:hover, .btn-light[type="submit"] {
  background-color: #EFF1F5;
  border-color: #EFF1F5;
  color: #5F656F;
}



/* Botón secundario */
.hs-button-secondary {
  background-color: #348FAF;
  color: #000000;
  border-radius: 12px;
  padding: 12px;
  transition: all 0.3s ease-in-out;
}

.hs-button-secondary:hover {
  background-color: #E29857;
  color: #FFFFFF;
}

/* Botón genérico */
.button,
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
  text-transform: none;
  border-radius: 12px;
  background-color: #E29857;
  color: #FFFFFF;
  outline: none;
  border: none;
  padding: 12px 24px;
}

.button:hover,
button:hover,
[type="button"]:hover,
[type="reset"]:hover,
[type="submit"]:hover {
  opacity: 0.85;
  transition: opacity 0.2s ease-in-out;
}

/* Botones comunes */
button,
.button,
.hs-button {
  cursor: pointer;
  display: inline-block;
  text-align: center;
  transition: all 0.15s linear;
  white-space: normal;
}

/* Botones deshabilitados */
button:disabled,
.button:disabled,
.hs-button:disabled {
  background-color: #EFF1F5;
  border-color: #EFF1F5;
  color: #5F656F;
  cursor: not-allowed;
}
/* Definir variables de colores desde el theme */












.map_container.relative .map .country {
  fill: #348FAF;
  stroke: #348FAF;
}









.slick-list.draggable {
  background-color: #eff1f5;
  padding-block: 2rem;
  border-radius: 2.4rem;
}
.hs-logo-carousel__inner img {
  width: 120px !important;
  height: 90px !important;
  object-fit: contain;
}










.quote-form-container label.hsfc-FieldLabel span {
  color: #5F656F;
}









@media (max-width: 476px) {
  .feature-item p.text-5xl {
    font-size: 36px;
    margin-bottom: .5rem;
  }
}












.rounded-top {
  border-radius: 2.4rem 2.4rem 0 0;
}














section.quote-builder.p-6 input[type="checkbox"] {
  accent-color: #348FAF;
}

div#custom-fields div button {
  color: #5F656F;
}
.tooltip {
  background-color: #EFF1F5;
  border: 1px solid ;
}
.tooltip-arrow {
  background-color: #EFF1F5;
  border-left: 1px solid ;
  border-top: 1px solid ;
}
.info-icon {
  border: 1px solid #348FAF;
  background-color: #348FAF;
}
/*
.info-icon svg {
background-color: #348FAF;
}
*/
.info-icon svg path {
  fill: #fff;
}









.discount-label svg path {
  fill: #818461;
}
.discount-label svg {
  border: 1px solid #818461;
}












footer.footer {

}

footer.footer div#hs_menu_wrapper_social_media_menu ul[role=menu] {
  display: flex;
  gap: 1rem;
}

footer.footer div#hs_menu_wrapper_social_media_menu ul[role=menu] li svg {
  width: 1.5rem;
  height: 1.5rem;
  display: grid;
  place-content: center;

  fill: #5F656F;
}

footer.footer div#hs_form_target_subscription_form form {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  align-items: flex-start;
}

footer.footer div#hs_form_target_subscription_form .hs_error_rollup {
  position: absolute;
  bottom: 0;
}

footer.footer .popup-button {
  font-size: 12px;
  text-decoration: underline;
  text-align: left;
  order: 3;
  width: 100%;
  color: #5F656F;
}
footer.footer .hs_email.hs-email.hs-fieldtype-text.field.hs-form-field {
  position: relative;
  margin-bottom: 0;
}
footer.footer .hs_email.hs-email.hs-fieldtype-text.field.hs-form-field > label {
  display: none;
}
footer.footer div#hs_form_target_subscription_form form input[name=email] {
  background-color: transparent;
  border: 1px solid;
  border-radius: 10px;
  position: relative;
  min-height: 48px;
  padding-inline: .86rem;
}
.modal-overlay {
  backdrop-filter: blur(6px);
}

footer.footer ul[role=menu] li a {
  position: relative;
  padding-bottom: .5rem;
  transition: all .3s ease-in-out;
}
footer.footer ul[role=menu] li a:hover {
  color: #897B63;
}
footer.footer .bottom-footer a, footer.footer .bottom-footer p {
  font-size: 13px;
  opacity: .8;
  transition: opacity .3s ease-in-out;
}
footer.footer .bottom-footer a:hover {
  opacity: 1;
}

footer button#backToTop {
  width: 48px;
  height: 48px;
}

footer button#backToTop svg {
  width: 12px;
  height: 12px;
}

@media (max-width: 768px) {
  .bottom-footer {
    flex-direction: column-reverse;
    display: flex !important;
  }
  footer.footer div#hs_form_target_subscription_form form {
    padding-inline: 0;
  }
}


html, body {
  scroll-behavior: smooth;
}

body {
  font-size: 14px;
  color: #5F656F;
}