html, body, div, span, applet, object, iframe, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li, button,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
  background: transparent;
	outline:none;
}
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
button { cursor: pointer;}
button:focus { outline: none}
input[type=text] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
	background-clip: padding-box;
}
input:focus, select:focus, select, input.form-control:focus, .custom-control:focus {
	outline:none !important;
	outline-width: 0 !important;
	box-shadow: none;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	background-clip: padding-box;
}

input:focus , input:active , input:checked {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	box-shadow: none;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	background-clip: padding-box;
}
textarea:focus {
	outline:none !important;
	outline-width: 0 !important;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	box-shadow: none;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	background-clip: padding-box;
}
textarea,
input:matches(
  [type="email"],
  [type="number"],
  [type="password"],
  [type="search"],
  [type="tel"],
  [type="text"],
  [type="url"]
) {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	box-shadow: none;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
}
input:focus, select:focus, select, input.form-input:focus {
  outline:none !important;
  outline-width: 0 !important;
  box-shadow: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
}
.btn.focus, .btn:focus {
  outline: 0;
  box-shadow: none!important;
}
.btn-primary.focus, .btn-primary:focus {
  box-shadow: none!important;
}
.btn-secondary.focus, .btn-secondary:focus {
  box-shadow: none!important;
}
.breadcrumb {
	margin: 0;
	padding: 0;
	background: none;
}

.form-control:active { outline: none!important}

a {
  text-decoration: none;
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
	outline:none;
}

a:hover {
  text-decoration: none;
}

h1 { font-size: 2em}
h2 { font-size: 1.5em}
h3 { font-size: 1.17em}
h4 { font-size: 1em}
h5 { font-size: 0.83em}
h6 { font-size: 0.63em}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
  margin-bottom: 0!important;
  font-weight: 500;
  line-height: 1.2;
}

body {
  position: relative;
  width: 100%;
  font-family: 'SFProRounded'!important;
	overflow: -moz-scrollbars-none;
	-webkit-scrollbar: 0;
	margin: 0;
	padding: 0;
}
section {
	margin: 8px 0;
	display: flex;
	justify-content: flex-start;
	width: 100%;
}
b {
	font-weight: bold;
}

/** Scroll **/
::-webkit-scrollbar {
    width: 4px; /** Tamaño Scroll en Vertical */
    height: 4px; /** Tamaño Scroll en Horizontal **/
}
::-webkit-scrollbar-thumb {
    border-radius: 4px; /** Borde redondeado barra **/
}
::-webkit-scrollbar-track {
    border-radius: 4px; /** Borde redondeado **/
}

.centerAll {
	display: flex;
	align-items: center;
	min-height: 100vh;
}
.page {
	width: 100%;
	border: 1px solid;
	border-radius: 16px;
	/* box-shadow: 0px 0px 16px #d7d7d7; */
	margin: 16px 0;
}
.main {
	padding: 24px 32px;
	text-align: left;
	display: block;
}

.banner ~ form .sect-content {
	width: 800px;
	display: block;
	min-height: 392px;
	float: left;
}

.sect-content {
	width: 800px;
	display: block;
	min-height: 487px;
	float: left;
	text-align: start;
}

.sect-buttons {
  bottom: 20px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin: 0;
  width: 767px;
}

.title {
	display: block;
	margin: 0px 0 16px;
	text-align: start;
}
.title h2 {
	font-weight: bold;
}

.title .subtitle {
	margin-top: 2px!important;
	font-size: 16px;
	font-weight: 500;
	line-height: normal;
}
h4 {
	display: block;
  width: 100%;
  float: left;
  margin-bottom: 8px!important;
	font-size: 18px;
	font-weight: bold;
}


/* contact button desktop */
.contact-desktop {
	display: flex;
  position: absolute;
  bottom: 16px;
  left: 24px;
  align-items: center;
	font-size: 0.8em;
}
.contact-desktop i {
	font-size: 24px;
	margin-right: 8px;
}
.contact-desktop p {
	display: inline-flex;
}

/* space grey reading document */

.section-document-fixed {
	display: flex;
	background-color: #e9e9e9;
	color: #111111;
	padding: 12px 20px;
	border-radius: 8px;
	margin-inline-end: 32px;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 32px;
}
.text-document {
	width: auto;
}
.text-number {
	width: auto;
}
.text-document span, .text-number span {
	font-size: 14px;
	color: #888888;
	text-align: left;
}
.number-document {
	font-size: 16px;
	color: #111111;
	text-align: left;
}
.bottomsheet, .bottomsheet-phone {
	display: none;
	opacity: 0;
}

.bottomsheet-phone > .modal-backdrop {
	display: none!important;
}
.titulos-componentes {
  padding: 4px 0 8px;
  font-size: 16px;
  color: #555;
  display: block;
  width: 100%;
  text-align: start;
}
.section-button-back {
	position: absolute;
  left: 0px;
  margin-bottom: 52px;
}


/* responsive structure */

