/* Canonical service components. Scoped to Consultas, Formación and Editorial. */
body.lcb-service-page {
	--lcb-service-ink: #071b3c;
	--lcb-service-gold: #b77905;
	--lcb-service-cream: #fbf5ea;
	--lcb-service-paper: #fffdf8;
	--lcb-service-line: rgba(183, 121, 5, .32);
	--lcb-service-padding: clamp(22px, 3vw, 40px);
}

/* Match the full-width page introductions, with the same reading width below. */
body.lcb-service-page.lcb-formacion-page :is(.fl-module-html, .fl-module-rich-text):has(.lcb-formacion-hero),
body.lcb-service-page.lcb-formacion-page :is(.fl-module-html, .fl-module-rich-text):has(.lcb-formacion-hero) .fl-module-content,
body.lcb-service-page.lcb-formacion-page :is(.fl-html, .fl-rich-text):has(> .lcb-formacion-hero) {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}
body.lcb-service-page :is(.lcb-formacion-hero, .lcb-ed-hero),
body.lcb-service-page.lcb-consultas-page .entry > .entry-header {
	margin: 0 !important;
	padding: 56px 14px 48px !important;
	background: linear-gradient(135deg, #fffdf9, #fbf3e7 52%, #fffdf8) !important;
	border: 0;
	border-bottom: 1px solid var(--lcb-service-line);
}
body.lcb-service-page :is(.lcb-formacion-hero, .lcb-ed-hero) h1,
body.lcb-service-page.lcb-consultas-page .entry > .entry-header h1 {
	margin: 0 auto 12px !important;
	font: 600 clamp(38px, 5vw, 60px)/1.12 Georgia, 'Times New Roman', serif !important;
	color: var(--lcb-service-ink) !important;
	letter-spacing: .025em;
}
body.lcb-service-page :is(.lcb-formacion-method, .lcb-ed-method) {
	margin: 16px auto !important;
	font: italic 500 clamp(21px, 2.5vw, 28px)/1.35 Georgia, serif !important;
	color: #855808 !important;
}
body.lcb-service-page :is(.lcb-formacion-lead, .lcb-ed-lead) {
	max-width: 680px;
	margin: 0 auto 28px !important;
	font: 400 18px/1.6 Lato, Arial, sans-serif !important;
}
body.lcb-service-page :is(.lcb-formacion-nav, .lcb-ed-nav) {
	width: min(900px, 100%);
	max-width: 900px;
	margin: 28px auto 0;
	gap: 16px;
}
body.lcb-service-page :is(.lcb-formacion-nav, .lcb-ed-nav) a {
	padding: 20px !important;
	border: 1px solid var(--lcb-service-line) !important;
	border-radius: 16px !important;
	background: var(--lcb-service-paper) !important;
	box-shadow: 0 6px 18px rgba(7,27,60,.05) !important;
}
body.lcb-service-page :is(.lcb-formacion-nav, .lcb-ed-nav) strong {
	display: block;
	font: 600 22px/1.3 Georgia, serif !important;
	color: var(--lcb-service-ink) !important;
}
body.lcb-service-page :is(.lcb-formacion-nav, .lcb-ed-nav) em {
	display: block;
	margin-top: 6px;
	font: italic 400 16.5px/1.45 Lato, Arial, sans-serif !important;
	color: #655f58 !important;
	white-space: normal;
	overflow-wrap: anywhere;
}

/* Surfaces and typography use the same tokens rather than individual page variants. */
body.lcb-service-page .lcb-ed-card,
body.lcb-service-page.lcb-consultas-page .entry-content .fl-row > .fl-row-content-wrap,
body.lcb-service-page.lcb-formacion-page :is(#formacion-zoom, #formacion-grabada, #formacion-cursos) :is(.fl-module-rich-text, .fl-module-html) {
	padding: var(--lcb-service-padding) !important;
	background: var(--lcb-service-paper) !important;
	border: 1px solid var(--lcb-service-line) !important;
	border-radius: 18px !important;
	box-shadow: 0 12px 32px rgba(7,27,60,.06) !important;
}
body.lcb-service-page.lcb-consultas-page .entry-content .fl-row {
	width: min(900px, calc(100% - 28px)) !important;
	max-width: 900px !important;
	margin-right: auto !important;
	margin-left: auto !important;
}
body.lcb-service-page.lcb-formacion-page :is(#formacion-zoom, #formacion-grabada, #formacion-cursos) {
	width: min(900px, calc(100% - 28px)) !important;
	margin: 0 auto !important;
	scroll-margin-top: 24px;
}
body.lcb-service-page.lcb-formacion-page :is(#formacion-zoom, #formacion-grabada, #formacion-cursos) .fl-row-content-wrap {
	background: transparent !important;
	border: 0 !important;
	padding: 40px 0 0 !important;
}
body.lcb-service-page :is(.fl-rich-text, .lcb-ed-card) {
	font: 400 18px/1.6 Lato, Arial, sans-serif;
}
body.lcb-service-page :is(.fl-rich-text, .fl-html, .lcb-ed-card) h2 {
	margin: 0 0 24px !important;
	font: 600 clamp(27px, 3vw, 34px)/1.25 Georgia, serif !important;
	color: var(--lcb-service-ink) !important;
	text-align: center;
}
body.lcb-service-page :is(.fl-rich-text, .fl-html, .lcb-ed-card) h2::after {
	content: '';
	display: block;
	width: 150px;
	height: 1px;
	margin: 18px auto 0;
	background: var(--lcb-service-line);
}

/* One price component: service title, amount, then unchanged conditions. */
body.lcb-service-page.lcb-service-page .lcb-price-card {
	box-sizing: border-box;
	min-width: 0;
	margin: 24px 0 !important;
	padding: 24px !important;
	border: 1px solid var(--lcb-service-line) !important;
	border-radius: 16px !important;
	background: var(--lcb-service-cream) !important;
	box-shadow: none !important;
	color: var(--lcb-service-ink) !important;
}
body.lcb-service-page.lcb-service-page .lcb-price-title {
	margin: 0 0 16px !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	font: 600 24px/1.3 Georgia, 'Times New Roman', serif !important;
	color: var(--lcb-service-ink) !important;
	letter-spacing: 0 !important;
	text-align: left !important;
	text-transform: uppercase !important;
}
body.lcb-service-page.lcb-service-page .lcb-price-title * {
	font: inherit !important;
	color: inherit !important;
}
body.lcb-service-page.lcb-service-page .lcb-price-line {
	margin: 16px 0 0 !important;
	font: 400 17px/1.6 Lato, Arial, sans-serif !important;
	color: var(--lcb-service-ink) !important;
	text-align: left !important;
}
body.lcb-service-page.lcb-service-page .lcb-price-line strong { font-weight: 400 !important; }
body.lcb-service-page.lcb-service-page .lcb-price-card p:not(.lcb-price-line) {
	font: 400 17px/1.6 Lato, Arial, sans-serif !important;
	color: var(--lcb-service-ink) !important;
}
body.lcb-service-page.lcb-service-page .lcb-price-card p span:not(.lcb-price-amount) {
	font-size: inherit !important;
	line-height: inherit !important;
}
body.lcb-service-page.lcb-service-page .lcb-price-card .lcb-price-line {
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	letter-spacing: 0 !important;
}
body.lcb-service-page.lcb-consultas-page .lcb-price-card > .lcb-price-line {
	text-align: center !important;
}
body.lcb-service-page.lcb-service-page .lcb-price-amount {
	display: inline-block;
	font: 700 28px/1.25 Lato, Arial, sans-serif !important;
	font-variant-numeric: tabular-nums;
	color: var(--lcb-service-ink) !important;
	white-space: nowrap;
}
body.lcb-service-page.lcb-service-page .lcb-price-card > :last-child { margin-bottom: 0 !important; }
body.lcb-service-page.lcb-service-page .lcb-price-breakdown { list-style: none; }
body.lcb-service-page.lcb-service-page .lcb-price-breakdown > li {
	padding: 14px 0;
	margin: 0 !important;
	list-style: none;
}
body.lcb-service-page.lcb-service-page .lcb-price-breakdown > li + li { border-top: 1px solid var(--lcb-service-line); }

/* Same shape for actions; PayPal retains its recognized brand color. */
body.lcb-service-page.lcb-native-interior .lcb-native-body .lcb-price-card p.lcb-price-amount { display:block; margin:0 !important; font:700 28px/1.25 Lato,Arial,sans-serif !important; text-align:center !important; }
body.lcb-service-page.lcb-native-interior .lcb-native-body .lcb-price-description { margin:8px 0 16px !important; text-align:center !important; }
body.lcb-service-page.lcb-native-interior .lcb-native-body .lcb-price-card:has(.lcb-native-paypal) p { text-align:center !important; }
body.lcb-service-page.lcb-native-interior .lcb-native-body .lcb-price-line strong { font:700 28px/1.25 Lato,Arial,sans-serif !important; white-space:nowrap; font-variant-numeric:tabular-nums; }
body.lcb-service-page.lcb-native-interior .lcb-native-body .lcb-price-card:has(.lcb-native-paypal) .lcb-price-title { text-align:center !important; }
body.lcb-service-page.lcb-native-interior .lcb-native-paypal a::before { content:'P'; display:inline-flex; align-items:center; justify-content:center; width:24px; height:24px; flex:0 0 24px; border-radius:6px; background:#003087; color:white; font:italic 800 18px/1 Arial,sans-serif; }
body.lcb-service-page.lcb-native-interior .lcb-native-whatsapp a::before {
    content:''; display:inline-block; width:22px; height:22px; flex:0 0 22px; background:currentColor;
    mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.5 3.5A11.9 11.9 0 0 0 12 0C5.4 0 0 5.4 0 12c0 2.1.6 4.2 1.6 6L0 24l6.2-1.6A12 12 0 0 0 12 24c6.6 0 12-5.4 12-12 0-3.2-1.2-6.2-3.5-8.5ZM12 22a10 10 0 0 1-5.1-1.4l-.4-.2-3.7 1 1-3.6-.3-.4A10 10 0 1 1 12 22Zm5.5-7.5c-.3-.2-1.8-.9-2.1-1s-.5-.2-.7.2c-.2.3-.8 1-1 1.2s-.4.2-.7.1a8.2 8.2 0 0 1-2.4-1.5 9 9 0 0 1-1.7-2.1c-.2-.3 0-.5.1-.6l.5-.6.3-.5c.1-.2 0-.4 0-.6l-1-2.2c-.2-.5-.5-.5-.7-.5h-.6c-.2 0-.5.1-.7.3-.3.3-1 1-1 2.4s1 2.8 1.2 3c.1.2 2 3.2 5 4.5.7.3 1.3.5 1.7.6.7.2 1.3.2 1.8.1.5-.1 1.8-.7 2-1.4.3-.7.3-1.3.2-1.4-.1-.2-.3-.2-.6-.4Z'/%3E%3C/svg%3E") center/contain no-repeat;
}
body.lcb-service-page.lcb-service-page main a:is([href^="mailto:"], [href*="paypal.me"], [href*="paypal.com"]) {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-height: 50px !important;
	max-width: 100%;
	padding: 12px 22px !important;
	border: 1px solid var(--lcb-service-gold) !important;
	border-radius: 12px !important;
	background: var(--lcb-service-gold) !important;
	box-shadow: none !important;
	font: 700 17px/1.4 Lato, Arial, sans-serif !important;
	color: var(--lcb-service-ink) !important;
	text-decoration: none !important;
	overflow-wrap: anywhere;
}
body.lcb-service-page.lcb-service-page main a:is([href*="paypal.me"], [href*="paypal.com"]) {
	background: #ffc439 !important;
	border-color: #d79f00 !important;
	color: #111 !important;
}
body.lcb-service-page.lcb-consultas-page main a.lcb-consultas-paypal {
	display: flex !important;
	width: max-content;
	margin: 22px auto 0 !important;
	gap: 9px;
}
body.lcb-service-page.lcb-consultas-page main a.lcb-consultas-paypal .lcb-paypal-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: 7px 7px 7px 3px;
	background: #003087;
	color: #fff !important;
	font: italic 800 17px/1 Arial, sans-serif !important;
	transform: skew(-6deg);
}
body.lcb-service-page.lcb-service-page main a:is([href^="mailto:"], [href*="paypal.me"], [href*="paypal.com"]) > br { display: none; }
body.lcb-service-page.lcb-service-page main a:is([href^="mailto:"], [href*="paypal.me"], [href*="paypal.com"]) span { font: inherit !important; color: inherit !important; }
/* WordPress renders the consultation checkmarks as SVG images without dimensions. */
body.lcb-service-page.lcb-consultas-page .entry-content img[alt="✅"][src*="/emoji/"] {
	display: inline-block !important;
	width: 1.15em !important;
	height: 1.15em !important;
	max-width: none !important;
	margin: 0 .15em 0 0 !important;
	vertical-align: -.18em !important;
}
@media (max-width: 680px) {
	body.lcb-service-page :is(.lcb-formacion-hero, .lcb-ed-hero),
	body.lcb-service-page.lcb-consultas-page .entry > .entry-header { padding: 38px 14px 34px !important; }
	body.lcb-service-page :is(.lcb-formacion-nav, .lcb-ed-nav) { grid-template-columns: 1fr; }
	body.lcb-service-page :is(.fl-rich-text, .fl-html, .lcb-ed-card) { font-size: 17px; }
	body.lcb-service-page.lcb-service-page .lcb-price-card { padding: 20px !important; }
	body.lcb-service-page.lcb-service-page .lcb-price-title { font-size: 22px !important; }
	body.lcb-service-page.lcb-service-page .lcb-price-amount { font-size: 26px !important; }
}
