/* --------------------------------------------------------------------------
   File: style.css
   Theme Name: Hello Elementor Cuzgow
   Template:   hello-elementor
   Theme URI:  https://github.com/cuzgow/hello-elementor-cuzgow
   Author:     Cuzgow
   Author URI: https://cuzgow.com/
   Description: Main stylesheet for the Hello Elementor Cuzgow child theme,
                containing all core styles and layout rules.
   Version:     1.1.0
   Requires at least: 6.0
   Tested up to:      6.8
   Requires PHP:      8.1
   License:     GNU General Public License v3 or later
   License URI: https://www.gnu.org/licenses/gpl-3.0.html
   Text Domain: hello-elementor-cuzgow
------------------------------------------------------------------------- */

/*
    Add your custom styles here
*/
.tt_verify {
    display: none;
}
/* Desactivate by Cuzgow
//Image without 'data' attribute is (or becomes) visible 
img.lazyloaded {
     //prepare the future animation 
       -webkit-transition: opacity .5s linear 0.2s;
           -moz-transition: opacity .5s linear 0.2s;
                     transition: opacity .5s linear 0.2s;
    // we set the opacity to 1 to do the magic 
       opacity: 1;
    }
*/
 
/* Headings
------------------------------------------------- */
h1,
h2,
h3,
h4,
h5,
h6 {
	color: 													var(--brand-color);
	line-height: 										var(--line-height-condensed);
	margin: 												0;
	font-stretch: 									var(--font-stretch-condensed);
	font-family: 										var(--font-family-headings);
	font-weight:                    var(--font-weight-bold);
	max-width: 											var(--heading-width);
	text-wrap: 											balance;
}

h1 {
	font-size: 											4.78rem;
	font-size: 											var(--font-size-h1);
}
h2{
	font-size: 											3.98rem;
	font-size: 											var(--font-size-h2);
}
h3{
	font-size: 											3.32rem;
	font-size: 											var(--font-size-h3);
}
h4{
	font-size: 											2.76rem;
	font-size: 											var(--font-size-h4);
}
h5{
	font-size: 											2.3rem;
	font-size: 											var(--font-size-h5);
}
h6{
	font-size: 											1.92rem;
	font-size: 											var(--font-size-h6);
}


