:root{--jc-brand: #ff6b00;--jc-brand-600: #e85d00;--jc-text: #0f172a;--jc-muted: #64748b;--jc-link: #1a56db;--jc-link-hover: #1448b4;--jc-app-bg: #f3f6fc;--jc-bg: #ffffff;--jc-surface-1: #ffffff;--jc-surface-2: #f8fafc;--jc-surface-3: #eef2f7;--jc-border: #e5e7eb;--jc-shadow-sm: 0 2px 4px rgba(15, 23, 42, .05);--jc-shadow: 0 4px 16px rgba(15, 23, 42, .06);--jc-focus: 0 0 0 3px rgba(255, 107, 0, .25);--jc-radius: 12px;--jc-container: 1200px;--jc-scrollbar: #cbd5e1;--jc-scrollbar-track: #f1f5f9;overflow-x:clip;--drawer-w: min(88vw, 340px);--header-h: 64px;--header-bg: color-mix(in srgb, var(--jc-surface-2) 92%, transparent);--header-blur: 10px;--mega-thumb-size: 48px}html{color-scheme:light;scroll-behavior:smooth}html.dark{color-scheme:dark}html.dark{--jc-text: #e5e7eb;--jc-muted: #9aa6bf;--jc-link: #93b4ff;--jc-link-hover: #bcd0ff;--jc-app-bg: #0a0f1a;--jc-bg: #0b1220;--jc-surface-1: #0e1626;--jc-surface-2: #0c1423;--jc-surface-3: #0f1a2d;--jc-border: #2c3647;--jc-shadow-sm: 0 2px 8px rgba(0,0,0,.4);--jc-shadow: 0 10px 24px rgba(0,0,0,.45);--jc-focus: 0 0 0 3px rgba(255,141,64,.35);--jc-scrollbar: #4b5563;--jc-scrollbar-track: #0d1525;--header-bg: color-mix(in srgb, var(--jc-surface-2) 96%, transparent)}body{background:var(--jc-app-bg);color:var(--jc-text)}.main-header{background:var(--jc-surface-2);border-bottom:1px solid var(--jc-border);box-shadow:var(--jc-shadow-sm)}.logo-container{position:relative;display:inline-flex;align-items:center;gap:.6rem;isolation:isolate}.logo-container:before{content:"";position:absolute;inset:-4px -6px;border-radius:12px;z-index:-1;pointer-events:none;border:0;box-shadow:none}.logo-container:hover{background:color-mix(in oklab,var(--jc-brand) 10%,transparent);transform:translateY(-1px);text-decoration:none}.logo-img{display:block;width:42px;height:42px;aspect-ratio:1/1;border-radius:8px;object-fit:contain;background:transparent;border:0;box-shadow:none;transition:transform .25s ease,background-color .2s ease}html.dark .logo-img{background:#fff}.logo-container:hover .logo-img{transform:rotate(-3deg) scale(1.05)}.logo-text{display:flex;flex-direction:column;line-height:1}.logo-title{font-size:1.25rem;font-weight:800;color:var(--jc-text);margin:0}.logo-subtitle{color:var(--jc-muted);padding-top:6px}a.logo-container,a.logo-container:visited,a.logo-container:hover,a.logo-container:focus{text-decoration:none!important;border:0!important;box-shadow:none!important}a.logo-container:after{content:none!important}html.dark .logo-container:before{background:var(--jc-surface-2);border:0;box-shadow:none}.main-header{background:var(--jc-bg);border-bottom:1px solid var(--jc-border);box-shadow:var(--jc-shadow-sm)}.navbar-container{--_pad: .6rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-height:64px;padding:var(--_pad) clamp(.5rem,2vw,1rem);max-width:min(100vw,var(--jc-container, 1200px));margin-inline:auto;background:none;position:relative;z-index:10}.nav-links{position:fixed;top:0;right:-1px;bottom:0;width:var(--drawer-w);transform:translate(100%);background:color-mix(in srgb,var(--jc-surface-2) 92%,transparent);border-inline-start:3px solid var(--jc-brand);box-shadow:var(--jc-shadow);padding:calc(1.25rem + env(safe-area-inset-top)) 1rem 1.25rem 1rem;display:flex;flex-direction:column;gap:.6rem;z-index:999;transition:transform .26s ease,box-shadow .26s ease,background-color .26s ease;transform:translate(calc(100% + 1px));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overscroll-behavior:contain;height:100dvh;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:calc(1.25rem + env(safe-area-inset-bottom))}.nav-links.show{right:0;transform:translate(0)}.nav-list{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:clamp(.8rem,2vw,1.2rem)}.nav-item{position:relative}.nav-list>.nav-item>:is(a.nav-link,button.nav-parent){--_underline-h: 2px;--_pad-y: .625rem;--_pad-x: .25rem;position:relative;display:inline-flex;align-items:center;gap:.4rem;padding:var(--_pad-y) var(--_pad-x);color:var(--jc-text);font-weight:600;line-height:1.2;text-decoration:none;border:0;background:none;border-radius:8px;cursor:pointer;min-height:40px;transition:color .18s ease,background-color .18s ease,transform .12s ease}.nav-list>.nav-item>:is(a.nav-link,button.nav-parent):after{content:"";position:absolute;left:0;bottom:0;width:0;height:var(--_underline-h);background:var(--jc-brand);border-radius:2px;transition:width .18s ease}.nav-list>.nav-item>:is(a.nav-link,button.nav-parent):hover{color:var(--jc-brand)}.nav-list>.nav-item>:is(a.nav-link,button.nav-parent):hover:after{width:100%}.nav-list>.nav-item>:is(a.nav-link,button.nav-parent):active{transform:translateY(1px)}.nav-list>.nav-item>:is(a.nav-link,button.nav-parent):focus-visible{outline:none;box-shadow:var(--jc-focus)}.nav-list>.nav-item>a.nav-link[aria-current=page],.nav-list>.nav-item>a.nav-link.is-active,.nav-list>.nav-item>button.nav-parent.is-active{color:var(--jc-brand)}.nav-list>.nav-item>a.nav-link[aria-current=page]:after,.nav-list>.nav-item>a.nav-link.is-active:after,.nav-list>.nav-item>button.nav-parent.is-active:after{width:100%}.has-submenu{position:relative}.submenu{--_radius: 12px;position:absolute;top:calc(100% + 10px);left:0;min-width:240px;background:var(--jc-surface-2);border:1px solid var(--jc-border);border-radius:var(--_radius);box-shadow:var(--jc-shadow);padding:.5rem;list-style:none;z-index:1000;display:grid;grid-template-rows:0fr;transition:grid-template-rows .22s ease,opacity .18s ease,transform .18s ease;opacity:0;transform:translateY(6px);overflow:clip}.has-submenu:hover>.submenu,.has-submenu:focus-within>.submenu{grid-template-rows:1fr;opacity:1;transform:translateY(0)}.submenu:before{content:"";display:block;height:1px;margin:.25rem .25rem .5rem;background:color-mix(in srgb,var(--jc-border) 60%,transparent);border-radius:2px}.submenu li a{display:block;padding:.55rem .7rem;border-radius:8px;color:var(--jc-text);font-weight:600;text-decoration:none;transition:background-color .15s ease,color .15s ease}.submenu li a:hover{background:var(--jc-surface-3);color:var(--jc-text)}html.dark .nav-links{background:color-mix(in srgb,var(--jc-surface-2) 96%,transparent)}html.dark .submenu:before{background:color-mix(in srgb,var(--jc-border) 40%,transparent)}.caret{inline-size:1em;block-size:1em;margin-inline-start:.35em;vertical-align:middle;opacity:.9;transition:transform .22s ease,opacity .2s ease;display:inline-block}.caret path{stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}.nav-parent[aria-expanded=true] .caret{transform:rotate(180deg)}.nav-parent:hover,.nav-parent:focus-visible{color:var(--jc-brand)}.external{display:inline-flex;align-items:center;gap:.35rem}.external-icon{display:inline-block;width:1em;height:1em;background-color:currentColor;opacity:.8;-webkit-mask:url("/dist/assets/external-6VOJSE7Y.svg") no-repeat center / contain;mask:url("/dist/assets/external-6VOJSE7Y.svg") no-repeat center / contain;transition:opacity .2s ease,transform .2s ease}.external:hover .external-icon{opacity:1;transform:translateY(-1px)}.theme-switch{--sw-h: 24px;--sw-w: 44px;--sw-pad: 2px;--sw-radius: 999px;--thumb: calc(var(--sw-h) - var(--sw-pad)*2);--icon: calc(var(--thumb) * .8);position:relative;inline-size:var(--sw-w);block-size:var(--sw-h);padding:0;border:0;background:transparent;border-radius:var(--sw-radius);display:inline-grid;place-items:center;cursor:pointer;outline:none;line-height:0}.theme-switch .switch-track{position:absolute;inset:0;border-radius:var(--sw-radius);background:linear-gradient(to bottom,color-mix(in oklab,var(--jc-text) 5%,transparent),transparent 55%),color-mix(in srgb,var(--jc-surface-3) 85%,transparent);border:1px solid color-mix(in srgb,var(--jc-border) 70%,transparent);box-shadow:inset 0 0 .5px #0000000f;transition:background-color .25s ease,border-color .25s ease,box-shadow .25s ease}.theme-switch .switch-thumb{position:absolute;inset-block:var(--sw-pad);inset-inline-start:var(--sw-pad);inline-size:var(--thumb);block-size:var(--thumb);border-radius:50%;background:#fff;border:1px solid color-mix(in srgb,var(--jc-border) 70%,transparent);box-shadow:0 1px 2px #0000001f,0 2px 6px #0000000f;display:grid;place-items:center;overflow:hidden;contain:paint;z-index:1;transition:transform .28s ease,background-color .25s ease,border-color .25s ease,box-shadow .25s ease;will-change:transform}.theme-switch .switch-thumb svg{display:block;inline-size:var(--icon);block-size:var(--icon);flex:0 0 var(--icon);pointer-events:none;color:currentColor}.theme-switch .icon-sun{transform:translate(.2px,.1px)}.theme-switch .icon-moon{transform:translate(.1px)}.theme-switch:focus-visible{box-shadow:0 0 0 3px color-mix(in oklab,var(--jc-brand) 35%,transparent);border-radius:999px}.theme-switch:hover .switch-track{box-shadow:inset 0 0 .5px #00000014}.theme-switch:hover .switch-thumb{box-shadow:0 2px 4px #00000029,0 3px 10px #00000014}html:not(.dark) .theme-switch{color:var(--jc-brand)}html:not(.dark) .theme-switch .switch-thumb{transform:translate(0)}html:not(.dark) .theme-switch .icon-sun{opacity:1}html:not(.dark) .theme-switch .icon-moon{opacity:0}html.dark .theme-switch{color:#111}html.dark .theme-switch .switch-track{background:linear-gradient(to bottom,color-mix(in oklab,#000 8%,transparent),transparent 55%),color-mix(in srgb,var(--jc-brand) 18%,var(--jc-surface-3));border-color:color-mix(in srgb,var(--jc-brand) 45%,var(--jc-border))}html.dark .theme-switch .switch-thumb{transform:translate(calc(var(--sw-w) - var(--thumb) - var(--sw-pad)*2));background:color-mix(in srgb,#fff 96%,transparent);border-color:color-mix(in srgb,var(--jc-brand) 35%,var(--jc-border))}html.dark .theme-switch .icon-sun{opacity:0}html.dark .theme-switch .icon-moon{opacity:1}.social-btn{--size: 32px;inline-size:var(--size);block-size:var(--size);display:inline-flex;align-items:center;justify-content:center;border-radius:50%;padding:0;border:1px solid color-mix(in srgb,var(--jc-border) 70%,transparent);background:var(--jc-surface-2);color:color-mix(in srgb,var(--jc-text) 90%,transparent);box-shadow:0 1px 2px #00000014;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .12s ease,box-shadow .2s ease;line-height:0}.social-btn .social-ico{inline-size:18px;block-size:18px;display:block}.social-btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000001a;background:color-mix(in srgb,var(--jc-brand) 10%,var(--jc-surface-2));color:var(--jc-brand)}.social-btn:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in oklab,var(--jc-brand) 35%,transparent)}.social-btn.is-linkedin:hover{color:#0a66c2}.social-btn.is-github:hover{color:#000}html.dark .social-btn.is-github:hover{color:#fff}html.dark .social-btn{background:color-mix(in srgb,var(--jc-surface-3) 70%,transparent);border-color:color-mix(in srgb,var(--jc-border) 55%,transparent);color:color-mix(in srgb,#fff 92%,transparent);box-shadow:0 1px 2px #00000040}html.dark .social-btn:hover{background:color-mix(in srgb,var(--jc-brand) 14%,var(--jc-surface-3));box-shadow:0 3px 10px #00000059}.nav-links a{color:var(--jc-text);padding:.6rem .7rem;border-radius:10px;transition:background .2s ease,color .2s ease,transform .15s ease}.nav-links a:hover{color:var(--jc-text);background:color-mix(in srgb,var(--jc-brand) 12%,transparent);transform:translate(2px)}.menu-toggle{--_size: 40px;inline-size:var(--_size);block-size:var(--_size);display:inline-flex;align-items:center;justify-content:center;padding:.5rem;border:0;background:none;color:var(--jc-text);border-radius:var(--jc-radius, 10px);cursor:pointer;z-index:1003;transition:background-color .2s ease,color .2s ease}html.drawer-open .menu-toggle{position:fixed;top:calc(env(safe-area-inset-top,0px) + .5rem);right:clamp(.5rem,2vw,1rem);background:color-mix(in srgb,var(--jc-surface-2) 70%,transparent);border:1px solid color-mix(in srgb,var(--jc-border) 60%,transparent);border-radius:var(--jc-radius, 10px);box-shadow:var(--jc-shadow)}@supports not (-webkit-mask: url()){.menu-toggle .menu-icon{background:no-repeat center / contain url("/dist/assets/menu-VPPQRI3K.svg")}.menu-toggle.is-open .menu-icon{background:no-repeat center / contain url("/dist/assets/close-3UR72VUL.svg")!important}}.menu-toggle:hover,.menu-toggle:focus-visible{outline:none;background:color-mix(in srgb,var(--jc-brand) 10%,transparent);color:var(--jc-brand)}.menu-toggle .menu-icon{inline-size:24px;block-size:24px;background-color:currentColor;-webkit-mask:url("/dist/assets/menu-VPPQRI3K.svg") no-repeat center / contain;mask:url("/dist/assets/menu-VPPQRI3K.svg") no-repeat center / contain;transition:transform .25s ease,background-color .2s ease}.menu-toggle.is-open .menu-icon{-webkit-mask:url("/dist/assets/close-3UR72VUL.svg") no-repeat center / contain!important;mask:url("/dist/assets/close-3UR72VUL.svg") no-repeat center / contain!important;transform:rotate(90deg)}.nav-links{z-index:999}.nav-links:before{content:attr(data-label);font-size:.85rem;color:var(--jc-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;text-align:left}#menuOverlay{position:fixed;inset:0;background:#00000059;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:998}.mega-menu{position:fixed;left:0;right:0;top:var(--header-h);width:100vw;max-width:100vw;background:var(--header-bg);-webkit-backdrop-filter:blur(var(--header-blur));backdrop-filter:blur(var(--header-blur));border:0;box-shadow:0 12px 28px #0f172a1f;padding:1rem;z-index:1000;opacity:0;visibility:hidden;translate:0 8px;transition:opacity .18s ease,translate .18s ease,visibility .18s step-end;max-height:calc(100dvh - var(--header-h) - 12px);overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--jc-text) 30%,transparent) transparent}.mega-menu::-webkit-scrollbar{width:10px}.mega-menu::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--jc-text) 25%,transparent);border-radius:999px;border:3px solid transparent;background-clip:padding-box}.mega-inner{margin:0 auto;max-width:var(--jc-container, 1200px);padding-inline:clamp(.75rem,2vw,1rem)}.mega-col{background:var(--jc-surface-2);padding:.9rem 0}.mega-col.highlight{background:var(--jc-bg);border-color:var(--jc-border)}.mega-heading{margin:0 0 .6rem;font-size:.95rem;font-weight:800;color:var(--jc-text);letter-spacing:.02em;text-transform:uppercase;opacity:.9}.mega-links{list-style:none;margin:0;padding:0;display:grid;gap:.35rem}.mega-links li{display:grid}.mega-links a{display:grid;grid-template-columns:var(--mega-thumb-size) 1fr auto;align-items:center;gap:.7rem;padding:.6rem .7rem;border-radius:8px;text-decoration:none}.mega-links a:hover{background:var(--jc-surface-3);color:var(--jc-text);transform:translate(1px)}.mega-links a:not(.with-thumb){grid-template-columns:0 1fr auto}.mega-links a:not(.with-thumb) .mega-thumb{display:none}.mega-links.courses-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:.45rem .6rem;padding:0}.mega-links.courses-grid-2>li{list-style:none}.mega-links.courses-grid-2>li.span-2{grid-column:1 / -1}.mega-links.courses-grid-2 .mega-thumb{inline-size:32px;block-size:32px;border-radius:10px;display:grid;place-items:center;overflow:hidden;background:var(--jc-surface-3);border:1px solid color-mix(in srgb,var(--jc-border) 70%,transparent)}.mega-links.courses-grid-2 .mega-thumb img{max-width:100%;max-height:100%;display:block}.svg-icon.svg-grid{width:24px;height:24px;display:block;background-color:currentColor;-webkit-mask:url("/dist/assets/grid-R4PBZZ4N.svg") no-repeat center / contain;mask:url("/dist/assets/grid-R4PBZZ4N.svg") no-repeat center / contain}.mega-links.blog-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:.45rem .6rem;padding:0}.mega-links.blog-grid-2>li{list-style:none}.mega-links.blog-grid-2>li.span-2{grid-column:1 / -1}:root{--mega-thumb-size: 48px}.mega-links.blog-grid-2 a{display:grid;grid-template-columns:var(--mega-thumb-size) 1fr auto;align-items:center;gap:.7rem;padding:.6rem .7rem;border-radius:10px}.mega-thumb.icon-swatch{inline-size:var(--mega-thumb-size);block-size:var(--mega-thumb-size);border-radius:10px;display:grid;place-items:center;background:var(--jc-surface-3);border:1px solid color-mix(in srgb,var(--jc-border) 70%,transparent);overflow:hidden}.svg-icon{inline-size:calc(var(--mega-thumb-size) * .66);block-size:calc(var(--mega-thumb-size) * .66);background-color:var(--jc-text);-webkit-mask:no-repeat center / contain;mask:no-repeat center / contain;display:block;opacity:.95;transition:background-color .2s ease,opacity .2s ease,transform .15s ease}a.with-thumb:hover .svg-icon{background-color:var(--jc-brand);opacity:1;transform:translateY(-1px)}.svg-blog-programacion{-webkit-mask-image:url("/dist/assets/programacion-OJ37FDWQ.svg");mask-image:url("/dist/assets/programacion-OJ37FDWQ.svg")}.svg-blog-web{-webkit-mask-image:url("/dist/assets/desarrollo-web-PR4VN2X7.svg");mask-image:url("/dist/assets/desarrollo-web-PR4VN2X7.svg")}.svg-blog-db{-webkit-mask-image:url("/dist/assets/bases-datos-6W2RAZKS.svg");mask-image:url("/dist/assets/bases-datos-6W2RAZKS.svg")}.svg-blog-seo{-webkit-mask-image:url("/dist/assets/seo-ZPYNH73L.svg");mask-image:url("/dist/assets/seo-ZPYNH73L.svg")}.svg-blog-sistemas{-webkit-mask-image:url("/dist/assets/sistemas-software-7JJLJNO2.svg");mask-image:url("/dist/assets/sistemas-software-7JJLJNO2.svg")}.svg-blog-wordpress{-webkit-mask-image:url("/dist/assets/wordpress-DK7AVQ6Q.svg");mask-image:url("/dist/assets/wordpress-DK7AVQ6Q.svg")}.svg-blog-ciber{-webkit-mask:url("/dist/assets/ciberseguridad-ATLKYVAP.svg") no-repeat center / contain;mask:url("/dist/assets/ciberseguridad-ATLKYVAP.svg") no-repeat center / contain;background-color:currentColor}.svg-blog-news{-webkit-mask:url("/dist/assets/noticias-QXBCM55S.svg") no-repeat center / contain;mask:url("/dist/assets/noticias-QXBCM55S.svg") no-repeat center / contain;background-color:currentColor}.svg-blog-ai{-webkit-mask:url("/dist/assets/ia-QR6DPQLD.svg") no-repeat center / contain;mask:url("/dist/assets/ia-QR6DPQLD.svg") no-repeat center / contain;background-color:currentColor}.svg-blog-all{-webkit-mask-image:url("/dist/assets/grid-R4PBZZ4N.svg");mask-image:url("/dist/assets/grid-R4PBZZ4N.svg")}.svg-social-linkedin{-webkit-mask:url("/dist/assets/linkedin-5MDHWH6K.svg") no-repeat center / contain;mask:url("/dist/assets/linkedin-5MDHWH6K.svg") no-repeat center / contain;background-color:currentColor}.svg-social-github{-webkit-mask:url("/dist/assets/github-V6QUTKQP.svg") no-repeat center / contain;mask:url("/dist/assets/github-V6QUTKQP.svg") no-repeat center / contain;background-color:currentColor}.svg-social-facebook{-webkit-mask:url("/dist/assets/facebook-PPER5W34.svg") no-repeat center / contain;mask:url("/dist/assets/facebook-PPER5W34.svg") no-repeat center / contain;background-color:currentColor}.svg-social-twitter{-webkit-mask:url("/dist/assets/twitter-UKWH2AB5.svg") no-repeat center / contain;mask:url("/dist/assets/twitter-UKWH2AB5.svg") no-repeat center / contain;background-color:currentColor}.svg-social-youtube{-webkit-mask:url("/dist/assets/youtube-VQTALQ3M.svg") no-repeat center / contain;mask:url("/dist/assets/youtube-VQTALQ3M.svg") no-repeat center / contain;background-color:currentColor}.svg-social-instagram{-webkit-mask:url("/dist/assets/instagram-AJDXAY6Q.svg") no-repeat center / contain;mask:url("/dist/assets/instagram-AJDXAY6Q.svg") no-repeat center / contain;background-color:currentColor}@supports not (-webkit-mask-image: url()){.svg-social-linkedin{background:no-repeat center/contain url("/dist/assets/linkedin-5MDHWH6K.svg")}.svg-social-github{background:no-repeat center/contain url("/dist/assets/github-V6QUTKQP.svg")}.svg-social-facebook{background:no-repeat center/contain url("/dist/assets/facebook-PPER5W34.svg")}.svg-social-twitter{background:no-repeat center/contain url("/dist/assets/twitter-UKWH2AB5.svg")}.svg-social-youtube{background:no-repeat center/contain url("/dist/assets/youtube-VQTALQ3M.svg")}.svg-social-instagram{background:no-repeat center/contain url("/dist/assets/instagram-AJDXAY6Q.svg")}}.mega-links.blog-grid-2 a:not(.with-thumb){grid-template-columns:0 1fr auto}.mega-links.blog-grid-2 a:not(.with-thumb) .mega-thumb{display:none}.mega-links.tools-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:.45rem .6rem;padding:0}.mega-links.tools-grid-2>li{list-style:none}.mega-links.tools-grid-2 a{display:grid;grid-template-columns:var(--mega-thumb-size) 1fr auto;align-items:center;gap:.7rem;padding:.6rem .7rem;border-radius:10px}.mega-links.tools-grid-2>li.span-2{grid-column:1 / -1}.mega-links.tools-grid-2 a:not(.with-thumb){grid-template-columns:0 1fr auto}.mega-links.tools-grid-2 a:not(.with-thumb) .mega-thumb{display:none}.mega-thumb{inline-size:var(--mega-thumb-size);block-size:var(--mega-thumb-size);border-radius:10px;overflow:hidden;display:grid;place-items:center;background:var(--jc-surface-3);border:1px solid color-mix(in srgb,var(--jc-border) 70%,transparent)}.mega-thumb img{width:100%;height:100%;object-fit:contain;display:block}.mega-card{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.8rem .9rem;text-decoration:none;background:var(--jc-surface-2);border:1px solid var(--jc-border);border-radius:12px;transition:background-color .2s ease,box-shadow .2s ease,transform .15s ease}.mega-card:hover{background:color-mix(in srgb,var(--jc-brand) 12%,transparent);box-shadow:0 8px 22px #0f172a14;transform:translateY(-2px)}.mega-card-body h5{margin:0 0 .2rem;font-size:1rem;color:var(--jc-text);font-weight:800}.mega-card-body p{margin:0;font-size:.92rem;color:color-mix(in srgb,var(--jc-text) 85%,transparent)}.mega-cta{font-weight:800;color:var(--jc-brand);white-space:nowrap}.mega-text{display:flex;flex-direction:column;line-height:1.3}.mega-title{font-weight:600;color:var(--jc-text);font-size:.95rem}.mega-text .mega-title{display:inline-flex;align-items:center;gap:.45rem;line-height:1.2}.badge-soon{display:inline-flex;align-items:center;white-space:nowrap;padding:.15rem .5rem;border-radius:999px;font-size:.72rem;font-weight:800;letter-spacing:.2px;color:var(--jc-brand, #2563eb);background:color-mix(in srgb,var(--jc-brand, #2563eb) 12%,var(--jc-surface-1, #fff));border:1px solid color-mix(in srgb,var(--jc-brand, #2563eb) 45%,var(--jc-border, #e5e7eb));box-shadow:0 2px 6px #0f172a0f}html.dark .badge-soon{color:color-mix(in srgb,#fff 96%,var(--jc-brand, #2563eb) 0%);background:color-mix(in srgb,var(--jc-brand, #2563eb) 28%,var(--jc-surface-2, #0f172a));border-color:color-mix(in srgb,var(--jc-brand, #2563eb) 55%,var(--jc-border, #20304d))}.mega-desc{font-size:.8rem;color:var(--jc-muted);margin-top:2px}a.with-thumb:hover .mega-title{color:var(--jc-brand)}.mega-links a .external-icon{margin-inline-start:.25rem;opacity:.9}.mega-links a:hover{background:var(--jc-surface-3);transform:translate(1px)}html.dark .mega-thumb{background:color-mix(in srgb,var(--jc-surface-3) 70%,transparent);border-color:color-mix(in srgb,var(--jc-border) 50%,transparent)}html.dark .mega-col{border-color:color-mix(in srgb,var(--jc-border) 60%,transparent)}html.dark .mega-card{background:var(--jc-surface-2);border-color:var(--jc-border)}html.dark .mega-card:hover{background:color-mix(in srgb,var(--jc-brand) 14%,transparent)}.nav-link:focus-visible,.nav-parent:focus-visible,.submenu a:focus-visible,.menu-toggle:focus-visible{outline:none;box-shadow:var(--jc-focus);border-radius:10px}.navbar-container,.nav-links,.nav-links *,.mega-menu,.mega-menu *{font-family:inherit}.nav-list>.nav-item>button.nav-parent{font:inherit;appearance:none}.nav-list>.nav-item>:is(a.nav-link,button.nav-parent),.mega-links a{font-size:1rem;line-height:1.2;font-weight:600;letter-spacing:.01em}.mega-heading{font-family:inherit;font-weight:800}.mega-links a,.submenu li a,.nav-links a{font-family:inherit!important}.nav-links{z-index:1002}#menuOverlay{z-index:1000}#menuOverlay{position:fixed;inset:0;background:#00000059;opacity:0;pointer-events:none;transition:opacity .2s ease}#menuOverlay.active{opacity:1;pointer-events:auto}html.drawer-open #menuOverlay{right:var(--drawer-w)}html.drawer-open,html.drawer-open body{overflow:hidden}.nav-sep{--_w: 1px;--_h: 28px;--_alpha: .65;display:inline-block;align-self:center;inline-size:var(--_w);block-size:var(--_h);border-radius:999px;background:linear-gradient(to bottom,color-mix(in oklab,var(--jc-border) 10%,transparent),color-mix(in oklab,var(--jc-text) 22%,transparent),color-mix(in oklab,var(--jc-border) 10%,transparent));opacity:var(--_alpha);box-shadow:0 0 .5px color-mix(in srgb,var(--jc-text) 15%,transparent),0 0 6px color-mix(in srgb,var(--jc-text) 8%,transparent);margin-inline:.25rem}html.dark .nav-sep{opacity:.8;background:linear-gradient(to bottom,color-mix(in oklab,var(--jc-border) 25%,transparent),color-mix(in oklab,#fff 22%,transparent),color-mix(in oklab,var(--jc-border) 25%,transparent));box-shadow:0 0 .5px color-mix(in srgb,#fff 18%,transparent),0 0 8px color-mix(in srgb,#fff 10%,transparent)}.nav-mobile-title{display:none;font-size:.85rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--jc-muted);padding:.25rem 0 .1rem}@media (min-width:769px){.menu-toggle{display:none}.nav-links{all:unset;display:flex;gap:1.2rem;align-items:center}.nav-links:before{content:none!important;display:none!important}#menuOverlay{display:none!important}.has-submenu:hover>.submenu,.has-submenu:focus-within>.submenu{display:block}.has-mega:hover>.mega-menu,.has-mega:focus-within>.mega-menu{opacity:1;visibility:visible;translate:0 0;transition-timing-function:ease-out;transition-delay:40ms}.has-mega.open-mega>.mega-menu{opacity:1;visibility:visible;translate:0 0;transition-timing-function:ease-out;transition-delay:40ms}.nav-item:has(>a.social-btn):not(:has(>a.is-linkedin)):not(:has(>a.is-github)){display:none}.nav-mobile-title{display:none!important}}@media (max-width:768px){:root{--mega-thumb-size: 40px}.nav-links .nav-list{flex-direction:column;align-items:stretch;gap:.35rem}.nav-parent{width:100%;text-align:left;color:var(--jc-text);padding:.7rem .75rem;border-radius:10px;display:inline-flex;align-items:center;justify-content:space-between}.nav-parent:hover{background:color-mix(in srgb,var(--jc-brand) 12%,transparent)}.submenu{position:static;border:0;box-shadow:none;padding:.25rem 0;background:transparent;grid-template-rows:0fr;opacity:1;transform:none}.submenu.open{grid-template-rows:1fr}.submenu li a{padding:.5rem .9rem}.has-mega>.mega-menu{position:static;transform:none;width:100%;border:0;border-radius:12px;box-shadow:none;padding:0;opacity:1;visibility:visible;translate:0;display:none;margin-top:.25rem;max-height:none;overflow:visible}.has-mega>.mega-menu.open{display:block}.mega-inner{display:grid;grid-template-columns:1fr;gap:.6rem}.mega-col{padding:.75rem}.mega-card{padding:.75rem .8rem}.mega-links.tools-grid-2{grid-template-columns:1fr}.mega-links.tools-grid-2>li.span-2{grid-column:auto}.mega-links a{grid-template-columns:28px 1fr auto}.mega-links a:not(.with-thumb){grid-template-columns:0 1fr auto}.mega-links.blog-grid-2{grid-template-columns:1fr}.mega-links.blog-grid-2>li.span-2{grid-column:auto}.mega-links.courses-grid-2{grid-template-columns:1fr}.mega-links.courses-grid-2>li.span-2{grid-column:auto}.nav-sep{--_w: 100%;--_h: 1px;inline-size:var(--_w);block-size:var(--_h);margin:.35rem 0;background:linear-gradient(to right,color-mix(in oklab,var(--jc-border) 10%,transparent),color-mix(in oklab,var(--jc-text) 22%,transparent),color-mix(in oklab,var(--jc-border) 10%,transparent));box-shadow:0 0 .5px color-mix(in srgb,var(--jc-text) 12%,transparent)}.theme-switch{--sw-h: 22px;--sw-w: 40px}.social-btn{--size: 30px}.social-btn .social-ico{inline-size:17px;block-size:17px}.nav-item>a.social-btn{display:inline-flex}.nav-mobile-title{display:block}.nav-mobile-title{margin-top:.35rem}.navbar-container .nav-links .nav-list{display:block}.navbar-container .nav-links .nav-list>.nav-mobile-title{display:block;margin:.55rem 0}.navbar-container .nav-links .nav-list>li:has(>a.social-btn){display:inline-block;margin-right:.45rem;margin-bottom:.35rem;vertical-align:middle}.navbar-container .nav-links .nav-list>li:has(>a.social-btn)>a.social-btn{padding:.35rem}.navbar-container .nav-links .nav-list>li:has(>a.social-btn)+li:not(:has(>a.social-btn)){display:block;clear:both}}@media (prefers-reduced-motion:reduce){.nav-link,.nav-link:after,.submenu,.nav-links,.caret,#menuOverlay{transition:none!important}.nav-sep{box-shadow:none}.theme-switch,.theme-switch *{transition:none!important}}@supports not (-webkit-mask-image: url()){.caret{background:no-repeat center/contain url("/dist/assets/caret-X2PFLK2S.svg");background-color:transparent}.external-icon{background:no-repeat center/contain url("/dist/assets/external-6VOJSE7Y.svg");background-color:transparent}html.dark .caret,html.dark .external-icon{filter:brightness(1.2) contrast(1.05)}}.breadcrumb-wrapper{background:var(--jc-surface-2);border-bottom:1px solid var(--jc-border)}.breadcrumb a{color:var(--jc-text)}.breadcrumb a:hover{color:var(--jc-brand)}.breadcrumb-item.active{color:var(--jc-muted)}html.dark .breadcrumb-wrapper{background:linear-gradient(180deg,color-mix(in srgb,var(--jc-bg) 92%,transparent),var(--jc-bg));border-bottom:1px solid color-mix(in srgb,var(--jc-border) 92%,transparent);padding:.85rem .5rem;color:var(--jc-text)}html.dark .breadcrumb{display:flex;flex-wrap:wrap;gap:.25rem;margin:0;padding:0;list-style:none;background:transparent}html.dark .breadcrumb a{color:color-mix(in srgb,var(--jc-text) 86%,var(--jc-muted));text-decoration:none;line-height:1.25;padding:.15rem .25rem;border-radius:.35rem;transition:color .18s ease,background-color .18s ease,box-shadow .18s ease}html.dark .breadcrumb a:hover{color:var(--jc-brand);background:color-mix(in srgb,var(--jc-brand) 10%,transparent)}html.dark .breadcrumb a:focus-visible{outline:none;box-shadow:var(--jc-focus, 0 0 0 3px rgba(255,141,64,.35));background:color-mix(in srgb,var(--jc-brand) 12%,transparent)}html.dark .breadcrumb-item+.breadcrumb-item:before{content:"\203a";padding:0 .5rem;color:color-mix(in srgb,var(--jc-muted) 85%,transparent);font-weight:600}html.dark .breadcrumb-item.active{color:var(--jc-text);font-weight:700}html.dark .breadcrumb-item[aria-disabled=true]>a{color:color-mix(in srgb,var(--jc-muted) 70%,transparent);pointer-events:none}@media (max-width: 576px){html.dark .breadcrumb-wrapper{padding:.6rem .5rem}html.dark .breadcrumb{gap:.2rem}html.dark .breadcrumb-item,html.dark .breadcrumb a{max-width:48vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}@media (prefers-color-scheme: dark){.breadcrumb-wrapper:not(html.dark .breadcrumb-wrapper){background:linear-gradient(180deg,color-mix(in srgb,var(--jc-bg) 92%,transparent),var(--jc-bg));border-bottom:1px solid color-mix(in srgb,var(--jc-border) 92%,transparent)}.breadcrumb a{color:color-mix(in srgb,var(--jc-text) 86%,var(--jc-muted))}.breadcrumb a:hover{color:var(--jc-brand);background:color-mix(in srgb,var(--jc-brand) 10%,transparent)}.breadcrumb-item+.breadcrumb-item:before{color:color-mix(in srgb,var(--jc-muted) 85%,transparent)}.breadcrumb-item.active{color:var(--jc-text)}}@media (prefers-reduced-motion: reduce){.breadcrumb a{transition:none!important}}.blog-card,.tool-card,.curso-card,.feature-card,.benefit-item,.testimonial-card{background:var(--jc-surface-1);border:1px solid var(--jc-border);box-shadow:var(--jc-shadow);color:var(--jc-text)}.blog-search-form,.newsletter-box,.contact-form input[type=text],.contact-form input[type=email],.contact-form textarea{background:var(--jc-surface-1);border-color:var(--jc-border);color:var(--jc-text)}.blog-search-form input[type=text],.newsletter-input{background:var(--jc-surface-1);border:1.5px solid var(--jc-border);color:var(--jc-text)}.blog-search-form input[type=text]::placeholder,.newsletter-input::placeholder{color:var(--jc-muted)}.blog-search-form input[type=text]:focus,.newsletter-input:focus,.contact-form input:focus,.contact-form textarea:focus{border-color:var(--jc-brand);box-shadow:var(--jc-focus);outline:none}.jc-btn--primary,.btn-curso,.btn-hero-dark,.btn-web,.btn-app-download,.btn-cta-app,.blog-search-form button[type=submit]{box-shadow:0 6px 16px #ff6b0038}html.dark .jc-btn--primary,html.dark .btn-curso,html.dark .btn-hero-dark,html.dark .btn-web,html.dark .btn-app-download,html.dark .btn-cta-app,html.dark .blog-search-form button[type=submit]{box-shadow:0 10px 24px #ff6b0047}.hero-jaracoder,.blog-hero,.tools-section,.curso-web,.app-features-section,.app-benefits-section,.faq-app-section{background:var(--jc-surface-2);color:var(--jc-text)}.gallery-carousel{scrollbar-width:thin}.gallery-carousel::-webkit-scrollbar{height:8px;background:var(--jc-scrollbar-track)}.gallery-carousel::-webkit-scrollbar-thumb{background:var(--jc-scrollbar);border-radius:999px}.cookie-banner{background:var(--jc-surface-1);color:var(--jc-text);border-top:1px solid var(--jc-border)}.cookie-banner a{color:var(--jc-link)}.cookie-banner a:hover{color:var(--jc-link-hover)}.cookie-banner button{background:var(--jc-brand);color:#fff}.cookie-banner button:hover{background:var(--jc-brand-600)}.category-tag-filter{display:inline-block;padding:.35rem .75rem;font-size:.875rem;font-weight:500;line-height:1.2;color:var(--jc-text);background:color-mix(in srgb,#eef2f7 80%,transparent);border:1px solid var(--jc-border);border-radius:9999px;cursor:pointer;transition:all .2s ease-in-out;text-decoration:none;margin:.25rem}.category-tag-filter:hover{background:var(--jc-surface-2);color:var(--jc-text);transform:translateY(-1px);box-shadow:0 2px 6px #0000000d}.category-tag-filter.active{background:color-mix(in srgb,var(--jc-bg) 72%,var(--jc-text) 28%);box-shadow:0 2px 6px #00000026}.category-tag-filter:active{transform:translateY(0);box-shadow:0 1px 3px #0000001a}:focus-visible{outline:none;box-shadow:var(--jc-focus);border-radius:calc(var(--jc-radius) - 2px)}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url("/dist/assets/inter-v18-latin-regular-WWDJPMN4.eot");src:url("/dist/assets/inter-v18-latin-regular-WWDJPMN4.eot?#iefix") format("embedded-opentype"),url("/dist/assets/inter-v18-latin-regular-GYFJJKJF.woff2") format("woff2"),url("/dist/assets/inter-v18-latin-regular-AO73FBJG.woff") format("woff"),url("/dist/assets/inter-v18-latin-regular-BCGADRLU.ttf") format("truetype"),url("/dist/assets/inter-v18-latin-regular-7IV5KZIH.svg#Inter") format("svg")}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url("/dist/assets/inter-v18-latin-600-EWD4BUTY.eot");src:url("/dist/assets/inter-v18-latin-600-EWD4BUTY.eot?#iefix") format("embedded-opentype"),url("/dist/assets/inter-v18-latin-600-56WZKGNJ.woff2") format("woff2"),url("/dist/assets/inter-v18-latin-600-JLDSSWAU.woff") format("woff"),url("/dist/assets/inter-v18-latin-600-CBOEA3IU.ttf") format("truetype"),url("/dist/assets/inter-v18-latin-600-MR2PPISB.svg#Inter") format("svg")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:400;src:url("/dist/assets/jetbrains-mono-v20-latin-regular-FVAWCHPP.eot");src:url("/dist/assets/jetbrains-mono-v20-latin-regular-FVAWCHPP.eot?#iefix") format("embedded-opentype"),url("/dist/assets/jetbrains-mono-v20-latin-regular-3OOWLGQ2.woff2") format("woff2"),url("/dist/assets/jetbrains-mono-v20-latin-regular-4IXKFCHT.woff") format("woff"),url("/dist/assets/jetbrains-mono-v20-latin-regular-OUZJPIMC.ttf") format("truetype")}*,*:before,*:after{box-sizing:border-box}body{font-family:Inter,system-ui,sans-serif;margin:0;padding:0;background:var(--jc-app-bg);color:var(--jc-text)}.container{max-width:var(--jc-container);margin-inline:auto;padding-inline:1rem}.container--narrow{max-width:900px}h1{font-size:2.5rem;color:var(--jc-text);margin:0;padding:0}.subtitle{font-size:1.1rem;margin-bottom:1.5rem;color:var(--jc-muted)}.form-box,.result-box{background:var(--jc-bg);border:1px solid var(--jc-border);border-radius:var(--jc-radius);padding:0;margin:0;box-shadow:var(--jc-shadow-sm);box-sizing:border-box}label{font-weight:700;color:var(--jc-text);display:block;margin-bottom:.5rem}.code-area{width:100%;max-width:100%;font-family:JetBrains Mono,Fira Code,monospace;font-size:.95rem;background:color-mix(in oklab,var(--jc-bg) 96%,#fff);color:var(--jc-text);border:1.5px solid var(--jc-border);border-radius:10px;padding:.75rem;resize:vertical;height:280px;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.code-area::placeholder{color:var(--jc-muted)}.code-area:focus{outline:none;border-color:var(--jc-brand);box-shadow:var(--jc-focus)}.btn-minify{margin-top:1rem;display:inline-block;background:var(--jc-link);color:#fff;border:none;padding:.7rem 1.5rem;border-radius:10px;font-weight:700;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease,background-color .2s ease;box-shadow:0 8px 18px color-mix(in oklab,var(--jc-link) 28%,transparent)}.btn-minify:hover{background:var(--jc-link-hover);transform:translateY(-1px);box-shadow:0 12px 22px color-mix(in oklab,var(--jc-link) 34%,transparent)}.btn-minify:focus-visible{outline:none;box-shadow:var(--jc-focus)}.jc-btn{display:inline-block;padding:.5rem 1.2rem;font-size:1rem;font-weight:700;border-radius:10px;text-decoration:none;line-height:1.5;border:none;font-family:inherit;cursor:pointer;appearance:none;transition:transform .15s ease,box-shadow .2s ease,background-color .2s ease,color .2s ease,border-color .2s ease}.jc-btn:focus-visible{outline:none;box-shadow:var(--jc-focus)}.jc-btn--primary{background-color:var(--jc-brand);color:#fff;box-shadow:0 8px 20px #ff6b003d}.jc-btn--primary:hover{background-color:var(--jc-brand-600);transform:translateY(-1px)}.jc-btn--secondary{background-color:color-mix(in oklab,var(--jc-text) 6%,var(--jc-bg));color:var(--jc-link);border:1px solid var(--jc-border)}.jc-btn--secondary:hover{background-color:color-mix(in oklab,var(--jc-text) 10%,var(--jc-bg));color:var(--jc-link-hover)}.jc-btn--ghost{background-color:transparent;color:var(--jc-brand);border:1.5px solid var(--jc-brand)}.jc-btn--ghost:hover{background-color:color-mix(in oklab,var(--jc-brand) 12%,transparent)}@media (prefers-color-scheme: dark){.code-area{background:#0f1628;border-color:#2a3342}.jc-btn--secondary{background-color:color-mix(in oklab,var(--jc-text) 12%,var(--jc-bg))}}.jaracoder-box-wrapper{width:100%;background:var(--jc-bg);box-shadow:inset 0 -1px 0 var(--jc-border)}.jaracoder-box{max-width:var(--jc-container);margin:0 auto;padding:8rem 0;background:transparent;border-radius:var(--jc-radius);font-size:1.05rem;line-height:1.7;color:var(--jc-text)}.jaracoder-box h2{font-size:clamp(1.6rem,2.2vw + 1rem,2.25rem);font-weight:800;font-family:Poppins,system-ui,sans-serif;color:var(--cs-text);text-align:center;margin:1.2rem 0 .75rem;line-height:1.25;position:relative;padding-bottom:.35rem}.jaracoder-box h2:after{content:"";display:block;width:132px;height:6px;margin:.6rem auto 0;border-radius:999px;background:linear-gradient(90deg,color-mix(in srgb,rgb(212,160,22) 78%,#fff 0%),#d4a016 55%,color-mix(in srgb,rgb(212,160,22) 55%,transparent));box-shadow:0 4px 12px color-mix(in srgb,rgb(212,160,22) 30%,transparent)}.jaracoder-box strong{color:var(--jc-text);font-size:.92rem}.hero-jaracoder{--hero-grad-1: #f7f8fb;--hero-grad-2: #eef2f7;--hero-ring: rgba(255, 255, 255, .65);--hero-grid: rgba(15, 23, 42, .05);--hero-brand: var(--jc-brand)}html.dark .hero-jaracoder{--hero-grad-1: #0e1524;--hero-grad-2: #121a2b;--hero-ring: rgba(255, 255, 255, .06);--hero-grid: rgba(148, 163, 184, .06);--hero-brand: var(--jc-brand)}.hero-jaracoder{position:relative;overflow:hidden;color:var(--jc-text);background:radial-gradient(1200px 600px at 80% -10%,color-mix(in srgb,var(--hero-brand) 10%,transparent),transparent 70%),linear-gradient(135deg,var(--hero-grad-1),var(--hero-grad-2));padding:clamp(2rem,4vw,4rem) 1.5rem;box-shadow:inset 0 -1px 0 var(--jc-border);isolation:isolate;min-height:100vh;min-height:100svh;min-height:100dvh;display:grid;place-items:center}.hero-jaracoder:before,.hero-jaracoder:after{content:"";position:absolute;inset:0;pointer-events:none;z-index:0}.hero-jaracoder:before{background-image:linear-gradient(0deg,var(--hero-grid) 1px,transparent 1px),linear-gradient(90deg,var(--hero-grid) 1px,transparent 1px);background-size:22px 22px;mask-image:radial-gradient(80% 70% at 50% 30%,black 60%,transparent 100%)}.hero-jaracoder:after{background:radial-gradient(60% 40% at 50% 0%,var(--hero-ring),transparent 70%);mix-blend-mode:soft-light}.hero-jaracoder .hero-decor{position:absolute;z-index:0;filter:blur(24px);opacity:.35;pointer-events:none}.hero-jaracoder .hero-decor--tl{top:-90px;left:-90px;width:220px;height:220px;background:radial-gradient(circle at 30% 30%,var(--hero-brand),transparent 60%);border-radius:50%}.hero-jaracoder .hero-decor--br{bottom:-120px;right:-80px;width:280px;height:280px;background:radial-gradient(circle at 60% 60%,color-mix(in srgb,var(--hero-brand) 65%,#fff 0%),transparent 70%);border-radius:50%}.hero-container{display:flex;flex-wrap:wrap;align-items:center;max-width:var(--jc-container);margin:0 auto;padding:0;position:relative;z-index:1}.hero-content h1{font-size:clamp(2rem,2.8vw + 1rem,3.5rem);font-weight:800;margin:0 auto .75rem;line-height:1.15;letter-spacing:-.02em;color:var(--jc-text);max-width:960px;text-align:center}.highlight-name{color:var(--hero-brand);font-weight:800;white-space:nowrap}.hero-content p{font-size:clamp(1.05rem,.6vw + 1rem,1.25rem);line-height:1.7;color:var(--jc-text);opacity:.9;margin:0 auto 2rem;max-width:720px;text-align:center}.hero-button-wrapper{text-align:center;margin-top:1.25rem;display:flex;gap:.8rem;flex-wrap:wrap;align-items:center;justify-content:center}.btn-hero{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;font-weight:700;font-size:1rem;padding:.9rem 1.25rem;border-radius:var(--jc-radius-md, 12px);background-color:var(--jc-bg);color:var(--jc-text);border:1.5px solid var(--hero-brand);text-decoration:none;cursor:pointer;user-select:none;transition:transform .15s ease,box-shadow .2s ease,background-color .2s ease,color .2s ease,border-color .2s ease;box-shadow:var(--jc-shadow-sm);will-change:transform,box-shadow,background-color,color}.btn-hero:hover{background:#fff;color:var(--tx);transform:translateY(-2px);box-shadow:var(--jc-shadow);border-color:var(--hero-brand)}.btn-hero:active{transform:translateY(-1px);box-shadow:var(--jc-shadow-sm)}.btn-hero:focus-visible{outline:none;box-shadow:var(--jc-focus)}.btn-hero[disabled],.btn-hero.disabled{opacity:.6;pointer-events:none;cursor:not-allowed;transform:none;box-shadow:none}html.dark .btn-hero{background-color:var(--jc-surface-2, #1e293b);color:var(--jc-text, #f8fafc);border-color:color-mix(in srgb,var(--hero-brand) 85%,black);box-shadow:var(--jc-shadow-sm-dark, 0 2px 6px rgba(0,0,0,.6))}html.dark .btn-hero:hover{background:linear-gradient(135deg,color-mix(in srgb,var(--hero-brand) 90%,black),var(--hero-brand));color:#fff;border-color:var(--hero-brand);box-shadow:var(--jc-shadow-dark, 0 4px 12px rgba(0,0,0,.8))}.btn-hero--ghost{background:transparent;border-color:color-mix(in srgb,var(--hero-brand) 40%,var(--jc-border))}.btn-hero--ghost:hover{background:color-mix(in srgb,var(--hero-brand) 14%,transparent);color:var(--jc-text)}html.dark .btn-hero{background-color:color-mix(in srgb,var(--jc-bg) 78%,black);border-color:color-mix(in srgb,var(--hero-brand) 65%,#000)}html.dark .btn-hero--ghost{border-color:color-mix(in srgb,var(--hero-brand) 45%,#243042)}.blog-separator{margin:3rem 0}@media (prefers-reduced-motion: reduce){.btn-hero,.hero-jaracoder:before,.hero-jaracoder:after,.hero-jaracoder .hero-decor{transition:none!important;animation:none!important}.btn-hero:hover{transform:none!important}}.cursos-grid-section{padding:4rem 1.5rem;background:var(--jc-soft-gray, linear-gradient(135deg,#f7f8fb,#eef2f7))}@media (prefers-color-scheme: dark){.cursos-grid-section{background:var(--jc-soft-gray, linear-gradient(135deg,#0e1524,#121a2b))}}.cursos-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;max-width:var(--jc-container);margin:0 auto}.curso-card{background:var(--jc-bg);border:1px solid var(--jc-border);border-radius:var(--jc-radius);box-shadow:var(--jc-shadow-sm);padding:1.5rem;text-align:center;transition:transform .2s ease,box-shadow .2s ease}.curso-card:hover{transform:translateY(-4px);box-shadow:var(--jc-shadow)}.curso-img{border-radius:10px;margin-bottom:1rem}.curso-title{font-size:1.25rem;font-weight:800;color:var(--jc-text);margin-bottom:1rem}.btn-curso{display:inline-block;padding:.6rem 1.4rem;background-color:var(--jc-brand);color:#fff;font-weight:700;border-radius:10px;text-decoration:none;transition:transform .15s ease,box-shadow .2s ease,background-color .2s ease;box-shadow:0 8px 20px #ff6b0038}.btn-curso:hover{background-color:var(--jc-brand-600);transform:translateY(-1px);box-shadow:0 12px 24px #ff6b0047}.btn-curso:focus-visible{outline:none;box-shadow:var(--jc-focus)}.tools-section{padding:3.5rem 1.25rem;background-color:var(--jc-surface-alt)}.tools-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:2rem;max-width:var(--jc-container);margin:2rem auto 0}.tool-card{background:var(--jc-surface);border-radius:var(--jc-radius-lg);padding:1.5rem;text-align:center;box-shadow:var(--jc-shadow-sm);transition:transform .25s ease,box-shadow .25s ease;text-decoration:none;color:inherit}.tool-card:hover{transform:translateY(-4px);box-shadow:var(--jc-shadow-md)}.tool-icon img{width:48px;height:48px;margin-bottom:1rem}.tool-title{font-size:1.25rem;font-weight:600;margin-bottom:.5rem;color:var(--jc-text-strong)}.tool-description{font-size:.95rem;color:var(--jc-text-muted)}.tool-badge{margin-top:.75rem}.badge{display:inline-block;padding:.35em .75em;font-size:.85rem;font-weight:600;border-radius:var(--jc-radius-sm);color:#fff;line-height:1;transition:transform .2s ease}.badge-success{background-color:var(--jc-muted);box-shadow:var(--jc-shadow-xs);border-radius:12px}.badge-success:hover{transform:scale(1.05)}.badge-warning{background-color:var(--jc-warning);box-shadow:var(--jc-shadow-xs)}.badge-warning:hover{transform:scale(1.05)}.testimonials-section{padding:3.5rem 1.25rem;background:var(--jc-surface)}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:2rem}.testimonial{background:var(--jc-surface-alt);padding:1.5rem;border-radius:var(--jc-radius-md);font-style:italic;position:relative;box-shadow:var(--jc-shadow-sm)}.testimonial p{margin-bottom:1rem}.testimonial footer{font-style:normal;font-weight:600;color:var(--jc-text-strong)}.course-guide-section{text-align:center;background:var(--jc-surface-alt);padding:3rem 1.25rem}.course-guide-section h2{font-size:1.8rem;margin-bottom:1rem;color:var(--jc-text-strong)}.course-guide-section p{font-size:1.05rem;margin-bottom:1.5rem;color:var(--jc-text)}.jaracoder-btn{display:inline-block;background-color:var(--jc-accent);color:#fff;text-decoration:none;padding:.7rem 1.5rem;border-radius:var(--jc-radius-md);font-weight:600;transition:background-color .25s ease,transform .2s ease;box-shadow:var(--jc-shadow-xs)}.jaracoder-btn:hover{background-color:color-mix(in srgb,var(--jc-accent) 85%,black);transform:translateY(-2px)}.jaracoder-btn:active{transform:translateY(0)}@media (prefers-color-scheme: dark){.tools-section,.course-guide-section{background-color:var(--jc-surface-dark)}.tool-card{background:var(--jc-surface);box-shadow:var(--jc-shadow-dark)}.testimonials-section{background:var(--jc-surface)}.testimonial{background:var(--jc-surface-dark);box-shadow:var(--jc-shadow-dark)}}.mobile-apps-section{background-color:var(--jc-surface);text-align:center;padding:3rem 1rem}.mobile-apps-section h2{font-size:2rem;margin-bottom:1rem;color:var(--jc-text-strong, var(--jc-text))}.mobile-apps-section p{font-size:1.1rem;color:var(--jc-text);opacity:.9;max-width:700px;margin:0 auto 2rem}.app-buttons{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem}.app-btn{display:inline-flex;align-items:center;gap:.5rem;background-color:var(--jc-link);color:#fff;padding:.75rem 1.25rem;border-radius:var(--jc-radius-md, 12px);font-weight:700;text-decoration:none;transition:transform .15s ease,box-shadow .2s ease,background-color .2s ease;box-shadow:0 10px 20px color-mix(in oklab,var(--jc-link) 25%,transparent)}.app-btn:hover{background-color:var(--jc-link-hover);transform:translateY(-1px);box-shadow:0 14px 24px color-mix(in oklab,var(--jc-link) 32%,transparent)}.app-btn:focus-visible{outline:none;box-shadow:var(--jc-focus)}.app-btn img{width:24px;height:24px}.testimonials-section{background-color:var(--jc-surface-alt);padding:3rem 1rem;text-align:center}.testimonials-wrapper h2{font-size:2rem;margin-bottom:2rem;color:var(--jc-text-strong, var(--jc-text))}.testimonials-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem;max-width:1000px;margin:0 auto}.testimonial-card{background-color:var(--jc-surface);border-radius:var(--jc-radius-lg, 16px);padding:1.5rem;box-shadow:var(--jc-shadow-sm);max-width:300px;text-align:left;transition:transform .2s ease,box-shadow .2s ease}.testimonial-card:hover{transform:translateY(-3px);box-shadow:var(--jc-shadow)}.testimonial-text{font-size:1rem;color:var(--jc-text);margin-bottom:1rem;opacity:.92}.testimonial-author{font-size:.9rem;font-weight:700;color:var(--jc-text-muted, var(--jc-muted))}.faq-section{background-color:var(--jc-surface);padding:3rem 1rem}.faq-wrapper{max-width:800px;margin:0 auto;text-align:left}.faq-wrapper h2{text-align:center;font-size:2rem;margin-bottom:2rem;color:var(--jc-text-strong, var(--jc-text))}.faq-list{display:flex;flex-direction:column;gap:1rem}.faq-item{border:1px solid var(--jc-border);border-radius:var(--jc-radius-md, 12px);padding:1rem;background-color:var(--jc-surface-alt);transition:background-color .25s ease,border-color .25s ease,box-shadow .25s ease;box-shadow:var(--jc-shadow-xs, 0 2px 6px rgba(0,0,0,.06))}.faq-item[open]{background-color:color-mix(in oklab,var(--jc-brand) 6%,var(--jc-surface-alt));border-color:color-mix(in oklab,var(--jc-brand) 22%,var(--jc-border));box-shadow:var(--jc-shadow-sm)}.faq-item summary{font-weight:700;cursor:pointer;font-size:1.1rem;color:var(--jc-text);list-style:none;display:flex;align-items:center;gap:.5rem}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary::marker{content:""}.faq-item summary:after{content:"+";margin-left:auto;font-weight:900;color:var(--jc-text-muted, var(--jc-muted));transition:transform .2s ease,color .2s ease}.faq-item[open] summary:after{content:"\2212";color:var(--jc-brand)}.faq-item p{margin-top:.5rem;color:var(--jc-text);opacity:.9}.faq-item:focus-within{box-shadow:var(--jc-focus)}@media (prefers-color-scheme: dark){.app-btn{box-shadow:0 10px 22px color-mix(in oklab,var(--jc-link) 22%,transparent)}.testimonial-card{box-shadow:var(--jc-shadow-dark, 0 6px 18px rgba(0,0,0,.35))}.faq-item{box-shadow:var(--jc-shadow-dark, 0 6px 18px rgba(0,0,0,.28))}}.section-csharp{--cs-surface: var(--jc-bg);--cs-text: var(--jc-text);--cs-muted: color-mix(in srgb, var(--jc-text) 70%, transparent);--cs-accent: var(--jc-accent, #d4a016);--cs-ring: var(--jc-focus);--cs-shadow: var(--jc-shadow);--cs-shadow-sm: var(--jc-shadow-sm, 0 2px 4px rgba(15,23,42,.05));--cs-radius: var(--jc-radius, 12px);--cs-radius-lg: var(--jc-radius-lg, 16px);--cs-grid: rgba(15,23,42,.04);position:relative;padding:clamp(2.5rem,4vw,4rem) 1rem;background:linear-gradient(180deg,color-mix(in srgb,var(--cs-accent) 3%,transparent) 0%,transparent 100%),var(--cs-surface);color:var(--cs-text)}html.dark .section-csharp{--cs-surface: #0b1220;--cs-text: var(--jc-text);--cs-muted: #94a3b8;--cs-grid: rgba(148,163,184,.06);background:linear-gradient(180deg,color-mix(in srgb,var(--cs-accent) 6%,transparent) 0%,transparent 100%),var(--cs-surface)}.section-csharp:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(0deg,var(--cs-grid) 1px,transparent 1px),linear-gradient(90deg,var(--cs-grid) 1px,transparent 1px);background-size:22px 22px;mask-image:radial-gradient(80% 60% at 50% 0%,#000 50%,transparent 100%)}.section-csharp .logo-csharp{max-width:clamp(90px,9vw,120px);height:auto;transition:transform .3s ease,opacity .3s ease,filter .3s ease;opacity:.96;animation:cs-fadeInUp .6s ease-in-out both;background:transparent;filter:drop-shadow(0 2px 6px rgba(0,0,0,.08))}.section-csharp .logo-csharp:hover{transform:translateY(-2px) scale(1.02)}html.dark .section-csharp .logo-csharp{filter:drop-shadow(0 2px 6px rgba(255,255,255,.08));opacity:1}.cta-buttons .btn-hero:hover{color:#000}@keyframes cs-fadeInUp{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}.section-csharp .section-title{font-size:clamp(1.6rem,2.2vw + 1rem,2.25rem);font-weight:800;font-family:Poppins,system-ui,sans-serif;color:var(--cs-text);text-align:center;margin:1.2rem 0 .75rem;line-height:1.25;position:relative;display:inline-block;padding-bottom:.35rem}.section-csharp .section-title:after{content:"";display:block;width:132px;height:6px;margin:.6rem auto 0;border-radius:999px;background:linear-gradient(90deg,color-mix(in srgb,var(--cs-accent) 78%,#fff 0%) 0%,var(--cs-accent) 55%,color-mix(in srgb,var(--cs-accent) 55%,transparent) 100%);box-shadow:0 4px 12px color-mix(in srgb,var(--cs-accent) 30%,transparent)}.section-title{font-size:clamp(1.6rem,2.2vw + 1rem,2.25rem);font-weight:800;font-family:Poppins,system-ui,sans-serif;color:var(--cs-text);text-align:center;margin:1.2rem 0 .75rem;line-height:1.25;position:relative;padding-bottom:.35rem}.section-title:after{content:"";display:block;width:132px;height:6px;margin:.6rem auto 0;border-radius:999px;background:linear-gradient(90deg,color-mix(in srgb,rgb(212,160,22) 78%,#fff 0%),#d4a016 55%,color-mix(in srgb,rgb(212,160,22) 55%,transparent))!important;box-shadow:0 4px 12px color-mix(in srgb,rgb(212,160,22) 30%,transparent)!important}.section-csharp .section-description{font-size:clamp(1rem,.5vw + .95rem,1.125rem);font-weight:400;font-family:Poppins,system-ui,sans-serif;color:var(--cs-text);opacity:.9;max-width:720px;margin:0 auto 1.75rem;text-align:center;line-height:1.65}.section-csharp .screenshots{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;margin-top:1.5rem}.section-csharp .screenshot{flex:0 1 140px;max-width:160px;border-radius:var(--cs-radius-lg);overflow:hidden;box-shadow:var(--cs-shadow-sm);transition:transform .25s ease,box-shadow .25s ease,filter .25s ease;background:var(--cs-surface);outline:1px solid color-mix(in srgb,var(--cs-accent) 12%,transparent)}.section-csharp .screenshot img{display:block;width:100%;height:auto}.section-csharp .screenshot:hover{transform:translateY(-3px) scale(1.03);box-shadow:var(--cs-shadow);filter:saturate(1.02)}.csharp-flex-container{display:flex;flex-direction:column;gap:clamp(1.25rem,2.5vw,2rem);align-items:center;justify-content:center}@media (min-width: 768px){.csharp-flex-container{flex-direction:row;align-items:flex-start}}.csharp-text-content{flex:1;text-align:center}@media (min-width: 768px){.csharp-text-content{text-align:center;padding-right:2rem}}.section-csharp :where(a,button).cs-focusable{border-radius:10px}.section-csharp :where(a,button).cs-focusable:focus-visible{outline:none;box-shadow:var(--cs-ring)}@media (prefers-reduced-motion: reduce){.section-csharp .logo-csharp,.section-csharp .screenshot{transition:none!important}.section-csharp .screenshot:hover{transform:none!important}}.section-generic{--sec-text: var(--jc-text);--sec-muted: color-mix(in srgb, var(--jc-text) 70%, transparent);--sec-surface: var(--jc-bg);--sec-ring: var(--jc-focus);--sec-shadow: var(--jc-shadow);--sec-shadow-sm: var(--jc-shadow-sm, 0 2px 4px rgba(15,23,42,.05));--sec-radius: var(--jc-radius, 12px);--sec-radius-md: var(--jc-radius-md, 12px)}.logo-csharp{max-width:clamp(120px,10vw,180px);height:auto;transition:transform .25s ease,filter .25s ease;filter:drop-shadow(0 2px 6px rgba(0,0,0,.08))}.logo-csharp:hover{transform:translateY(-2px) scale(1.02)}.section-title{font-size:clamp(1.5rem,2.2vw + .6rem,2rem);font-weight:800;color:var(--jc-text);margin:0 0 .75rem;line-height:1.25;letter-spacing:-.015em;text-wrap:balance;text-align:center}.text-center{text-align:center}.section-description{font-size:clamp(1rem,.4vw + .9rem,1.0625rem);line-height:1.65;color:var(--jc-text);opacity:.9;margin:0 auto 2rem;max-width:70ch}.csharp-media-content{flex:1;display:flex;flex-direction:column;align-items:center;gap:.75rem}.screenshots{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.screenshot{width:min(46%,160px);max-width:160px;border-radius:var(--jc-radius-md, 12px);overflow:hidden;background:var(--jc-bg);box-shadow:var(--jc-shadow-sm);outline:1px solid color-mix(in srgb,var(--jc-text) 10%,transparent);transition:transform .22s ease,box-shadow .22s ease,filter .22s ease}.screenshot img{display:block;width:100%;height:auto}.screenshot:hover{transform:translateY(-3px) scale(1.02);box-shadow:var(--jc-shadow);filter:saturate(1.02)}.web-preview{margin-top:1.25rem;text-align:center}.web-preview-img{width:100%;max-width:480px;border-radius:var(--jc-radius-md, 12px);box-shadow:var(--jc-shadow);outline:1px solid color-mix(in srgb,var(--jc-text) 10%,transparent)}.cta-buttons{display:flex;flex-direction:column;align-items:center;gap:.9rem;margin-top:1.25rem}.google-play-btn img{height:48px;transition:transform .25s ease,filter .25s ease;will-change:transform}.google-play-btn:hover img{transform:translateY(-1px) scale(1.03);filter:saturate(1.05)}.google-play-btn{display:inline-block;width:162px;height:48px;background:url("/dist/assets/button-google-play-NORRAW7S.svg") no-repeat center center;background-size:contain;text-indent:-9999px;overflow:hidden;border-radius:6px;transition:transform .2s ease}.google-play-btn:hover{transform:translateY(-2px)}.section-generic :where(a,button).is-focusable{border-radius:10px}.section-generic :where(a,button).is-focusable:focus-visible{outline:none;box-shadow:var(--jc-focus)}html.dark .screenshot,html.dark .web-preview-img{box-shadow:var(--jc-shadow, 0 6px 18px rgba(0,0,0,.35));outline-color:color-mix(in srgb,var(--jc-text) 18%,transparent)}@media (prefers-reduced-motion: reduce){.logo-csharp,.screenshot,.google-play-btn img{transition:none!important}}.herramientas-title{font-size:2rem;font-weight:800;text-align:center;margin-bottom:1.25rem;color:var(--jc-text)}.herramientas-description{max-width:720px;margin:0 auto 2.5rem;font-size:1.05rem;color:var(--jc-muted);line-height:1.6;text-align:center}.tools-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:2rem;margin-top:2rem}.tool-card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:2rem 1.5rem;border-radius:16px;background:var(--jc-bg);box-shadow:0 4px 14px #0000000f;transition:transform .25s ease,box-shadow .25s ease}.tool-card:hover{transform:translateY(-6px);box-shadow:0 8px 22px #0000001f}.tool-card-img{margin-bottom:1rem;width:96px;height:96px;object-fit:contain}.tool-card-title{font-size:1.25rem;font-weight:700;margin-bottom:.5rem;color:var(--jc-text)}.tool-card-description{font-size:1rem;color:var(--jc-muted);line-height:1.6;margin-bottom:1.25rem}.tool-card-btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border-radius:10px;background:#fff;color:var(--jc-text);font-weight:700;font-size:.95rem;text-decoration:none;box-shadow:0 4px 12px #00000014;transition:all .25s ease}.tool-card-btn:hover{background:var(--jc-brand);color:#fff;transform:translateY(-2px);box-shadow:0 6px 18px #00000026}.tool-card-btn:focus-visible{outline:2px solid var(--jc-brand);outline-offset:3px}.newsletter-section{background:radial-gradient(1200px 400px at 10% -10%,color-mix(in srgb,var(--jc-brand) 10%,transparent),transparent 60%),radial-gradient(900px 300px at 90% -20%,color-mix(in srgb,var(--jc-brand) 10%,transparent),transparent 55%),var(--jc-surface-alt);padding:clamp(2.5rem,4vw + 1rem,5rem) 1rem;display:flex;justify-content:center}.newsletter-box{background:linear-gradient(180deg,color-mix(in srgb,var(--jc-bg) 92%,transparent),color-mix(in srgb,var(--jc-bg) 86%,transparent));border:1px solid var(--jc-border);border-radius:var(--jc-radius);padding:clamp(1.5rem,2.5vw + 1rem,3rem);max-width:780px;width:100%;text-align:center;box-shadow:var(--jc-shadow);backdrop-filter:saturate(120%) blur(4px)}.newsletter-eyebrow{display:inline-block;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--jc-muted);background:color-mix(in srgb,var(--jc-brand) 10%,transparent);padding:.35rem .6rem;border-radius:999px;margin-bottom:.9rem}.newsletter-title{font-size:clamp(1.6rem,1.2rem + 1.5vw,2.1rem);margin:.25rem 0 1rem;color:var(--jc-text);font-weight:800;line-height:1.15}.newsletter-description{font-size:1.05rem;color:var(--jc-muted);margin-bottom:1.6rem;line-height:1.6}.newsletter-form{display:grid;grid-template-columns:1fr;gap:.9rem;justify-items:center}@media (min-width: 640px){.newsletter-form{grid-template-columns:minmax(220px,1fr) auto;justify-content:center;align-items:center}}.newsletter-input{width:min(100%,360px);padding:.95rem 1.1rem;font-size:1rem;color:var(--jc-text);background:color-mix(in srgb,var(--jc-bg) 96%,transparent);border:1.5px solid var(--jc-border);border-radius:12px;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease,transform .08s ease;outline:none}.newsletter-input::placeholder{color:color-mix(in srgb,var(--jc-muted) 85%,var(--jc-text) 15%)}.newsletter-input:hover{border-color:color-mix(in srgb,var(--jc-border) 60%,var(--jc-text) 40%)}.newsletter-input:focus{border-color:var(--jc-brand);box-shadow:var(--jc-focus);background:color-mix(in srgb,var(--jc-bg) 98%,transparent)}.newsletter-input:active{transform:translateY(1px)}.newsletter-button{appearance:none;border:0;padding:.95rem 1.2rem;font-weight:700;font-size:1rem;border-radius:12px;background:linear-gradient(180deg,var(--jc-brand),var(--jc-brand-2));color:var(--jc-brand-contrast);box-shadow:0 8px 20px color-mix(in srgb,var(--jc-brand) 30%,transparent);cursor:pointer;transition:transform .08s ease,box-shadow .2s ease,filter .2s ease;min-width:180px}.newsletter-button:hover{filter:brightness(1.05)}.newsletter-button:active{transform:translateY(1px)}.newsletter-button:focus-visible{outline:none;box-shadow:var(--jc-glow)}.newsletter-button[disabled]{opacity:.6;cursor:not-allowed;filter:saturate(.7)}.newsletter-consent{margin-top:.9rem;font-size:.85rem;color:var(--jc-muted)}.newsletter-consent a{color:var(--jc-brand);text-decoration:underline;text-underline-offset:2px}.newsletter-feedback{margin-top:1rem;font-size:.95rem;border-radius:10px;padding:.75rem 1rem;display:none}.newsletter-feedback.show{display:block}.newsletter-feedback.success{background:color-mix(in srgb,#10b981 18%,transparent);color:color-mix(in srgb,#065f46 85%,white);border:1px solid color-mix(in srgb,#10b981 32%,transparent)}.newsletter-feedback.error{background:color-mix(in srgb,#ef4444 18%,transparent);color:color-mix(in srgb,#7f1d1d 85%,white);border:1px solid color-mix(in srgb,#ef4444 32%,transparent)}@media (prefers-reduced-motion: reduce){.newsletter-input,.newsletter-button{transition:none}}@media (max-width: 360px){.newsletter-button,.newsletter-input{width:100%}}.section-java-container{display:flex;flex-direction:column;gap:2rem}@media (min-width: 768px){.section-java-container{flex-direction:row;align-items:center;justify-content:space-between}}.section-java-left,.section-java-right{flex:1;text-align:center}.section-java-left{padding:0 1.5rem}.section-java-right{padding-left:1.5rem}.logo-java{max-width:180px;margin-bottom:1rem}.web-preview .web-screenshot,.web-preview-img{max-width:100%;border-radius:var(--jc-radius-md, 12px);box-shadow:var(--jc-shadow, 0 4px 16px rgba(15,23,42,.06))}@media (prefers-color-scheme: dark){.newsletter-section{background:color-mix(in srgb,var(--jc-bg) 85%,var(--jc-text) 15%)}.newsletter-box{box-shadow:var(--jc-shadow, 0 6px 18px rgba(0,0,0,.35))}.screenshot,.web-preview .web-screenshot,.web-preview-img{box-shadow:var(--jc-shadow, 0 6px 18px rgba(0,0,0,.28))}}.section-python-container{display:flex;flex-direction:column;gap:2rem}@media (min-width: 768px){.section-python-container{flex-direction:row;align-items:center;justify-content:space-between}}.section-python-left,.section-python-right{flex:1;text-align:center}.section-python-left{padding:0 1.5rem}.section-python-right{padding-left:1.5rem}.logo-python{max-width:180px;margin-bottom:1rem}.screenshots{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;margin-bottom:1.5rem}.screenshot{width:140px;border-radius:var(--jc-radius-md, 12px);box-shadow:var(--jc-shadow-sm, 0 2px 6px rgba(0,0,0,.1));overflow:hidden}.web-preview .web-screenshot{max-width:100%;border-radius:var(--jc-radius-md, 12px);box-shadow:var(--jc-shadow, 0 4px 16px rgba(15,23,42,.06))}@media (prefers-color-scheme: dark){.screenshot,.web-preview .web-screenshot{box-shadow:var(--jc-shadow-dark, 0 6px 18px rgba(0,0,0,.32))}}.breadcrumb-wrapper{background-color:var(--jc-surface-alt, #f8f9fa);padding:1rem .75rem;border-bottom:1px solid var(--jc-border);font-size:.95rem;font-family:Poppins,system-ui,sans-serif}.breadcrumb{list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:.25rem;margin:0;padding:0;background-color:transparent}.breadcrumb-item+.breadcrumb-item:before{content:"\203a";padding:0 .5rem;color:var(--jc-text);opacity:.6;font-weight:600}.breadcrumb a{color:var(--jc-text);text-decoration:none;transition:color .2s ease,opacity .2s ease}.breadcrumb a:hover{color:var(--jc-brand);text-decoration:none}.breadcrumb-item.active,.breadcrumb-item[aria-current=page]{color:var(--jc-text);font-weight:700;opacity:.9}@media (max-width: 576px){.breadcrumb-wrapper{padding:.6rem .5rem}.breadcrumb{overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none}.breadcrumb::-webkit-scrollbar{display:none}}@media (prefers-color-scheme: dark){.breadcrumb-wrapper{background-color:color-mix(in srgb,var(--jc-bg) 88%,var(--jc-text) 12%)}.breadcrumb-item+.breadcrumb-item:before{color:var(--jc-text);opacity:.5}}.blog-hero{padding:60px 20px;text-align:center;background:var(--jc-surface-alt, #f5f7fb);border-bottom:1px solid var(--jc-border)}.blog-hero h1{font-size:2.5rem;margin-bottom:.5rem;color:var(--jc-text);letter-spacing:-.02em;font-weight:800}.blog-hero p{font-size:1.1rem;color:var(--jc-text);opacity:.85;max-width:760px;margin:0 auto}.blog-grid-section{padding:40px 20px}.blog-grid{display:flex;flex-wrap:wrap;gap:30px;justify-content:center}.blog-card{background:var(--jc-bg);border-radius:14px;box-shadow:var(--jc-shadow);border:none;overflow:clip;width:100%;max-width:360px;display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.blog-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px #0f172a1f}.blog-card-link{color:inherit;text-decoration:none;display:block}.blog-card-link:focus-visible{outline:none;box-shadow:var(--jc-focus)}.blog-card-img{width:100%;aspect-ratio:16 / 9;object-fit:cover;background:var(--jc-skeleton, #e9eef5)}.blog-card-title{font-size:1.15rem;padding:14px 20px 6px;font-weight:800;color:var(--jc-text);line-height:1.35;letter-spacing:-.01em}.blog-card-excerpt{padding:0 20px 18px;color:var(--jc-text);opacity:.82;font-size:.95rem;margin:0}.blog-search-form{display:grid;grid-template-columns:1fr auto;gap:.6rem;width:100%;max-width:900px;margin:2rem auto;background:var(--jc-bg);padding:.6rem;border:1px solid var(--jc-border);border-radius:14px;box-shadow:var(--jc-shadow);z-index:1000}.blog-search-form input[type=text]{width:100%;padding:.95rem 1.05rem;font-size:1.05rem;line-height:1.2;color:var(--jc-text);background:var(--jc-bg);border:1.5px solid var(--jc-border);border-radius:10px;outline:none;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.blog-search-form input[type=text]::placeholder{color:var(--jc-muted)}.blog-search-form input[type=text]:hover{border-color:color-mix(in srgb,var(--jc-border) 75%,var(--jc-text) 25%)}.blog-search-form input[type=text]:focus{border-color:var(--jc-brand);box-shadow:var(--jc-focus)}.blog-search-form button[type=submit]{padding:0 1.2rem;min-width:140px;font-size:1rem;color:#fff;background:var(--jc-brand);border:0;border-radius:10px;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease,background-color .2s ease;box-shadow:none;display:inline-flex;align-items:center;justify-content:center;gap:.45rem}.blog-search-form button[type=submit]:hover{background:var(--jc-brand-600);transform:translateY(-1px);box-shadow:0 10px 22px #ff6b004d}.blog-search-form button[type=submit]:active{transform:translateY(0);box-shadow:0 4px 12px #ff6b0040}.blog-search-form button[type=submit]:focus-visible{outline:none;box-shadow:var(--jc-focus)}.blog-search-form button[disabled],.blog-search-form input[disabled]{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.blog-search-form{max-width:100%}}@media (max-width: 520px){.blog-search-form{grid-template-columns:1fr;gap:.5rem;padding:.5rem}.blog-search-form button[type=submit]{width:100%;min-height:46px}}@media (prefers-reduced-motion: reduce){.blog-card,.blog-card *,.blog-search-form *,.blog-search-form *:before,.blog-search-form *:after{transition:none!important}}@media (prefers-color-scheme: dark){.blog-hero{background:color-mix(in srgb,var(--jc-bg) 88%,var(--jc-text) 12%)}.blog-card{box-shadow:0 6px 18px #00000052}.blog-card:hover{box-shadow:0 14px 28px #0000006b}.blog-card-img{background:#121a2a}}.category-tags-filter{list-style:none;padding:0;margin:1.5rem 0;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.category-tag-filter{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem .9rem;background:color-mix(in srgb,var(--jc-bg) 85%,var(--jc-text) 15%);border:1px solid var(--jc-border);color:var(--jc-text);border-radius:999px;text-decoration:none;font-size:.92rem;font-weight:600;transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .15s ease}.category-tag-filter:hover{background:color-mix(in srgb,var(--jc-bg) 75%,var(--jc-text) 25%);transform:translateY(-1px)}.category-tag-filter:focus-visible{outline:none;box-shadow:var(--jc-focus)}.post-card-categories{margin-top:.5rem;margin-bottom:0;display:flex;flex-wrap:wrap;gap:.4rem}.category-tag-card{display:inline-flex;align-items:center;padding:.25rem .6rem;background:#fff6f0;color:#b45309;border:1px solid #ffd7bf;border-radius:10px;font-size:.78rem;font-weight:700;text-decoration:none;transition:background-color .2s ease,border-color .2s ease,transform .15s ease}.category-tag-card:hover{background:#ffefe3;transform:translateY(-1px)}.pagination-section{margin:40px 0;text-align:center}.pagination-container ul.pagination{list-style:none;padding:0;display:inline-flex;gap:.5rem;flex-wrap:wrap;justify-content:center;align-items:center}.pagination li{margin:0}.pagination a{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 .8rem;border-radius:10px;background:var(--jc-bg);color:var(--jc-text);border:1px solid var(--jc-border);text-decoration:none;transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .15s ease,box-shadow .2s ease;box-shadow:var(--jc-shadow)}.pagination a:hover{background:color-mix(in srgb,var(--jc-bg) 80%,var(--jc-text) 20%);transform:translateY(-1px)}.pagination a:focus-visible{outline:none;box-shadow:var(--jc-focus)}.pagination .active a{background:var(--jc-brand);color:#fff;border-color:var(--jc-brand)}.related-posts{margin:4rem auto;max-width:1200px;padding:0 1rem;--jc-radius: 14px;--jc-pad: clamp(1rem,2.2vw,1.4rem);--jc-gap: clamp(.75rem,1.5vw,1rem);--jc-gap-lg: clamp(1rem,2vw,1.25rem);background:#fff;border:1px solid var(--jc-border, #e5e7eb);border-radius:var(--jc-radius);padding:var(--jc-pad);box-shadow:0 10px 28px #0f172a14;margin-inline:auto}.related-posts-header h3{font-size:1.75rem;margin-bottom:2rem;font-weight:800;color:var(--jc-text)}.related-posts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.related-post-card{margin:0 auto}@media (min-width: 768px){.blog-grid{justify-content:space-between}}@media (min-width: 992px){.blog-grid{justify-content:center}.blog-card{flex:0 1 calc(33.333% - 20px)}}@media (min-width: 768px) and (max-width: 991px){.blog-card{flex:0 1 calc(50% - 20px)}}@media (max-width: 767px){.blog-card{flex:0 1 100%}}@media (prefers-color-scheme: dark){.category-tag-filter{background:color-mix(in srgb,var(--jc-bg) 85%,var(--jc-text) 15%);border-color:var(--jc-border)}.category-tag-filter:hover{background:color-mix(in srgb,var(--jc-bg) 72%,var(--jc-text) 28%)}.category-tag-card{background:#2a1a10;color:#ffd1a8;border-color:#5a3a20}.category-tag-card:hover{background:#3a2416}.pagination a{box-shadow:0 6px 18px #00000052}}.hero-curso-claro{background:var(--jc-bg);color:var(--jc-text);padding:5rem 1.5rem;text-align:center;border-bottom:1px solid var(--jc-border)}.highlight-csharp{color:#007acc;font-weight:800}.btn-hero-dark{background-color:var(--jc-text);color:#fff;padding:.85rem 1.75rem;border-radius:10px;font-weight:700;text-decoration:none;transition:background-color .25s ease,box-shadow .2s ease,transform .15s ease;box-shadow:var(--jc-shadow)}.btn-hero-dark:hover{background-color:color-mix(in srgb,var(--jc-text) 85%,#ffffff 15%);transform:translateY(-1px)}.btn-hero-dark:focus-visible{outline:none;box-shadow:var(--jc-focus)}.curso-descripcion{padding:4rem 1rem;background:color-mix(in srgb,var(--jc-bg) 92%,var(--jc-text) 8%)}.curso-descripcion .container{max-width:1200px;margin:auto}.descripcion-wrapper{display:flex;flex-wrap:wrap;align-items:center;gap:2rem}.descripcion-texto{flex:1 1 500px}.descripcion-texto h2{font-size:2rem;margin-bottom:1rem;color:var(--jc-text)}.descripcion-texto p{font-size:1.1rem;color:color-mix(in srgb,var(--jc-text) 82%,#ffffff 18%);margin-bottom:1rem}.lista-detallada{list-style:none;padding:0;margin:0}.lista-detallada li{margin-bottom:.75rem;padding-left:1.5rem;position:relative;color:color-mix(in srgb,var(--jc-text) 78%,#ffffff 22%)}.lista-detallada li:before{content:"\2714";position:absolute;left:0;top:.1rem;color:#007acc;font-weight:800}.descripcion-imagen{flex:1 1 400px;text-align:center}.descripcion-imagen img{max-width:100%;height:auto;border-radius:12px;box-shadow:var(--jc-shadow)}.curso-apps{background:var(--jc-bg);padding:4rem 1rem}.apps-wrapper{display:flex;flex-wrap:wrap;align-items:center;gap:2rem;max-width:1200px;margin:auto}.apps-texto{flex:1 1 500px}.apps-texto h2{font-size:2rem;margin-bottom:1rem;color:var(--jc-text)}.apps-texto p{font-size:1.1rem;color:color-mix(in srgb,var(--jc-text) 80%,#ffffff 20%);margin-bottom:1.5rem}.apps-botones{display:flex;gap:1rem;flex-wrap:wrap}.btn-store{display:inline-block;position:relative;transition:transform .2s ease}.btn-store img{height:50px;width:auto;filter:drop-shadow(0 4px 10px rgba(0,0,0,.08))}.btn-store:hover{transform:scale(1.05)}.btn-store:focus-visible{outline:none;box-shadow:var(--jc-focus);border-radius:8px}.btn-store.soon.disabled{opacity:.6;pointer-events:none;position:relative}.soon-label{position:absolute;bottom:2px;left:4px;font-size:.65rem;color:#ff3b30;font-weight:700}.apps-imagen{flex:1 1 300px;text-align:center}.apps-imagen img{max-width:180px;height:auto;border-radius:16px;box-shadow:var(--jc-shadow)}.curso-web{background:color-mix(in srgb,var(--jc-bg) 94%,var(--jc-text) 6%);padding:4rem 1rem}.web-wrapper{display:flex;flex-wrap:wrap;align-items:center;gap:2rem;max-width:1200px;margin:auto}.web-texto{flex:1 1 500px}.web-texto h2{font-size:2rem;color:var(--jc-text);margin-bottom:1rem}.web-texto p{font-size:1.1rem;color:color-mix(in srgb,var(--jc-text) 78%,#ffffff 22%);margin-bottom:1.5rem}.web-enlaces{display:flex;gap:1rem;flex-wrap:wrap}.btn-web{background:var(--jc-text);color:#fff;padding:.8rem 1.5rem;font-weight:700;border-radius:10px;text-decoration:none;transition:background-color .25s ease,transform .15s ease,box-shadow .2s ease;box-shadow:var(--jc-shadow)}.btn-web:hover{background:color-mix(in srgb,var(--jc-text) 85%,#ffffff 15%);transform:translateY(-1px)}.btn-web:focus-visible{outline:none;box-shadow:var(--jc-focus)}.btn-web.secondary{background:color-mix(in srgb,var(--jc-text) 65%,#ffffff 35%)}.btn-web.secondary:hover{background:color-mix(in srgb,var(--jc-text) 75%,#ffffff 25%)}.web-imagen{flex:1 1 400px;text-align:center}.web-imagen img{max-width:100%;height:auto;border-radius:12px;box-shadow:var(--jc-shadow)}.curso-caracteristicas{background:var(--jc-bg);padding:4rem 1rem}.curso-caracteristicas h2{font-size:2rem;margin-bottom:2.5rem;color:var(--jc-text)}.caracteristicas-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.caracteristica-item{background:color-mix(in srgb,var(--jc-bg) 92%,var(--jc-text) 8%);border:1px solid var(--jc-border);border-radius:14px;padding:2rem 1.5rem;text-align:center;box-shadow:var(--jc-shadow);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.caracteristica-item:hover{transform:translateY(-4px);box-shadow:0 12px 28px #0f172a1f;border-color:color-mix(in srgb,var(--jc-border) 60%,var(--jc-text) 40%)}.caracteristica-item i{font-size:2rem;color:#5b0099;margin-bottom:1rem}.caracteristica-item h3{font-size:1.25rem;margin-bottom:.5rem;color:var(--jc-text)}.caracteristica-item p{font-size:1rem;color:color-mix(in srgb,var(--jc-text) 78%,#ffffff 22%);line-height:1.6}.curso-testimonios{background:color-mix(in srgb,var(--jc-bg) 98%,var(--jc-text) 2%);padding:4rem 1rem}.testimonios-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:2rem}.testimonio-item{background:var(--jc-bg);border-left:5px solid #5b0099;padding:1.5rem;border-radius:10px;box-shadow:var(--jc-shadow)}.comentario{font-style:italic;font-size:1.1rem;margin-bottom:.75rem;color:var(--jc-text)}.autor{font-weight:800;color:color-mix(in srgb,var(--jc-text) 70%,#ffffff 30%)}.curso-faq{background:var(--jc-bg);padding:4rem 1rem}.faq-list{margin-top:2rem;max-width:900px;margin-inline:auto}.faq-item{margin-bottom:1.75rem}.faq-item h3{font-size:1.2rem;margin-bottom:.5rem;color:#5b0099;font-weight:800}.faq-item p{font-size:1rem;color:color-mix(in srgb,var(--jc-text) 78%,#ffffff 22%);line-height:1.6}.curso-cta-final{background:linear-gradient(135deg,#5b0099,#a029d1);color:#fff;padding:4rem 1.5rem;text-align:center;border-top-left-radius:32px;border-top-right-radius:32px;box-shadow:var(--jc-shadow)}.curso-cta-final h2{font-size:2rem;margin-bottom:1rem}.curso-cta-final p{font-size:1.2rem;margin-bottom:2rem}.btn-cta-final{display:inline-block;background-color:#ffdd57;color:#1a1a1a;font-weight:800;font-size:1rem;padding:.85rem 1.75rem;border-radius:12px;text-decoration:none;transition:transform .15s ease,box-shadow .2s ease,background-color .2s ease;box-shadow:0 8px 22px #ffdd5740}.btn-cta-final:hover{background-color:#e6c200;color:#000;transform:translateY(-2px)}.btn-cta-final:focus-visible{outline:none;box-shadow:var(--jc-focus)}@media (prefers-color-scheme: dark){.hero-curso-claro{border-bottom-color:var(--jc-border)}.descripcion-imagen img,.web-imagen img,.btn-web,.btn-hero-dark,.caracteristica-item,.testimonio-item{box-shadow:0 6px 18px #00000052}.curso-descripcion,.curso-web,.caracteristica-item{background:color-mix(in srgb,var(--jc-bg) 90%,var(--jc-text) 10%)}}.app-hero{background:linear-gradient(145deg,color-mix(in srgb,var(--jc-bg) 96%,var(--jc-text) 4%),var(--jc-bg));padding:8rem 1rem}.app-hero-container{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:1200px;margin:0 auto;gap:2rem}.app-hero-text{max-width:640px}.app-hero h1{font-size:clamp(1.8rem,1.4rem + 2vw,3rem);font-weight:800;line-height:1.2;letter-spacing:-.015em;color:var(--jc-text, #0f172a);margin:0 0 1rem;max-width:20ch;text-align:center}html.dark .app-hero h1{color:color-mix(in srgb,#fff 95%,transparent)}.app-hero p{font-size:clamp(1rem,.95rem + .35vw,1.2rem);line-height:1.7;color:color-mix(in srgb,var(--jc-text) 78%,transparent);max-width:60ch;margin:.75rem auto 0;text-align:center}html.dark .app-hero p{color:color-mix(in srgb,#fff 82%,transparent)}.btn-app-download{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:var(--jc-brand);color:#fff;padding:.9rem 1.8rem;font-size:1rem;font-weight:700;border-radius:12px;text-decoration:none;transition:background-color .2s ease,transform .15s ease,box-shadow .2s ease;box-shadow:0 8px 20px #ff6b0040;margin-top:1.5rem}.btn-app-download:hover{background:var(--jc-brand-600);transform:translateY(-1px)}.btn-app-download:active{transform:translateY(0);box-shadow:0 6px 14px #ff6b0033}.btn-app-download:focus-visible{outline:none;box-shadow:var(--jc-focus)}.app-hero-image img{max-width:320px;width:100%;border-radius:20px;box-shadow:var(--jc-shadow)}@media (min-width: 768px){.app-hero-container{flex-direction:row;justify-content:space-between;text-align:left;gap:3rem}.app-hero-text,.app-hero-image{flex:1}.app-hero-image{display:grid;place-items:center}}.app-features-section{padding:8rem 1rem;background:color-mix(in srgb,var(--jc-bg) 96%,var(--jc-text) 4%)}.features-container{max-width:1200px;margin:0 auto;text-align:center}.features-title{font-size:clamp(1.4rem,1.1rem + 1vw,2rem);font-weight:800;line-height:1.3;letter-spacing:-.01em;margin:0 0 1.8rem;color:var(--jc-text, #0f172a);text-align:center;max-width:28ch;margin-inline:auto}html.dark .features-title{color:color-mix(in srgb,#fff 94%,transparent)}.features-description{font-size:clamp(1rem,.95rem + .3vw,1.15rem);line-height:1.7;color:color-mix(in srgb,var(--jc-text) 75%,transparent);max-width:65ch;margin:0 auto 2.5rem;text-align:center}html.dark .features-description{color:color-mix(in srgb,#fff 80%,transparent)}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.feature-card{background:var(--jc-bg);padding:2rem 1.5rem;border-radius:16px;box-shadow:var(--jc-shadow);transition:transform .25s ease,box-shadow .25s ease;border:1px solid var(--jc-border)}.feature-card:hover{transform:translateY(-5px);box-shadow:0 14px 28px #0f172a1f}.feature-icon{width:60px;height:60px}.feature-title{font-size:1.15rem;font-weight:700;margin:.85rem 0 .4rem;color:var(--jc-text)}.feature-description{font-size:.98rem;color:var(--jc-muted)}.app-gallery-section{padding:8rem 1rem;background:var(--jc-bg)}.gallery-container{max-width:1200px;margin:0 auto;text-align:center}.gallery-title{font-size:clamp(1.4rem,1.1rem + 1vw,2rem);font-weight:800;line-height:1.3;letter-spacing:-.01em;margin:0 0 1.2rem;color:var(--jc-text, #0f172a);text-align:center;max-width:28ch;margin-inline:auto}.gallery-description{font-size:clamp(1rem,.95rem + .3vw,1.15rem);line-height:1.7;color:color-mix(in srgb,var(--jc-text) 75%,transparent);max-width:65ch;margin:0 auto 2.5rem;text-align:center}html.dark .gallery-title{color:color-mix(in srgb,#fff 94%,transparent)}html.dark .gallery-description{color:color-mix(in srgb,#fff 80%,transparent)}.gallery-carousel{display:flex;gap:1.5rem;padding-bottom:1rem;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.gallery-carousel::-webkit-scrollbar{height:10px}.gallery-carousel::-webkit-scrollbar-thumb{background:var(--jc-border);border-radius:999px}@media (max-width: 640px){.gallery-carousel::-webkit-scrollbar{display:none}}.reveal.visible.gallery-item{transform:translateY(0);box-shadow:0 10px 24px #0f172a1f}.gallery-caption{font-size:clamp(.85rem,.8rem + .25vw,.95rem);line-height:1.5;font-weight:500;color:color-mix(in srgb,var(--jc-text) 70%,transparent);text-align:center;margin-top:.5rem;max-width:60ch;margin-inline:auto}html.dark .gallery-caption{color:color-mix(in srgb,#fff 70%,transparent)}.app-benefits-section{padding:4rem 1rem;background:color-mix(in srgb,var(--jc-bg) 96%,var(--jc-text) 4%)}.benefits-title{font-size:clamp(1.4rem,1.1rem + 1vw,2rem);font-weight:800;line-height:1.3;letter-spacing:-.01em;margin:0 0 1.2rem;color:var(--jc-text, #0f172a);text-align:center;max-width:28ch;margin-inline:auto}.benefits-description{font-size:clamp(1rem,.95rem + .3vw,1.15rem);line-height:1.7;color:color-mix(in srgb,var(--jc-text) 75%,transparent);max-width:65ch;margin:0 auto 2.5rem;text-align:center}.app-benefits-section{padding:8rem 1rem}.benefits-container{max-width:1200px;margin:0 auto;text-align:center}.benefits-title{font-size:clamp(1.4rem,1.1rem + 1vw,2rem);font-weight:800;line-height:1.3;letter-spacing:-.01em;margin:0 0 2.2rem;color:var(--jc-text, #0f172a);text-align:center;max-width:28ch;margin-inline:auto}.benefits-description{max-width:65ch;margin:0 auto 2.5rem;font-size:clamp(1rem,.95rem + .25vw,1.1rem);line-height:1.7;color:color-mix(in srgb,var(--jc-text) 78%,transparent);text-align:center}.benefit-item{background-color:#fff;border-radius:20px;padding:2rem;box-shadow:0 6px 18px #0000000f;transition:transform .25s ease,box-shadow .25s ease}.benefit-item:hover{transform:translateY(-6px);box-shadow:0 12px 28px #0000001a}.benefit-item h3{font-size:1.25rem;margin:1rem 0 .5rem;color:#222}.benefit-item p{font-size:.95rem;color:#555}.testimonials-description{max-width:760px;margin:-1rem auto 2.5rem;font-size:1.05rem;color:#555;line-height:1.65;text-align:center}.gallery-wrap{position:relative}.gallery-carousel{display:flex;gap:1.5rem;overflow-x:auto;padding:0 3rem 1rem;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.gallery-nav{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border:none;border-radius:999px;background:#ffffffe6;box-shadow:0 6px 18px #0000001f;color:#ff6b00;display:grid;place-items:center;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease;z-index:1}.gallery-prev{left:.5rem}.gallery-next{right:.5rem}.gallery-nav:hover{transform:translateY(-50%) scale(1.06);box-shadow:0 10px 24px #00000029}.gallery-nav:active{transform:translateY(-50%) scale(.98)}.gallery-nav:disabled{opacity:.4;cursor:default;box-shadow:0 0 #0000}.gallery-nav:focus-visible{outline:3px solid #ff6b00;outline-offset:2px}.gallery-item{flex:0 0 auto;scroll-snap-align:center;border-radius:16px;background:#fafafa;box-shadow:0 6px 14px #00000014;padding:1rem;max-width:260px;text-align:center;transition:transform .3s ease,box-shadow .3s ease}.gallery-item img{width:100%;border-radius:12px;display:block;margin-bottom:.75rem}.gallery-item:hover{transform:translateY(-6px);box-shadow:0 12px 24px #0000001f}.gallery-caption{font-size:.95rem;color:#444;font-weight:500}.gallery-carousel{-ms-overflow-style:none;scrollbar-width:none}.gallery-carousel::-webkit-scrollbar{display:none}@media (max-width: 768px){.gallery-nav{display:none}}@media (prefers-reduced-motion: reduce){.gallery-carousel{scroll-behavior:auto}.gallery-item,.gallery-nav{transition:none!important}}html.dark .benefits-title{color:color-mix(in srgb,#fff 94%,transparent)}html.dark .benefits-description{color:color-mix(in srgb,#fff 80%,transparent)}.benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:2rem}.benefit-item{background:var(--jc-bg);border:1px solid var(--jc-border);border-radius:16px;padding:2rem;box-shadow:var(--jc-shadow);transition:transform .2s ease,box-shadow .2s ease}.benefit-item:hover{transform:translateY(-4px);box-shadow:0 12px 24px #0f172a1f}.benefit-item img{width:48px;height:48px}.benefit-item h3{font-size:1.15rem;margin:.9rem 0 .4rem;color:var(--jc-text)}.benefit-item p{font-size:.98rem;color:var(--jc-muted)}.testimonials-section{padding:8rem 1rem;background:var(--jc-bg)}.testimonials-container{max-width:1200px;margin:0 auto;text-align:center}.testimonials-title{font-size:clamp(1.4rem,1.1rem + 1vw,2rem);font-weight:800;line-height:1.3;letter-spacing:-.01em;margin:0 0 2rem;color:var(--jc-text, #0f172a);text-align:center;max-width:28ch;margin-inline:auto}.testimonials-description{max-width:65ch;margin:0 auto 2.5rem;font-size:clamp(1rem,.95rem + .25vw,1.1rem);line-height:1.7;color:color-mix(in srgb,var(--jc-text) 78%,transparent);text-align:center}html.dark .testimonials-title{color:color-mix(in srgb,#fff 94%,transparent)}html.dark .testimonials-description{color:color-mix(in srgb,#fff 80%,transparent)}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.testimonial-card{background:color-mix(in srgb,var(--jc-bg) 94%,var(--jc-text) 6%);border:1px solid var(--jc-border);border-radius:16px;padding:2rem;box-shadow:var(--jc-shadow);display:flex;flex-direction:column;align-items:center;text-align:center;transition:transform .2s ease,box-shadow .2s ease}.testimonial-card:hover{transform:translateY(-4px);box-shadow:0 14px 28px #0f172a1f}.testimonial-avatar{width:64px;height:64px;border-radius:50%;object-fit:cover;margin-bottom:1rem}.testimonial-text{font-size:.98rem;color:var(--jc-muted);margin-bottom:.9rem;font-style:italic}.testimonial-name{font-size:1rem;font-weight:700;color:var(--jc-text)}.cta-app-section{background:linear-gradient(135deg,color-mix(in srgb,var(--jc-brand) 85%,#ff3b30 15%),#ff3b30);color:#fff;padding:4rem 1rem}.cta-app-container{max-width:1200px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:2rem}.cta-app-title{font-size:2rem;font-weight:800;margin-bottom:1rem}.cta-app-subtitle{font-size:1.1rem;margin-bottom:2rem;opacity:.95}.btn-cta-app{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;padding:1rem 1.8rem;border-radius:14px;font-weight:800;font-size:1.05rem;letter-spacing:.2px;text-decoration:none;cursor:pointer;color:#fff;background:var(--jc-brand, #2563eb);box-shadow:0 8px 20px color-mix(in srgb,var(--jc-brand) 35%,transparent);transition:background-color .25s ease,transform .18s ease,box-shadow .25s ease,color .25s ease}.btn-cta-app:hover{background:linear-gradient(135deg,var(--jc-brand) 0%,color-mix(in srgb,var(--jc-brand) 75%,#000) 100%);color:#fff;transform:translateY(-3px) scale(1.02);box-shadow:0 14px 30px color-mix(in srgb,var(--jc-brand) 50%,transparent)}.btn-cta-app:active{transform:translateY(-1px);box-shadow:0 6px 14px color-mix(in srgb,var(--jc-brand) 30%,transparent)}.btn-cta-app:focus-visible{outline:2px solid color-mix(in oklab,var(--jc-brand) 40%,transparent);outline-offset:4px}html.dark .btn-cta-app{color:#0f172a;background:#fff;border-color:color-mix(in srgb,#fff 65%,#000);box-shadow:0 8px 20px #00000073}html.dark .btn-cta-app:hover{background:color-mix(in srgb,#fff 92%,#ccc);transform:translateY(-3px);box-shadow:0 12px 28px #0000008c}.cta-app-image{flex:1 1 300px;text-align:center}.cta-app-image img,.cta-app-image svg{max-width:260px;height:auto;filter:drop-shadow(0 10px 24px rgba(0,0,0,.15))}.cta-app-section{background:linear-gradient(135deg,#f4f7fa,#e9eef3);color:#222;padding:5rem 1rem;border-radius:20px;margin:3rem 1rem}.cta-app-container{max-width:1200px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:2.5rem}.cta-app-content{flex:1 1 400px}.cta-app-title{font-size:2.2rem;font-weight:700;margin-bottom:1rem;color:#1e293b}.cta-app-subtitle{font-size:1.1rem;margin-bottom:2rem;max-width:500px;color:#475569}.btn-cta-app{display:inline-block;background-color:#ff6b00;color:#fff;font-weight:600;padding:1rem 2rem;border-radius:12px;text-decoration:none;font-size:1.05rem;transition:all .3s ease;box-shadow:0 6px 14px #0000001f}.btn-cta-app:hover{background-color:#e85d00;transform:translateY(-3px);box-shadow:0 10px 20px #0000002e}.cta-app-image{flex:1 1 300px;display:flex;justify-content:center;align-items:center}.cta-app-image svg{max-width:250px;height:auto}.cta-phone{animation:phoneFloat 6s ease-in-out infinite;transform-origin:50% 50%;will-change:transform,filter}@keyframes phoneFloat{0%{transform:translateY(0)}50%{transform:translateY(-6px)}to{transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.cta-phone{animation:none!important}}.faq-app-section{background:color-mix(in srgb,var(--jc-bg) 96%,var(--jc-text) 4%);padding:8rem 1rem}.faq-app-container{max-width:900px;margin:0 auto}.faq-app-title{font-size:clamp(1.4rem,1.1rem + 1vw,2rem);font-weight:800;line-height:1.3;letter-spacing:-.01em;text-align:center;margin:0 0 1.5rem;color:var(--jc-text, #0f172a);max-width:28ch;margin-inline:auto}html.dark .faq-app-title{color:color-mix(in srgb,#fff 94%,transparent)}.faq-app-description{max-width:65ch;margin:0 auto 2.2rem;font-size:clamp(1rem,.95rem + .25vw,1.1rem);line-height:1.6;color:color-mix(in srgb,var(--jc-text) 78%,transparent);text-align:center}html.dark .faq-app-description{color:color-mix(in srgb,#fff 80%,transparent)}.faq-item{margin-bottom:1.25rem;border-bottom:1px solid var(--jc-border);padding-bottom:1rem}.faq-question{font-size:1.15rem;font-weight:800;color:var(--jc-text)}.faq-answer{font-size:1rem;margin-top:.5rem;color:var(--jc-muted)}.feature-icon-wrapper{width:80px;height:80px;margin:0 auto 1rem;border-radius:50%;background:linear-gradient(135deg,#fff3eb,#ffe8d9);display:grid;place-items:center;box-shadow:var(--jc-shadow);transition:transform .3s ease,box-shadow .3s ease}.feature-card:hover .feature-icon-wrapper{transform:translateY(-6px) scale(1.05);box-shadow:0 16px 30px #0f172a26}.feature-icon{width:40px;height:40px;object-fit:contain}.reveal{opacity:0;transform:translateY(16px);transition:opacity .6s ease var(--reveal-delay, 0ms),transform .6s ease var(--reveal-delay, 0ms)}.reveal.visible{opacity:1;transform:translateY(0)}.reveal.visible .feature-icon-wrapper{transform:translateY(0) scale(1.03)}@media (prefers-reduced-motion: reduce){.reveal,.reveal.visible,.feature-icon-wrapper{transition:none!important;transform:none!important;opacity:1!important}}@media (prefers-color-scheme: dark){.feature-card,.benefit-item,.testimonial-card,.gallery-item{box-shadow:0 8px 24px #00000059}.gallery-carousel::-webkit-scrollbar-thumb{background:#2a3342}}.process-steps{counter-reset:step;list-style:none;padding:0;max-width:760px;margin:0 auto}.process-steps li{position:relative;padding:.75rem 0 .75rem 2.4rem;border-bottom:1px solid var(--jc-border);color:var(--jc-muted)}.process-steps li:before{counter-increment:step;content:counter(step);position:absolute;left:0;top:.5rem;width:1.6rem;height:1.6rem;display:grid;place-items:center;border-radius:999px;background:var(--jc-brand);color:#fff;font-weight:700;font-size:.9rem;box-shadow:0 6px 14px #ff6b0040}.tech-badges{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;padding:0}.tech-badges .badge{list-style:none;background:color-mix(in srgb,var(--jc-brand) 8%,var(--jc-bg));color:color-mix(in srgb,var(--jc-brand) 45%,var(--jc-text));border:1px solid color-mix(in srgb,var(--jc-brand) 25%,var(--jc-border));padding:.4rem .7rem;border-radius:999px;font-weight:700;font-size:.9rem;letter-spacing:.01em}.pricing-note{margin-top:1rem;color:var(--jc-muted);font-size:.95rem;text-align:center}.cookie-banner{display:none;position:fixed;inset:auto 0 0;width:100%;background:color-mix(in srgb,var(--jc-text) 95%,var(--jc-bg));color:#fff;padding:1rem 1.5rem;text-align:center;font-size:.95rem;line-height:1.5;z-index:9999;box-shadow:0 -6px 24px #00000040;font-family:Inter,system-ui,sans-serif}.cookie-banner a{color:#cfe6ff;text-decoration:underline;margin:0 .3rem;transition:color .2s ease}.cookie-banner a:hover{color:#fff}.cookie-banner button{margin-left:1rem;margin-top:.5rem;background:#fff;color:#1e1e1e;border:none;padding:.5rem 1.1rem;border-radius:10px;font-weight:800;cursor:pointer;transition:background-color .2s ease,transform .15s ease,box-shadow .2s ease;box-shadow:0 6px 16px #00000026}.cookie-banner button:hover{background:#f1f5f9;transform:translateY(-1px)}.cookie-banner button:active{transform:translateY(0)}.cookie-banner button:focus-visible{outline:none;box-shadow:var(--jc-focus)}@media (prefers-color-scheme: dark){.tech-badges .badge{background:color-mix(in srgb,var(--jc-brand) 10%,var(--jc-bg));border-color:color-mix(in srgb,var(--jc-brand) 30%,var(--jc-border));color:color-mix(in srgb,var(--jc-brand) 60%,#fff)}.cookie-banner{background:color-mix(in srgb,#000 70%,var(--jc-bg));box-shadow:0 -8px 28px #0009}.cookie-banner button{background:color-mix(in srgb,#fff 92%,var(--jc-bg));color:#0f172a}.cookie-banner button:hover{background:color-mix(in srgb,#fff 85%,var(--jc-bg))}}.contact-section{max-width:700px;margin:0 auto;padding:2rem 1rem;color:var(--jc-text)}.contact-section h1{font-size:2rem;margin-bottom:.5rem;color:var(--jc-brand)}.contact-section .subtitle{font-size:1rem;color:var(--jc-muted);margin-bottom:1.5rem}.contact-form label{display:block;margin:1rem 0 .4rem;font-weight:700;color:var(--jc-text)}.contact-form input[type=text],.contact-form input[type=email],.contact-form textarea{width:100%;padding:.9rem 1rem;border:1.5px solid var(--jc-border);border-radius:10px;font:inherit;font-size:1rem;background:var(--jc-bg);color:var(--jc-text);transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease;box-shadow:0 1px #00000003}.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--jc-muted)}.contact-form input:hover,.contact-form textarea:hover{border-color:color-mix(in srgb,var(--jc-border) 60%,var(--jc-text))}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--jc-brand);outline:none;box-shadow:var(--jc-focus)}.contact-form textarea{resize:vertical;min-height:160px}.contact-form .btn-minify{margin-top:1.25rem;width:100%;text-align:center;background:var(--jc-brand);color:#fff;border:0;padding:.95rem 1.25rem;border-radius:12px;font-weight:800;letter-spacing:.01em;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease,background-color .2s ease;box-shadow:0 8px 18px #ff6b0040}.contact-form .btn-minify:hover{background:var(--jc-brand-600);transform:translateY(-1px);box-shadow:0 12px 26px #ff6b0047}.contact-form .btn-minify:active{transform:translateY(0);box-shadow:0 6px 16px #ff6b0038}.contact-form .btn-minify:focus-visible{outline:none;box-shadow:var(--jc-focus)}.captcha-container{margin:1.25rem 0 1.5rem;text-align:center;transform:scale(1);transform-origin:0 0}.text-danger{font-size:.95rem;color:#e53935;text-align:left;margin-top:.5rem}.contact-container{display:flex;flex-wrap:wrap;gap:2rem;justify-content:space-between;align-items:flex-start}.contact-left{flex:1 1 55%;min-width:320px}.contact-right{flex:1 1 40%;min-width:280px;text-align:center;padding-top:1rem;padding:1.25rem}.lottie-wrapper{width:100%;max-width:320px;margin:0 auto}.contact-right-text{font-size:.95rem;color:var(--jc-muted);margin-top:1rem;line-height:1.65}@media (prefers-reduced-motion: reduce){.contact-form *{transition:none!important}}.post-hero{margin:0;min-height:calc(100svh - var(--header-h, 0px));background:linear-gradient(to bottom,color-mix(in srgb,var(--jc-surface-2, #f8fafc) 92%,transparent),color-mix(in srgb,var(--jc-surface-2, #f8fafc) 100%,transparent));border-bottom:1px solid var(--jc-border, #e5e7eb)}.post-hero .container{min-height:inherit;padding-block:max(1rem,calc(1rem + env(safe-area-inset-top)));display:grid;align-items:center}.post-hero-grid{display:grid;grid-template-columns:1fr;gap:clamp(1rem,2.5vw,2rem);align-items:center}@media (min-width: 900px){.post-hero-grid{grid-template-columns:min(520px,42vw) 1fr;gap:clamp(1.25rem,3vw,2.75rem)}}.post-hero-media{margin:0}.post-hero-image{display:block;width:100%;max-width:100%;max-block-size:min(56vh,540px);margin-inline:auto;border-radius:16px;box-shadow:0 10px 26px #0f172a1f;object-fit:cover;aspect-ratio:16 / 10;transition:transform .35s ease,box-shadow .35s ease}.post-hero-image:hover{transform:translateY(-2px);box-shadow:0 16px 36px #0f172a29}html.dark .post-hero{background:linear-gradient(to bottom,color-mix(in srgb,var(--jc-surface-3, #0b1220) 82%,transparent),color-mix(in srgb,var(--jc-surface-3, #0b1220) 88%,transparent));border-bottom-color:color-mix(in srgb,var(--jc-border, #223355) 60%,transparent)}html.dark .post-hero-image{box-shadow:0 10px 28px #00000073}.post-hero-body .post-title{margin:0 0 .45rem;font-size:clamp(1.75rem,2.2vw + 1rem,2.6rem);line-height:1.12;letter-spacing:.2px}.post-excerpt{font-size:clamp(1rem,.95rem + .3vw,1.125rem);line-height:1.6;color:var(--jc-text, #1f2937);max-width:65ch}.post-meta-list{--chip-bg: color-mix(in srgb, var(--jc-surface-3, #f3f4f6) 80%, transparent);--chip-bd: color-mix(in srgb, var(--jc-border, #e5e7eb) 70%, transparent);--chip-tx: color-mix(in srgb, var(--jc-text, #111827) 90%, transparent);display:flex;flex-wrap:wrap;gap:.5rem .75rem;padding:0;margin:0 0 1rem;list-style:none}.meta-item{display:inline-flex;align-items:center;gap:.45rem;padding:.4rem .6rem;border:1px solid var(--chip-bd);background:var(--chip-bg);color:var(--chip-tx);border-radius:999px;font-size:.94rem;line-height:1.1}.meta-item .meta-ico{opacity:.85}.meta-item.meta-wrap{max-width:100%}.meta-item .meta-text{color:inherit;text-decoration:none;transition:color .25s ease,text-decoration-color .25s ease;font-weight:500;cursor:pointer}.meta-item .meta-text:hover,.meta-item .meta-text:focus{color:var(--jc-brand);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--jc-brand) 70%,transparent);outline:none}.meta-item .meta-text:active{color:var(--jc-brand-600)}.meta-item .meta-text:focus-visible{outline:2px solid var(--jc-brand);outline-offset:2px;border-radius:4px}html.dark .meta-item .meta-text:hover,html.dark .meta-item .meta-text:focus{color:var(--jc-brand);text-decoration-color:var(--jc-brand)}.meta-text a.meta-link{color:inherit;text-decoration:none;transition:color .2s ease,text-decoration-color .2s ease}.meta-text a.meta-link:hover,.meta-text a.meta-link:focus{color:var(--jc-brand);text-decoration:underline;text-decoration-color:var(--jc-brand)}.meta-text a.meta-link:focus-visible{outline:2px solid var(--jc-brand);outline-offset:2px;border-radius:2px}.meta-text a.meta-link:active{color:color-mix(in srgb,var(--jc-brand) 80%,black)}html.dark .post-meta-list{--chip-bg: color-mix(in srgb, var(--jc-surface-3, #0b1220) 70%, transparent);--chip-bd: color-mix(in srgb, var(--jc-border, #20304d) 60%, transparent);--chip-tx: color-mix(in srgb, #fff 92%, transparent)}@media (max-width: 899.98px){.post-hero-image{width:100%;max-block-size:44vh}.post-hero-body .post-title{font-size:clamp(1.55rem,4.5vw,2.1rem)}.post-excerpt{font-size:1.02rem}}.post-hero:has(.post-hero-body):not(:has(.post-hero-media img)) .post-hero-grid{grid-template-columns:1fr!important;text-align:center}.post-hero:has(.post-hero-body):not(:has(.post-hero-media img)) .post-hero-body{margin-inline:auto;max-width:820px}.post-grid{display:grid;grid-template-columns:1fr;gap:clamp(1rem,2vw,2rem)}.post-toc .toc-title{display:flex;align-items:center;gap:.5rem;font-size:1.05rem;font-weight:600;margin-bottom:.75rem;padding-bottom:.4rem;color:var(--jc-text);border-bottom:2px solid var(--jc-border);letter-spacing:-.2px}.toc-icon{display:inline-block;width:20px;height:20px;background-color:currentColor;-webkit-mask:url("/dist/assets/toc-H7L3WPN2.svg") no-repeat center / contain;mask:url("/dist/assets/toc-H7L3WPN2.svg") no-repeat center / contain;opacity:.9;margin-right:.4rem;vertical-align:middle}.toc-title:hover .toc-icon{opacity:1;color:var(--jc-brand)}.post-toc .toc-title .toc-icon{display:inline-flex;width:20px;height:20px;color:#4e5461}html.dark .toc-title{color:color-mix(in srgb,var(--jc-text) 92%,#fff 8%);border-color:color-mix(in srgb,var(--jc-border) 60%,transparent)}html.dark .toc-title:hover{color:var(--jc-brand);border-color:color-mix(in srgb,var(--jc-brand) 40%,var(--jc-border))}html.dark .toc-icon{background-color:currentColor}.post-toc nav,.post-toc .toc{background:#fff;border:1px solid var(--jc-border, #e5e7eb);border-radius:12px;padding:.9rem .9rem .7rem;box-shadow:0 4px 12px #0000000d}.post-toc .ez-toc-list,.post-toc .toc-list{list-style:none;margin:0;padding:0;display:grid;gap:.35rem}.post-toc a{display:block;padding:.35rem .5rem;border-radius:8px;color:var(--jc-text, #0f172a);text-decoration:none;line-height:1.25}.post-toc a:hover{background:color-mix(in srgb,var(--jc-brand, #2563eb) 12%,transparent)}.post-toc li.toc-h3{padding-left:.75rem;opacity:.9}html.dark .post-toc nav,html.dark .post-toc .toc{background:color-mix(in srgb,var(--jc-surface-3, #0b1220) 75%,transparent);border-color:color-mix(in srgb,var(--jc-border, #223355) 60%,transparent);box-shadow:0 4px 16px #00000059}html.dark .post-toc a{color:color-mix(in srgb,#fff 92%,transparent)}.post-content{--pc-w: min(100%, 820px);--pc-r: 12px;--pc-space: clamp(.75rem, 1.4vw, 1rem);--pc-space-lg: clamp(1rem, 2vw, 1.5rem);max-width:var(--pc-w);margin-inline:auto;color:var(--jc-text);font-size:clamp(.98rem,.9rem + .2vw,1.05rem);line-height:1.7;background:#fff;border:1px solid var(--jc-border, #e5e7eb);border-radius:14px;padding:clamp(1rem,2.2vw,1.6rem);box-shadow:0 10px 28px #0f172a14}.post-content>:is(h2,h3,h4,h5,h6){scroll-margin-top:96px}.post-content :is(h2,h3) strong{color:inherit}.post-content p{color:color-mix(in srgb,var(--jc-text) 94%,transparent)}.post-content strong{font-weight:700}.post-content em{font-style:italic}.post-content a{transition:color .18s ease,border-color .18s ease,background-color .18s ease}.post-content a:hover{border-color:color-mix(in srgb,var(--jc-brand) 70%,transparent);background:color-mix(in srgb,var(--jc-brand) 10%,transparent)}.post-content :is(ul,ol,.wp-block-list){padding-left:1.2rem;margin-top:.3rem}.post-content ul{list-style:disc}.post-content ol{list-style:decimal}.post-content li+li{margin-top:.35rem}.post-content li>:is(ul,ol){margin-top:.35rem}.post-content :where(blockquote,.wp-block-quote){margin:var(--pc-space-lg) 0;padding:.85rem 1rem;background:color-mix(in srgb,var(--jc-brand) 6%,var(--jc-surface-2));border-left:4px solid var(--jc-brand);border-radius:var(--pc-r);color:color-mix(in srgb,var(--jc-text) 90%,transparent)}.post-content blockquote p{margin:0}.post-content blockquote cite{display:block;margin-top:.5rem;font-size:.9em;color:var(--jc-muted)}.post-content img{max-width:100%;height:auto;border-radius:14px;display:block;margin-inline:auto;box-shadow:0 8px 24px #0f172a14}.post-content :where(figure,.wp-block-image){margin:var(--pc-space-lg) auto;text-align:center}.post-content figcaption{margin-top:.5rem;font-size:.9rem;color:var(--jc-muted)}.post-content :where(table,.wp-block-table table){width:100%;border-collapse:collapse;background:var(--jc-surface-2);border:1px solid var(--jc-border);border-radius:12px;overflow:hidden;box-shadow:0 4px 14px #0f172a0f}.post-content thead th{background:color-mix(in srgb,var(--jc-brand) 12%,var(--jc-surface-2));color:color-mix(in srgb,var(--jc-text) 98%,transparent);text-align:left}.post-content :where(th,td){padding:.7rem .8rem;border-bottom:1px solid color-mix(in srgb,var(--jc-border) 70%,transparent)}.post-content tr:last-child td{border-bottom:0}.post-content code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:.95em;background:color-mix(in srgb,var(--jc-surface-3) 70%,transparent);color:color-mix(in srgb,var(--jc-text) 95%,transparent);padding:.15rem .35rem;border-radius:8px;border:1px solid color-mix(in srgb,var(--jc-border) 70%,transparent)}.post-content pre{background:color-mix(in srgb,var(--jc-surface-3) 85%,transparent);color:color-mix(in srgb,var(--jc-text) 98%,transparent);border:1px solid var(--jc-border);border-radius:12px;padding:1rem;overflow:auto;box-shadow:inset 0 1px #ffffff08}.post-content pre code{background:transparent;border:0;padding:0}.post-content hr{border:0;height:1px;margin:calc(var(--pc-space-lg) * 1.2) 0;background:linear-gradient(to right,color-mix(in oklab,var(--jc-border) 10%,transparent),color-mix(in oklab,var(--jc-text) 20%,transparent),color-mix(in oklab,var(--jc-border) 10%,transparent))}.post-content .alignleft{float:left;margin:.25rem 1rem .75rem 0;max-width:50%}.post-content .alignright{float:right;margin:.25rem 0 .75rem 1rem;max-width:50%}.post-content .aligncenter{display:block;margin-inline:auto}.post-content:after{content:"";display:table;clear:both}.author-card{margin-block:clamp(2rem,4vw,3rem)}.author-card__grid{display:grid;grid-template-columns:1fr;gap:clamp(1rem,3vw,1.5rem);background:#fff;border:1px solid var(--jc-border, #e5e7eb);border-radius:16px;padding:clamp(1rem,2.2vw,1.4rem);box-shadow:0 10px 28px #0f172a14}@media (min-width: 820px){.author-card__grid{grid-template-columns:120px 1fr;align-items:start;gap:clamp(1.25rem,3vw,2rem);padding:clamp(1.25rem,2.6vw,1.75rem)}}.author-card__avatar{margin:0;display:grid;place-items:center}.author-card__avatar img{width:100px;height:100px;border-radius:50%;object-fit:cover;border:2px solid color-mix(in srgb,var(--jc-border, #e5e7eb) 70%,transparent);box-shadow:0 6px 16px #0000001f}@media (min-width: 820px){.author-card__avatar img{width:120px;height:120px}}.author-card__header{margin-bottom:.35rem}.author-card__name{margin:0;font-size:clamp(1.15rem,1rem + .9vw,1.5rem);line-height:1.2;color:var(--jc-text, #0f172a)}.author-card__title{margin:.15rem 0 0;color:var(--jc-muted, #6b7280);font-size:.95rem}.author-card__bio p{margin:.5rem 0 0;color:color-mix(in srgb,var(--jc-text) 93%,transparent);line-height:1.65}.author-card__meta{display:flex;flex-wrap:wrap;gap:.5rem .75rem;list-style:none;padding:0;margin:.8rem 0 0}.author-card__meta li a{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .6rem;border:1px solid color-mix(in srgb,var(--jc-border, #e5e7eb) 70%,transparent);background:color-mix(in srgb,var(--jc-surface-3, #f3f4f6) 70%,transparent);color:color-mix(in srgb,var(--jc-text, #111827) 92%,transparent);border-radius:999px;text-decoration:none;transition:background-color .2s ease,border-color .2s ease,transform .12s ease}.author-card__meta li a:hover{background:color-mix(in srgb,var(--jc-brand, #2563eb) 12%,transparent);border-color:color-mix(in srgb,var(--jc-brand) 40%,transparent);transform:translateY(-1px)}.author-card__meta .ico{display:inline-flex}.author-card__cta{margin-top:.85rem}html.dark .author-card__grid{background:color-mix(in srgb,var(--jc-surface-3, #0b1220) 75%,transparent);border-color:color-mix(in srgb,var(--jc-border, #223355) 60%,transparent);box-shadow:0 12px 32px #00000073}html.dark .author-card__name{color:color-mix(in srgb,#fff 96%,transparent)}html.dark .author-card__title{color:color-mix(in srgb,#fff 70%,transparent)}html.dark .author-card__bio p{color:color-mix(in srgb,#fff 90%,transparent)}html.dark .author-card__meta li a{background:color-mix(in srgb,var(--jc-surface-3, #0b1220) 60%,transparent);border-color:color-mix(in srgb,var(--jc-border, #20304d) 55%,transparent);color:color-mix(in srgb,#fff 92%,transparent)}html.dark .post-content{background:color-mix(in srgb,#0b1220 80%,transparent);border-color:color-mix(in srgb,var(--jc-border, #223355) 60%,transparent);box-shadow:0 14px 36px #00000073}html.dark .post-content img{box-shadow:0 10px 28px #00000059}html.dark .post-content :where(blockquote,.wp-block-quote){background:color-mix(in srgb,var(--jc-brand) 12%,var(--jc-surface-2))}html.dark .post-content :is(h1,h2,h3,h4,h5,h6){color:color-mix(in srgb,#fff 96%,transparent)}html.dark .post-content a:hover{background:color-mix(in srgb,var(--jc-brand) 16%,transparent)}@media (max-width: 768px){.post-content .alignleft,.post-content .alignright{float:none;margin:.5rem auto;max-width:100%}}@media (max-width: 979.98px){.post-grid{grid-template-columns:1fr;justify-items:stretch;align-items:start}.post-grid>*{min-width:0}.post-content{--pc-w: 100%;max-width:100%;width:100%;margin-inline:0;box-sizing:border-box;border-radius:12px}.post-toc{width:100%;margin-inline:0;justify-self:stretch}}@media (max-width: 479.98px){.post-content{padding:.85rem;border-radius:10px}}.back-to-blog{padding:2rem 0;background:var(--jc-surface-2, #f9fafb);border-top:1px solid var(--jc-border, #e5e7eb)}.back-to-blog .container{display:flex;justify-content:center}.back-to-blog .btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;font-size:.95rem;font-weight:500;color:var(--jc-text, #111827);background:var(--jc-surface-1, #fff);border:1px solid var(--jc-border, #e5e7eb);border-radius:9999px;text-decoration:none;box-shadow:0 1px 2px #0000000d;transition:all .25s ease}.back-to-blog .btn:before{content:"\2190";font-size:1rem;line-height:1;transition:transform .25s ease}.back-to-blog .btn:hover{background:var(--jc-brand, #ff6b00);border-color:var(--jc-brand, #ff6b00);color:#fff;box-shadow:0 4px 8px #00000014}.back-to-blog .btn:hover:before{transform:translate(-3px)}.back-to-blog .btn:focus-visible{outline:2px solid var(--jc-brand, #ff6b00);outline-offset:3px}html.dark .back-to-blog{background:var(--jc-surface-3, #1f2937);border-color:var(--jc-border, #374151)}html.dark .back-to-blog .btn{background:var(--jc-surface-2, #111827);color:#f9fafb;border-color:var(--jc-border, #374151);box-shadow:0 1px 2px #0006}html.dark .back-to-blog .btn:hover{background:var(--jc-brand, #ff6b00);color:#fff;border-color:var(--jc-brand, #ff6b00)}:root{--post-toc-min: 260px;--post-toc-max: 340px;--post-grid-gap-desktop: 1rem}@media (min-width: 980px){.post-grid{grid-template-columns:minmax(var(--post-toc-min),var(--post-toc-max)) 1fr;gap:var(--post-grid-gap-desktop)}.post-toc nav,.post-toc .toc{padding:.75rem .8rem .65rem}}@media (min-width: 1280px){:root{--post-toc-max: 360px}}.post-toc .toc-title{margin-bottom:1.3rem;padding-bottom:.35rem}.lottie-inline{display:flex;justify-content:center;text-align:center}@media (max-width: 600px){h1{font-size:2rem}.btn-minify{width:100%;text-align:center}}@media print{*,*:before,*:after{box-sizing:border-box}body{background:#fff!important;color:#000!important;font-family:Inter,serif;margin:0;padding:1rem}header,nav,.main-header,.menu-toggle,.nav-links,.site-footer,.cookie-banner,.promo-alert{display:none!important}.container,.contact-section,.minify-info-box,.tab-content.visible{max-width:100%!important;width:100%!important;padding:0!important;margin:0!important;border:none!important;box-shadow:none!important}h1,h2,h3{color:#000!important;page-break-after:avoid}a{color:#000;text-decoration:underline}pre,code,textarea,.code-area{font-family:JetBrains Mono,monospace;font-size:.95rem;white-space:pre-wrap;background:#f9f9f9!important;color:#000!important;border:1px solid #ccc;padding:.5rem}.btn-minify,.jc-btn,.btn-copy,.btn-download,.tab-button,.tabs,.footer-meta,.footer-links,.summary-box{display:none!important}.tab-content{display:block!important;border:none!important;padding:0!important}textarea{border:1px solid #ccc}}.jc-alert-modal{border:0;padding:0;inset:0;margin:auto;max-width:min(560px,92vw);background:var(--jc-surface-1, #fff);color:var(--jc-text, #0f172a);border-radius:16px;box-shadow:0 24px 64px #0f172a38}.jc-alert-modal::backdrop{background:color-mix(in srgb,#000 55%,transparent);backdrop-filter:blur(2px)}.jc-alert-body{display:grid;grid-template-columns:auto 1fr;gap:.9rem;align-items:start;padding:1.1rem 1.2rem .6rem}.jc-alert-icon{inline-size:40px;block-size:40px;display:grid;place-items:center;font-size:1.25rem;border-radius:12px;background:color-mix(in srgb,var(--jc-brand, #2563eb) 10%,var(--jc-surface-2, #f8fafc));border:1px solid color-mix(in srgb,var(--jc-brand, #2563eb) 35%,var(--jc-border, #e5e7eb))}.jc-alert-title{font-size:clamp(1rem,.9rem + .4vw,1.15rem);margin:.1rem 0 .2rem;font-weight:900;letter-spacing:.2px}.jc-alert-text p{margin:0;line-height:1.6;color:color-mix(in srgb,var(--jc-text) 86%,transparent)}.jc-alert-actions{display:flex;justify-content:flex-end;gap:.5rem;padding:.6rem 1.2rem 1.1rem;border-top:1px solid var(--jc-border, #e5e7eb)}.jc-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:12px;padding:.6rem 1rem;font-weight:800;letter-spacing:.2px;border:1px solid transparent;cursor:pointer;text-decoration:none}.jc-btn-primary{color:#fff;background:var(--jc-brand, #2563eb);border-color:color-mix(in srgb,var(--jc-brand) 55%,#000);box-shadow:0 6px 16px color-mix(in srgb,var(--jc-brand) 25%,transparent)}.jc-btn-primary:hover{transform:translateY(-1px)}.jc-btn-primary:focus-visible{outline:2px solid color-mix(in oklab,var(--jc-brand) 40%,transparent);outline-offset:3px}.jc-alert-modal.is-success .jc-alert-icon{background:color-mix(in srgb,#22c55e 12%,var(--jc-surface-2, #f8fafc));border-color:color-mix(in srgb,#22c55e 45%,var(--jc-border, #e5e7eb))}.jc-alert-modal.is-error .jc-alert-icon{background:color-mix(in srgb,#ef4444 12%,var(--jc-surface-2, #f8fafc));border-color:color-mix(in srgb,#ef4444 55%,var(--jc-border, #e5e7eb))}html.dark .jc-alert-modal{background:color-mix(in srgb,var(--jc-surface-2, #0f172a) 88%,transparent);color:color-mix(in srgb,#fff 95%,transparent);box-shadow:0 24px 64px #0009}html.dark .jc-alert-modal::backdrop{background:color-mix(in srgb,#000 70%,transparent);backdrop-filter:blur(2px)}html.dark .jc-alert-text p{color:color-mix(in srgb,#fff 85%,transparent)}html.dark .jc-alert-actions{border-top-color:color-mix(in srgb,var(--jc-border, #20304d) 70%,transparent)}html.dark .jc-alert-modal.is-success .jc-alert-icon{background:color-mix(in srgb,#22c55e 25%,var(--jc-surface-2, #0f172a));border-color:color-mix(in srgb,#22c55e 55%,var(--jc-border, #20304d))}html.dark .jc-alert-modal.is-error .jc-alert-icon{background:color-mix(in srgb,#ef4444 25%,var(--jc-surface-2, #0f172a));border-color:color-mix(in srgb,#ef4444 60%,var(--jc-border, #20304d))}@media (prefers-reduced-motion: reduce){.jc-btn-primary{transition:none!important}}.post-layout{padding:2.5rem 0}.post-content{--pc-w: min(100%, 1200px);--pc-space: clamp(.75rem, 1.4vw, 1rem);--pc-space-lg: clamp(1rem, 2vw, 1.5rem);max-width:var(--pc-w);margin-inline:auto;background:#fff;border:1px solid var(--jc-border, #e5e7eb);border-radius:14px;padding:clamp(1rem,2.2vw,1.6rem);box-shadow:0 10px 28px #0f172a14;color:var(--jc-text);font-size:clamp(.98rem,.9rem + .2vw,1.05rem);line-height:1.7}.post-content>*+*{margin-top:var(--pc-space)}.post-content :is(h2,h3,h4,h5,h6){font-weight:800;line-height:1.25;letter-spacing:.01em;color:#0b0b0f}.post-content h2{font-size:clamp(1.35rem,1.05rem + 1.5vw,1.8rem);margin-top:calc(var(--pc-space-lg) * 1.2);border-bottom:1px solid color-mix(in srgb,var(--jc-border, #e5e7eb) 70%,transparent);padding-bottom:.35rem}.post-content h3{font-size:clamp(1.15rem,1rem + .8vw,1.35rem);margin-top:var(--pc-space-lg)}.author-card__social{list-style:none;padding:0;margin:.6rem 0 0;display:flex;flex-wrap:wrap;gap:.5rem}.ac-social-btn{--_size: 38px;inline-size:var(--_size);block-size:var(--_size);display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--jc-surface-2);border:1px solid color-mix(in srgb,var(--jc-border) 70%,transparent);color:var(--jc-text);transition:transform .15s ease,background-color .2s ease,border-color .2s ease,color .2s ease}.ac-social-btn:hover{transform:translateY(-1px);background:var(--jc-surface-3);border-color:color-mix(in srgb,var(--jc-border) 85%,transparent)}.ac-ico{inline-size:18px;block-size:18px;background-color:currentColor;-webkit-mask:no-repeat center / contain;mask:no-repeat center / contain;display:block;opacity:.95}.svg-social-linkedin{-webkit-mask-image:url("/dist/assets/linkedin-5MDHWH6K.svg");mask-image:url("/dist/assets/linkedin-5MDHWH6K.svg")}.svg-social-github{-webkit-mask-image:url("/dist/assets/github-V6QUTKQP.svg");mask-image:url("/dist/assets/github-V6QUTKQP.svg")}.svg-social-facebook{-webkit-mask-image:url("/dist/assets/facebook-PPER5W34.svg");mask-image:url("/dist/assets/facebook-PPER5W34.svg")}.svg-social-twitter{-webkit-mask-image:url("/dist/assets/twitter-UKWH2AB5.svg");mask-image:url("/dist/assets/twitter-UKWH2AB5.svg")}.svg-social-youtube{-webkit-mask-image:url("/dist/assets/youtube-VQTALQ3M.svg");mask-image:url("/dist/assets/youtube-VQTALQ3M.svg")}.svg-social-instagram{-webkit-mask-image:url("/dist/assets/instagram-AJDXAY6Q.svg");mask-image:url("/dist/assets/instagram-AJDXAY6Q.svg")}.ac-social-btn.is-linkedin:hover{color:#0a66c2}.ac-social-btn.is-github:hover{color:#24292f}.ac-social-btn.is-facebook:hover{color:#1877f2}.ac-social-btn.is-twitter:hover{color:#1d9bf0}.ac-social-btn.is-youtube:hover{color:#f03}.ac-social-btn.is-instagram:hover{color:#e1306c}html.dark .ac-social-btn{background:var(--jc-surface-3);border-color:color-mix(in srgb,var(--jc-border) 55%,transparent)}html.dark .ac-social-btn:hover{background:color-mix(in srgb,var(--jc-surface-3) 80%,transparent)}@media (max-width: 640px){.author-card__grid{display:flex;flex-direction:column;align-items:center;text-align:center;gap:1rem}.author-card__avatar img{border-radius:50%;max-width:120px;height:auto}.author-card__social{justify-content:center}}.comments-title{display:flex;align-items:center;gap:.5rem;font-size:1.15rem;font-weight:800;line-height:1.3;color:var(--jc-text);margin:1.5rem 0 1rem;border-bottom:1px solid color-mix(in srgb,var(--jc-border) 70%,transparent);padding-bottom:.4rem;letter-spacing:.01em}.comments-ico{display:inline-block;width:18px;height:18px;background-color:currentColor;-webkit-mask:url("/dist/assets/comments-WAZUCWEQ.svg") no-repeat center / contain;mask:url("/dist/assets/comments-WAZUCWEQ.svg") no-repeat center / contain;opacity:.9;transition:opacity .2s ease,transform .15s ease,background-color .2s ease}.comments-title:hover{color:var(--jc-brand);border-color:color-mix(in srgb,var(--jc-brand) 40%,var(--jc-border))}.comments-title:hover .comments-ico{background-color:var(--jc-brand);opacity:1;transform:translateY(-1px)}html.dark .comments-title{color:color-mix(in srgb,var(--jc-text) 92%,#fff 8%);border-color:color-mix(in srgb,var(--jc-border) 60%,transparent)}.post-comments,.comment-form-section{--card-bg: var(--jc-surface-2, #fff);--card-bd: var(--jc-border, #e5e7eb);--tx: var(--jc-text, #0f172a);--muted: var(--jc-muted, #6b7280);--brand: var(--jc-brand, #2563eb);--shadow: 0 6px 18px rgba(15,23,42,.06);--radius: 12px}.post-comments,.jc-comments{--jc-radius: 14px;--jc-pad: clamp(1rem,2.2vw,1.4rem);--jc-gap: clamp(.75rem,1.5vw,1rem);--jc-gap-lg: clamp(1rem,2vw,1.25rem);background:#fff;border:1px solid var(--jc-border, #e5e7eb);border-radius:var(--jc-radius);padding:var(--jc-pad);box-shadow:0 10px 28px #0f172a14;max-width:min(100%,820px);margin-inline:auto}.post-comments,.comment-form-section{margin-block:clamp(1.25rem,3vw,2rem)}.comments-header{display:flex;align-items:center;justify-content:space-between;gap:.9rem;margin-bottom:clamp(.85rem,1.5vw,1.15rem);position:relative}.comments-header--with-sep:after{content:"";position:absolute;inset-inline:0;inset-block-end:-.35rem;height:1px;background:linear-gradient(to right,color-mix(in oklab,var(--card-bd) 10%,transparent),color-mix(in oklab,var(--tx) 22%,transparent),color-mix(in oklab,var(--card-bd) 10%,transparent))}.comments-title{display:inline-flex;align-items:center;gap:.6rem;margin:0;color:var(--tx);font-weight:900;letter-spacing:.2px;line-height:1.1;font-size:clamp(1.15rem,1rem + .7vw,1.5rem)}.comments-count{--bd: color-mix(in srgb, var(--card-bd) 72%, transparent);--bg: color-mix(in srgb, var(--jc-surface-3, #f3f4f6) 68%, transparent);display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-width:34px;padding:.22rem .65rem;font-weight:800;font-size:.95rem;border-radius:999px;border:1px solid var(--bd);background:var(--bg);color:var(--tx);line-height:1;transform:translateZ(0);transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease,border-color .16s ease}.comments-header:hover .comments-count{transform:translateY(-1px);box-shadow:0 6px 14px #0f172a14;border-color:color-mix(in srgb,var(--card-bd) 85%,transparent)}.comments-count.is-accent{border-color:color-mix(in srgb,var(--brand) 40%,var(--bd));background:color-mix(in srgb,var(--brand) 10%,var(--bg))}.comments-actions{display:flex;align-items:center;gap:.5rem}.comments-actions .btn-link{display:inline-flex;align-items:center;gap:.4rem;font-weight:700;text-decoration:none;color:var(--tx);padding:.35rem .55rem;border-radius:8px;border:1px solid transparent;transition:background-color .16s ease,border-color .16s ease}.comments-actions .btn-link:hover{border-color:var(--card-bd);background:color-mix(in srgb,var(--jc-surface-3) 60%,transparent)}html.dark .comments-ico{background:color-mix(in srgb,var(--brand) 18%,transparent);border-color:color-mix(in srgb,var(--brand) 45%,var(--card-bd));box-shadow:0 3px 10px #00000059}html.dark .comments-count{--bd: color-mix(in srgb, var(--card-bd) 70%, transparent);--bg: color-mix(in srgb, var(--jc-surface-3, #0b1220) 75%, transparent);color:color-mix(in srgb,#fff 92%,transparent);box-shadow:0 6px 14px #00000059}@media (prefers-reduced-motion: reduce){.comments-ico,.comments-count,.comments-actions .btn-link{transition:none}}.comments-empty{display:grid;grid-template-columns:auto 1fr;gap:.6rem;align-items:center;padding:.9rem 1rem;border:1px dashed var(--card-bd);border-radius:var(--radius);background:#f8fafc;color:var(--tx)}.comments-empty .empty-ico{opacity:.8}.comments-list{list-style:none;padding:0;margin:0;display:grid;gap:.9rem}.comment-item{margin:0}.comment-card{position:relative;background:var(--card-bg);border:1px solid var(--card-bd);border-radius:var(--radius);padding:clamp(.9rem,1.4vw,1.15rem);box-shadow:var(--shadow);transition:box-shadow .22s ease,transform .22s ease,border-color .22s ease,background-color .22s ease;will-change:transform,box-shadow}.comment-card:before{content:"";position:absolute;inset-block:8px;inset-inline-start:8px;width:3px;border-radius:3px;background:color-mix(in srgb,var(--brand) 0%,transparent);transition:background-color .22s ease,width .22s ease}.comment-card .comment-meta{margin-bottom:.6rem}.comment-card:hover{transform:translateY(-1px);box-shadow:0 10px 22px #0f172a1a;border-color:color-mix(in srgb,var(--card-bd) 80%,transparent)}.comment-card:hover:before{background:color-mix(in srgb,var(--brand) 38%,transparent);width:4px}.comment-card:focus-within{outline:none;box-shadow:0 0 0 3px color-mix(in oklab,var(--brand) 28%,transparent),var(--shadow);border-color:color-mix(in srgb,var(--brand) 45%,var(--card-bd))}.comment-card:focus-within:before{background:color-mix(in srgb,var(--brand) 55%,transparent);width:4px}.comment-card.is-pending{background:color-mix(in srgb,#f59e0b 6%,var(--card-bg));border-color:color-mix(in srgb,#f59e0b 35%,var(--card-bd))}.comment-card.is-pending:before{background:color-mix(in srgb,#f59e0b 45%,transparent)}.comment-card.is-by-author{background:color-mix(in srgb,var(--brand) 5%,var(--card-bg));border-color:color-mix(in srgb,var(--brand) 45%,var(--card-bd))}.comment-card.is-by-author:before{background:color-mix(in srgb,var(--brand) 55%,transparent)}html.dark .comment-card{background:color-mix(in srgb,var(--jc-surface-3, #0b1220) 78%,transparent);border-color:color-mix(in srgb,var(--card-bd) 70%,transparent);box-shadow:0 10px 24px #00000059}html.dark .comment-card:hover{box-shadow:0 12px 28px #0000006b}html.dark .comment-card.is-pending{background:color-mix(in srgb,#f59e0b 10%,var(--jc-surface-3));border-color:color-mix(in srgb,#f59e0b 45%,var(--card-bd))}@media (prefers-reduced-motion: reduce){.comment-card,.comment-card:before{transition:none}}.comment-meta{display:grid;grid-template-columns:auto 1fr;gap:.75rem;align-items:center;margin-bottom:.55rem}.comment-avatar{margin:0;inline-size:44px;block-size:44px;border-radius:50%;overflow:hidden;background:var(--jc-surface-3, #f3f4f6);border:1px solid var(--card-bd);display:grid;place-items:center;box-shadow:0 0 0 3px color-mix(in oklab,var(--brand) 12%,transparent);transition:box-shadow .18s ease,transform .18s ease}.comment-avatar img{width:100%;height:100%;object-fit:cover;display:block}.comment-card:hover .comment-avatar{transform:translateY(-1px);box-shadow:0 0 0 4px color-mix(in oklab,var(--brand) 16%,transparent)}.comment-meta-text{display:inline-flex;gap:.5rem;flex-wrap:wrap;align-items:baseline;min-width:0}.comment-author{color:var(--tx);font-weight:800;line-height:1.1}.comment-author a{color:inherit;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .18s ease,background-color .18s ease}.comment-author a:hover{border-color:color-mix(in srgb,var(--brand) 45%,transparent);background:color-mix(in srgb,var(--brand) 10%,transparent);border-radius:6px;padding-inline:.2rem}.comment-author a:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in oklab,var(--brand) 30%,transparent);border-radius:6px}.comment-meta-text .dot{width:.35rem;height:.35rem;border-radius:50%;background:color-mix(in srgb,var(--muted) 70%,transparent);align-self:center;opacity:.9}.comment-date{color:var(--muted);font-size:.92rem;line-height:1.1;white-space:nowrap}.comment-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.15rem .45rem;border:1px solid color-mix(in srgb,var(--card-bd) 80%,transparent);background:color-mix(in srgb,var(--jc-surface-3, #f3f4f6) 60%,transparent);color:color-mix(in srgb,var(--tx) 90%,transparent);border-radius:999px;font-size:.78rem;font-weight:700;line-height:1}.comment-badge .ico{opacity:.9;display:inline-flex}html.dark .comment-avatar{background:color-mix(in srgb,var(--jc-surface-3, #0b1220) 75%,transparent);border-color:color-mix(in srgb,var(--card-bd) 70%,transparent);box-shadow:0 0 0 3px color-mix(in oklab,var(--brand) 18%,transparent)}html.dark .comment-card:hover .comment-avatar{box-shadow:0 0 0 4px color-mix(in oklab,var(--brand) 22%,transparent)}html.dark .comment-badge{background:color-mix(in srgb,var(--jc-surface-3) 70%,transparent);border-color:color-mix(in srgb,var(--card-bd) 70%,transparent);color:color-mix(in srgb,#fff 90%,transparent)}html.dark .comment-meta-text .dot{background:color-mix(in srgb,var(--muted) 80%,transparent)}@media (max-width: 420px){.comment-avatar{inline-size:40px;block-size:40px}.comment-date{font-size:.88rem}}.comment-content{color:color-mix(in srgb,var(--tx) 95%,transparent);line-height:1.75;font-size:1rem;word-wrap:break-word;overflow-wrap:anywhere}.comment-content>*+*{margin-top:.6rem}.comment-content :is(p,ul,ol){margin:.5rem 0 0}.comment-content a{color:var(--brand);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--brand) 45%,transparent);transition:background-color .18s ease,border-color .18s ease,color .18s ease}.comment-content a:hover{border-color:color-mix(in srgb,var(--brand) 70%,transparent);background:color-mix(in srgb,var(--brand) 10%,transparent)}.comment-content ul{list-style:disc;padding-inline-start:1.1rem}.comment-content ol{list-style:decimal;padding-inline-start:1.1rem}.comment-content li+li{margin-top:.35rem}.comment-content li>:is(ul,ol){margin-top:.35rem}.comment-content blockquote{margin:.9rem 0;padding:.7rem .9rem;background:color-mix(in srgb,var(--brand) 6%,var(--card-bg));border-left:4px solid var(--brand);border-radius:10px;color:color-mix(in srgb,var(--tx) 92%,transparent)}.comment-content blockquote>*:first-child{margin-top:0}.comment-content blockquote>*:last-child{margin-bottom:0}.comment-content strong{font-weight:700}.comment-content em{font-style:italic}.comment-content code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:.95em;background:color-mix(in srgb,var(--card-bg) 70%,transparent);border:1px solid color-mix(in srgb,var(--card-bd) 70%,transparent);padding:.12rem .35rem;border-radius:8px}.comment-content pre{background:color-mix(in srgb,var(--card-bg) 85%,transparent);border:1px solid var(--card-bd);color:color-mix(in srgb,var(--tx) 98%,transparent);border-radius:12px;padding:.85rem 1rem;overflow:auto;box-shadow:inset 0 1px #ffffff08;-webkit-overflow-scrolling:touch}.comment-content pre code{background:transparent;border:0;padding:0;font-size:.95em;white-space:pre}.comment-content img{max-width:100%;height:auto;display:block;border-radius:10px;margin:.6rem auto;box-shadow:0 6px 16px #0f172a0f}.comment-content table{width:100%;border-collapse:collapse;background:var(--card-bg);border:1px solid var(--card-bd);border-radius:10px;overflow:hidden}.comment-content th,.comment-content td{padding:.6rem .7rem;border-bottom:1px solid color-mix(in srgb,var(--card-bd) 70%,transparent)}.comment-content tr:last-child td{border-bottom:0}.comment-content thead th{background:color-mix(in srgb,var(--brand) 12%,var(--card-bg));text-align:left}.comment-content{line-break:anywhere}.comment-content :is(p,li){font-variant-emoji:text}html.dark .comment-content img{box-shadow:0 10px 24px #00000059}html.dark .comment-content blockquote{background:color-mix(in srgb,var(--brand) 12%,var(--card-bg))}.comments-divider{border:0;height:1px;margin:clamp(1rem,2.5vw,2rem) 0;background:linear-gradient(to right,color-mix(in oklab,var(--card-bd) 14%,transparent),color-mix(in oklab,var(--tx) 22%,transparent),color-mix(in oklab,var(--card-bd) 14%,transparent))}@media (max-width: 480px){.comment-content{font-size:.98rem}.comment-content blockquote{padding:.65rem .8rem}}:root{--radius: 12px;--brand: var(--jc-brand, #2563eb);--card-bg: var(--jc-surface-2, #fff);--card-bd: var(--jc-border, #e5e7eb);--tx: var(--jc-text, #0f172a)}.comment-alert{position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:.65rem .75rem;padding:.95rem 1rem;border-radius:var(--radius);border:1px solid var(--card-bd);background:var(--card-bg);color:var(--tx);font-weight:600;line-height:1.45;box-shadow:0 6px 16px #0f172a0f;overflow:hidden;isolation:isolate;transition:box-shadow .18s ease,transform .18s ease}.comment-alert:hover{transform:translateY(-1px);box-shadow:0 10px 22px #0f172a1a}.comment-alert:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius);background:currentColor;opacity:.35;pointer-events:none}.comment-alert__icon{display:inline-flex;align-items:center;justify-content:center;margin-top:.1rem;opacity:.95}.comment-alert__icon svg{width:20px;height:20px}.comment-alert__body{min-width:0}.comment-alert__title{margin:0 0 .2rem;font-weight:800}.comment-alert__desc{margin:0;font-weight:600}.comment-alert__close{align-self:start;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:0;background:transparent;border-radius:8px;cursor:pointer;color:inherit;opacity:.7;transition:background-color .18s ease,opacity .18s ease}.comment-alert__close:hover{opacity:1;background:#0000000a}.comment-alert__close:focus-visible{outline:2px solid color-mix(in srgb,var(--brand) 70%,transparent);outline-offset:2px}.comment-alert.is-success{border-color:color-mix(in srgb,#16a34a 40%,var(--card-bd));background:linear-gradient(to right,color-mix(in srgb,#16a34a 10%,var(--card-bg)),var(--card-bg));color:color-mix(in srgb,#065f46 92%,transparent)}.comment-alert.is-success:before{background:#16a34a;opacity:.5}.comment-alert.is-error{border-color:color-mix(in srgb,#ef4444 45%,var(--card-bd));background:linear-gradient(to right,color-mix(in srgb,#ef4444 10%,var(--card-bg)),var(--card-bg));color:color-mix(in srgb,#7f1d1d 92%,transparent)}.comment-alert.is-error:before{background:#ef4444;opacity:.55}.comment-alert.is-info{border-color:color-mix(in srgb,var(--brand) 45%,var(--card-bd));background:linear-gradient(to right,color-mix(in srgb,var(--brand) 10%,var(--card-bg)),var(--card-bg));color:color-mix(in srgb,var(--brand) 80%,#0b3b9b)}.comment-alert.is-info:before{background:var(--brand);opacity:.5}.comment-alert.is-warning{border-color:color-mix(in srgb,#f59e0b 50%,var(--card-bd));background:linear-gradient(to right,color-mix(in srgb,#f59e0b 12%,var(--card-bg)),var(--card-bg));color:color-mix(in srgb,#92400e 92%,transparent)}.comment-alert.is-warning:before{background:#f59e0b;opacity:.5}.alert.is-dismissible{position:relative;padding-right:2.5rem}.alert-close{position:absolute;top:.75rem;right:.75rem;background:none;border:none;color:inherit;cursor:pointer;padding:.25rem;line-height:1;border-radius:.375rem;transition:background .2s ease}.alert-close:hover,.alert-close:focus-visible{background:var(--jc-surface-3, rgba(0,0,0,.05));outline:none}html.dark .comment-alert{background:color-mix(in srgb,var(--jc-surface-3, #0b1220) 78%,transparent);border-color:color-mix(in srgb,var(--jc-border, #223355) 62%,transparent);box-shadow:0 10px 24px #00000059}html.dark .comment-alert__close:hover{background:#ffffff0f}html.dark .comment-alert.is-success{color:color-mix(in srgb,#d1fae5 92%,#065f46)}html.dark .comment-alert.is-error{color:color-mix(in srgb,#fee2e2 92%,#7f1d1d)}html.dark .comment-alert.is-info{color:color-mix(in srgb,#dbeafe 92%,#1e40af)}html.dark .comment-alert.is-warning{color:color-mix(in srgb,#fef3c7 92%,#92400e)}@media (prefers-reduced-motion: reduce){.comment-alert,.comment-alert:hover{transition:none;transform:none;box-shadow:0 6px 16px #0f172a0f}}:root{--brand: var(--jc-brand, #2563eb);--tx: var(--jc-text, #0f172a);--muted: var(--jc-muted, #6b7280);--card-bg: var(--jc-surface-2, #ffffff);--card-bd: var(--jc-border, #e5e7eb);--surface-3: var(--jc-surface-3, #f3f4f6)}.comment-form{display:grid;gap:1rem}.form-row{display:grid;gap:1rem;grid-template-columns:1fr}@media (min-width: 720px){.form-row{grid-template-columns:1fr 1fr}}.form-field{display:grid;gap:.45rem;position:relative}.form-label{font-weight:700;color:var(--tx);line-height:1.2}.form-field.required .form-label:after{content:" *";color:color-mix(in srgb,var(--brand) 65%,#d1d5db);font-weight:800}.form-input,.form-textarea{width:100%;padding:.78rem .95rem;border-radius:12px;border:1px solid var(--card-bd);background:var(--card-bg);color:var(--tx);transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease,transform .12s ease}.form-input{height:46px}.form-textarea{min-height:140px;resize:vertical}.form-input::placeholder,.form-textarea::placeholder{color:color-mix(in srgb,var(--muted) 80%,#cbd5e1)}.form-input:hover,.form-textarea:hover{border-color:color-mix(in srgb,var(--card-bd) 70%,var(--brand) 30%)}.form-input:focus,.form-textarea:focus{outline:none;border-color:color-mix(in srgb,var(--brand) 65%,var(--card-bd));box-shadow:0 0 0 3px color-mix(in oklab,var(--brand) 26%,transparent);transform:translateZ(0)}.form-input:disabled,.form-textarea:disabled{background:color-mix(in srgb,var(--surface-3) 80%,#fff);border-color:color-mix(in srgb,var(--card-bd) 80%,#fff);color:color-mix(in srgb,var(--tx) 60%,#9ca3af);cursor:not-allowed}.form-hint{color:var(--muted);font-size:.9rem}.form-input.is-invalid,.form-textarea.is-invalid{border-color:color-mix(in srgb,#ef4444 70%,var(--card-bd));box-shadow:0 0 0 3px color-mix(in oklab,#ef4444 22%,transparent)}.form-input.is-valid,.form-textarea.is-valid{border-color:color-mix(in srgb,#16a34a 60%,var(--card-bd));box-shadow:0 0 0 3px color-mix(in oklab,#16a34a 18%,transparent)}.field-error{margin-top:.35rem;font-size:.9rem;color:color-mix(in srgb,#ef4444 92%,#7f1d1d)}.form-field.has-error .form-label{color:color-mix(in srgb,#ef4444 65%,var(--tx))}.form-field.with-icon .field-icon{position:absolute;inset-block-start:50%;inset-inline-end:.8rem;transform:translateY(-50%);pointer-events:none;opacity:.8}.form-field.with-icon .field-icon svg{width:18px;height:18px}input.form-input:-webkit-autofill,textarea.form-textarea:-webkit-autofill{-webkit-box-shadow:0 0 0 30px var(--card-bg) inset!important;-webkit-text-fill-color:var(--tx)!important;transition:background-color 5000s ease-in-out 0s}html.dark .form-label{color:color-mix(in srgb,#fff 96%,transparent)}html.dark .form-input,html.dark .form-textarea{background:color-mix(in srgb,#0b1220 78%,transparent);border-color:color-mix(in srgb,#223355 62%,transparent);color:color-mix(in srgb,#ffffff 94%,transparent)}html.dark .form-input::placeholder,html.dark .form-textarea::placeholder{color:color-mix(in srgb,#9aa7bd 75%,#64748b)}html.dark .form-input:focus,html.dark .form-textarea:focus{border-color:color-mix(in srgb,var(--brand) 70%,#223355);box-shadow:0 0 0 3px color-mix(in oklab,var(--brand) 30%,transparent)}html.dark .field-error{color:color-mix(in srgb,#ef4444 92%,#fca5a5)}.hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.comment-submit{display:inline-flex;align-items:center;justify-content:center;padding:.8rem 1.4rem;border-radius:12px;font-size:.95rem;letter-spacing:.3px;cursor:pointer;border:none;background:var(--jc-brand, #2563eb);color:#fff;box-shadow:0 4px 14px #2563eb40;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease;max-width:200px}.comment-submit:hover{transform:translateY(-2px);box-shadow:0 8px 22px #2563eb59;background:color-mix(in srgb,var(--jc-brand) 92%,white 8%)}.comment-submit:active{transform:translateY(0);box-shadow:0 3px 10px #2563eb40;background:color-mix(in srgb,var(--jc-brand) 85%,black 15%)}.comment-submit:focus-visible{outline:2px solid var(--jc-brand, #2563eb);outline-offset:3px}html.dark .comment-submit{background:var(--jc-brand, #3b82f6);box-shadow:0 4px 14px #2563eb59}html.dark .comment-submit:hover{box-shadow:0 8px 22px #2563eb80}:root{--err: #ef4444;--ok: #16a34a}.form-input.is-invalid,.form-textarea.is-invalid{border-color:color-mix(in srgb,var(--err) 65%,var(--card-bd));box-shadow:0 0 0 3px color-mix(in oklab,var(--err) 22%,transparent)}.form-input.is-valid,.form-textarea.is-valid{border-color:color-mix(in srgb,var(--ok) 55%,var(--card-bd));box-shadow:0 0 0 3px color-mix(in oklab,var(--ok) 18%,transparent)}.field-error{margin-top:.3rem;font-size:.9rem;font-weight:600;color:color-mix(in srgb,var(--err) 88%,#7f1d1d)}.form-field.has-error .form-hint{opacity:.85}.form-field .field-status{position:absolute;inset-inline-end:.6rem;inset-block-start:2.75rem;display:inline-flex;pointer-events:none;opacity:.95}.form-field .field-status svg{width:18px;height:18px}html.dark .comments-title{color:color-mix(in srgb,#fff 96%,transparent)}html.dark .comments-count{border-color:color-mix(in srgb,var(--jc-border, #223355) 58%,transparent);background:color-mix(in srgb,var(--jc-surface-3, #0b1220) 62%,transparent)}html.dark .comments-empty{border-color:color-mix(in srgb,var(--jc-border, #223355) 60%,transparent);background:color-mix(in srgb,var(--jc-surface-3, #0b1220) 70%,transparent)}html.dark .comment-card{background:color-mix(in srgb,var(--jc-surface-3, #0b1220) 78%,transparent);border-color:color-mix(in srgb,var(--jc-border, #223355) 60%,transparent);box-shadow:0 10px 24px #00000059}html.dark .form-input,html.dark .form-textarea{background:color-mix(in srgb,var(--jc-surface-3, #0b1220) 78%,transparent);border-color:color-mix(in srgb,var(--jc-border, #223355) 60%,transparent);color:color-mix(in srgb,#fff 94%,transparent)}html.dark .form-input.is-invalid,html.dark .form-textarea.is-invalid{border-color:color-mix(in srgb,var(--err) 70%,var(--jc-border, #223355));box-shadow:0 0 0 3px color-mix(in oklab,var(--err) 24%,transparent)}html.dark .field-error{color:color-mix(in srgb,var(--err) 92%,#fca5a5)}@media (prefers-reduced-motion: reduce){.comment-card,.comment-submit,.comment-content a{transition:none!important}}.blog-card{--card-bg: var(--jc-surface-2, #fff);--card-bd: var(--jc-border, #e5e7eb);--tx: var(--jc-text, #0f172a);--muted: var(--jc-muted, #64748b);--brand: var(--jc-brand, #2563eb);--radius: 14px;background:var(--card-bg);border:none;border-radius:var(--radius);box-shadow:0 10px 24px #0f172a0f;overflow:hidden;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.blog-card:hover{transform:translateY(-2px);box-shadow:0 14px 32px #0f172a1a}.blog-card__link{display:grid;grid-template-rows:auto 1fr;color:inherit;text-decoration:none;height:100%}.blog-card__media{margin:0;aspect-ratio:16/9;overflow:hidden;background:color-mix(in srgb,var(--card-bd) 40%,transparent)}.blog-card__img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}.blog-card:hover .blog-card__img{transform:scale(1.03)}.blog-card__body{padding:clamp(.85rem,2.2vw,1rem) clamp(.9rem,2.4vw,1.1rem) 1rem;display:grid;gap:.5rem}.blog-card__title{margin:0;font-weight:800;letter-spacing:.2px;color:var(--tx);font-size:clamp(1.05rem,.95rem + .4vw,1.25rem);line-height:1.25;display:-webkit-box;-webkit-line-clamp:var(--title-lines, 2);-webkit-box-orient:vertical;overflow:hidden}.blog-card__excerpt{--lines: 3;--lh: 1.6;margin:.15rem 0 0;color:color-mix(in srgb,var(--tx) 92%,transparent);line-height:var(--lh);font-size:.98rem;display:-webkit-box;-webkit-line-clamp:var(--lines);-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;position:relative}@supports not (-webkit-line-clamp: 3){.blog-card__excerpt{max-height:calc(var(--lines) * 1em * var(--lh));overflow:hidden}.blog-card__excerpt:after{content:"";position:absolute;inset-inline:0;bottom:0;height:2.2em;pointer-events:none;background:linear-gradient(to bottom,rgba(255,255,255,0),var(--card-bg) 60%)}}@media (max-width: 520px){.blog-card__excerpt{--lines: 2}}html.dark .blog-card{--card-bg: color-mix(in srgb, var(--jc-surface-3, #0b1220) 80%, transparent);--card-bd: color-mix(in srgb, var(--jc-border, #1f2a44) 65%, transparent);box-shadow:0 12px 28px #00000059}html.dark .blog-card:hover{border-color:color-mix(in srgb,var(--card-bd) 50%,var(--brand))}html.dark .blog-card__excerpt:after{background:linear-gradient(to bottom,rgba(0,0,0,0),var(--card-bg) 60%)}.post-card-categories{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:0;margin-left:.6rem;margin-bottom:.75rem}.category-tag-card{display:inline-block;padding:.4rem .8rem;border-radius:9999px;font-size:.8rem;font-weight:500;color:color-mix(in srgb,#0f172a 90%,transparent);background-color:color-mix(in srgb,#eef2f7 80%,transparent);border:1px solid var(--jc-border);text-decoration:none;transition:all .2s ease;box-shadow:0 1px 2px #0000000d;margin:0 .45rem}.category-tag-card:hover,.category-tag-card:focus-visible{background-color:color-mix(in srgb,var(--jc-bg) 72%,var(--jc-text) 28%);box-shadow:0 2px 6px #0000001f}.category-tag-card:active{transform:scale(.96)}html.dark .category-tag-card{background-color:var(--jc-surface-3);border-color:var(--jc-border);color:var(--jc-brand-600)}html.dark .category-tag-card:hover,html.dark .category-tag-card:focus-visible{background-color:var(--jc-brand);color:#fff}.post-content figure.wp-block-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;margin:1rem 0;border:1px solid var(--jc-border, #e5e7eb);border-radius:10px;background:var(--jc-surface-1, #fff);--_fade: linear-gradient(to right, transparent, rgba(0,0,0,.12) 30%, rgba(0,0,0,.12) 70%, transparent);mask-image:linear-gradient(to right,transparent 0,#000 16px,#000 calc(100% - 16px),transparent 100%)}.post-content figure.wp-block-table>table{width:100%;border-collapse:collapse;table-layout:auto!important;min-width:480px}.post-content table thead th,.post-content table tbody td{padding:.65rem .75rem;border-bottom:1px solid var(--jc-border, #e5e7eb);vertical-align:top}.post-content table tbody tr:nth-child(odd){background:color-mix(in srgb,var(--jc-surface-1, #fff) 96%,#000 4%)}.post-content table thead th{font-weight:700;text-align:left;background:color-mix(in srgb,var(--jc-surface-1, #fff) 90%,var(--jc-brand, #5b8cff) 10%)}.post-content table td code,.post-content table th code{white-space:normal;word-break:break-word;line-break:anywhere;background:color-mix(in srgb,var(--jc-surface-1, #fff) 92%,#000 8%);padding:.12rem .25rem;border-radius:6px}@media (max-width: 720px){.post-content figure.wp-block-table>table{min-width:600px}.post-content table th:first-child,.post-content table td:first-child{position:sticky;left:0;background:var(--jc-surface-1, #fff);box-shadow:8px 0 12px -10px #0f172a2e;z-index:1}}.site-footer{--footer-thumb-size: 48px;--footer-radius: 12px;--footer-pad: .9rem;background:var(--jc-surface-1);border-top:1px solid var(--jc-border);box-shadow:0 -12px 28px #0f172a0f inset}.site-footer .footer-wrap{max-width:var(--jc-container, 1200px);margin-inline:auto;padding:2.2rem clamp(.75rem,2vw,1rem)}.footer-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr 1fr;gap:clamp(.9rem,2vw,1.2rem);margin:4.5rem 0 8rem}.footer-section{padding:var(--footer-pad)}.footer-brand{display:grid;place-items:start;margin-bottom:.6rem}.footer-socials{display:flex;flex-wrap:wrap;gap:.45rem}.footer-heading{margin:0 0 1rem;font-size:.95rem;font-weight:800;color:var(--jc-text);text-transform:uppercase;letter-spacing:.02em;opacity:.9}.footer-heading{position:relative;padding-bottom:.45rem;isolation:isolate}.footer-heading:before{content:"";position:absolute;left:0;right:0;bottom:.1rem;height:1px;background:color-mix(in srgb,var(--jc-border) 60%,transparent);pointer-events:none}.footer-heading:after{content:"";position:absolute;left:0;bottom:0;height:4px;width:min(56%,160px);border-radius:999px;background:linear-gradient(90deg,var(--jc-muted),color-mix(in srgb,var(--jc-muted) 65%,transparent));transform-origin:left center;transform:scaleX(.72);transition:transform .28s ease,box-shadow .28s ease,background .28s ease;pointer-events:none}.footer-section:hover .footer-heading:after,.footer-section:focus-within .footer-heading:after{transform:scaleX(1);box-shadow:0 1px #0000000f,0 8px 18px color-mix(in srgb,var(--jc-brand) 24%,transparent)}.footer-heading.is-compact:after{width:96px}html.dark .footer-heading:before{background:color-mix(in srgb,var(--jc-border) 75%,transparent)}html.dark .footer-heading:after{box-shadow:0 1px #ffffff0a,0 8px 18px color-mix(in srgb,var(--jc-brand) 32%,transparent)}@media (prefers-reduced-motion: reduce){.footer-heading:after{transition:none;transform:none}}.footer-list{list-style:none;margin:0;padding:0;display:grid;gap:.45rem}.footer-list--grid-2{grid-template-columns:1fr 1fr;gap:.45rem .6rem}.footer-list--simple{display:grid;gap:.35rem .6rem}.footer-list--2col{grid-template-columns:1fr 1fr}.footer-item{display:grid}.footer-item--span-2{grid-column:1 / -1}.footer-list--bulleted{list-style:none;counter-reset:fbullets}.footer-list--bulleted li{position:relative;padding-left:1.2rem;line-height:1.35}.footer-list--bulleted li:before{content:"";position:absolute;left:.25rem;top:.65em;transform:translateY(-50%);width:.42rem;height:.42rem;border-radius:999px;background:color-mix(in srgb,var(--jc-text) 55%,transparent);box-shadow:0 0 0 2px color-mix(in srgb,var(--jc-border) 70%,transparent) inset;transition:background-color .2s ease,box-shadow .2s ease,transform .12s ease}.footer-list--bulleted .footer-link--simple{padding:0;border:0;background:transparent;border-radius:0}.footer-list--bulleted li:hover .footer-link--simple{color:var(--jc-brand)}.footer-list--bulleted li:hover:before{background:var(--jc-brand);box-shadow:0 0 0 2px color-mix(in srgb,var(--jc-brand) 28%,var(--jc-border)) inset;transform:translateY(-50%) scale(1.05)}.footer-list--bulleted .footer-link--simple:focus-visible{outline:2px solid color-mix(in srgb,var(--jc-brand) 60%,transparent);outline-offset:2px;border-radius:6px}@media (max-width: 640px){.footer-list--bulleted li{padding-left:1rem}.footer-list--bulleted li:before{left:.15rem}}html.dark .footer-list--bulleted li:before{background:color-mix(in srgb,var(--jc-text) 65%,transparent);box-shadow:0 0 0 2px color-mix(in srgb,var(--jc-border) 55%,transparent) inset}html.dark .footer-list--bulleted li:hover:before{box-shadow:0 0 0 2px color-mix(in srgb,var(--jc-brand) 38%,var(--jc-border)) inset}.footer-link{display:grid;grid-template-columns:0 1fr auto;align-items:center;gap:.7rem;padding:.6rem .7rem;border-radius:10px;color:var(--jc-text);text-decoration:none;transition:background-color .2s ease,transform .15s ease,color .2s ease,border-color .18s ease}.footer-link:hover{background:var(--jc-surface-3);color:var(--jc-text);transform:translate(1px)}.footer-link--thumb{grid-template-columns:var(--footer-thumb-size) 1fr auto}.footer-link--simple{display:inline-flex;align-items:center;justify-content:flex-start;gap:.45rem;padding:.5rem .65rem;border-radius:10px;color:var(--jc-text);text-decoration:none;transform:none;font-size:.95rem}.footer-link--simple:hover{background:color-mix(in srgb,var(--jc-brand) 12%,var(--jc-surface-2));color:var(--jc-brand);border-color:color-mix(in srgb,var(--jc-brand) 40%,var(--jc-border));transform:translateY(-1px)}.footer-link--all{justify-content:center;font-weight:800;border-style:dashed}.footer-thumb{inline-size:var(--footer-thumb-size);block-size:var(--footer-thumb-size);border-radius:10px;display:grid;place-items:center;overflow:hidden;background:var(--jc-surface-3);border:1px solid color-mix(in srgb,var(--jc-border) 70%,transparent)}.footer-thumb img{width:100%;height:100%;object-fit:contain;display:block}.footer-text{display:flex;flex-direction:column;line-height:1.3}.footer-title{font-weight:600;color:var(--jc-text);font-size:.95rem}.footer-desc{font-size:.8rem;color:var(--jc-muted);margin-top:2px}.footer-badge{display:inline-flex;align-items:center;white-space:nowrap;padding:.15rem .5rem;margin-inline-start:.45rem;border-radius:999px;font-size:.72rem;font-weight:800;letter-spacing:.2px;color:var(--jc-brand);background:color-mix(in srgb,var(--jc-brand) 12%,var(--jc-surface-1));border:1px solid color-mix(in srgb,var(--jc-brand) 45%,var(--jc-border));box-shadow:0 2px 6px #0f172a0f}.f-external-icon{display:inline-block;width:1em;height:1em;background-color:currentColor;opacity:.9;-webkit-mask:url("/dist/assets/external-6VOJSE7Y.svg") no-repeat center / contain;mask:url("/dist/assets/external-6VOJSE7Y.svg") no-repeat center / contain;transition:opacity .2s ease,transform .2s ease}.footer-link:hover .f-external-icon{opacity:1;transform:translateY(-1px)}.f-icon-swatch{background:var(--jc-surface-3);border:1px solid color-mix(in srgb,var(--jc-border) 70%,transparent);border-radius:10px}.f-svg{inline-size:calc(var(--footer-thumb-size) * .66);block-size:calc(var(--footer-thumb-size) * .66);background-color:currentColor;-webkit-mask:no-repeat center / contain;mask:no-repeat center / contain;display:block;opacity:.95;transition:background-color .2s ease,opacity .2s ease,transform .15s ease}.f-svg-grid{-webkit-mask-image:url("/dist/assets/grid-R4PBZZ4N.svg");mask-image:url("/dist/assets/grid-R4PBZZ4N.svg")}.footer-link:hover .f-svg{background-color:var(--jc-brand);opacity:1;transform:translateY(-1px)}.footer-nav{margin-top:clamp(1rem,3vw,1.5rem);border-top:1px solid color-mix(in srgb,var(--jc-border) 80%,transparent);border-bottom:1px solid color-mix(in srgb,var(--jc-border) 80%,transparent);background:color-mix(in srgb,var(--jc-surface-2) 55%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.footer-nav-list{--_pad-x: clamp(.5rem, 2vw, 1rem);list-style:none;margin:0;padding:.6rem var(--_pad-x);display:flex;flex-wrap:wrap;gap:.35rem .9rem;align-items:center;justify-content:center}.footer-nav-list a{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .65rem;border-radius:999px;font-size:.95rem;color:var(--jc-text);text-decoration:none;transition:background-color .2s ease,color .2s ease,transform .12s ease}.footer-nav-list a:hover{background:color-mix(in srgb,var(--jc-brand) 12%,transparent);color:var(--jc-brand);transform:translateY(-1px)}.footer-nav-sep{width:1px;height:18px;background:linear-gradient(to bottom,color-mix(in oklab,var(--jc-border) 20%,transparent),color-mix(in oklab,var(--jc-text) 22%,transparent),color-mix(in oklab,var(--jc-border) 20%,transparent));margin:0 .25rem}.footer-bottom{display:flex;flex-wrap:wrap;gap:.6rem 1rem;align-items:center;justify-content:space-between;margin-top:clamp(1.25rem,3vw,1.75rem);padding-top:1rem;border-top:1px dashed color-mix(in srgb,var(--jc-border) 70%,transparent)}.footer-copy{color:var(--jc-muted);font-size:.95rem}.footer-brand-link{font-weight:800;color:var(--jc-text)}.footer-brand-link:hover{color:var(--jc-brand)}.footer-mini{list-style:none;padding:0;margin:0;display:flex;gap:.9rem}.footer-mini a{color:var(--jc-muted);font-weight:600}.footer-mini a:hover{color:var(--jc-brand)}html.dark .site-footer{box-shadow:0 -12px 28px #0000002e inset}html.dark .footer-badge{color:color-mix(in srgb,#fff 96%,var(--jc-brand) 0%);background:color-mix(in srgb,var(--jc-brand) 28%,var(--jc-surface-2));border-color:color-mix(in srgb,var(--jc-brand) 55%,var(--jc-border))}html.dark .footer-bottom{border-top-color:color-mix(in srgb,var(--jc-border) 40%,transparent)}html.dark .footer-nav{background:color-mix(in srgb,var(--jc-surface-2) 70%,transparent);border-color:color-mix(in srgb,var(--jc-border) 60%,transparent)}@media (max-width: 1024px){.footer-grid{grid-template-columns:1fr 1fr}}@media (max-width: 640px){.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;align-items:flex-start}.footer-list--2col{grid-template-columns:1fr}}@media (max-width: 480px){.site-footer{--footer-thumb-size: 40px}.footer-link{grid-template-columns:0 1fr auto}.footer-link--thumb{grid-template-columns:28px 1fr auto}}.legacy-toggle-link{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:999px;background:var(--jc-surface-2);color:var(--jc-text);border:1px solid color-mix(in srgb,var(--jc-border) 70%,transparent);text-decoration:none;font-size:.95rem;transition:transform .12s ease,background-color .2s ease,color .2s ease,border-color .2s ease}.legacy-toggle-link:hover{transform:translateY(-1px);background:var(--jc-surface-3);color:var(--jc-brand);border-color:color-mix(in srgb,var(--jc-brand) 35%,var(--jc-border))}.legacy-toggle-ico{width:1em;height:1em;background-color:currentColor;display:inline-block;-webkit-mask:url("/dist/assets/external-6VOJSE7Y.svg") no-repeat center/contain;mask:url("/dist/assets/external-6VOJSE7Y.svg") no-repeat center/contain;opacity:.9}html.dark .legacy-toggle-link{background:var(--jc-surface-3);border-color:color-mix(in srgb,var(--jc-border) 55%,transparent)}.post-content .wp-block-list,.post-content ul,.post-content ol{max-width:100%;overflow:hidden}.post-content li{min-width:0}.post-content li a,.post-content p a,.post-content td a,.post-content .wp-block-list a{overflow-wrap:anywhere;word-break:break-word;line-break:auto}.post-content li,.post-content p,.post-content td{overflow-wrap:anywhere;word-break:break-word}.post-content .wp-block-list{padding-left:1.25rem}.post-content pre{white-space:pre;overflow-x:auto;-webkit-overflow-scrolling:touch}.u-break{overflow-wrap:anywhere;word-break:break-word}@media (max-width: 640px){.footer-bottom{flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:.6rem}.footer-copy{margin:0;text-align:center}.legacy-toggle-link{text-align:center;margin-top:.7rem}}.ads-container .ads-desktop{display:none}.ads-container .ads-mobile{display:block;text-align:center}@media (min-width: 769px){.ads-container .ads-desktop{display:block;text-align:center}.ads-container .ads-mobile{display:none}}.ads-placeholder{display:grid;gap:.5rem;padding:1rem;border:1px dashed color-mix(in srgb,var(--jc-border, #e5e7eb) 70%,transparent);border-radius:12px;background:color-mix(in srgb,var(--jc-surface-2, #f8fafc) 70%,transparent);color:color-mix(in srgb,var(--jc-text, #0f172a) 70%,transparent);text-align:center}.ads-placeholder .ph{display:inline-grid;place-items:center;min-height:90px;padding:.5rem 1rem;border-radius:10px;background:color-mix(in srgb,var(--jc-surface-1, #fff) 85%,transparent);border:1px solid color-mix(in srgb,var(--jc-border, #e5e7eb) 80%,transparent);font-weight:700}.ads-placeholder .ph-desktop{min-width:728px}.ads-placeholder .ph-mobile{min-width:100%;min-height:80px}@media (max-width: 768px){.ads-placeholder .ph-desktop{display:none}}.footer-intro{position:relative;margin-top:1.3rem;padding:.4rem .6rem .4rem .9rem;font-size:.95rem;line-height:1.6;color:color-mix(in srgb,var(--jc-text) 92%,transparent);background:color-mix(in srgb,var(--jc-surface-2) 35%,transparent);border:1px solid color-mix(in srgb,var(--jc-border) 75%,transparent);border-radius:10px;box-shadow:0 4px 14px #0f172a0d;transition:border-color .2s ease,box-shadow .2s ease,transform .12s ease}.footer-intro:hover{border-color:color-mix(in srgb,var(--jc-brand) 40%,var(--jc-border));box-shadow:0 6px 18px #0f172a14;transform:translateY(-1px)}.u-highlight{font-weight:800;color:var(--jc-text);position:relative;padding-bottom:1px;box-decoration-break:clone}.u-highlight:after{content:"";position:absolute;left:0;right:0;bottom:0;height:.35em;transform:translateY(15%);background:linear-gradient(90deg,color-mix(in srgb,var(--jc-brand) 28%,transparent),color-mix(in srgb,var(--jc-brand) 16%,transparent));border-radius:4px;pointer-events:none;z-index:-1}html.dark .footer-intro{color:color-mix(in srgb,var(--jc-text) 96%,transparent);background:color-mix(in srgb,var(--jc-surface-2) 60%,transparent);border-color:color-mix(in srgb,var(--jc-border) 55%,transparent);box-shadow:0 4px 16px #00000038}@media (max-width: 480px){.footer-brand img,.footer-brand svg{height:24px}.footer-intro{font-size:.93rem}}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.error-section{display:flex;align-items:center;justify-content:center;min-height:60vh;text-align:center;background:var(--jc-app-bg);padding:3rem 1rem}.error-box{max-width:600px;margin:auto}.error-code{font-size:clamp(3rem,8vw,6rem);font-weight:800;color:var(--jc-brand);margin-bottom:.5rem;line-height:1}.error-title{font-size:1.5rem;font-weight:600;color:var(--jc-text);margin-bottom:1rem}.error-description{color:var(--jc-muted);font-size:1rem;margin-bottom:2rem}.error-btn{display:inline-block;background:var(--jc-brand);color:#fff;padding:.75rem 1.5rem;border-radius:.5rem;box-shadow:var(--jc-shadow-sm);transition:background .2s ease;text-decoration:none}.error-btn:hover{background:var(--jc-brand-600);color:#fff;text-decoration:none}
