#root{margin:0;padding:0;max-width:none;text-align:initial}.menu-item.is-active>.menu-row .menu-link{color:var(--primary);opacity:1}.menu-item.is-active>.menu-row .dropdown-toggle{color:var(--primary)}.submenu-link.active{background:#3dd6ff1f;border-color:#3dd6ff47;color:var(--primary)}:root{--logo-ink: #E8F1FF;--bg: #0B0F14;--surface: #111826;--surface-2: #0E1622;--text: #E8F1FF;--muted: #9EB3C9;--primary: #3DD6FF;--accent: #7C4DFF;--ok: #1DE9B6;--warn: #FFB300;--radius: 14px;--shadow: 0 10px 30px rgba(0,0,0,.35), inset 0 0 0 1px rgba(255,255,255,.02);--maxw: 1200px;--grid: radial-gradient(1px 1px at 25px 25px, rgba(255,255,255,.06) 0, transparent 60%) 0 0/50px 50px, radial-gradient(1px 1px at 0 0, rgba(255,255,255,.05) 0, transparent 60%) 0 0/50px 50px;--glass: rgba(255,255,255,.06);--glass-border: rgba(255,255,255,.12);--hero-grad: radial-gradient(1200px 600px at 80% -10%, rgba(60,195,255,.25), transparent 55%), radial-gradient(900px 500px at -10% 10%, rgba(124,77,255,.2), transparent 50%);--nav-h: 64px;--pcb-tile: url(./assets/img/patterns/pcb-tile.png);--pcb-tile-size: 512px 512px;--logo-tourbillon: url(/assets/logo-tourbillon-BR7i8qew.svg)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,"Apple Color Emoji","Segoe UI Emoji";color:var(--text);background:var(--bg);background-image:var(--grid);line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background-image:var(--pcb-tile);background-repeat:repeat;background-size:var(--pcb-tile-size);opacity:.08}main,header,footer{position:relative;z-index:2}a{color:var(--primary);text-decoration:none;transition:color .3s}a:hover{color:#5adbff}.container{max-width:var(--maxw);margin:0 auto;padding:0 20px}.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}.skip-link:focus{position:fixed;left:16px;top:16px;width:auto;height:auto;padding:8px 12px;background:var(--surface);color:var(--text);border:1px solid var(--glass-border);border-radius:8px;z-index:1000}.nav{position:sticky;top:0;z-index:50;background:linear-gradient(180deg,#0b0f14d9,#0b0f14a6);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.06)}.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:var(--nav-h);gap:.75rem}.brand{display:flex;align-items:center;gap:.75rem;font-weight:700;letter-spacing:.2px}.brand .mark{width:34px;height:34px;display:block;border-radius:8px;transition:transform .3s}.brand .mark:hover{transform:scale(1.05)}.nav a{color:var(--text);opacity:.88;transition:opacity .2s,color .2s}.nav a:hover{opacity:1}.nav a.active{color:var(--primary);opacity:1}.menu-root{display:flex;align-items:center;gap:6px;padding:0;margin:0;list-style:none}.menu-item{position:relative}.menu-row{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:12px;transition:background .15s ease}.menu-row:hover,.menu-row:focus-within{background:#ffffff0f}.menu-link{display:inline-flex;align-items:center;padding:0;border-radius:10px}.menu-parent{background:transparent;border:none;color:var(--text);opacity:.88;font:inherit;cursor:pointer;display:inline-flex;align-items:center;gap:10px;padding:0;border-radius:10px;transition:opacity .15s ease}.menu-parent:hover{opacity:1}.menu-parent:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:10px}.menu-parent .chev{display:inline-block;font-size:.85rem;opacity:.75;transition:transform .18s ease,opacity .18s ease}.menu-item.is-open .menu-parent .chev{opacity:1;transform:translateY(1px)}.submenu{list-style:none;margin:0;padding:8px;position:absolute;top:calc(100% + 8px);left:0;min-width:280px;z-index:60;border:1px solid rgba(255,255,255,.12);background:#111826f5;border-radius:14px;box-shadow:0 18px 50px #00000059;opacity:0;transform:translateY(-6px) scale(.98);pointer-events:none;transition:opacity .18s ease,transform .18s ease}.submenu:before{content:"";position:absolute;top:-10px;left:0;width:100%;height:10px}.menu-item.is-open .submenu{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.submenu-link{display:block;padding:10px;border-radius:12px;color:#e8f1ffe0;text-decoration:none;transition:background .15s ease,color .15s ease}.submenu-link:hover{background:#ffffff12;color:#e8f1ff}.menu-toggle{background:#ffffff0f;border:1px solid var(--glass-border);width:42px;height:42px;border-radius:10px;color:var(--text);cursor:pointer;display:none;place-items:center}.menu-toggle .menu-icon,.menu-toggle .menu-icon:before,.menu-toggle .menu-icon:after{content:"";display:block;width:22px;height:2px;background:var(--text);border-radius:2px}.menu-toggle .menu-icon:before{transform:translateY(-6px)}.menu-toggle .menu-icon:after{transform:translateY(6px)}@media(max-width:900px){.menu-root{display:none}.menu-toggle{display:grid}}.st-dd{min-width:280px;padding:8px;border:1px solid rgba(255,255,255,.12);background:#111826f5;border-radius:14px;box-shadow:0 18px 50px #00000059;z-index:300}.st-overlay{position:fixed;inset:0;background:#00000073;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:200}.st-sheet{position:fixed;inset:0;background:#0b0f14f0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:210;padding:14px 16px 18px}.st-sheet-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.08)}.st-close{width:44px;height:44px;border-radius:12px;border:1px solid rgba(255,255,255,.14);background:#ffffff0f;color:var(--text);font-size:28px;line-height:1;cursor:pointer}.st-mobile-nav{border:1px solid rgba(255,255,255,.1);background:#ffffff05;border-radius:18px;padding:10px}.st-mobile-list{display:flex;flex-direction:column;gap:6px}.st-mobile-link,.st-acc-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;padding:14px;border-radius:14px;border:1px solid transparent;background:transparent;color:var(--text);text-decoration:none}.st-mobile-link:hover,.st-acc-trigger:hover{background:#ffffff0d}.st-mobile-link.active{background:#3dd6ff1a;border-color:#3dd6ff47;color:var(--primary)}.st-acc{display:flex;flex-direction:column;gap:6px}.st-acc-item{width:100%}.st-acc-trigger{cursor:pointer}.st-acc-item.is-active .st-acc-trigger{background:#3dd6ff14;border-color:#3dd6ff38;color:var(--primary)}.st-acc-content{overflow:hidden;padding-top:10px}.st-acc-content[data-state=closed]{animation:st-acc-up .18s ease-out}.st-acc-content[data-state=open]{animation:st-acc-down .18s ease-out}@keyframes st-acc-down{0%{height:0}to{height:var(--radix-accordion-content-height)}}@keyframes st-acc-up{0%{height:var(--radix-accordion-content-height)}to{height:0}}.st-submenu{list-style:none;margin:0;padding:0 0 0 10px;display:flex;flex-direction:column;gap:10px}.st-sheet .submenu-link{width:100%;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:12px}.st-sheet .submenu-link.active{background:#3dd6ff1f;border-color:#3dd6ff47;color:var(--primary)}.hero{position:relative;overflow:hidden;background:var(--hero-grad)}.hero .inner{display:grid;gap:2rem;align-items:center;grid-template-columns:1.2fr .8fr;padding:clamp(48px,6vw,96px) 0}@media(max-width:900px){.hero .inner{grid-template-columns:1fr}.hero .tourbillon-wrap{display:none}}h1{font-size:clamp(28px,4.4vw,52px);line-height:1.1;margin:.25rem 0 .8rem}.lead{font-size:clamp(16px,2vw,18px);color:var(--muted);max-width:58ch}.actions{display:flex;gap:1rem;margin-top:1.25rem;flex-wrap:wrap}.btn{display:inline-block;padding:.85rem 1.1rem;border-radius:12px;font-weight:600;border:1px solid var(--glass-border);color:var(--text);transition:transform .3s,box-shadow .3s}.btn:hover{transform:translateY(-2px);box-shadow:0 4px 15px #0003}.btn.primary{background:linear-gradient(145deg,#3dd6ff,#7c4dff);color:#04121a;border-color:transparent}.btn.ghost{background:#ffffff0a}.badges{display:flex;gap:.75rem;margin-top:1rem;flex-wrap:wrap}.badge{font-size:.85rem;padding:.35rem .6rem;border-radius:999px;background:#ffffff0f;border:1px solid var(--glass-border)}.tourbillon-wrap{display:grid;place-items:center}.tourbillon-logo{width:min(420px,90vw);height:min(420px,90vw);background-image:var(--logo-tourbillon);background-repeat:no-repeat;background-position:center;background-size:contain;filter:brightness(0) invert(1)}section{padding:72px 0;scroll-margin-top:calc(var(--nav-h) + 12px)}.section-head{margin-bottom:26px}.section-eyebrow{color:var(--muted);text-transform:uppercase;letter-spacing:.18em;font-size:.85rem}section h2{font-size:clamp(22px,3.2vw,36px);margin:.25rem 0 .6rem}.kicker{color:var(--muted);max-width:62ch}.grid{display:grid;gap:18px}.grid.cols-3{grid-template-columns:repeat(3,1fr)}.grid.cols-2{grid-template-columns:repeat(2,1fr)}@media(max-width:980px){.grid.cols-3{grid-template-columns:1fr 1fr}}@media(max-width:640px){.grid.cols-3,.grid.cols-2{grid-template-columns:1fr}}.card{background:var(--surface);border:1px solid var(--glass-border);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow);transition:transform .3s,box-shadow .3s}.card:hover{transform:translateY(-4px);box-shadow:0 14px 40px #00000073}.card h3{margin:.2rem 0 .25rem;font-size:1.15rem}.card p{color:var(--muted);margin:.4rem 0 0}.icon{width:44px;height:44px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(145deg,#3dd6ff2e,#7c4dff29);border:1px solid var(--glass-border);margin-bottom:.6rem}.icon svg{width:24px;height:24px;fill:var(--primary)}.timeline{display:grid;grid-template-columns:24px 1fr;gap:14px;position:relative}.step{display:contents}.step .dot{grid-column:1;width:14px;height:14px;border-radius:50%;background:var(--primary);margin-top:.35rem;box-shadow:0 0 0 6px #3dd6ff1f;justify-self:center}.step .content{grid-column:2;background:var(--surface);border:1px solid var(--glass-border);padding:14px 16px;border-radius:12px;margin-bottom:14px}.timeline:before{content:"";position:absolute;left:11px;top:0;bottom:0;width:2px;background:linear-gradient(180deg,#3dd6ff4d,#7c4dff33);z-index:0}.step .dot,.step .content{position:relative;z-index:1}.carousel-container{position:relative;max-width:var(--maxw);margin:0 auto;overflow:hidden}.carousel-track{display:flex;transition:transform .5s ease-in-out;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-bottom:20px;gap:18px}.carousel-item{flex:0 0 auto;width:calc(33.333% - 12px);min-width:300px;scroll-snap-align:start}@media(max-width:980px){.carousel-item{width:calc(50% - 9px)}}@media(max-width:640px){.carousel-item{width:100%}}.carousel-nav{position:absolute;top:50%;width:100%;display:flex;justify-content:space-between;transform:translateY(-50%);pointer-events:none}.carousel-nav button{background:#111826cc;border:1px solid var(--glass-border);border-radius:50%;width:40px;height:40px;display:grid;place-items:center;color:var(--text);font-size:1.5rem;cursor:pointer;transition:background .3s,transform .3s;pointer-events:auto;z-index:20}.carousel-nav button:hover{background:#3dd6ff33;transform:scale(1.05)}.card.image{padding:0;overflow:hidden}.thumb{aspect-ratio:16 / 9;background-image:linear-gradient(145deg,#3dd6ff1f,#7c4dff1f),radial-gradient(120% 90% at 20% 10%,rgba(61,214,255,.22),transparent 60%),radial-gradient(120% 90% at 80% 0%,rgba(124,77,255,.22),transparent 60%);display:grid;place-items:end}.thumb .tag{margin:10px;padding:.35rem .6rem;border-radius:999px;font-size:.8rem;background:#00000059;border:1px solid rgba(255,255,255,.2)}.card.image .body{padding:18px}footer{border-top:1px solid rgba(255,255,255,.08);padding:30px 0 50px;color:var(--muted);background:linear-gradient(180deg,rgba(124,77,255,.08),transparent 40%)}.footer-grid{display:grid;gap:18px;grid-template-columns:1.4fr .8fr .8fr}@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:640px){.footer-grid{grid-template-columns:1fr}}.subtle{color:var(--muted);font-size:.95rem}.scroll-to-top{position:fixed;bottom:25px;right:25px;background:var(--primary);color:var(--bg);border:none;border-radius:50%;width:48px;height:48px;font-size:1.8rem;display:grid;place-items:center;cursor:pointer;box-shadow:var(--shadow);opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s,transform .3s;z-index:100}.scroll-to-top.show{opacity:1;visibility:visible}.scroll-to-top:hover{transform:translateY(-3px);background:#5adbff}.logo-icon{background-image:var(--logo-tourbillon);background-repeat:no-repeat;background-position:center;background-size:contain;filter:brightness(0) invert(1)}a:focus,button:focus,input:focus,textarea:focus{outline:2px solid var(--primary);outline-offset:2px;border-radius:8px}#portafolio .card.image .thumb{background-size:contain;background-color:#0b0f14}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto}}.nav .brand{opacity:1}.nav .brand .mark{opacity:1;filter:brightness(0) invert(1)}
