.core-subscriptions { min-height:0; }
.core-subscriptions-grid { min-height:560px; }
.core-subscriptions-information { color:#fff; }
.core-subscriptions-intro { max-width:760px; }
.core-subscriptions-panel-body {
	display:flex;
	flex-direction:column;
	height:100%;
	min-height:0;
	box-sizing:border-box;
	overflow-y:auto;
}
.core-subscriptions-form {
	display:flex;
	flex:1 1 auto;
	min-height:0;
	flex-direction:column;
	gap:10px;
}
.core-subscriptions-form-head { padding:2px 2px 12px; }
.core-subscriptions-options-list {
	display:flex;
	flex-direction:column;
	gap:10px;
}
.core-subscriptions-email-title {
	margin:0 0 7px;
	color:var(--core-basic-ink);
	font-size:clamp(18px,1.35vw,24px);
	font-weight:500;
	line-height:1.25;
	word-break:break-word;
}
.core-subscriptions-email-title strong { font-weight:700; }
.core-subscriptions-form-head p {
	margin:0;
	color:var(--core-basic-muted);
	font-size:clamp(15px,1vw,18px);
	line-height:1.45;
}
.core-subscriptions-option {
	position:relative;
	display:block;
	padding:20px 22px;
	border:1px solid rgba(0,0,0,.10);
	border-radius:10px;
	background:#fff;
	cursor:pointer;
	transition:border-color .16s ease,background .16s ease,box-shadow .16s ease;
}
.core-subscriptions-option.is-unselected {
	border-color:rgba(211,47,47,.30);
	background:#fff8f7;
}
.core-subscriptions-option.is-unselected:hover {
	border-color:rgba(211,47,47,.62);
	box-shadow:0 0 0 2px rgba(211,47,47,.05);
}
.core-subscriptions-option.is-selected {
	border-color:rgba(35,128,69,.34);
	background:#f4faf6;
}
.core-subscriptions-option.is-selected:hover {
	border-color:rgba(35,128,69,.62);
	box-shadow:0 0 0 2px rgba(35,128,69,.05);
}
.core-subscriptions-option.is-locked { cursor:default;border-color:rgba(80,80,80,.24);background:#f3f3f3; }
.core-subscriptions-option.is-locked:hover { border-color:rgba(80,80,80,.24);background:#f3f3f3;box-shadow:none; }
.core-subscriptions-option input { position:absolute;opacity:0;pointer-events:none; }
.core-subscriptions-option-title {
	display:flex;
	align-items:center;
	gap:16px;
	min-width:0;
}
.core-subscriptions-check {
	display:block;
	flex:0 0 30px;
	width:30px;
	height:30px;
	background:#c93631;
	-webkit-mask:url("../images/newsletter-circle-xmark.svg") center / contain no-repeat;
	mask:url("../images/newsletter-circle-xmark.svg") center / contain no-repeat;
	transition:background-color .16s ease,transform .16s ease;
}
.core-subscriptions-option input:checked + .core-subscriptions-option-title .core-subscriptions-check {
	background:#238045;
	-webkit-mask-image:url("../images/newsletter-circle-check.svg");
	mask-image:url("../images/newsletter-circle-check.svg");
}
.core-subscriptions-option.is-locked .core-subscriptions-check { background:#686868; }
.core-subscriptions-option.is-locked input:checked + .core-subscriptions-option-title .core-subscriptions-check {
	background:#686868;
	-webkit-mask-image:url("../images/newsletter-circle-check.svg");
	mask-image:url("../images/newsletter-circle-check.svg");
}
.core-subscriptions-option input:focus-visible + .core-subscriptions-option-title .core-subscriptions-check {
	outline:2px solid currentColor;
	outline-offset:3px;
}
.core-subscriptions-option-title strong {
	display:block;
	min-width:0;
	font-size:21px;
	font-weight:650;
	line-height:1.15;
	transition:color .16s ease;
}
.core-subscriptions-option.is-unselected .core-subscriptions-option-title strong { color:#b7322f; }
.core-subscriptions-option.is-selected .core-subscriptions-option-title strong { color:#206b3b; }
.core-subscriptions-option.is-locked .core-subscriptions-option-title strong { color:#404040; }
.core-subscriptions-option-description {
	display:block;
	margin:8px 0 0 46px;
	color:var(--core-basic-muted);
	font-size:clamp(16px,1.02vw,19px);
	line-height:1.52;
}
.core-subscriptions-option.is-locked .core-subscriptions-option-description { color:#666; }
.core-subscriptions-actions {
	display:flex;
	flex-direction:column;
	gap:10px;
	margin-top:auto;
	padding-top:4px;
}
.core-subscriptions-actions [hidden] { display:none !important; }
.core-subscriptions-clear,
.core-subscriptions-submit,
.core-subscriptions-unsubscribe {
	appearance:none;
	width:100%;
	box-sizing:border-box;
	border-radius:9px;
	font:inherit;
	font-size:16px;
	font-weight:650;
	cursor:pointer;
	transition:border-color .16s ease,color .16s ease,background .16s ease,opacity .16s ease;
}
.core-subscriptions-submit,
.core-subscriptions-unsubscribe {
	font-size:clamp(21px,1.35vw,25px);
}
.core-subscriptions-clear,
.core-subscriptions-unsubscribe {
	padding:15px 20px;
	border:1px solid rgba(0,0,0,.14);
	background:#fff;
	color:var(--core-basic-ink);
}
.core-subscriptions-clear:hover,.core-subscriptions-clear:focus-visible { border-color:#238045;color:#206b3b;background:#f4faf6; }
.core-subscriptions-submit { padding:18px 24px;border:0;background:var(--core-basic-ink);color:#fff; }
.core-subscriptions-submit:hover,.core-subscriptions-submit:focus-visible { background:#238045; }
.core-subscriptions-submit:disabled { cursor:not-allowed;opacity:.36;background:var(--core-basic-ink); }
.core-subscriptions-unsubscribe.is-destructive {
	border-color:rgba(211,47,47,.46);
	color:#b7322f;
	background:#fff8f7;
}
.core-subscriptions-unsubscribe.is-destructive:hover,
.core-subscriptions-unsubscribe.is-destructive:focus-visible {
	border-color:#c93632;
	background:#c93632;
	color:#fff;
}
.core-subscriptions-form.is-unsubscribe-mode .core-subscriptions-actions { margin-top:12px; }

.core-subscriptions-protected {
	margin-top:28px;
	padding-top:0;
}
.core-subscriptions-protected hr {
	margin:0 0 28px;
	border:0;
	border-top:1px solid rgba(0,0,0,.14);
}
.core-subscriptions-protected h2 {
	margin:0 0 10px;
	color:var(--core-basic-ink);
	font-size:clamp(20px,1.3vw,24px);
	font-weight:700;
	line-height:1.2;
}
.core-subscriptions-protected > p {
	margin:0 0 14px;
	color:var(--core-basic-muted);
	font-size:clamp(16px,1.02vw,19px);
	line-height:1.5;
}
.core-subscriptions-protected-list {
	display:flex;
	flex-direction:column;
	gap:10px;
}
.core-subscriptions-protected-list .core-subscriptions-option {
	cursor:default;
}
.core-subscriptions-result {
	margin:auto 0;
	padding:24px;
	border:1px solid rgba(0,0,0,.09);
	border-radius:10px;
	font-size:clamp(22px,1.8vw,34px);
	font-weight:600;
	line-height:1.15;
}
.core-subscriptions-result.is-success { border-left:5px solid #16883b; }
.core-subscriptions-result.is-error { border-left:5px solid var(--core-basic-accent); }
.core-subscriptions-intro h1 { font-size:4.95vw; }
.core-subscriptions-result.is-access {
	align-self:center;
	width:100%;
	max-width:720px;
	margin:auto 0;
	padding:0;
	border:0;
	border-radius:0;
	background:transparent;
	text-align:center;
	font-size:clamp(18px,1.25vw,23px);
	font-weight:500;
	line-height:1.45;
	color:var(--core-basic-muted);
}
.core-subscriptions-intro > p {
	max-width:500px;
	margin:0;
	color:rgba(255,255,255,.92);
	font-size:clamp(16px,1.05vw,19px);
	line-height:1.5;
}
@media (min-width:981px) {
	body.core-subscriptions-page { height:100vh;height:100dvh;min-height:0;overflow:hidden; }
	body.core-subscriptions-page .fetean-site-footer { flex:0 0 auto; }
	body.core-subscriptions-page .fetean-site-content { flex:1 1 0;min-height:0;overflow:hidden; }
	body.core-subscriptions-page .core-subscriptions,
	body.core-subscriptions-page .core-basic-article,
	body.core-subscriptions-page .core-subscriptions-grid,
	body.core-subscriptions-page .core-subscriptions-information,
	body.core-subscriptions-page .core-subscriptions-panel,
	body.core-subscriptions-page .core-subscriptions-panel-body { height:100%;min-height:0; }

	/* En escritorio solo se desplaza el área de selectores. */
	.core-subscriptions-panel-body { overflow:hidden; }
	.core-subscriptions-form { overflow:hidden; }
	.core-subscriptions-form-head,
	.core-subscriptions-actions { flex:0 0 auto; }
	.core-subscriptions-options-list {
		flex:1 1 auto;
		min-height:0;
		overflow-x:hidden;
		overflow-y:auto;
		overscroll-behavior:contain;
		scrollbar-gutter:stable;
		padding-right:6px;
	}
	.core-subscriptions-protected {
		display:flex;
		flex:1 1 auto;
		min-height:0;
		flex-direction:column;
		overflow:hidden;
	}
	.core-subscriptions-protected-list {
		flex:1 1 auto;
		min-height:0;
		overflow-x:hidden;
		overflow-y:auto;
		overscroll-behavior:contain;
		scrollbar-gutter:stable;
		padding-right:6px;
	}
}
@media (max-width:980px) {
	.core-subscriptions-grid { grid-template-columns:minmax(0,1fr);min-height:0; }
	.core-subscriptions-information { min-height:360px; }
	/* En móvil/tablet el desplazamiento vuelve a ser el natural de la página. */
	.core-subscriptions-panel-body { height:auto;overflow:visible; }
	.core-subscriptions-form { flex:0 0 auto;overflow:visible; }
	.core-subscriptions-options-list,
	.core-subscriptions-protected,
	.core-subscriptions-protected-list { min-height:0;overflow:visible; }
}
@media (max-width:620px) {
	.core-subscriptions-option { padding:18px; }
	.core-subscriptions-form-head { padding-bottom:8px; }
}

/* 4.2.353 — /suscripciones/ replica el bloque introductorio de /contacto en móvil. */
@media (max-width:980px) {
	.core-subscriptions-information { min-height:0; }
}
@media (max-width:760px) {
	.core-subscriptions-intro h1 { font-size:clamp(54px,17vw,86px); }
}