/* Media and objects
----------------------------------------------- */
video,
audio,
progress,
canvas {
  display: inline-block;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

embed,
iframe,
object,
video {
  max-width: 100%;
  height: auto; /* keep proportions */
}

img {
  max-width: 100%;
  height: auto;
  display: block; /* prevents inline gap */
}

picture {
  display: block; 
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}

figure {
  margin: 0 auto;
  margin-block-end: max(7%, 40px);
  max-width: 60vw;
  text-align: center;
}

figcaption {
  line-height: var(--line-height-condensed);
  color: var(--brand-color);
  font-family: var(--font-family-headings);
  font-size: var(--font-size-sub);
  font-weight: var(--font-weight-bold);
  text-align: center;
}

@media only screen and (max-width: 801px) {
  figure {
    max-width: 100%;
  }
}

/* horizontal line
------------------------------------------------------------------------ */
hr {
	box-sizing: 									content-box; 
	height: 											0; 
	overflow: 										visible;
	border-width: 								0;
	border-collapse: 							collapse;
	border-top: 									3px solid currentColor;
	color: 												var(--color-sat-4);
	clear: 												both;
	margin: 											1em 0;
}

/* CTA AND FORMS BUTTONS
------------------------------------------------------------------------ 
------------------------------------------------------------------------ */
/**
	* This is for saffari and ios bug (input type = file)
	* 1. Correct the inability to style clickable types in iOS and Safari.
	* 2. Change font properties to `inherit` in Safari.
	*/
	::-webkit-file-upload-button {
		-webkit-appearance: 												button; /* 1 */
		font: 																			inherit; /* 2 */
	}

	button {
		-webkit-appearance: button;
		appearance: none;
	}
/* Button keyboard key color brand
-------------------------------------- 
Layout:   a.cta
          a.cta::after
*/
a.cta {
    position: relative;
    display: block;
    color: var(--text-light);
    text-shadow: 
      0 0 1px rgba(0, 0, 0, 0.4), 
      0 1px 2px rgba(0, 0, 0, 0.4);
    font-stretch: var(--font-stretch-normal);
    letter-spacing: var(--letter-spacing-expanded);
    font-family: var(--font-family-headings);
    font-size: var(--font-size-h6);
    font-variant-caps: var(--font-variant-caps-small);
    padding: 1.2em 1em;
    border: 1px solid transparent;
    cursor: pointer;
  
    transform: translateZ(0);
    -webkit-transform: translateZ(0);
  
    touch-action: manipulation;
    user-select: none;
  
    margin: 2em auto;
    width: min(300px, 60vw);
    text-align: center;
    z-index: 99;
  }
  
  a.cta::after {
    content: "";
    position: absolute;
    left: -1px;
    right: -1px;
    top: -5px;
    bottom: -2px;
    z-index: -1;
  
    background-color: var(--brand-color);
    border: 4px solid var(--color-light-3);
    border-radius: .5em;
  
    /* Raised keyboard key effect */
    box-shadow: 
      -4px -4px 6px rgba(255, 255, 255, 0.6),   /* highlight top-left */
       4px  4px 6px rgba(0, 0, 0, 0.25);        /* shadow bottom-right */
  
    transform: translateY(6px);
    transition: transform 0.15s ease, box-shadow 0.15s ease;
  }
  
  /* Hover and focus: key "presses down" */
  a.cta:hover,
  a.cta:focus {
    transform: none;
    -webkit-transform: none;
    box-shadow: none;
    -webkit-box-shadow: none;
    padding: 1.2em; /* keep as you defined */
  }	
  
  a.cta:hover::after,
  a.cta:focus::after {
    transform: translateY(2px); /* closer to surface */
    box-shadow: 
      inset 1px 1px 3px rgba(0, 0, 0, 0.3); /* pressed inset */
  }
  
  a.cta:focus {
    outline: 1px solid var(--color-sat-3); /* kept at 1px */
    color: var(--text-light);
    background-color: inherit;
  }	
  
  a.cta:active {
    outline: none;
  }
  
  a.cta:active::after {
    transform: translateY(1px); /* fully pressed */
    box-shadow: 
      inset 2px 2px 4px rgba(0, 0, 0, 0.4); /* deeper pressed shadow */
    outline: 4px solid hsl(
      var(--brand-hue), 
      var(--brand-saturation), 
      calc(var(--brand-lightness) - 32%)
    );
  }
  
  /* End cta button */
  /* Button keyboard key color light 
  ---------------------------------------------- 
  Layout:   a.cta.light
            a.cta.light::after 
  */
  a.cta.light {
    color: var(--color-light-1);
  }
  
  a.cta.light::after {
    background-color: var(--color-sat-5);   /* neutral grey fallback */
    border: 4px solid var(--color-light-1); /* subtle highlight border */
    border-radius: .5em;
  
    /* Raised keyboard key effect for light variant */
    box-shadow: 
      -4px -4px 6px rgba(255, 255, 255, 0.7),   /* highlight top-left */
       4px  4px 6px rgba(0, 0, 0, 0.2);        /* shadow bottom-right */
  
    transform: translateY(6px);
    transition: transform 0.15s ease, box-shadow 0.15s ease;
  }
  
  a.cta.light:hover::after,
  a.cta.light:focus::after {
    transform: translateY(2px); /* key presses down */
    box-shadow: 
      inset 1px 1px 3px rgba(0, 0, 0, 0.25); /* subtle pressed inset */
  }
  
  a.cta.light:active::after {
    transform: translateY(1px); /* fully pressed */
    box-shadow: 
      inset 2px 2px 4px rgba(0, 0, 0, 0.35); /* deeper pressed shadow */
    outline: 4px solid hsl(
      var(--brand-hue), 
      var(--brand-saturation), 
      calc(var(--brand-lightness) - 32%)
    );
  }
  
  /* End cta light button */
  
  /* Regular button and button html tag
  ------------------------------------- 
  Layout   a --- .button
  or       button ---
  */
  a.button,
  button,
  .button {
    display: block;
    color: var(--text-light);
    padding: 1em;
    font-size: var(--font-size-h6);
    font-stretch: var(--font-stretch-normal);
    font-variant-caps: var(--font-variant-caps-small);
    letter-spacing: var(--letter-spacing-expanded);
    border: 1px solid transparent;
    width: min(300px, 60vw);
    text-align: center; 
    background: linear-gradient(135deg, var(--brand-color), var(--color-light-4));
    border-radius: 0.18em;
    transition: transform .3s ease-in;
    margin-bottom: max(5%, 30px);
  }
  
  a.button:hover,
  .button:hover,
  button:hover {
    transform: scale(1.05); /* smoother pop effect */
    transition: transform .3s ease-in-out;
  }
  
  a.button:focus,
  .button:focus,
  button:focus {
    outline: none;
    color: var(--text-light);
    background-color: inherit;
    box-shadow: 0 0 0 2px var(--color-sat-3); /* accessible focus ring */
  }	
  
  a.button:active,
  .button:active,
  button:active {
    outline: none;
  }
  
  button {
    -webkit-appearance: button;
    appearance: none;
  }
      
  @media only screen and (max-width: 801px) {
    a.button,
    .button,
    button {
      transition: none;
    }
  
    a.button:hover,
    a.button:focus,
    a.button:active,
    .button:hover,
    .button:focus,
    .button:active,
    button:hover,
    button:focus,
    button:active {
      transition: none;
    }
  }
  
  /* End regular button */
  /* Regular button light variant
  ------------------------------------- 
  Layout   a --- .button.light
  or       button.button.light
  */
  a.button.light,
  button.button.light,
  .button.light {
    display: block;
    color: var(--text-dark); /* darker text for contrast on light bg */
      text-shadow: var(--text-shadow-light);
    padding: 1em;
    font-size: var(--font-size-h6);
    font-stretch: var(--font-stretch-normal);
    font-variant-caps: var(--font-variant-caps-small);
    letter-spacing: var(--letter-spacing-expanded);
    border: 1px solid var(--color-light-3);
    width: min(300px, 60vw);
    text-align: center; 
    background: linear-gradient(
      135deg, 
      var(--color-light-1), 
      var(--color-light-2)
    );
    border-radius: 0.18em;
    transition: transform .3s ease-in;
    margin-bottom: max(5%, 30px);
  }
  
  a.button.light:hover,
  .button.light:hover,
  button.button.light:hover {
    transform: scale(1.05);
    transition: transform .3s ease-in-out;
  }
  
  a.button.light:focus,
  .button.light:focus,
  button.button.light:focus {
    outline: none;
    color: var(--color-light-5);
    box-shadow: 0 0 0 2px var(--color-sat-3); /* subtle focus ring */
  }	
  
  a.button.light:active,
  .button.light:active,
  button.button.light:active {
    outline: none;
    transform: scale(0.98); /* pressed effect */
  }
  
  @media only screen and (max-width: 801px) {
    a.button.light,
    .button.light,
    button.button.light {
      transition: none;
    }
  
    a.button.light:hover,
    a.button.light:focus,
    a.button.light:active,
    .button.light:hover,
    .button.light:focus,
    .button.light:active,
    button.button.light:hover,
    button.button.light:focus,
    button.button.light:active {
      transition: none;
    }
  }
  
  /* End regular button light */
  /* Another type of button
  ------------------------------------- 
  Layout a ---- .button.thin
  */
  .button.thin,
  a.button.thin {
    display: block;
    color: var(--text-light);
    padding: .5em;
    font-size: var(--font-size-p);
    font-stretch: var(--font-stretch-normal);
    font-variant-caps: var(--font-variant-caps-small);
    letter-spacing: var(--letter-spacing-expanded);
    border: 1px solid transparent;
    width: min(400px, 80vw);
    text-align: center; 
    background: linear-gradient(135deg, var(--brand-color), var(--color-light-4));
    border-radius: 0.18em;
    transition: transform .3s ease-in;
    margin-bottom: max(5%, 30px);
  }
  
  a.button.thin:hover,
  .button.thin:hover {
    transform: scale(1.05); /* smoother effect */
    transition: transform .3s ease-in-out;
  }
  
  a.button.thin:focus,
  .button.thin:focus {
    outline: 1px solid var(--color-sat-4);
    color: var(--text-light);
    background-color: inherit;
  }	
  
  a.button.thin:active,
  .button.thin:active {
    outline: none;
    transform: scale(0.98); /* pressed effect */
  }
  
  @media only screen and (max-width: 801px) {
    a.button.thin,
    .button.thin {
      transition: none;
    }
  
    a.button.thin:hover,
    a.button.thin:focus,
    a.button.thin:active,
    .button.thin:hover,
    .button.thin:focus,
    .button.thin:active {
      transition: none;
    }
  }
/* Address
------------------------------------------------------------------------ */
address {
  text-align: right;
  margin-block-end: max(5%, 20px);
  font-size: var(--font-size-sub);
  overflow-wrap: break-word;
  word-break: break-word;
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-condensed);
}

