/* ==========================================================================
   cursodesublimacion.com – ajustes del tema (se carga después de tailwind.css)
   ========================================================================== */

/* --- Paleta: naranja del logo en lugar del rosa --- */
:root {
	--primary: #E8531F;            /* naranja profundo: botones, enlaces, acentos */
	--primary-foreground: #FFFFFF;
	--primary-hover: #D1461A;
	--coral: #FD7A52;              /* naranja del logo: degradados y subrayados */
	--amber: #FFB000;
	--accent: #FFF1EA;             /* tinte claro para fondos suaves */
	--accent-foreground: #CF4118;
	--ring: #E8531F;
	--gradient-ink: linear-gradient(120deg, #E8531F, #FD7A52 55%, #FFB000);
}

html { scroll-behavior: smooth; scroll-padding-top: 5rem; }
body { background: var(--color-background); color: var(--color-foreground); font-family: var(--font-sans); }
h1, h2, h3, h4 { font-family: var(--font-display); }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link:focus { position: fixed; top: 8px; left: 8px; z-index: 100; width: auto; height: auto; padding: .5rem .75rem; background: var(--color-ink); color: #fff; border-radius: 8px; clip: auto; }

/* Barra de admin de WordPress */
.admin-bar #cds-header { top: 32px; }
@media (max-width: 782px) { .admin-bar #cds-header { top: 46px; } }

/* --- Logo --- */
.cds-logo { display: inline-flex; align-items: center; }
.cds-logo-img { height: 48px; width: auto; display: block; }
@media (min-width: 768px) { .cds-logo-img { height: 54px; } }
#cds-footer .cds-logo-img { height: 56px; }

/* --- Menú escritorio --- */
.cds-dropdown-btn svg { transition: transform .2s; }
.cds-dropdown.is-open .cds-dropdown-btn svg, .cds-dropdown-btn[aria-expanded="true"] svg { transform: rotate(180deg); }
.cds-dropdown:hover > div[hidden], .cds-dropdown.is-open > div[hidden], .cds-dropdown:focus-within > div[hidden] { display: block; }

/* --- Menú móvil --- */
.cds-mobile-nav { border-top: 1px solid var(--color-border); background: var(--color-background); max-height: calc(100vh - 4rem); overflow: auto; }
.cds-mobile-link { display: block; padding: .7rem .25rem; font-weight: 600; font-size: 1rem; border-bottom: 1px solid var(--color-border); }
.cds-mobile-link--sub { font-weight: 500; font-size: .95rem; padding-left: 1.25rem; color: var(--color-muted-foreground); }
.cds-mobile-link:hover { color: var(--color-primary); }
body.cds-menu-open { overflow: hidden; }

/* --- Hero (una sola columna) --- */
.cds-hero h1 { text-wrap: balance; }
.cds-hero-video { position: relative; }

/* --- Vídeos (VTurb o carga al hacer clic) --- */
.cds-video { position: relative; }
.cds-video-frame { border-radius: 18px; background: var(--gradient-ink); padding: 3px; box-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1); }
.cds-video-inner { position: relative; aspect-ratio: 16 / 9; overflow: hidden; border-radius: 15px; background: var(--color-ink); }
.cds-video-inner iframe, .cds-video-inner video { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.cds-video-poster { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .4; }
.cds-video-overlay { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .75rem; padding: 0 1rem; text-align: center; color: var(--color-ink-foreground); }
.cds-video-play { border-radius: 999px; background: var(--color-primary); padding: 1rem; color: #fff; transition: transform .2s; cursor: pointer; border: 0; }
.cds-video-play:hover { transform: scale(1.05); }
.cds-video-overlay p { font-size: .875rem; font-weight: 600; }
.cds-video.is-placeholder .cds-video-overlay p { color: color-mix(in oklab, var(--color-ink-foreground) 75%, transparent); }
/* El reproductor de VTurb trae su propio aspect-ratio */
.cds-video-vturb { border-radius: 18px; background: var(--gradient-ink); padding: 3px; box-shadow: 0 20px 25px -5px rgb(0 0 0 / .1); }
.cds-video-vturb > div { border-radius: 15px; overflow: hidden; background: var(--color-ink); }

/* --- Sello Hotmart --- */
.cds-hotmart-logo { height: 22px; width: auto; display: inline-block; vertical-align: middle; }
.cds-footer-trust img { height: 26px; width: auto; }

/* --- Blog: filtros --- */
.cds-filter { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; white-space: nowrap; border-radius: .5rem; font-size: .875rem; font-weight: 500; height: 2.25rem; padding: 0 1rem; border: 1px solid var(--color-border); background: var(--color-background); color: var(--color-foreground); cursor: pointer; transition: background-color .15s, color .15s; }
.cds-filter:hover { background: var(--color-accent); color: var(--accent-foreground); }
.cds-filter.is-active { background: var(--color-primary); border-color: var(--color-primary); color: var(--color-primary-foreground); }
.cds-blog-grid [data-category].is-hidden { display: none; }

/* --- Contenido de posts (bloques de WordPress dentro de .prose-site) --- */
.prose-site .wp-block-table { margin: 0; border: 1px solid var(--color-border); background: var(--color-card); border-radius: 16px; overflow-x: auto; }
.prose-site .wp-block-table table { margin: 0; }
.prose-site .wp-block-table table.has-fixed-layout { table-layout: auto; }
.prose-site .wp-block-table th, .prose-site .wp-block-table td { border: 0; }
.prose-site .wp-block-table th { text-align: left; background: var(--color-muted); border-bottom: 1px solid var(--color-border); padding: .85rem 1rem; font-weight: 700; }
.prose-site .wp-block-table td { border-top: 1px solid var(--color-border); vertical-align: top; padding: .8rem 1rem; }
.prose-site .wp-block-table tbody tr:first-child td { border-top: 0; }
.prose-site .wp-block-table thead + tbody tr:first-child td { border-top: 0; }
.prose-site figure.wp-block-image { margin: 0; }
.prose-site .wp-block-image img { border-radius: 16px; height: auto; }
.prose-site .wp-block-quote { border-left: 4px solid var(--color-primary); background: var(--color-accent); font-family: var(--font-display); border-radius: 0 12px 12px 0; padding: 1rem 1.25rem; font-size: 1.15rem; font-weight: 600; }
.prose-site .wp-block-quote p { color: var(--color-foreground); }
.prose-site .wp-block-list { padding-left: 1.4em; }
.prose-site h2.wp-block-heading { scroll-margin-top: 6rem; }
.prose-site .not-prose p { color: inherit; }
.prose-site .not-prose > * + * { margin-top: 0; }
.document-prose .wp-block-group { margin-top: 2.25rem; }
.document-prose .wp-block-group > h2 { margin-top: 0; }
.document-prose .wp-block-group > * + * { margin-top: 1rem; }
.document-prose .wp-block-group .wp-block-table { border-radius: 8px; }
.document-prose .wp-block-group table { min-width: 640px; }
.document-prose .wp-block-group h3 { margin-top: 1.25rem; }
.alignwide, .alignfull { max-width: 100%; }

/* --- Formulario de contacto (HighLevel) --- */
.cds-form-embed iframe { width: 100%; border: 0; min-height: 520px; border-radius: 12px; }
.cds-form-placeholder { border: 1px dashed var(--color-border); border-radius: 12px; padding: 1.25rem; font-size: .9rem; color: var(--color-muted-foreground); background: var(--color-card); }

/* --- Banner de cookies --- */
.cds-cookie { position: fixed; inset-inline: 1rem; bottom: 1rem; z-index: 60; margin-inline: auto; max-width: 56rem; display: grid; gap: 1rem; border-radius: 16px; border: 1px solid var(--color-border); background: var(--color-card); padding: 1.25rem; box-shadow: 0 20px 25px -5px rgb(0 0 0 / .15); font-size: .875rem; }
@media (min-width: 768px) { .cds-cookie { grid-template-columns: 1fr auto; align-items: center; } }
.cds-cookie[hidden] { display: none; }
.cds-cookie p { color: var(--color-muted-foreground); line-height: 1.6; }
.cds-cookie a { color: var(--color-primary); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.cds-cookie-actions { display: flex; flex-wrap: wrap; gap: .5rem; }
.cds-cookie-actions .btn-primary, .cds-cookie-actions .btn-secondary { padding: .6rem 1.1rem; font-size: .875rem; }

/* --- CTA inline del blog --- */
.cds-cta-aside .btn-primary { padding-top: .625rem; padding-bottom: .625rem; }

/* --- Accordions nativos (temario / FAQ): rotación del chevron --- */
details.group > summary svg.lucide-chevron-down { transition: transform .2s; }
details.group[open] > summary svg.lucide-chevron-down { transform: rotate(180deg); }

/* --- Móvil --- */
@media (max-width: 640px) {
	.container-site { padding-inline: 1.25rem; }
	.cds-hero h1 { font-size: 2rem; line-height: 1.12; }
	.btn-primary, .btn-secondary { width: 100%; }
	.cds-hero .btn-primary, .cds-hero .btn-secondary { width: 100%; }
	.cds-cookie { inset-inline: .75rem; bottom: .75rem; padding: 1rem; }
	.prose-site { font-size: 1rem; }
	.prose-site h2 { font-size: 1.45rem; }
	.cds-logo-img { height: 44px; }
}
@media (max-width: 400px) { .cds-logo-img { height: 40px; } }

/* Nota: no añadir reglas globales sin capa sobre img/h1… (las utilidades de tailwind.css viven en @layer y perderían). */

/* Utilidades que no estaban en el CSS compilado */
.gap-x-2 { column-gap: .5rem; }
.pb-14 { padding-bottom: 3.5rem; }
@media (min-width: 1024px) { .lg\:pb-20 { padding-bottom: 5rem; } }
@media (min-width: 768px) { .md\:py-32 { padding-block: 8rem; } }
