/* KairoBits — actualización 2026: tipografía, producto insignia Aula, galerías y marcos de captura.
   Se carga después de style.css y solo agrega o ajusta; no reemplaza el diseño base. */

:root {
  --font-display: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-text: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --aula-1: #1d3fd8;
  --aula-2: #3b82f6;
  --aula-3: #6d4fe0;
  --aula-ink: #0b1640;
}

/* Tipografía: más aire entre letras y una familia display consistente en todos los equipos */
body { font-family: var(--font-text); }
h1, h2, h3, .section-heading h2, .cta-copy h2, .case-study__content h2 { font-family: var(--font-display); }
.hero-copy h1 { letter-spacing: -.045em; line-height: 1.02; font-size: clamp(3rem, 5.4vw, 5.4rem); }
.page-hero__copy h1 { letter-spacing: -.042em; line-height: 1.03; font-size: clamp(2.8rem, 4.8vw, 4.7rem); }
.section-heading h2, .cta-copy h2, .case-study__content h2, .manifesto-statement h2, .service-product__content h2 { letter-spacing: -.035em; line-height: 1.08; }
.legal-hero h1 { letter-spacing: -.045em; }

/* Enlace "Nuevo" en la navegación */
.nav-links a .nav-badge { margin-left: 6px; padding: 2px 6px; border-radius: 6px; color: white; background: linear-gradient(135deg, var(--aula-1), var(--aula-3)); font-size: .58rem; font-weight: 800; letter-spacing: .04em; vertical-align: 2px; }