address a::after {
  content: ""; /* prevent default decorations (tel/mailto) */
}

address > p {
  margin-block-end: .3em;
}

address a[href^="tel"]::after{
	content: 											"";
}

/* Specials font types
------------------------------------------------------------------------ */
dfn,
cite,
em,
i {
	font-style: 										italic;
}

code,
kbd,
samp {
	font-family: 										var(--font-family); 
	font-size: 											var(--font-size-sub);
}

b,
strong {
	font-weight: 										var(--font-weight-bold);
}

pre {
	font-family: 										var(--font-family);
	font-size: 											var(--font-size-sub);
	white-space: 										pre;
	overflow-x: 										auto;
}

abbr[title] {
border-bottom: 										none;
text-decoration: 									underline; 
text-decoration-style: 						dotted; 
letter-spacing: 									0.1em;
}

small {
	font-size: 											.8em;
}

sub,
sup {
	font-size: 											.6em;
	line-height:										0;
	position: 											relative;
	vertical-align:									baseline;
}


sub {
	bottom: 												-0.25em;
}

sup {
	top: 														-0.5em;
}

input[type=text],
input[type=date],
input[type=email],
input[type=number],
input[type=password],
input[type=search],
input[type=tel],
input[type=url],
select,
textarea {
	width: 														100%;
	border: 													dotted 1px var(--brand-color);
	border-radius: 										.3em;
	padding: 													0.5rem 1rem;
	transition: 											all 0.2s;
	-webkit-transition: 							all .2s;
}

