/*
Theme Name: TEKAMOLO Blocks
Theme URI: https://tekamolo.org/
Author: TEKAMOLO
Description: Tema de bloques editable para separar diseño, contenido y funciones comerciales de TEKAMOLO.
Version: 1.0.2
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: tekamolo-blocks
*/

:root {
	--tek-primary: #635bdb;
	--tek-secondary: #0f766e;
	--tek-accent: #d7f43b;
	--tek-dark: #172033;
	--tek-muted: #667085;
	--tek-soft: #f5f7fa;
	--tek-border: #e1e5ec;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { color: var(--tek-dark); background: #fff; }
a { text-underline-offset: .18em; }
[hidden] { display: none !important; }

body.tek-view-requested .tek-home-section { display: none; }
body.tek-view-requested-cursos .tek-view-cursos,
body.tek-view-requested-investigadores .tek-view-investigadores,
body.tek-view-requested-prompts .tek-view-prompts,
body.tek-view-requested-nosotros .tek-view-nosotros { display: block; }

.tek-site-header {
	position: sticky;
	z-index: 100;
	top: 0;
	border-bottom: 1px solid rgba(23,32,51,.09);
	background: rgba(255,255,255,.96);
	backdrop-filter: blur(18px);
}
.admin-bar .tek-site-header { top: 32px; }
.tek-site-header__inner { min-height: 74px; }
.tek-site-header .wp-block-site-title { margin: 0; font-size: 1.3rem; font-weight: 900; letter-spacing: .035em; }
.tek-site-header .wp-block-site-title a { color: var(--tek-dark); text-decoration: none; }
.tek-site-header .wp-block-site-title a::after { content: "."; color: var(--tek-primary); }
.tek-site-header .wp-block-navigation-item__content { color: #3f4858; font-size: .78rem; font-weight: 700; text-decoration: none; }
.tek-site-header .wp-block-navigation-item__content:hover,
.tek-site-header .wp-block-navigation-item__content:focus,
.tek-site-header .wp-block-navigation-item__content.is-current { color: var(--tek-primary); }
.tek-site-header .wp-block-shortcode { margin: 0; }

.tek-account-login,
.tek-account-profile {
	display: inline-flex;
	min-height: 41px;
	align-items: center;
	justify-content: center;
	border-radius: 12px;
	font-size: .76rem;
	font-weight: 800;
	line-height: 1;
	text-decoration: none;
}
.tek-account-login { padding: 10px 16px; color: #fff; background: var(--tek-primary); box-shadow: 0 4px 0 #4e47b5; }
.tek-account-profile { max-width: 190px; gap: 9px; padding: 5px 12px 5px 6px; border: 1px solid var(--tek-border); color: var(--tek-dark); background: #fff; }
.tek-account-profile img { width: 31px; height: 31px; flex: 0 0 31px; border-radius: 50%; object-fit: cover; }
.tek-account-profile span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.tek-designer-access {
	margin: 0 0 24px;
	padding: 22px;
	border: 1px solid #d9d7fb;
	border-radius: 14px;
	background: #f7f6ff;
}
.tek-designer-access h2 { margin: 0 0 8px; font-size: 1.2rem; }
.tek-designer-access p { margin: 0 0 16px; }
.tek-designer-access .button { display: inline-flex; min-height: 42px; align-items: center; padding: 8px 18px; border-radius: 10px; color: #fff; background: var(--tek-primary); font-weight: 800; text-decoration: none; }

.tek-home-section { margin-block: 0; padding: clamp(72px,8vw,112px) 24px; }
.tek-section-inner { width: min(1160px,100%); margin-inline: auto; }
.tek-kicker { margin: 0 0 14px; color: var(--tek-primary); font-size: .75rem; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.tek-section-heading { max-width: 760px; margin: 0 auto 42px; text-align: center; }
.tek-section-heading h2 { margin-bottom: 16px; }
.tek-section-heading p:last-child { color: var(--tek-muted); }

.tek-hero { position: relative; overflow: hidden; padding-block: clamp(80px,9vw,135px); background: linear-gradient(125deg,#fbfaf7 0%,#fff 52%,#edf7f5 100%); }
.tek-hero::after { content: ""; position: absolute; z-index: 0; top: -260px; right: -220px; width: 620px; height: 620px; border: 105px solid rgba(15,118,110,.055); border-radius: 50%; }
.tek-hero .tek-section-inner { position: relative; z-index: 1; }
.tek-hero h1 { max-width: 820px; margin-bottom: 22px; font-size: clamp(2.65rem,5.5vw,5.7rem); line-height: .98; letter-spacing: -.055em; }
.tek-hero .tek-lead { max-width: 790px; color: #374253; font-size: clamp(1.08rem,1.8vw,1.35rem); font-weight: 600; }
.tek-hero .wp-block-buttons { margin-top: 30px; }

.wp-block-button__link { transition: transform .2s ease, box-shadow .2s ease; }
.wp-block-button__link:hover { transform: translateY(-2px); }
.wp-block-button:not(.is-style-outline) .wp-block-button__link { box-shadow: 0 6px 0 color-mix(in srgb,var(--tek-primary),#000 18%); }

.tek-training { background: #fff; }
.tek-business { background: var(--tek-soft); }
.tek-research { color: #fff; background: linear-gradient(135deg,#172033,#164e63); }
.tek-research .tek-kicker { color: var(--tek-accent); }
.tek-research p { color: #dce5eb; }
.tek-prompts { background: linear-gradient(135deg,#f8f7ff,#fff); }
.tek-about { background: linear-gradient(135deg,#fbfaf7,#edf7f5); }
.tek-confidence { background: var(--tek-soft); }
.tek-cta { color: #fff; background: linear-gradient(115deg,var(--tek-primary),#4037a4); }
.tek-cta p { color: #eef0ff; }

.tek-feature-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; margin-top: 36px; }
.tek-feature-card { padding: 27px; border: 1px solid var(--tek-border); border-radius: 18px; background: #fff; box-shadow: 0 16px 40px rgba(23,32,51,.07); }
.tek-feature-card .tek-number { display: block; margin-bottom: 16px; color: var(--tek-primary); font-size: .72rem; font-weight: 900; letter-spacing: .1em; }
.tek-feature-card h3 { margin: 0 0 10px; font-size: 1.12rem; }
.tek-feature-card p { margin: 0; color: var(--tek-muted); font-size: .88rem; }
.tek-research .tek-feature-card { border-color: rgba(255,255,255,.14); background: rgba(255,255,255,.08); box-shadow: none; }
.tek-research .tek-feature-card p { color: #dce5eb; }

.tek-product-shortcode { margin-top: 38px; }
.tek-product-shortcode .woocommerce ul.products { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.tek-product-shortcode .woocommerce ul.products::before,
.tek-product-shortcode .woocommerce ul.products::after { display: none; }
.tek-product-shortcode .woocommerce ul.products li.product { width: auto; margin: 0; padding: 18px; border: 1px solid var(--tek-border); border-radius: 18px; background: #fff; box-shadow: 0 14px 35px rgba(23,32,51,.07); }
.tek-product-shortcode .woocommerce ul.products li.product img { border-radius: 12px; }
.tek-product-shortcode .woocommerce-loop-product__title { color: var(--tek-dark); font-size: 1.05rem !important; }
.tek-product-shortcode .price { color: var(--tek-primary) !important; font-weight: 800; }
.tek-product-shortcode .button { border-radius: 10px; color: #fff; background: var(--tek-primary); }

.tek-faq details { margin-bottom: 12px; padding: 18px 20px; border: 1px solid var(--tek-border); border-radius: 14px; background: #fff; }
.tek-faq summary { cursor: pointer; font-weight: 800; }
.tek-faq details p { color: var(--tek-muted); }

.tek-page-main { min-height: 60vh; padding: 72px 24px; }
.tek-page-main > * { width: min(920px,100%); margin-inline: auto; }
.tek-archive-grid .wp-block-post-template { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
.tek-archive-grid .wp-block-post { padding: 22px; border: 1px solid var(--tek-border); border-radius: 16px; }

.tek-site-footer { padding: 64px 24px 28px; color: #dce2eb; background: #111827; }
.tek-site-footer a { color: #fff; }
.tek-site-footer__grid { width: min(1160px,100%); margin-inline: auto; }
.tek-site-footer .wp-block-site-title { font-size: 1.45rem; }
.tek-site-footer__bottom { margin-top: 35px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.12); color: #9aa4b4; font-size: .75rem; }

@media (max-width: 900px) {
	.tek-feature-grid,
	.tek-product-shortcode .woocommerce ul.products,
	.tek-archive-grid .wp-block-post-template { grid-template-columns: repeat(2,minmax(0,1fr)); }
	.tek-site-header__inner { flex-wrap: wrap; padding-block: 12px; }
	.tek-site-header .wp-block-navigation { order: 3; width: auto; }
}

@media (max-width: 600px) {
	.admin-bar .tek-site-header { top: 46px; }
	.tek-home-section { padding-inline: 18px; }
	.tek-feature-grid,
	.tek-product-shortcode .woocommerce ul.products,
	.tek-archive-grid .wp-block-post-template { grid-template-columns: 1fr; }
	.tek-account-profile { max-width: 126px; }
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}