@media (max-width: 1200px) {

	.main {
	  padding: 24px 32px;
	}
	.banner ~ form .sect-content {
    width: 664px;
	}
	.sect-content {
    width: 664px;
	}

	.sect-buttons {
	  width: 632px;
	}
	.bottomsheet, .bottomsheet-phone {
		opacity: 0;
	}
	/* .modal-backdrop.show {
    opacity: 0;
	} */

}

@media (max-width: 992px) {

	.container {
		width: 100%!important;
		max-width: 100%!important;
		padding: 0!important;
		margin: 0!important;
	}
	.centerAll {
		align-items: start;
	}
	.page {
		width: 100%;
		border: 0;
		border-radius: 0;
		padding: 0;
		margin: 0;
	}
	.wizard-desktop {
		height: 100vh;
		position: sticky;
    top: 0;
	}
	.banner ~ form .sect-content {
		width: 100%;
		padding: 0;
		margin: 0;
		min-height: auto;
	}
	.banner ~ form .sect-content {
		width: 100%;
		padding: 0;
		margin: 0;
		min-height: calc(100vh - 172px);
	}
	.sect-content {
		width: 100%;
		padding: 0;
		margin: 0;
		min-height: auto;
	}
	.sect-buttons {
    bottom: 0px;
		position: relative;
		padding: 16px 0;
		width: 100%;
	}
	.main {
		padding: 88px 24px 0;
	}
	.title {
		margin: 4px 0 24px;
	}
	.contact-desktop {
	  bottom: 20px;
	}
	.section-document-fixed {
		margin-inline-end: 0px;
		margin-bottom: 16px;
	}
	.text-document span, .text-number span {
		font-size: 12px;
		color: #888888;
		text-align: left;
	}
	.number-document {
		font-size: 14px;
		color: #111111;
		text-align: left;
	}
	.bottomsheet, .bottomsheet-phone {
		opacity: 0;
		display: none;
	}
	.modal-backdrop.show {
    opacity: 0;
		display: none;
	}
	.section-button-back {
		position: absolute;
	  left: 32px;
	  margin-bottom: 52px;
	}


}

@media (max-width: 768px) {

	.modal-backdrop.show {
    opacity: 0.5;
		display: block;
	}
	.bottomsheet, .bottomsheet-phone {
		opacity: 1;
	}

	.page {
		width: 100%;
		border: 0;
		border-radius: 0;
		padding: 16px;
		height: 100%;
		box-shadow: none;
	}
	.main {
		padding: 48px 0px 0px;
		height: 100%;
	}
	.banner ~ .sect-progress-bar ~ form .sect-content {
		width: 100%;
		padding: 0;
		margin: 0;
		min-height: inherit;
		display: inline-block;
	}
	.banner ~ form .sect-content {
		width: 100%;
		padding: 0;
		margin: 0;
		min-height: inherit;
		display: inline-block;
	}
	.sect-content {
		width: 100%;
		padding: 0;
		margin: 0;
		min-height: inherit;
	}
	.title {
    margin: 8px 0 24px;
	}
	.contact-desktop {
		display: none;
	}
	.bottomsheet {
		opacity: 1;
	}
	.section-button-back {
		display: none;
	}
	.section-button-next {
		width: 100%;
	}


}

@media (max-width: 576px) {

	.main {
		padding: 56px 0 0 0;
		min-height: 0;
		height: auto;
	}
	.wrap-input {
    flex-wrap: inherit;
		width: 100%;
	}
	.banner ~ .sect-progress-bar ~ form .sect-content {
		width: 100%;
		padding: 0;
		margin: 0;
		min-height: inherit;
	}
	.banner ~ form .sect-content {
		width: 100%;
		padding: 0;
		margin: 0;
		min-height: inherit;
	}
	.sect-content {
		width: 100%;
		padding: 0;
		margin: 0;
		min-height: auto;
	}
	.sect-buttons {
    bottom: 0px;
		padding: 16px 0 0;
	}

	section {
		margin: 4px 0;
	}
	.title {
    margin: 16px 0 20px;
	}
	.title .subtitle {
		margin-top: 0px!important;
		font-size: 14px;
		line-height: 1.2;
	}
	.centerAll {
		min-height: auto;
	}
	h4 {
		font-size: 16px;
	}
}

.blockContainer {
	width: 100%;
	height: 100%;
	z-index: 999999;
	position: fixed;
	background-color: #ddd;
	opacity: 0.5;
}

#landscape-mobile {
  display: none;
  z-index: -100;
}

@media(max-width: 767px) and (orientation: landscape) {
	#landscape-mobile {
		display: flex;
		position: fixed;
		top: 0;
		bottom: 0px;
		right: 0px;
		left: 0px;
		z-index: 990000;
		width: 100%;
		height: 100vh;
		align-items: center;
		justify-content: center;
		text-align: center;
		background: #FFF;
	}

		#landscape-mobile i {
			font-size: 64px;
			margin: 0 0 16px 0;
			display: block;
		}

		#landscape-mobile p {
			margin: 0;
			font-size: 24px;
			color: #555;
		}
}