input[type=text]:focus,
input[type=date]:focus,
input[type=email]:focus,
input[type=number]:focus,
input[type=password]:focus,
input[type=search]:focus,
input[type=tel]:focus,
input[type=url]:focus,
select:focus,
textarea:focus {
	border-color: 										var(--color-sat-4);
	box-shadow: 											0 0 0 2px var(--color-sat-3);
}

[type=submit]:not(:disabled),
[type=button]:not(:disabled),
[type=reset]:not(:disabled) {
	cursor:													 	pointer;
}


[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
	height: 													auto;
}	

[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
	border-style: 										none;
	padding: 													0;
}

[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
	outline: 													1px dotted ButtonText;
}


fieldset {
	padding: 0.35em 0.75em 0.625em;
}

[type=search] {
	-webkit-appearance: 							textfield; 
	outline-offset: 									-2px; 
}

[type=search]::-webkit-search-decoration {
	-webkit-appearance: 							none;
}

::-webkit-file-upload-button {
	-webkit-appearance: 							button; 
	font: 														inherit; 
}


/* Disable transitions for form buttons on touch-only devices */
@media (hover: none) and (pointer: coarse) {
  input[type=button],
  input[type=submit],
  input[type=reset] {
    transition: none;
  }
}

/* Hoja de estilos importado de theme.css 
------------------------------------------------------------------------
------------------------------------------------------------------------ */
/* Clases de wordpress 
-------------------------------------------  */

