/**
 * Contacto — hero con foto + formulario en hoja.
 * Sin sidebar.
 */

.page-template-template-contacto .kc-phero.has-photo .kc-phero__inner {
	min-height: min(78svh, 780px);
	padding-bottom: clamp(3.5rem, 8vw, 6.5rem);
}
.page-template-template-contacto .kc-phero.has-photo .kc-phero__bg-img {
	object-position: center 42%;
}
.page-template-template-contacto .kc-phero {
	border-bottom: 8px solid var(--kc-red);
}
.page-template-template-contacto .kc-phero__title {
	max-width: 12ch;
}
.page-template-template-contacto .kc-phero__text {
	max-width: 38ch;
}

.kc-contactpage__types {
	margin: 0;
	padding: .85rem var(--kc-gutter);
	background: var(--kc-ink);
	color: #fff;
	font-family: var(--kc-font-display);
	font-weight: 800;
	font-size: clamp(.95rem, 2.4vw, 1.35rem);
	letter-spacing: .12em;
	text-transform: uppercase;
	text-align: center;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.page-template-template-contacto .kc-form-block--sheet {
	background: var(--kc-canvas);
	padding-block: clamp(3rem, 7vw, 6rem);
}
.page-template-template-contacto .kc-form-block--sheet .kc-form-block__inner {
	max-width: 46rem;
	margin-inline: auto;
	padding: clamp(1.6rem, 4vw, 2.75rem);
	background: #fff;
	color: var(--kc-ink);
	box-shadow: 12px 12px 0 var(--kc-red);
}
.page-template-template-contacto .kc-form-block--sheet .kc-eyebrow {
	color: var(--kc-ink);
}
.page-template-template-contacto .kc-form-block__title {
	margin: 0 0 1.75rem;
	font-family: var(--kc-font-display);
	font-weight: 800;
	font-size: clamp(2.25rem, 5.5vw, 3.75rem);
	line-height: .88;
	text-transform: uppercase;
	max-width: 14ch;
}
.page-template-template-contacto .kc-form {
	gap: 1.15rem 1.35rem;
}
.page-template-template-contacto .kc-form__field label {
	font-family: var(--kc-font-display);
	font-weight: 800;
	font-size: .88rem;
	letter-spacing: .08em;
	text-transform: uppercase;
}
.page-template-template-contacto .kc-form input,
.page-template-template-contacto .kc-form select,
.page-template-template-contacto .kc-form textarea {
	min-height: 3.35rem;
	padding: .8rem .9rem;
	border: 0;
	border-bottom: 2px solid var(--kc-ink);
	background: var(--kc-canvas);
	border-radius: 0;
	font-size: 1.05rem;
}
.page-template-template-contacto .kc-form select {
	appearance: none;
	background-image: linear-gradient(45deg, transparent 50%, var(--kc-ink) 50%), linear-gradient(135deg, var(--kc-ink) 50%, transparent 50%);
	background-position: calc(100% - 1.15rem) calc(50% - .15rem), calc(100% - .75rem) calc(50% - .15rem);
	background-size: 6px 6px, 6px 6px;
	background-repeat: no-repeat;
	padding-right: 2.4rem;
}
.page-template-template-contacto .kc-form textarea {
	min-height: 10rem;
}
.page-template-template-contacto .kc-form input:focus,
.page-template-template-contacto .kc-form select:focus,
.page-template-template-contacto .kc-form textarea:focus {
	outline: none;
	background: #fff;
	border-bottom-color: var(--kc-red);
	box-shadow: inset 3px 0 0 var(--kc-red);
}
.page-template-template-contacto .kc-form__check {
	padding: .85rem .9rem;
	background: var(--kc-canvas);
}
.page-template-template-contacto .kc-form__check a {
	text-underline-offset: .2em;
}
.page-template-template-contacto .kc-form__actions {
	margin-top: .25rem;
}
.page-template-template-contacto .kc-form__actions .kc-btn {
	min-width: min(100%, 16rem);
}
.page-template-template-contacto .kc-form__note {
	grid-column: 1 / -1;
	margin: 0;
	max-width: 40ch;
	color: var(--kc-fg-muted);
	font-size: .92rem;
	line-height: 1.45;
}
.page-template-template-contacto .kc-form__status {
	margin: 0 0 1.25rem;
}

.page-template-template-contacto .kc-channels {
	border-bottom: 1px solid var(--kc-line);
}

@media (max-width: 639px) {
	.page-template-template-contacto .kc-form-block--sheet .kc-form-block__inner {
		box-shadow: 8px 8px 0 var(--kc-red);
	}
}
