.elementor-kit-9{--e-global-color-primary:#4A423D;--e-global-color-secondary:#A16363;--e-global-color-text:#626261;--e-global-color-accent:#C98B83;--e-global-color-931819a:#FFFFFF;--e-global-color-d4ae229:#A59B9B;--e-global-typography-primary-font-family:"Cormorant Garamond";--e-global-typography-primary-font-weight:500;--e-global-typography-secondary-font-family:"Cormorant Garamond";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Jost";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Jost";--e-global-typography-accent-font-weight:500;}.elementor-kit-9 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.elementor-lightbox{background-color:#C98B831C;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --ae-bg:#FFFFFF; --ae-tint:#FFF7F4; --ae-warm:#FAF8F4; --ae-ink:#4A423D; --ae-body:#626261; --ae-accent:#A16363; --ae-accent-soft:#C98B83; --ae-line:#EAC1BF; --ae-gold:#C8A46A; --ae-font-display:Abhaya Libre; --ae-font-heading:Cormorant Garamond; --ae-font-body:Jost; --ae-font-script:Pinyon Script; --ae-space-xs:8px; --ae-space-sm:16px; --ae-space-md:24px; --ae-space-lg:48px; --ae-space-xl:96px; --ae-space-section:clamp(64px, 8vw, 120px); --ae-gutter:clamp(10px, 7vw, 138px); --ae-measure:740px; --light-gray:#FAF6F1; --text:#444444; --white:#ffffff; --dark-blue:#172739; --gold:#A08965; --top-text:#7A7A7A; --h3:#162638bd; --Gris-eyebrows:#989898; --Line:#cdb898; --blue:#2D3652; --transparente:#ffffff00; --ae-accent-dark:#8A5252; --product-h3:#8C8079; --super-light-gray:#A59B9B; --ae-accent-light:#D9ABA3; }
/* Start custom CSS *//* GLOBALES */

/* El recorte horizontal va en <html>. Con `overflow-x: hidden` en <body>, body
   pasa a ser contenedor de scroll y el `position: sticky` de la cabecera queda
   inerte. En body se usa `clip`, que recorta sin crear un scrollport. */
html{
    max-width: 100%;
    overflow-x: hidden;
    scroll-padding-top: 110px;
}

body{
    max-width: 100%;
    overflow-x: clip;
}

/* Forzar el ancho al 100% cuando está en modo sticky */
.elementor-sticky--active {
    width: 100% !important;
    left: 0 !important;
    right: 0 !important;
}

/* Si usas contenedores (Flexbox/Grid), asegura que el ancho máximo sea heredado */
.elementor-sticky--active.e-con-boxed {
    max-width: 100% !important;
}

.e-n-accordion summary:hover h3, .e-n-accordion summary[aria-expanded="true"] h3{
   color:var(--e-global-color-accent);
}

.sub a:hover .elementor-icon-list-text{
    text-decoration: underline;
}

p.sub:hover{
    text-decoration: underline;
}

p.sub:hover strong {
  text-decoration: none;
}

.p-fix p:last-of-type{
    margin-bottom: 0;
}

.shadow{
    text-shadow: 1px 1px 3px #00000099;
}

.e-n-accordion h3{
    font-weight: 500 !important;
}

.enlace a {
    color: inherit;
    text-decoration: none;
}
.enlace a:hover {
    text-decoration: underline;
}

.enlace a {
    color: inherit;
    text-decoration: none;
}
.enlace a:hover {
    text-decoration: underline;
}

.social-element:hover{
    p:last-of-type{
      color: #fff; 
      text-decoration: underline;
    }
}

.enlace-texto a {
    color: inherit;
    text-decoration: none;
}
.enlace-texto a:hover {
    text-decoration: underline;
}

.enlace-texto a {
    color: inherit;
    text-decoration: none;
}
.enlace-texto a:hover {
    text-decoration: underline;
}

/* La flecha justo después del texto */
.no-looks-like-boton::after, .btn-flecha::after {
    content: "➔";
    display: inline-block;
    margin-left: 8px;
    transition: transform 0.3s ease;
}

/* Movimiento en hover */
.no-looks-like-boton:hover::after, .btn-flecha:hover::after {
    transform: translateX(6px);
}


/* Formulario: etiqueta flotante sobre el campo */
.campo-flotante{ position: relative; }
.campo-flotante::before{
  content: attr(data-label);
  position: absolute;
  inset-inline-start: 23px;
  top: 50%;
  transform: translateY(-50%);
  height: 1em;
  font-family: 'Inter', sans-serif;
  font-size: 16px;
  line-height: 1;
  color: #8A827A;
  pointer-events: none;
  transition: top .18s ease, font-size .18s ease, transform .18s ease, color .18s ease;
}
.elementor .campo-flotante input::placeholder,
.elementor .campo-flotante textarea::placeholder{ color: transparent !important; opacity: 0 !important; }
.elementor .campo-flotante input::-webkit-input-placeholder,
.elementor .campo-flotante textarea::-webkit-input-placeholder{ color: transparent !important; opacity: 0 !important; }
.elementor .campo-flotante input::-moz-placeholder,
.elementor .campo-flotante textarea::-moz-placeholder{ color: transparent !important; opacity: 0 !important; }
.campo-flotante input,
.campo-flotante textarea{ transition: padding .18s ease, border-color .18s ease, box-shadow .18s ease; }

/* estado activo: hay foco o el campo tiene contenido */
.campo-flotante:focus-within::before,
.campo-flotante:has(input:not(:placeholder-shown))::before,
.campo-flotante:has(textarea:not(:placeholder-shown))::before{
  top: 13px;
  transform: none;
  font-size: 12px;
  color: #8A827A;
}
.campo-flotante:focus-within input,
.campo-flotante:has(input:not(:placeholder-shown)) input{
  padding-top: 27px;
  padding-bottom: 7px;
}

/* textarea: la etiqueta descansa arriba, no centrada */
.campo-flotante:has(textarea)::before{ top: 22px; transform: none; }
.campo-flotante:has(textarea):focus-within::before,
.campo-flotante:has(textarea:not(:placeholder-shown))::before{ top: 13px; }
.campo-flotante:has(textarea):focus-within textarea,
.campo-flotante:has(textarea:not(:placeholder-shown)) textarea{
  padding-top: 32px;
  padding-bottom: 12px;
}

/* foco */
.campo-flotante input:focus,
.campo-flotante textarea:focus{
  outline: none;
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(255,85,76,.12);
}
.campo-flotante textarea{ display:block; }


@media (max-width:767px){
  html, body{  
    scroll-padding-top: 57px;
  }
}


/* Contenido no montado con Elementor (legales, blog, páginas simples).
   El tema lo sirve dentro de .orb-main sin estilo propio, así que aquí se le
   aplica la misma tipografía y color que al resto del sitio. */
.orb-main{max-width:820px;margin:0 auto;padding:72px 24px 104px;font-family:var(--ae-font-body),"Jost",sans-serif;font-size:17px;line-height:1.6;color:var(--ae-body)}
.orb-main .orb-title{font-family:var(--ae-font-heading),"Cormorant Garamond",serif;font-weight:500;font-size:40px;line-height:1.17;color:var(--ae-ink);margin:0 0 40px}
.orb-main h2,.orb-main h3,.orb-main h4{font-family:var(--ae-font-heading),"Cormorant Garamond",serif;font-weight:500;color:var(--ae-ink);line-height:1.2;margin:48px 0 16px}
.orb-main h2{font-size:30px}
.orb-main h3{font-size:24px}
.orb-main h4{font-size:20px}
.orb-main p{margin:0 0 18px}
.orb-main strong{color:var(--ae-ink);font-weight:500}
.orb-main a{color:var(--ae-accent);text-decoration:underline;text-underline-offset:3px}
.orb-main a:hover{color:var(--ae-ink)}
.orb-main ul,.orb-main ol{margin:0 0 18px;padding-inline-start:22px}
.orb-main li{margin-bottom:8px}
.orb-main table{width:100%;border-collapse:collapse;margin:0 0 24px;font-size:15px}
.orb-main th,.orb-main td{border:1px solid var(--ae-line);padding:10px 12px;text-align:start;vertical-align:top}
.orb-main th{background:var(--ae-tint);color:var(--ae-ink);font-weight:500}
.orb-main img{max-width:100%;height:auto}
.orb-main hr{border:0;border-top:1px solid var(--ae-line);margin:40px 0}
@media(max-width:767px){.orb-main{padding:48px 20px 72px;font-size:16px}.orb-main .orb-title{font-size:32px;margin-bottom:28px}.orb-main h2{font-size:26px}}/* End custom CSS */