.alignright {
	float: 																				right;
	margin-left: 																	1rem;
}

.alignleft {
	float: 																				left;
	margin-right: 																1rem;
}

.aligncenter {
	clear: 																				both;
	display: 																			block;
	margin-left: 																	auto;
	margin-right: 																auto;
}

.alignwide {
	margin-left: 																	-80px;
	margin-right: 																-80px;
}

/* este código para copiar en el editor de elementor para full width
------------------------------------------------------------------------ */
.alignfull {
	width: 																				100vw;
	max-width: 																		100vw;
	margin-inline-start: 													calc(50% - 50vw);
	margin-inline-end: 														calc(50% - 50vw);
	margin-block-end: 														max(10%, 80px);
	overflow: 																		hidden;
	overflow-x: 																	hidden;
	overflow-y: 																	hidden;
	padding-block-end: 														max(7%, 50px);
	padding-inline: 															10vw;
	padding-top: 																	max(7%, 50px);
}

@media only screen and (max-width: 1024px){
	.alignfull{
		padding-inline: 													8vw;
	}
}


@media only screen and (max-width: 600px){
	.alignfull{
		padding-inline: 													min(1.6rem, 5vw);
	}
}


.alignfull img {
	width: 																				100vw;
}

.wp-caption {
	margin-block-end: 														1.25rem;
	max-width: 																		100%;
}

.wp-caption.alignleft {
	margin: 																			5px 20px 20px 0;
}

.wp-caption.alignright {
	margin: 																			5px 0 20px 20px;
}

.wp-caption img {
	display: 																			block;
	margin-inline-start: 													auto;
	margin-inline-end: 														auto;
}

.wp-caption-text {
	margin: 																			0;
}

.gallery-caption {
	display: 																			block;
	font-size: 																		0.8125rem;
	line-height: 																	1.5;
	margin: 																			0;
	padding: 																			0.75rem;
}

.pagination {
	margin: 																			20px auto;
}

.sticky {
	position: 																		relative;
	display: 																			block;
}

.bypostauthor {
	font-size: 																		inherit;
}

.hide {
	display: 																			none !important;
}

.post-password-form p {
	width: 																				100%;
	display: 																			flex;
	align-items: 																	flex-end;
}

.post-password-form [type=submit] {
	margin-inline-start: 													3px;
}

/**
	* Post item in archive pages
	*/
.post .entry-title a {
	text-decoration: 															none;
}

.post .wp-post-image {
	width: 																				100%;
	max-height: 																	500px;
	object-fit: 																	cover;
}

@media (max-width: 991px) {
	.post .wp-post-image {
		max-height: 																400px;
	}
}

@media (max-width: 575px) {
	.post .wp-post-image {
		max-height: 																300px;
	}
}

/* More link
---------------------------------------------- */
.more-link {
	display: 																			inline-block;
	margin-top: 																	10px;
}

/* END reset wordpress classes 
------------------------------------------------ */

/* END normalize + reset forms 
------------------------------------------------------------------------
------------------------------------------------------------------------ */