/* Marco de navegador para capturas */
.shot { overflow: hidden; border: 1px solid rgba(11, 35, 64, .12); border-radius: 18px; background: #fff; box-shadow: 0 30px 80px rgba(21, 54, 91, .16); }
.shot__bar { height: 34px; padding: 0 14px; display: flex; align-items: center; gap: 7px; border-bottom: 1px solid rgba(11,35,64,.08); background: linear-gradient(#fbfcfe, #f3f6fa); }
.shot__bar i { width: 10px; height: 10px; border-radius: 50%; background: #ff6159; }
.shot__bar i:nth-child(2) { background: #ffbd2e; }
.shot__bar i:nth-child(3) { background: #28c941; }
.shot__bar span { margin-left: 12px; padding: 4px 14px; border-radius: 8px; color: #6d8095; background: rgba(11,35,64,.05); font-size: .7rem; font-weight: 600; }
.shot img { width: 100%; height: auto; }

/* Imágenes de portafolio: encuadre superior para que siempre se vea el encabezado del sitio */
.project-preview__media img, .portfolio-card__media img { object-position: top center; }
.case-study__image img { object-position: top left; }

/* ---------- Banda del producto insignia (inicio) ---------- */
.flagship { position: relative; overflow: hidden; display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); align-items: center; gap: 40px; padding: 56px 0 0 56px; border-radius: 36px; color: white; background: radial-gradient(circle at 85% 0%, rgba(139, 92, 246, .55), transparent 45%), linear-gradient(140deg, #13238f 0%, var(--aula-1) 45%, var(--aula-2) 100%); box-shadow: 0 40px 110px rgba(29, 63, 216, .28); }
.flagship::after { content: ""; position: absolute; inset: 0; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40'%3E%3Cpath d='M40 0H0v40' fill='none' stroke='white' stroke-opacity='.06'/%3E%3C/svg%3E"); pointer-events: none; }
.flagship__copy { position: relative; z-index: 1; padding-bottom: 56px; }
.flagship__tag { display: inline-flex; align-items: center; gap: 8px; padding: 7px 12px; border: 1px solid rgba(255,255,255,.28); border-radius: 999px; background: rgba(255,255,255,.12); font-size: .72rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.flagship h2 { margin: 18px 0 14px; font-family: var(--font-display); font-size: clamp(2.2rem, 4vw, 3.6rem); line-height: 1.04; letter-spacing: -.04em; }
.flagship p { max-width: 520px; margin: 0; color: rgba(255,255,255,.84); font-size: 1.05rem; }
.flagship__list { margin: 24px 0 30px; padding: 0; list-style: none; display: grid; grid-template-columns: 1fr 1fr; gap: 10px 18px; }
.flagship__list li { display: flex; align-items: center; gap: 9px; font-size: .9rem; font-weight: 600; }
.flagship__list i { color: #8ef0b0; }
.flagship .button--light { color: var(--aula-1); background: white; box-shadow: 0 16px 34px rgba(0,0,0,.18); }
.flagship .button--ghost { color: white; border-color: rgba(255,255,255,.4); background: rgba(255,255,255,.08); }
.flagship__visual { position: relative; z-index: 1; align-self: end; }
.flagship__visual img { width: 100%; height: auto; display: block; }

/* ---------- Página Aula ---------- */
.aula-hero { position: relative; padding: 150px 0 0; overflow: hidden; color: white; background: radial-gradient(circle at 90% 10%, rgba(139, 92, 246, .55), transparent 40%), linear-gradient(160deg, #0f1d7a 0%, var(--aula-1) 50%, var(--aula-2) 100%); }
.aula-hero::after { content: ""; position: absolute; inset: 0; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44'%3E%3Cpath d='M44 0H0v44' fill='none' stroke='white' stroke-opacity='.06'/%3E%3C/svg%3E"); pointer-events: none; }
.aula-hero__inner { position: relative; z-index: 1; text-align: center; }
.aula-hero .eyebrow { margin-inline: auto; color: white; border-color: rgba(255,255,255,.25); background: rgba(255,255,255,.12); box-shadow: none; }
.aula-hero h1 { max-width: 900px; margin: 22px auto 18px; font-family: var(--font-display); font-size: clamp(2.9rem, 6.4vw, 5.8rem); line-height: 1; letter-spacing: -.045em; }
.aula-hero h1 span { color: #b9d4ff; }
.aula-hero p { max-width: 680px; margin: 0 auto; color: rgba(255,255,255,.86); font-size: clamp(1.02rem, 1.6vw, 1.2rem); }
.aula-hero .hero-actions { justify-content: center; }
.aula-hero .button--light { color: var(--aula-1); background: white; box-shadow: 0 16px 34px rgba(0,0,0,.2); }
.aula-hero .button--ghost { color: white; border-color: rgba(255,255,255,.4); background: rgba(255,255,255,.08); }
.aula-hero__chips { margin-top: 26px; display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; }
.aula-hero__chips span { display: inline-flex; align-items: center; gap: 8px; padding: 8px 13px; border-radius: 999px; background: rgba(255,255,255,.12); font-size: .8rem; font-weight: 650; }
.aula-hero__visual { max-width: 1020px; margin: 46px auto 0; }
.aula-hero__visual img { width: 100%; height: auto; display: block; }

.pain-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 14px; }
.pain-card { padding: 22px; border: 1px solid var(--line); border-radius: 20px; background: white; box-shadow: var(--shadow-sm); }
.pain-card i { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 13px; color: white; font-size: 1rem; }
.pain-card p { margin: 14px 0 0; color: var(--ink); font-size: .9rem; font-weight: 600; line-height: 1.45; }
.pain-card s { color: var(--muted); }
.pain-arrow { margin-top: 26px; text-align: center; color: var(--aula-1); font-family: var(--font-display); font-size: 1.35rem; font-weight: 800; letter-spacing: -.02em; }

.c-orange { background: linear-gradient(135deg, #ff9f43, #f76b1c); }
.c-red { background: linear-gradient(135deg, #ff6b6b, #e5383b); }
.c-green { background: linear-gradient(135deg, #34d399, #16a34a); }
.c-purple { background: linear-gradient(135deg, #a78bfa, #7c3aed); }
.c-blue { background: linear-gradient(135deg, #60a5fa, #2563eb); }
.c-pink { background: linear-gradient(135deg, #f472b6, #db2777); }
.c-teal { background: linear-gradient(135deg, #2dd4bf, #0d9488); }
.c-amber { background: linear-gradient(135deg, #fbbf24, #d97706); }

.feature-row { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); align-items: center; gap: 60px; padding: 46px 0; }
.feature-row + .feature-row { border-top: 1px solid var(--line); }
.feature-row--flip .feature-row__copy { order: 2; }
.feature-row__copy h3 { margin: 10px 0 14px; font-family: var(--font-display); color: var(--ink-strong); font-size: clamp(1.8rem, 3vw, 2.6rem); line-height: 1.08; letter-spacing: -.035em; }
.feature-row__copy > p { margin: 0 0 20px; color: var(--text); font-size: 1.02rem; }
.check-list { margin: 0; padding: 0; list-style: none; display: grid; gap: 11px; }
.check-list li { display: grid; grid-template-columns: 26px 1fr; gap: 10px; color: var(--ink); font-size: .94rem; }
.check-list li::before { content: "\f00c"; font-family: "Font Awesome 6 Free"; font-weight: 900; width: 26px; height: 26px; display: grid; place-items: center; border-radius: 50%; color: #16a34a; background: #dcfce7; font-size: .7rem; }
.feature-row__visual { position: relative; padding: 26px; border-radius: 30px; background: linear-gradient(160deg, #eef4ff, #f7f9ff); border: 1px solid rgba(29,63,216,.08); }
.feature-row__visual img { width: 100%; height: auto; display: block; }
.feature-row__visual--phone { display: grid; place-items: center; }
.feature-row__visual--phone img { max-width: 300px; }
.feature-row__visual--fade { overflow: hidden; }
.feature-row__visual--fade::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 90px; background: linear-gradient(transparent, #f5f8ff); border-radius: 0 0 30px 30px; }

.roles-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.role-card { padding: 24px; border: 1px solid var(--line); border-radius: 22px; background: rgba(255,255,255,.86); box-shadow: var(--shadow-sm); }
.role-card i { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 14px; color: white; }
.role-card h3 { margin: 16px 0 6px; font-size: 1.06rem; letter-spacing: -.02em; }
.role-card p { margin: 0; color: var(--text); font-size: .85rem; }

.module-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.module { display: flex; align-items: flex-start; gap: 13px; padding: 17px; border: 1px solid var(--line); border-radius: 18px; background: white; transition: transform .2s ease, box-shadow .2s ease; }
.module:hover { transform: translateY(-4px); box-shadow: var(--shadow-sm); }
.module > i { flex: 0 0 38px; width: 38px; height: 38px; display: grid; place-items: center; border-radius: 12px; color: white; font-size: .9rem; }
.module strong { display: block; color: var(--ink-strong); font-size: .92rem; }
.module span { display: block; margin-top: 2px; color: var(--muted); font-size: .78rem; line-height: 1.4; }

.colombia-panel { display: grid; grid-template-columns: .8fr 1.2fr; gap: 50px; align-items: center; padding: 50px; border-radius: 32px; background: linear-gradient(145deg, #fffdf3, #fff7e0); border: 1px solid rgba(217, 119, 6, .14); }
.colombia-panel .kicker { color: #c2410c; }
.colombia-panel h2 { margin: 10px 0 14px; font-size: clamp(2rem, 3.6vw, 3rem); line-height: 1.05; letter-spacing: -.035em; }
.colombia-panel p { margin: 0; color: var(--text); }
.flag-bar { width: 84px; height: 8px; margin-top: 22px; border-radius: 4px; background: linear-gradient(90deg, #fcd116 0 50%, #003893 50% 75%, #ce1126 75%); }
.colombia-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.colombia-grid article { padding: 20px; border-radius: 20px; background: white; box-shadow: var(--shadow-sm); }
.colombia-grid i { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 12px; color: white; }
.colombia-grid strong { display: block; margin-top: 12px; font-size: 1rem; }
.colombia-grid span { color: var(--text); font-size: .84rem; }

.tech-strip { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.tech-strip article { padding: 24px; border-radius: 22px; color: white; background: linear-gradient(160deg, #0f1d5c, #1b2f8a); }
.tech-strip i { font-size: 1.3rem; color: #93c5fd; }
.tech-strip h3 { margin: 14px 0 6px; font-size: 1.04rem; }
.tech-strip p { margin: 0; color: rgba(255,255,255,.74); font-size: .85rem; }

.faq-list { display: grid; gap: 10px; max-width: 900px; }
.faq-list details { border: 1px solid var(--line); border-radius: 18px; background: white; }
.faq-list summary { padding: 20px 22px; display: flex; justify-content: space-between; gap: 16px; cursor: pointer; list-style: none; color: var(--ink-strong); font-weight: 700; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after { content: "+"; color: var(--blue); font-size: 1.3rem; line-height: 1; transition: transform .2s ease; }
.faq-list details[open] summary::after { transform: rotate(45deg); }
.faq-list details p { margin: 0; padding: 0 22px 20px; color: var(--text); }

.quote-section { scroll-margin-top: 90px; }
.quote-layout { display: grid; grid-template-columns: .78fr 1.22fr; gap: 28px; align-items: start; }
.quote-aside { position: sticky; top: 105px; padding: 36px; border-radius: 28px; color: white; background: linear-gradient(160deg, #13238f, var(--aula-1) 60%, var(--aula-2)); }
.quote-aside .kicker { color: #bcd3ff; }
.quote-aside h2 { margin: 10px 0 14px; font-size: 2.1rem; line-height: 1.06; letter-spacing: -.035em; }
.quote-aside p { color: rgba(255,255,255,.84); }
.quote-aside ul { margin: 22px 0 0; padding: 0; list-style: none; display: grid; gap: 12px; }
.quote-aside li { display: flex; gap: 10px; font-size: .92rem; }
.quote-aside li i { margin-top: 4px; color: #8ef0b0; }
.quote-aside .quote-whatsapp { margin-top: 26px; display: inline-flex; align-items: center; gap: 9px; padding: 12px 16px; border-radius: 14px; color: white; background: rgba(255,255,255,.14); font-weight: 700; }
.module-picks { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.module-picks label { display: flex; align-items: center; gap: 8px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 12px; background: #f8fbff; font-size: .84rem; cursor: pointer; }
.module-picks input { accent-color: var(--blue); }

/* ---------- Experiencia: galería del sistema odontológico ---------- */
.experience-case { display: grid; grid-template-columns: .8fr 1.2fr; gap: 0; overflow: hidden; border: 1px solid rgba(140, 103, 72, .18); border-radius: 32px; background: #fff; box-shadow: var(--shadow-md); }
.experience-case__copy { padding: 48px; background: linear-gradient(170deg, #fbf7f3, #fff); }
.experience-case__copy .kicker { color: #8c6748; }
.experience-case__copy h2 { margin: 10px 0 14px; font-size: clamp(1.9rem, 3.4vw, 3rem); line-height: 1.06; letter-spacing: -.035em; }
.experience-case__copy > p { color: var(--text); }
.experience-case .portfolio-features span { color: #8c6748; background: rgba(140, 103, 72, .09); }
.privacy-pill { margin-top: 22px; display: flex; gap: 10px; padding: 14px; border-radius: 14px; color: #6b5340; background: #f6efe8; font-size: .8rem; }
.privacy-pill i { margin-top: 3px; }
.experience-case__gallery { padding: 28px; display: grid; gap: 14px; align-content: start; background: linear-gradient(160deg, #f5ede5, #efe6dc); }
.gallery-main { margin: 0; }
.gallery-main img { aspect-ratio: 16/10; object-fit: cover; object-position: top left; }
.gallery-thumbs { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.gallery-thumbs button { padding: 0; overflow: hidden; border: 2px solid transparent; border-radius: 12px; background: white; cursor: pointer; opacity: .7; transition: opacity .2s ease, border-color .2s ease, transform .2s ease; }
.gallery-thumbs button:hover { opacity: 1; transform: translateY(-2px); }
.gallery-thumbs button.is-active { opacity: 1; border-color: #8c6748; }
.gallery-thumbs img { width: 100%; aspect-ratio: 16/10; object-fit: cover; object-position: top left; display: block; }
.gallery-thumbs span { display: block; padding: 6px 4px; color: #6b5340; font-size: .68rem; font-weight: 700; }

/* Tarjeta Aula dentro del portafolio */
.portfolio-card--aula .portfolio-card__media { background: linear-gradient(150deg, #13238f, var(--aula-1) 55%, var(--aula-2)); }
.portfolio-card--aula .portfolio-card__media img { object-fit: contain; object-position: center bottom; padding: 18px 18px 0; }
.project-status--product { color: white !important; background: linear-gradient(135deg, var(--aula-1), var(--aula-3)) !important; }

@media (max-width: 1120px) {
  .pain-grid { grid-template-columns: repeat(3, 1fr); }
  .module-grid, .roles-grid, .tech-strip { grid-template-columns: repeat(2, 1fr); }
  .flagship { padding: 44px 0 0 40px; }
}
@media (max-width: 900px) {
  .flagship { grid-template-columns: 1fr; padding: 40px 28px 0; text-align: left; }
  .flagship__copy { padding-bottom: 0; }
  .feature-row, .colombia-panel, .quote-layout, .experience-case { grid-template-columns: 1fr; gap: 30px; }
  .feature-row--flip .feature-row__copy { order: 0; }
  .quote-aside { position: static; }
  .colombia-panel { padding: 34px; }
  .module-picks { grid-template-columns: repeat(2, 1fr); }
  .experience-case { gap: 0; }
  .experience-case__copy { padding: 34px; }
  .aula-hero { padding-top: 120px; }
}
@media (max-width: 650px) {
  .pain-grid, .module-grid, .roles-grid, .tech-strip, .colombia-grid, .flagship__list { grid-template-columns: 1fr; }
  .flagship { border-radius: 26px; padding: 32px 20px 0; }
  .aula-hero h1 { font-size: clamp(2.4rem, 11vw, 3.4rem); }
  .module-picks { grid-template-columns: 1fr; }
  .gallery-thumbs { grid-template-columns: repeat(2, 1fr); }
  .experience-case__gallery { padding: 18px; }
  .experience-case__copy { padding: 26px 22px; }
  .quote-aside { padding: 28px 22px; }
  .shot__bar span { display: none; }
}

/* En la página Aula el encabezado siempre va sobre vidrio claro para que el menú se lea sobre el azul */
body[data-page="sistema-escolar"] .site-header { padding: 7px 0; background: rgba(250, 252, 255, .86); backdrop-filter: saturate(170%) blur(24px); -webkit-backdrop-filter: saturate(170%) blur(24px); border-bottom: 1px solid rgba(11, 35, 64, .07); }
/* Funde los bordes de las capturas recortadas con el fondo azul */
.aula-hero__visual img, .flagship__visual img {
  -webkit-mask-image: linear-gradient(to right, transparent 0, #000 7%, #000 93%, transparent 100%), linear-gradient(to bottom, transparent 0, #000 6%, #000 100%);
  -webkit-mask-composite: source-in;
  mask-image: linear-gradient(to right, transparent 0, #000 7%, #000 93%, transparent 100%), linear-gradient(to bottom, transparent 0, #000 6%, #000 100%);
  mask-composite: intersect;
}
.contact-form .module-picks label { margin: 0; display: flex; justify-content: flex-start; align-items: center; gap: 9px; text-align: left; color: var(--ink); font-size: .84rem; font-weight: 600; text-transform: none; letter-spacing: 0; }
.contact-form .module-picks input[type="checkbox"] { flex: 0 0 18px; width: 18px; height: 18px; min-height: 0; margin: 0; padding: 0; border-radius: 5px; box-shadow: none; }
@media (min-width: 1121px) {
  .portfolio-grid > .portfolio-card--aula, .portfolio-grid > .portfolio-card--wide { grid-column: span 2; }
  .portfolio-grid > .portfolio-card--aula .portfolio-card__media, .portfolio-grid > .portfolio-card--wide .portfolio-card__media { aspect-ratio: 16/5.1; }
}
.experience-case__gallery { align-content: center; }
@media (max-width: 650px) {
  .pain-card { display: flex; align-items: center; gap: 14px; padding: 16px; }
  .pain-card i { flex: 0 0 42px; }
  .pain-card p { margin: 0; }
}

/* Inicio: imagen principal dedicada al sistema escolar Aula */
.eyebrow--link { transition: border-color .2s ease, background .2s ease; }
.eyebrow--link:hover { border-color: rgba(8,120,249,.35); background: white; }
.eyebrow--link i { font-size: .7rem; }
.hero-aula { position: relative; z-index: 2; display: block; width: min(680px, 100%); transform: rotateX(2deg) rotateY(-5deg); transition: transform .18s ease-out; }
.hero-aula img { width: 100%; height: auto; display: block; filter: drop-shadow(0 30px 50px rgba(22, 52, 83, .16));
  -webkit-mask-image: linear-gradient(to bottom, transparent 0, #000 12%, #000 82%, transparent 100%), linear-gradient(to right, transparent 0, #000 6%, #000 96%, transparent 100%); -webkit-mask-composite: source-in;
  mask-image: linear-gradient(to bottom, transparent 0, #000 12%, #000 82%, transparent 100%), linear-gradient(to right, transparent 0, #000 6%, #000 96%, transparent 100%); mask-composite: intersect; }
.hero-product--aula .metric-card--booking { top: 30px; left: -10px; }
.hero-product--aula .metric-card--systems { top: auto; bottom: 120px; right: -14px; }
.hero-product--aula .metric-card--support { right: auto; left: 30px; bottom: 70px; }
.hero-aula-tag { position: absolute; z-index: 3; right: 30px; top: 60px; white-space: nowrap; display: inline-flex; align-items: center; gap: 8px; padding: 10px 15px; border-radius: 999px; color: white; background: linear-gradient(135deg, var(--aula-1), var(--aula-3)); box-shadow: 0 14px 30px rgba(29,63,216,.3); font-size: .8rem; font-weight: 750; transition: transform .2s ease; }
.hero-aula-tag:hover { transform: translateY(-2px); }
@media (max-width: 900px) {
  .hero-product--aula { min-height: 420px; }
  .hero-product--aula .metric-card--support { display: none; }
  .hero-aula-tag { top: auto; right: 50%; transform: translateX(50%); bottom: 10px; }
  .hero-aula-tag:hover { transform: translateX(50%) translateY(-2px); }
}
@media (max-width: 650px) {
  .hero-product--aula .metric-card { display: none; }
  .hero-product--aula { min-height: 300px; }
}

/* Video demo de Aula: se carga YouTube solo al hacer clic */
.video-section { padding-bottom: 40px; scroll-margin-top: 80px; }
.video-frame { position: relative; max-width: 1040px; margin-inline: auto; aspect-ratio: 16/9; overflow: hidden; border-radius: 28px; background: linear-gradient(150deg, #13238f, var(--aula-1) 55%, var(--aula-2)); box-shadow: 0 40px 100px rgba(29, 63, 216, .25); }
.video-frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.video-facade { position: absolute; inset: 0; width: 100%; padding: 0; border: 0; background: transparent; cursor: pointer; }
.video-facade img { position: absolute; inset: 6% 6% 0; width: 88%; height: 94%; object-fit: contain; object-position: center bottom; opacity: .55; transition: opacity .3s ease, transform .4s ease; }
.video-facade:hover img { opacity: .7; transform: scale(1.02); }
.video-play { position: absolute; left: 50%; top: 50%; width: 92px; height: 92px; display: grid; place-items: center; border-radius: 50%; color: var(--aula-1); background: white; font-size: 1.8rem; transform: translate(-50%, -50%); box-shadow: 0 0 0 14px rgba(255,255,255,.18), 0 20px 50px rgba(0,0,0,.25); transition: transform .2s ease; }
.video-play i { margin-left: 6px; }
.video-facade:hover .video-play { transform: translate(-50%, -50%) scale(1.07); }
.video-caption { position: absolute; left: 50%; top: calc(50% + 72px); transform: translateX(-50%); color: white; font-weight: 750; white-space: nowrap; text-shadow: 0 2px 12px rgba(0,0,0,.3); }
@media (max-width: 650px) {
  .video-frame { border-radius: 18px; }
  .video-play { width: 66px; height: 66px; font-size: 1.3rem; box-shadow: 0 0 0 9px rgba(255,255,255,.18); }
  .video-caption { top: calc(50% + 52px); font-size: .85rem; }
}

/* Sin el punto verde decorativo en las etiquetas superiores */
.status-dot { display: none; }

/* Etiquetas en texto normal: sin mayúsculas, sin letras espaciadas y sin cápsula */
.eyebrow, .kicker, .flagship__tag, .capability-main span, .contact-form-card__head > span, .legal-hero aside span, .legal-number, .nav-links a .nav-badge {
  text-transform: none;
  letter-spacing: 0;
}
.eyebrow, .kicker { font-size: .95rem; font-weight: 700; }
.eyebrow { padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; }
.aula-hero .eyebrow { border: 0; background: none; color: #cfe0ff; }
.eyebrow--link:hover { background: none; text-decoration: underline; text-underline-offset: 4px; }
.flagship__tag { padding: 0; border: 0; background: none; font-size: .95rem; font-weight: 700; color: #cfe0ff; }
.contact-form-card__head > span, .capability-main span { font-size: .88rem; font-weight: 700; }

/* Etiquetas de estado de proyectos sin el punto verde */
.project-status > i:not(.fa-solid) { display: none; }
