/* One blue Qubiko world: faithful mark, luminous atmosphere, real products. */
:root{--brand-600:#2459eb;--brand-700:#1747c7;--brand-50:#edf3ff;--surface-sky:#f2f7ff;--q-blue:#2459eb;--q-paper:#f5f8ff}
.q-home{--q-blue:#2459eb;--q-paper:#f5f8ff;--q-lime:#e5f2ff;--q-ink:#142958;--q-muted:#4a6187;background:#f7faff;color:var(--q-muted)}
.nav-software-label{display:inline}.navbar .nav-cta{border-radius:9px;background:#2459eb;box-shadow:0 7px 19px -12px #2459eb90}
.q-home .navbar{background:rgba(250,252,255,.94);backdrop-filter:blur(14px);border-bottom-color:#dae5fa}
.q-home .q-hero{padding-top:calc(var(--nav-h) + 35px);background:#f0f5ff}
.q-home .q-hero-grid{grid-template-columns:1fr 1.04fr;gap:38px;padding-bottom:36px}
.q-home .q-hero h1{font-size:clamp(46px,5.3vw,76px);line-height:1.035;letter-spacing:-.04em;margin-bottom:25px;font-weight:600}
.q-home .q-hero h1 span{color:#2459eb}
.q-home .q-hero-copy>p{font-size:16px;max-width:46ch;line-height:1.85;margin-bottom:26px}
.q-home .q-hero .q-actions{gap:12px}.q-software-direct{box-shadow:0 12px 26px -14px #204ed4a0}
.q-button-outline{background:#ffffffb8;border:1px solid #c8d9fa;color:#1e4fae}
.q-button-outline:hover{background:#fff;border-color:#88aaf1}
.q-hero-demo{display:block;font-size:11px;line-height:1.8;margin-top:20px;color:#5a6e93}.q-hero-demo span{color:#204fae;font-weight:600;white-space:nowrap}.q-hero-demo:hover span{text-decoration:underline;text-underline-offset:4px}
.q-home .q-hero .q-origin{margin-top:21px;font-size:10px}
.q-home .q-hero-bottom{border-color:#cddcf7}.q-hero-bottom>a{display:flex;align-items:center;gap:12px;color:#365b94}
.q-hero-bottom>a i{font-size:16px}
.q-home .q-universe{height:575px;overflow:visible;border-radius:0;background:transparent;isolation:isolate;perspective:1000px}
.q-universe>.q-ambient{display:none}
.q-brand-aura{position:absolute;inset:-9% -12% 0;pointer-events:none;z-index:-2;background:radial-gradient(ellipse at 48% 37%,#2460eb 0%,#3678f1cc 19%,#548ffff0 24%,#81b0ff80 38%,#b9d3ff36 52%,transparent 66%);animation:q-aura-breathe 9s ease-in-out infinite alternate;animation-play-state:var(--ambient-play)}
.q-brand-figure{position:absolute;width:225px;left:calc(50% - 112px);top:32px;display:flex;flex-direction:column;align-items:center;color:#fff;filter:drop-shadow(0 12px 16px #103f9c15);animation:q-brand-float 7s ease-in-out infinite;animation-play-state:var(--ambient-play)}
.q-brand-figure>.marca{width:213px;rotate:-5deg}
.q-brand-wordmark{display:block;width:210px;height:49px;margin-top:8px;background:currentColor;-webkit-mask:url(../logo-wordmark.svg?v=20260911c) center/contain no-repeat;mask:url(../logo-wordmark.svg?v=20260911c) center/contain no-repeat}
.q-brand-orbit{position:absolute;width:365px;height:365px;border:1px solid #ffffff55;border-radius:50%;top:7px;left:calc(50% - 182px);rotate:25deg;animation:q-light-orbit 28s linear infinite;animation-play-state:var(--ambient-play);z-index:-1;pointer-events:none}
.q-brand-orbit>span{position:absolute;width:8px;height:8px;border-radius:50%;background:#fff;top:-4px;left:50%;box-shadow:0 0 16px #f2f8ffb0}
.q-brand-orbit-outer{width:465px;height:465px;top:-43px;left:calc(50% - 232px);border-color:#5c91f326;animation-direction:reverse;animation-duration:38s}
.q-brand-orbit-outer>span{width:5px;height:5px;background:#3980f8;box-shadow:none}
.q-hero-screen,.q-hero-board{position:absolute;display:block;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 22px 45px -23px #18479773;transition:rotate 500ms cubic-bezier(.16,1,.3,1),box-shadow 300ms ease;animation:q-brand-float 8s ease-in-out infinite;animation-play-state:var(--ambient-play)}
.q-hero-screen{width:51%;left:-3%;bottom:95px;transform:rotate(-7deg);animation-delay:-2s;z-index:2}
.q-hero-board{width:50%;right:-1%;bottom:43px;transform:rotate(7deg);animation-delay:-4s;z-index:3}
.q-hero-screen:hover,.q-hero-board:hover{box-shadow:0 25px 45px -20px #17489699;rotate:-2deg}
.q-hero-screen>img{width:100%;height:auto}.q-hero-board>img{width:100%;height:auto;object-fit:contain}
.q-mini-window{display:flex;align-items:center;gap:8px;padding:11px 13px;font-size:11px;background:#f6f9ff;color:#315690;border-bottom:1px solid #e8eefb}.q-mini-window>b{font-weight:600}.q-mini-window>i{font-size:15px}.q-mini-window>i:last-child{margin-left:auto;color:#2459eb}
.q-mini-caption{display:flex;align-items:center;gap:5px;padding:12px 13px;font-size:10px;color:#59729a;line-height:1.5;background:#fff}.q-mini-caption b{color:#2459eb;font-weight:600}.q-mini-caption>i{margin-left:auto;color:#2459eb;font-size:17px}.q-hero-board .q-mini-caption{flex-wrap:wrap}.q-hero-board .q-mini-caption b{width:100%}
.q-universe-message{position:absolute;bottom:0;width:100%;text-align:center;color:#3663a9;font-size:10px;display:flex;align-items:center;justify-content:center;gap:8px}.q-universe-message i{color:#2459eb;font-size:17px}
/* The same light and blue palette follows the whole page. */
.q-home .q-section,.q-home .aliados,.q-home .q-news,.q-home .q-faq{background:#f7faff}
.q-home .q-products{background:#fff}.q-home .q-software{background:#edf4ff}.q-home .q-teachers{background:#f7faff}.q-home .q-classroom{background:#f1f6ff}
.q-home .q-product{background:#ffffffde;border-color:#d9e5fb}.q-home .q-product-visual,.q-home .q-product-teacher .q-product-visual,.q-home .q-product-hardware .q-product-visual{background:#e5efff}
.q-home .q-product-type{color:#3a64a7}.q-home .q-course-link{border-color:#cedefa}.q-home .q-product-sticker{color:#2454ae}
.q-home .q-product-hardware .q-product-visual>img{mix-blend-mode:normal;border-radius:9px;width:85%;left:8%;top:9px}
.q-home .q-workspace{box-shadow:0 24px 60px -32px #1d58c854}.q-home .q-workspace-top{background:#1c4cca}
.q-home .q-software-tabs{gap:5px;padding-inline:14px}.q-home .q-software-tab{padding-inline:20px}
.q-home .q-software-tab[aria-selected=true]{background:#e3eeff;color:#184ac9}
.q-sim-intro{max-width:670px;margin-bottom:28px;font-size:15px;line-height:1.8}
.q-sim-intro p+p{margin-top:12px}
.q-section-heading.q-sim-intro{max-width:none;align-items:flex-start;margin-bottom:8px}.q-sim-intro>h2{flex:1}.q-sim-intro>div{max-width:440px}.q-sim-intro>div>.q-button{margin-top:18px}
.q-learning-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px;margin:34px 0 0;padding:0}
.q-learning-flow li{position:relative;padding:22px 0;border-top:1px solid #bdd2f7;list-style:none;min-width:0}.q-learning-flow li>span{color:#5176b0;font-size:11px}.q-learning-flow h3,.q-learning-flow strong{display:block;font-family:var(--font-display);color:#234a91;font-size:19px;margin:7px 0 9px}.q-learning-flow p{font-size:12px;line-height:1.8;color:#526e97}.q-learning-flow i{color:#2459eb;font-size:22px}
.q-learning-flow{margin-bottom:24px}.q-sim-cta h3{font-size:23px;margin-bottom:8px}
.q-sim-cta{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-top:20px;padding:25px 0;border-top:1px solid #cbdcf8}.q-sim-cta p{font-size:13px;line-height:1.75;color:#4c6992;max-width:65ch}.q-sim-cta .q-button{flex-shrink:0}
.q-home .q-photo-caption{background:#f7fafff5}.q-home .q-teacher-steps li>span{background:#e0ebff}
.q-home .q-hardware{background:#123da7;color:#d5e5ff}
.q-home .q-hardware h2 span{color:#a9d8ff}.q-home .q-hardware .q-text-link{color:#deeeff}.q-home .q-hardware .q-origin{color:#d9eaff}
.q-home .q-project-detail{background:#1748ad}.q-home .q-project-diagram{background:#2055bd}.q-home .q-diagram-core{background:#3673db}
.q-home .q-project-tabs button[aria-selected=true]{background:#e3f2ff;color:#123e93}.q-home .q-diagram-line:after{background:#b2e3ff}.q-home .q-hardware-note{color:#c8e0ff}
.q-home .q-community{background:#e6efff}.q-home .q-community>.marca,.q-home .q-community .q-text-link{color:#2459eb}
.q-home .q-news .post-cover{background:#e2edff}.q-home .q-news .card{background:#fff;border:1px solid #e0e9fa}.q-home .q-news .btn-soft{background:#e5efff;color:#2459eb;border-color:#cedefa}
.q-home .q-faq .faq-item{background:transparent;border-color:#d6e3f7}.q-home .q-faq .faq-q{color:#193668}
.q-home .q-close{background:#2057db}.q-home .q-close h2 span{color:#d0e9ff}.q-home .q-button-lime{background:#e6f3ff;color:#153c88}.q-home .q-button-lime:hover{background:#fff}.q-home .footer{background:#102b6b}
.q-home .aliados .aliado{background:#fff;border-color:#dce7fb}.q-home .q-section-heading h2{color:#172f62}
/* Shared inner pages inherit the Qubiko visual language. */
body:not(.q-home){background:#f7faff}.product-hero,.page-hero{background-color:#f0f5ff}.bg-sky,.bg-cloud,.bg-violet,.bg-mint,.bg-amber{background:#f2f7ff}.bg-white{background:#fbfcff}.bg-violet .sec-title,.bg-mint .sec-title,.bg-amber .sec-title{color:#142e63}.grad-text{-webkit-text-fill-color:#2459eb;background:none;color:#2459eb}.mark-sun,.mark-mint,.mark-lila{--mark-color:#bcd7ff}.cta{background:#2459eb}.btn-primary{background:#2459eb;box-shadow:0 9px 22px -16px #1745b0}.footer{background:#102b6b}
@keyframes q-brand-float{0%,100%{translate:0 0}50%{translate:0 -12px}}
@keyframes q-aura-breathe{from{transform:translate(-2%,-2%) scale(.95)}to{transform:translate(3%,3%) scale(1.09)}}
html[data-effects=paused] [data-float],html[data-effects=paused] .q-brand-aura,html[data-effects=paused] .q-brand-orbit{animation-play-state:paused!important}
@media(max-width:1100px){.q-home .q-hero h1{font-size:62px}.q-home .q-hero-grid{gap:25px}.q-home .q-universe{height:530px}.q-brand-figure{top:38px;width:190px;left:calc(50% - 95px)}.q-brand-figure>.marca{width:183px}.q-brand-wordmark{width:180px;height:42px}.q-brand-orbit{width:320px;height:320px;left:calc(50% - 160px)}.q-brand-orbit-outer{width:410px;height:410px;left:calc(50% - 205px);top:-38px}.q-home .q-hero-copy>p{font-size:15px}.q-hero-screen{width:54%;left:-3%;bottom:105px}.q-hero-board{width:54%;right:-2%;bottom:55px}.q-mini-caption{font-size:9px;padding:10px}.q-mini-window{font-size:10px;padding:9px}.q-home .q-hero .q-button{font-size:12px;padding:14px 17px;gap:10px}.q-home .q-software-tab{padding-inline:15px}}
@media(max-width:860px){.q-home .q-hero h1{font-size:50px}.q-home .q-universe{height:475px}.q-brand-figure{top:35px;width:172px;left:calc(50% - 86px)}.q-brand-figure>.marca{width:164px}.q-brand-wordmark{width:163px;height:38px}.q-brand-orbit{width:285px;height:285px;left:calc(50% - 142px)}.q-brand-orbit-outer{width:355px;height:355px;left:calc(50% - 177px);top:-28px}.q-hero-screen{bottom:90px}.q-hero-board{bottom:49px}.q-home .q-hero-copy>p{font-size:13px}.q-hero-demo{font-size:10px}.q-home .q-hero .q-origin{font-size:9px}.q-universe-message{font-size:9px}.q-home .q-software-tab{padding-inline:10px;font-size:11px}.q-learning-flow{gap:16px}.q-learning-flow h3,.q-learning-flow strong{font-size:17px}.q-learning-flow p{font-size:11px}}
@media(max-width:640px){.nav-software-label{display:none}.q-home .q-hero{padding-top:100px}.q-home .q-hero-grid{grid-template-columns:1fr;gap:15px;padding-bottom:20px}.q-home .q-hero h1{font-size:clamp(45px,12.5vw,63px);line-height:1.05;margin-bottom:21px}.q-home .q-hero-copy>p{font-size:14px;margin-bottom:24px;max-width:44ch}.q-home .q-hero .q-actions{gap:10px}.q-home .q-hero .q-button{font-size:12px;padding:14px 15px;min-height:49px}.q-hero-demo{font-size:10px;margin-top:17px;line-height:1.9}.q-home .q-hero .q-origin{font-size:9px;margin-top:15px}.q-home .q-universe{height:435px;max-width:420px;margin-inline:auto}.q-brand-figure{top:33px;width:166px;left:calc(50% - 83px)}.q-brand-figure>.marca{width:160px}.q-brand-wordmark{width:155px;height:36px;margin-top:5px}.q-brand-aura{inset:-6% -5% 0;background:radial-gradient(ellipse at 50% 36%,#2459eb 0%,#3a7cf4d9 22%,#70a5fa8c 37%,#a5c9ff2b 53%,transparent 70%)}.q-brand-orbit{width:265px;height:265px;top:10px;left:calc(50% - 132px)}.q-brand-orbit-outer{width:320px;height:320px;top:-18px;left:calc(50% - 160px)}.q-hero-screen{width:54%;left:0;bottom:80px}.q-hero-board{width:53%;right:0;bottom:37px}.q-mini-window{font-size:8px;gap:5px;padding:8px}.q-mini-window i{font-size:12px}.q-mini-caption{font-size:8px;padding:9px;gap:3px}.q-mini-caption>i{font-size:14px}.q-universe-message{font-size:9px}.q-home .q-hero-bottom{gap:8px;font-size:9px;min-height:80px}.q-home .q-hero-bottom>div{gap:20px}.q-home .q-hero-bottom>div span+span:before{margin-right:20px}.q-home .q-software-tabs{grid-template-columns:repeat(2,1fr);gap:5px;padding:10px}.q-home .q-software-tab{font-size:11px;padding:9px 7px}.q-home .q-software-tab:last-child:nth-child(odd){grid-column:1/-1}.q-learning-flow{grid-template-columns:1fr 1fr;gap:10px 20px;margin-top:24px}.q-learning-flow li{padding-block:16px}.q-learning-flow h3,.q-learning-flow strong{font-size:17px;margin:5px 0 8px}.q-learning-flow p{font-size:11px}.q-sim-intro{font-size:13px;margin-bottom:22px}.q-sim-cta{align-items:flex-start;flex-direction:column;gap:18px;margin-top:10px;padding-block:22px}.q-sim-cta p{font-size:12px}.q-home .q-product-hardware .q-product-visual>img{width:73%;left:14%;top:3px}.q-home .q-hardware-heading{gap:21px}.q-home .q-hardware h2{font-size:35px}}
@media(max-width:360px){.q-home .q-hero h1{font-size:43px}.q-home .q-hero .q-button{font-size:11px;padding-inline:11px}.q-home .q-universe{height:390px}.q-brand-figure{top:23px}.q-hero-screen{bottom:62px}.q-hero-board{bottom:30px}.q-brand-orbit-outer{width:280px;height:280px;left:calc(50% - 140px);top:0}.q-universe-message{font-size:8px}.q-home .q-hero-bottom>div{gap:15px}.q-home .q-hero-bottom>div span+span:before{margin-right:15px}}
@media(prefers-reduced-motion:reduce){[data-float],.q-brand-aura,.q-brand-orbit{animation:none!important;transition:none!important}}

/* ---- Hero con la foto de los niños ----------------------------------
   La foto ocupa el lugar de las dos tarjetas y el logo se va a la esquina
   superior derecha, donde la foto traía impreso el suyo (borrado para que
   no se vean dos). Aura y órbitas se recentran en el logo con las mismas
   proporciones de antes: órbitas a 1.62 y 2.07 veces el ancho del logo y
   centradas a 0.70 de su alto. Solo cambian las variables por pantalla. */
.q-home .q-hero{overflow-x:clip}   /* las órbitas asoman al margen: sin scroll lateral */
.q-home .q-universe{--fx:80%;--fy:-14px;--fw:190px;--o1:calc(var(--fw) * 1.62);--o2:calc(var(--fw) * 2.07)}
.q-brand-figure{width:var(--fw);left:calc(var(--fx) - var(--fw) / 2);top:var(--fy);z-index:3}
.q-brand-figure>.marca{width:calc(var(--fw) * .95)}
.q-brand-wordmark{width:calc(var(--fw) * .93);height:calc(var(--fw) * .218)}
.q-brand-orbit{width:var(--o1);height:var(--o1);left:calc(var(--fx) - var(--o1) / 2);top:calc(var(--fy) + var(--fw) * .70 - var(--o1) / 2)}
.q-brand-orbit-outer{width:var(--o2);height:var(--o2);left:calc(var(--fx) - var(--o2) / 2);top:calc(var(--fy) + var(--fw) * .70 - var(--o2) / 2)}
/* Aura: un círculo centrado en el logo que se desvanece antes del borde
   de su caja; descentrada en la caja vieja, el degradado llegaba al borde
   aún con color y se veía el corte. */
.q-brand-aura{inset:auto;width:calc(var(--fw) * 4.4);aspect-ratio:1;left:calc(var(--fx) - var(--fw) * 2.2);top:calc(var(--fy) + var(--fw) * .70 - var(--fw) * 2.2);background:radial-gradient(closest-side,#2460eb 0%,#3678f1cc 22%,#548ffff0 30%,#81b0ff80 50%,#b9d3ff36 72%,transparent 100%)}
.q-hero-ninos{position:absolute;left:0;bottom:26px;width:100%;height:auto;z-index:1;filter:drop-shadow(0 26px 30px #1a4aa02e)}
@media(max-width:1100px){.q-home .q-universe{--fw:170px}}
@media(max-width:860px){.q-home .q-universe{--fw:140px;--fy:8px}.q-hero-ninos{bottom:22px}}
/* En una columna la foto va en el flujo: la altura sale de su ancho y el
   logo se monta en su esquina como en escritorio, sin hueco entre ambos */
@media(max-width:640px){
  .q-home .q-universe{--fx:78%;--fy:32px;--fw:130px;height:auto;padding:calc(var(--fy) + var(--fw) * .95) 0 26px}
  .q-brand-aura{background:radial-gradient(closest-side,#2459eb 0%,#3a7cf4d9 26%,#70a5fa8c 48%,#a5c9ff2b 72%,transparent 100%)}
  .q-hero-ninos{position:relative;bottom:auto;display:block}
}
@media(max-width:360px){.q-home .q-universe{--fw:115px}}

/* Imágenes de las tarjetas de producto: alto automático. Sin él, el alto
   salía del atributo height (941 px) y la captura se estiraba a lo alto. */
.q-home .q-product-visual>img{height:auto}
/* La placa ya viene sin fondo: sin marco blanco, flota sola con una
   sombra que sigue su contorno */
.q-home .q-core-photo{background:none;box-shadow:none;border-radius:0}
.q-home .q-core-photo img{border-radius:0;filter:drop-shadow(0 26px 24px #030c2299)}
.q-home .q-product-hardware .q-product-visual>img{border-radius:0;filter:drop-shadow(0 14px 14px #1a3c8a47)}

/* Capturas del software: la imagen completa y en su proporción. Antes el
   alto salía del atributo height y en celular se veía solo una franja. */
.q-home .q-software-panel>img{height:auto;aspect-ratio:1672/941}

/* Bloque de la placa: comprar y cotizar */
.q-hardware-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}
.q-hardware-quote{display:inline-flex;align-items:center;gap:8px;color:#dbe7ff;font-size:13px;font-weight:600;text-underline-offset:4px}
.q-hardware-quote:hover{color:#fff;text-decoration:underline}

/* Aliados en movimiento: dos filas que se deslizan en sentidos opuestos y
   se detienen al pasar el ratón. Con «reducir movimiento» se quedan como
   rejilla quieta, como estaban. */
@media (prefers-reduced-motion:no-preference){
  .q-home .aliados-filas{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
  .q-home .aliados-fila{width:max-content;justify-content:flex-start;animation:aliados-desliza var(--dur,52s) linear infinite}
  .q-home .aliados-fila.inversa{animation-direction:reverse;--dur:58s}
  .q-home .aliados-juego{width:auto;flex-wrap:nowrap;justify-content:flex-start;padding-right:18px}
  .q-home .aliados-juego[aria-hidden=true]{display:flex}
  .q-home .aliado.copia{display:flex}
  .q-home .aliados-filas:hover .aliados-fila,.q-home .aliados-filas:focus-within .aliados-fila{animation-play-state:paused}
  .q-home .aliados-filas:has(.aliado-enlace:focus-visible) .aliados-fila{animation:none}
}