/* UTILITY STYLES (revisar)
------------------------------------------- */
/* Accessibility: hide visually, keep for screen readers */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  white-space: nowrap;
  word-wrap: normal !important;
}

/* Make it visible when focused (keyboard users) */
.screen-reader-text:focus {
  background-color: #eee;
  clip: auto !important;
  clip-path: none;
  color: #333;
  display: block;
  font-size: 1rem;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}
/* END Utilities
--------------------------------------- */
/* PRINT (revisar ****)
------------------------------------------ */
@media print {
	*,
	*:before,
	*:after {
		background: transparent !important;
		color: #000 !important; /* Black prints faster */
		-webkit-box-shadow: none !important;
		box-shadow: none !important;
		text-shadow: none !important;
	}

	a,
	a:visited {
		text-decoration: underline;
	}

	a[href]:after {
		content: " (" attr(href) ")";
	}
	
	abbr[title]:after {
		content: " (" attr(title) ")";
	}

	a[href^="#"]:after,
	a[href^="javascript:"]:after {
		content: "";
	}

	pre {
		white-space: pre-wrap !important;
	}
	
	pre,
	blockquote {
		break-inside: avoid;
		border: 1px solid #cccccc;
	}

	thead {
		display: table-header-group;
	}

	tr,
	img {
		break-inside: avoid;
	}

	p,
	h2,
	h3 {
		orphans: 3;
		widows: 3;
	}

	h2,
	h3 {
		break-after: avoid;
	}
}

/* End print
---------------------------------- */
/* End Import from parent theme
------------------------------------------------------------------------
------------------------------------------------------------------------ */

/* End CUZGOW
--------------------------------------------------------- */


/* Articles */
.elementor-widget-theme-post-content h1,
.elementor-widget-theme-post-content h2,
.elementor-widget-theme-post-content h3,
.elementor-widget-theme-post-content h4,
.elementor-widget-theme-post-content h5{
    line-height: 1em!important;
    margin-top:40px;
}
.elementor-widget-theme-post-content h2{
    font-size:35px!important;
    color: #FC7F3D!important;
    font-weight:500!important;
}
.elementor-widget-theme-post-content h3{
    color:#2D2E48;
}
.elementor-widget-theme-post-content h4{
    color:#666666; 
}
/* articles */


.cmplz-cookiebanner.banner-1.optin.cmplz-center.cmplz-categories-type-view-preferences.cmplz-show{
    max-width: fit-content;
}

/* Indice articulo */
/* Indice articulo */
.indice-articulo {
    background: #f5f5f5;
    margin-bottom: 20px;
    border: solid 1px var(--e-global-color-primary);
    transition: all 0.3s ease;
}

.indice-header {
    background: var(--e-global-color-primary);
    color: #ffffff;
    padding: 15px 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
}

.indice-header span {
    font-size: 20px;
    font-weight: bold;
}

.toggle-indice {
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
}

.toggle-indice svg {
    fill: #ffffff;
    transition: transform 0.3s ease;
}

.indice-header[aria-expanded="true"] .toggle-indice svg {
    transform: rotate(180deg);
}

.indice-contenido {
    max-height: 1000px;
    overflow: hidden;
    transition: all 0.3s ease;
    padding: 20px;
}

.indice-contenido.collapsed {
    max-height: 0;
    padding: 0;
}

.indice {
    margin: 0;
    padding: 0 0 0 20px;
}

.indice li {
    padding: 4px 0;
}

.indice a {
    color: var(--e-global-color-primary);
    text-decoration: none;
    transition: color 0.2s ease;
}

.indice a:hover {
    color: var(--e-global-color-text);
}

@media (max-width: 767px) {
    .indice-articulo {
        margin: 10px 0;
    }
    
    .indice-header span {
        font-size: 16px;
    }
    
    .indice li {
        padding: 2px 0;
    }
}
/* Indice articulo */