/* Interfaz pública de grafem. Tokens oficiales + componentes; sin puente Lynora. */
@font-face{font-family:'JetBrains Mono';src:url('/fonts/jetbrains-mono-regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
:root{--font-mono:'JetBrains Mono',ui-monospace,monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px;overflow-x:clip}body{margin:0;background:var(--surface);color:var(--ink);font:400 16px/1.625 var(--font-sans);text-rendering:optimizeLegibility}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a{color:var(--link);text-underline-offset:.2em}a:hover{text-decoration-thickness:2px}button{cursor:pointer}img,svg{max-width:100%}img{display:block;height:auto}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;letter-spacing:-.02em;text-wrap:balance;color:var(--ink);margin:0 0 var(--space-4)}h1{font-size:52px;line-height:1.12;max-width:22ch}h2{font-size:28px;line-height:1.3}h3{font-size:20px;line-height:1.4}h4{font-size:16px;line-height:1.5}p{margin:0 0 var(--space-4);max-width:72ch}small{font-size:13px}strong,b{font-weight:700}ul,ol{padding-left:var(--space-6)}li{margin-block:var(--space-2)}::selection{background:var(--grafem-200);color:var(--grafem-900)}:focus-visible{outline:2px solid var(--focus);outline-offset:4px}input,textarea{caret-color:var(--accent)}html{scrollbar-color:var(--grafem-300) var(--surface-sunken)}[hidden],.is-hidden{display:none!important}.container{width:min(1120px,calc(100% - var(--space-12)));margin-inline:auto}.section,section[id]{scroll-margin-top:96px}.section{padding-block:var(--space-24)}.section-heading{max-width:760px;margin-bottom:var(--space-12)}.section-heading>p:last-child{color:var(--ink-muted)}.eyebrow,.hero-eyebrow{display:flex;align-items:center;gap:var(--space-2);font:500 14px/1.5 var(--font-sans);letter-spacing:0;text-transform:none;color:var(--ink-brand);margin-bottom:var(--space-4)}.eyebrow::before,.hero-eyebrow::before{content:'';width:6px;height:6px;flex:none;border-radius:var(--radius-pill);background:var(--gradient-marca)}.skip-link{position:fixed;top:var(--space-2);left:var(--space-2);z-index:1000;padding:var(--space-3) var(--space-4);background:var(--surface-raised);transform:translateY(-200%)}.skip-link:focus{transform:none}
/* Navegación: conserva los controles y el contrato accesible del menú. */
.header{position:sticky;top:0;z-index:50;background:var(--surface-raised);border-bottom:1px solid var(--line)}.header-shell{display:flex;align-items:center;gap:var(--space-8);min-height:80px;width:min(1200px,calc(100% - var(--space-12)));margin:auto}.logo-link{flex:none}.logo-img{width:126px;height:auto}.logo-dark-version{display:none}[data-theme=dark] .logo-light-version{display:none}[data-theme=dark] .logo-dark-version{display:block}.site-nav{display:flex;align-items:center;gap:var(--space-1);margin-left:auto}.site-nav a{font-size:14px;font-weight:500;line-height:1.5;text-decoration:none;padding:var(--space-2) var(--space-3);border-radius:var(--radius-pill);color:var(--ink);white-space:nowrap}.site-nav a:hover,.site-nav a[aria-current]{background:var(--surface-tint);color:var(--ink-brand)}[data-theme=light] .site-nav a[aria-current]{background:var(--grafem-100)}.header-actions{display:flex;align-items:center;gap:var(--space-2)}.theme-toggle,.mobile-menu-button,.theme-toggle-floating{display:grid;place-items:center;flex:none;width:40px;height:40px;padding:var(--space-2);border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface-raised);color:var(--ink)}.theme-toggle svg,.mobile-menu-button svg{width:20px;height:20px}.sun-icon{display:none}[data-theme=dark] .moon-icon{display:none}[data-theme=dark] .sun-icon{display:block}.mobile-menu-button{display:none}.mobile-nav-overlay{position:fixed;inset:0;z-index:100;display:none;background:var(--surface-sunken);overflow:auto}.mobile-nav-overlay.active{display:block}.mobile-nav-panel{padding:var(--space-6);max-width:560px;margin:auto}.mobile-nav-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-8)}.mobile-nav-head .mobile-menu-button{display:grid}.mobile-nav-logo{width:126px;height:auto}.mobile-nav-links{display:grid;gap:var(--space-2)}.mobile-nav-link{padding:var(--space-3) var(--space-4);color:var(--ink);font-size:20px;text-decoration:none;border-radius:var(--radius-md)}.mobile-nav-link:hover{background:var(--surface-tint)}.mobile-nav-actions{display:flex;gap:var(--space-4);margin-top:var(--space-8)}
.btn,.btn-submit,.primary-button,.primary-action{display:inline-flex;justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-6);min-height:48px;border:1px solid transparent;border-radius:var(--radius-pill);font:500 15px/1.4 var(--font-sans);text-decoration:none;transition:background .18s ease,color .18s ease}.btn-primary,.btn-submit,.primary-button{background:var(--accent);color:var(--on-accent)}.btn-primary:hover,.btn-submit:hover,.primary-button:hover{background:var(--accent-hover);color:var(--on-accent)}.btn-secondary{background:transparent;border-color:var(--line-strong);color:var(--ink-brand)}.btn-secondary:hover{background:var(--surface-tint)}.btn:disabled,.btn-submit:disabled{opacity:.5;cursor:wait}.header .btn{min-height:40px;padding:var(--space-2) var(--space-4)}.text-link,.hero-text-link{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:500}.hero-text-link svg{width:16px;height:16px}.liquid-nav-indicator{display:none}
/* Portada y bloques de datos. */
.hero-workbench{padding-block:var(--space-16)}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:var(--space-12)}.hero-lead{color:var(--ink-muted);font-size:19px;line-height:1.6;margin-top:var(--space-6)}.hero-actions{display:flex;gap:var(--space-6);align-items:center;flex-wrap:wrap;margin-top:var(--space-8)}.hero-editorial{position:relative;margin:0;aspect-ratio:1/1;border-radius:var(--radius-xl);background:var(--gradient-marca)}.hero-editorial picture,.hero-editorial picture img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.hero-source-slip{position:absolute;left:calc(-1 * var(--space-6));right:var(--space-8);bottom:var(--space-8);padding:var(--space-6);border-radius:var(--radius-lg);background:var(--surface-raised);color:var(--ink);box-shadow:var(--shadow-md)}.hero-source-slip>span{font-size:13px;color:var(--ink-muted)}.hero-source-slip>strong{display:block;font:600 20px/1.4 var(--font-display);margin:var(--space-2) 0 var(--space-4)}.hero-source-slip dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);margin:0}.hero-source-slip dt{font-size:13px;color:var(--ink-muted)}.hero-source-slip dd{margin:var(--space-1) 0 0;font:400 13px/1.5 var(--font-num)}.proof-strip{border-block:1px solid var(--line);background:var(--surface-raised)}.proof-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.proof-grid article{padding:var(--space-6);border-right:1px solid var(--line)}.proof-grid article:first-child{padding-left:0}.proof-grid article:last-child{border:0}.proof-grid strong,.gf-stat__value{display:block;font:400 32px/1.25 var(--font-num);color:var(--ink-brand)}.proof-grid span,.gf-stat__label{font-size:14px;color:var(--ink-muted)}
.method-grid,.solution-grid,.tenders-landing-grid,.heor-landing-grid,.workflow-layout,.library-landing-grid,.api-landing-grid,.coverage-grid,.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-12);align-items:start}.method-media{margin:0}.method-media img{max-height:380px;object-fit:contain}.method-ledger{display:grid;gap:var(--space-3)}.method-ledger div{border-top:1px solid var(--line);padding-top:var(--space-3)}dt{color:var(--ink-muted);font-size:14px}dd{margin:var(--space-1) 0 0}.problem-section,.library-landing-section,.workflow-section{background:var(--surface-sunken)}.product-points,.heor-landing-points,.api-landing-points{padding-left:var(--space-6);color:var(--ink-muted)}.product-editorial-media{display:none}.data-readout,.tender-example-sheet,.heor-example-window,.export-preview{padding:var(--space-6);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-raised);color:var(--ink)}.readout-kicker,.tender-example-head,.heor-example-head{font:500 13px/1.5 var(--font-sans);color:var(--ink-muted);padding-bottom:var(--space-4);border-bottom:1px solid var(--line)}.data-readout h3,.heor-example-study h3,.tender-example-body h3{margin-top:var(--space-4)}.data-readout dl{margin-block:var(--space-6)}.data-readout dl>div,.tender-example-body dl>div{display:flex;justify-content:space-between;gap:var(--space-4);padding-block:var(--space-2);border-bottom:1px solid var(--line)}.data-readout dd,.tender-example-price strong,.is-value strong,.export-preview td{font:400 14px/1.5 var(--font-num)}.readout-tags{display:flex;gap:var(--space-2);flex-wrap:wrap;font-size:13px;color:var(--ink-muted)}.tender-example-classification,.tender-example-price span{font-size:13px;color:var(--ink-muted)}.tender-example-price{margin:var(--space-6) 0}.tender-example-price strong{font-size:32px;display:block}.tender-example-body dl{margin:0}.tender-example-sheet footer,.heor-example-window footer{padding-top:var(--space-4);margin-top:var(--space-4);border-top:1px solid var(--line);color:var(--ink-muted);font-size:13px}.heor-example-query{display:flex;gap:var(--space-8);padding-top:var(--space-4)}.heor-example-query small,.heor-example-query strong{display:block;font-size:13px}.heor-example-query small{color:var(--ink-muted)}.heor-example-study>p,.heor-example-study>span{font-size:13px;color:var(--ink-muted);overflow-wrap:anywhere}.heor-example-evidence>div{display:flex;justify-content:space-between;gap:var(--space-3);padding-block:var(--space-2);border-top:1px solid var(--line);font-size:13px}.heor-example-evidence strong{font-weight:500;text-align:right}.heor-example-evidence span{color:var(--ink-muted)}.data-readout h3{font-size:20px}.workflow-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--space-6);padding:0;margin:0 0 var(--space-8);list-style:none}.workflow-step{margin:0}.workflow-step>span{font:400 13px/1.5 var(--font-num);color:var(--ink-muted)}.workflow-step h3{font-size:16px;margin:var(--space-2) 0}.workflow-step p{font-size:14px;color:var(--ink-muted)}.workflow-layout{display:block}.mini-component{display:none}.export-preview{overflow:auto}.export-preview table{width:100%;border-collapse:collapse;min-width:600px;font-size:13px}.export-preview th,.export-preview td{padding:var(--space-3);border-bottom:1px solid var(--line);text-align:left}.export-preview th{font:500 13px/1.5 var(--font-sans);color:var(--ink-muted)}.selection-bar,.selection-limit,.export-preview-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3);font-size:13px}.selection-bar{background:var(--surface-tint);border-radius:var(--radius-sm);margin-top:var(--space-4)}.selection-progress{width:100px;height:4px;background:var(--line)}.selection-progress span{display:block;height:100%;width:36%;background:var(--accent)}
.library-index{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6)}.library-index-row{margin:0;padding-top:var(--space-4);border-top:1px solid var(--line)}.library-index-row h3{font-size:16px;margin-bottom:var(--space-2)}.library-index-row p,.library-landing-note{font-size:14px;color:var(--ink-muted)}.library-landing-note{margin-top:var(--space-6)}.agent-cost-workbench{padding:var(--space-6);background:var(--surface-raised);border-radius:var(--radius-lg);color:var(--ink);box-shadow:var(--shadow-md)}.agent-cost-head,.agent-cost-head>div,.agent-file-chip{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3)}.agent-cost-head{border-bottom:1px solid var(--line);padding-bottom:var(--space-4);font-size:13px}.agent-terminal-mark,.agent-file-icon,.agent-file-chip b{font:400 13px/1.5 var(--font-num)}.agent-file-chip{padding-block:var(--space-4)}.agent-file-chip p{margin:0;flex:1}.agent-file-chip strong,.agent-file-chip small{display:block;font-size:13px;overflow-wrap:anywhere}.agent-file-chip small{color:var(--ink-muted)}.agent-user-message{background:var(--surface-tint);padding:var(--space-4);border-radius:var(--radius-md);font-size:14px}.agent-run-log{display:grid;gap:var(--space-4);padding-block:var(--space-6)}.agent-run-log>div{display:flex;gap:var(--space-3)}.agent-run-log p{margin:0}.agent-run-log strong,.agent-run-log small{display:block;font-size:13px}.agent-run-log small{color:var(--ink-muted)}.agent-run-log>div>span{color:var(--link)}.agent-success-line{display:flex;gap:var(--space-2);flex-wrap:wrap;padding-top:var(--space-4);border-top:1px solid var(--line);font-size:13px}.agent-success-line small{color:var(--ink-muted)}.coverage-map-panel{padding:var(--space-6);background:var(--surface-sunken);border-radius:var(--radius-lg)}.coverage-map-header{display:flex;justify-content:space-between;gap:var(--space-3);font-size:13px;color:var(--ink-muted)}.coverage-map{margin-top:var(--space-6)}.coverage-map svg{display:block;width:100%;height:auto;max-height:420px}.coverage-map path{fill:var(--grafem-200);stroke:var(--surface-raised);stroke-width:1}.coverage-map path:hover{fill:var(--grafem-600)}.coverage-table>div{display:flex;justify-content:space-between;gap:var(--space-4);border-bottom:1px solid var(--line);padding-block:var(--space-3);font-size:14px}.territory-ledger{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-top:var(--space-6)}.territory-ledger span{font-size:13px;border-radius:var(--radius-pill);background:var(--surface-tint);color:var(--ink-brand);padding:var(--space-1) var(--space-3)}.transparency-note{font-size:13px;color:var(--ink-muted);margin-top:var(--space-4)}.use-cases-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-8)}.use-case-card{border-top:1px solid var(--line);padding-top:var(--space-4)}.use-case-card p{font-size:14px;color:var(--ink-muted)}.use-case-icon{display:none}.contact-editorial-media,.liquid-material-media{display:none}.contact-section{background:var(--surface-sunken)}.contact-notes{display:grid;gap:var(--space-3);margin-top:var(--space-8)}.contact-notes span{display:flex;gap:var(--space-3);align-items:start;font-size:14px}.contact-notes span::before{content:'✓';color:var(--ink-brand)}.contact-form-panel{padding:var(--space-8);background:var(--surface-raised);border-radius:var(--radius-lg);border:1px solid var(--line)}.form-row{display:grid;gap:var(--space-2);margin-bottom:var(--space-4)}.form-row label,.form-label{font-size:14px;font-weight:500;color:var(--ink)}input:not([type=checkbox]):not([type=radio]),textarea,select{width:100%;min-height:48px;padding:var(--space-3) var(--space-4);border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);font-size:16px}input::placeholder,textarea::placeholder{color:var(--ink-muted);opacity:1}textarea{resize:vertical}.form-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}.form-submit{display:flex;flex-direction:column;gap:var(--space-3)}.form-disclaimer,.privacy-note,.form-privacy,.form-note,.form-success p{font-size:13px;color:var(--ink-muted)}.contact-form-panel p,.contact-form-panel small{font-size:13px}.form-success{padding:var(--space-6)}
/* Lectura: blog, artículos y políticas. */
.editorial-hero,.article-hero,.policy-hero{padding-block:var(--space-16)}.editorial-hero-grid{display:grid;grid-template-columns:1fr 320px;gap:var(--space-12);align-items:center}.editorial-hero-media img{max-height:260px;width:100%;object-fit:contain;border-radius:var(--radius-lg)}.editorial-hero p,.article-description{color:var(--ink-muted);font-size:19px}.blog-index{padding-bottom:var(--space-16)}.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-8)}.blog-card{padding-top:var(--space-6);border-top:1px solid var(--line)}.blog-card h2{font-size:20px}.blog-card h2 a{color:var(--ink);text-decoration:none}.blog-card h2 a:hover,.blog-card h2 a:focus-visible{text-decoration:underline}.blog-card-meta{font-size:13px;color:var(--ink-muted)}.blog-card>p:not(.blog-card-meta){font-size:14px;color:var(--ink-muted)}.blog-card .text-link{font-size:14px}.article-layout,.article-grid{display:grid;grid-template-columns:minmax(0,760px) minmax(180px,1fr);gap:var(--space-12);padding-bottom:var(--space-16)}.article-content,.article-body,.policy-content{min-width:0;overflow-wrap:anywhere}.article-content h2,.article-body h2,.policy-content h2{margin-top:var(--space-12)}.article-content h3,.article-body h3,.policy-content h3{margin-top:var(--space-8)}.article-content table,.article-body table,.policy-table{width:100%;border-collapse:collapse;font-size:14px}.article-content td,.article-content th,.article-body td,.article-body th,.policy-table td,.policy-table th{padding:var(--space-3);border:1px solid var(--line);vertical-align:top;text-align:left}.article-content th,.policy-table th{background:var(--surface-sunken);font-weight:500}.article-content pre,.article-body pre{white-space:pre-wrap;overflow-wrap:anywhere;padding:var(--space-6);border-radius:var(--radius-md);background:var(--surface-sunken)}code,kbd,pre{font:400 14px/1.6 var(--font-num)}blockquote{margin:var(--space-6) 0;padding:var(--space-6);background:var(--surface-sunken);border-radius:var(--radius-md)}.article-toc,.article-aside,.article-sidebar{font-size:14px;color:var(--ink-muted)}.article-sidebar h2{font-size:20px}.article-toc ul{list-style:none;padding:0}.article-meta,.article-back,.article-breadcrumb{font-size:14px;color:var(--ink-muted)}.policy-content{max-width:900px;padding-bottom:var(--space-16)}.policy-table-wrap{overflow:auto}.policy-table{min-width:600px}.policy-callout,.privacy-control{padding:var(--space-6);border-radius:var(--radius-md);background:var(--surface-sunken);margin-block:var(--space-6)}.privacy-control-actions{display:flex;gap:var(--space-3);flex-wrap:wrap}.privacy-control h3{font-size:20px}
/* Acceso: mismo formulario y scripts; una única marca, sin navegación duplicada. */
body.login-page{min-height:100svh;display:flex;flex-direction:column;padding:0}.login-page main{flex:1;display:grid;place-items:center;padding:var(--space-12) var(--space-6);width:100%}.login-page .login-container{width:min(440px,100%);padding:var(--space-8);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-raised);margin:var(--space-12) auto}.login-header{text-align:left}.login-title{font-size:28px;line-height:1.3;margin-bottom:var(--space-3)}.login-subtitle{color:var(--ink-muted);margin-bottom:var(--space-8)}.form-group,.login-page .input-group{margin-bottom:var(--space-6)}.form-label{display:block;margin-bottom:var(--space-2)}.btn-submit{width:100%}.register-link-container,.legal-links,.forgot-password-container{font-size:14px;color:var(--ink-muted);margin-top:var(--space-6)}.legal-links{display:flex;gap:var(--space-4);flex-wrap:wrap}.error-message,.success-message{font-size:14px;padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md);margin-bottom:var(--space-4)}.error-message{color:var(--danger)}.success-message{color:var(--success)}.bg-glow,.bg-glow-2{display:none}.password-wrapper,.password-field{position:relative}.password-toggle{position:absolute;right:var(--space-3);top:50%;transform:translateY(-50%);border:0;background:transparent;color:var(--ink)}.password-toggle svg{width:20px;height:20px}.forgot-password-link{font-size:14px}.login-page .footer{margin-top:auto}.login-page .brand-back{position:static}.login-page .logo-container{margin-bottom:var(--space-6)}
.footer{padding-top:var(--space-12)}.footer-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:var(--space-8)}.footer-brand-logo{width:140px;height:auto;margin-bottom:var(--space-4)}.footer-brand p{font-size:14px;max-width:32ch}.footer-col{display:flex;flex-direction:column;gap:var(--space-3)}.footer-col h2{font:500 14px/1.5 var(--font-sans);margin:0 0 var(--space-2)}.footer-col a{font-size:14px;text-decoration:none}.footer-col a:hover{text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;gap:var(--space-6);padding-block:var(--space-6);margin-top:var(--space-8);border-top:1px solid var(--line);font-size:13px}.footer-bottom p{margin:0}.footer-bottom span{font-size:13px}
/* El contenido no depende de las animaciones heredadas. */
.reveal,.reveal.active{opacity:1;transform:none;filter:none;visibility:visible}.liquid-material-section,.video-facade-section{padding-block:var(--space-12)}.liquid-material-copy{padding-block:var(--space-8)}.video-facade-card{max-width:640px}.video-facade-card img{border-radius:var(--radius-md)}.grafem-public .lynora-consent{background:var(--surface-raised);color:var(--ink);border-color:var(--line);box-shadow:var(--shadow-md);border-radius:var(--radius-md);font:400 14px/1.5 var(--font-sans)}.grafem-public .lynora-consent p,.grafem-public .lynora-consent a{color:var(--ink-muted);font-size:13px}.grafem-public .lynora-consent button{background:var(--surface-raised);color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--radius-pill);font:500 14px/1.5 var(--font-sans);box-shadow:none}.grafem-public .lynora-consent button[data-consent=accepted]{background:var(--accent);color:var(--on-accent)}
@media(max-width:959px){.site-nav{display:none}.header-actions{margin-left:auto}.header-actions .mobile-menu-button{display:grid}.header-shell{gap:var(--space-4)}.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){h1{font-size:38px;line-height:1.2}h2{font-size:28px}.container{width:calc(100% - var(--space-8))}.section{padding-block:var(--space-12)}.header-shell{width:calc(100% - var(--space-8));min-height:72px}.logo-img{width:112px}.header-actions{gap:var(--space-2)}.header .btn{padding-inline:var(--space-3);font-size:14px}.hero-grid,.method-grid,.solution-grid,.tenders-landing-grid,.heor-landing-grid,.library-landing-grid,.api-landing-grid,.coverage-grid,.contact-grid{grid-template-columns:minmax(0,1fr);gap:var(--space-8)}.hero-workbench{padding-block:var(--space-8)}.hero-lead{font-size:16px}.hero-editorial{margin-top:var(--space-6);aspect-ratio:1.2}.hero-source-slip{left:var(--space-3);right:var(--space-3);bottom:var(--space-4);padding:var(--space-4)}.hero-source-slip>strong{font-size:20px}.hero-source-slip dd{font-size:13px}.hero-actions{gap:var(--space-4)}.proof-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.proof-grid article,.proof-grid article:first-child{padding:var(--space-4);border-bottom:1px solid var(--line)}.proof-grid article:nth-child(2n){border-right:0}.proof-grid strong{font-size:28px}.proof-grid span{font-size:13px}.workflow-steps{grid-template-columns:1fr;gap:var(--space-4)}.workflow-step{display:grid;grid-template-columns:var(--space-6) 1fr;column-gap:var(--space-3)}.workflow-step p{grid-column:2}.workflow-step h3{margin:0}.workflow-step p{margin:var(--space-2) 0 0}.library-index{grid-template-columns:1fr}.use-cases-grid{grid-template-columns:1fr}.contact-form-panel{padding:var(--space-6)}.blog-grid{grid-template-columns:1fr}.editorial-hero-grid{grid-template-columns:1fr}.editorial-hero-media{display:none}.article-layout,.article-grid{grid-template-columns:minmax(0,1fr)}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-8)}.footer-brand{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:var(--space-3)}.login-page .login-container{padding:var(--space-6);margin-block:var(--space-8)}.coverage-map-panel{padding:var(--space-4)}.coverage-table>div{flex-direction:column;gap:var(--space-1)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

body.login-page .login-container{display:block}.alert-error{display:none}.alert-error.show{display:flex;gap:var(--space-3);padding:var(--space-4);margin-bottom:var(--space-6);border:1px solid var(--danger);border-radius:var(--radius-md);color:var(--danger)}.alert-error svg{width:20px;height:20px;flex:none}.alert-error p{margin:0}.spinner{display:none}.spinner.active{display:inline-block;width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:var(--radius-pill)}
.header-shell.gf-nav{padding:0}.header-actions{margin-left:auto}.header-actions>.text-link{font-size:14px}.site-nav a{font-size:15px}.gf-night.footer .footer-bottom{border-color:var(--line)}.login-page .login-container{margin-block:var(--space-12)}
/* Composición final compacta de la portada. */
.products-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-8)}.products-heading .section-heading{margin-bottom:var(--space-8)}.products-heading>img{flex:none;width:180px;height:180px;object-fit:contain}.product-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-6);margin-bottom:var(--space-6)}.product-column{min-width:0;display:flex;flex-direction:column}.product-column>h3{font-size:20px}.product-column>p{font-size:16px;min-height:78px}.product-column>ul{font-size:14px;color:var(--ink-muted);margin:0 0 var(--space-6);padding-left:var(--space-4);min-height:140px}.product-column>.data-readout,.product-column>.tender-example-sheet,.product-column>.heor-example-window{margin:0;flex:1;padding:var(--space-4)}.product-column>.heor-example-window h3{font-size:16px}.product-column .heor-example-evidence>div{flex-direction:column;gap:var(--space-1)}.product-column .heor-example-evidence strong{text-align:left}.evidence-scope{padding-block:var(--space-4);border-block:1px solid var(--line);margin-bottom:var(--space-4)}.evidence-scope summary{cursor:pointer;font-weight:500;font-size:14px;color:var(--ink-brand)}.evidence-scope p{font-size:14px;color:var(--ink-muted);margin:var(--space-4) 0 0}.evidence-warning{font-size:13px;color:var(--ink-muted);margin-bottom:var(--space-6)}.library-landing-copy{max-width:760px}.library-landing-actions{margin-block:var(--space-6)}.library-index{grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--space-4);margin-top:var(--space-8)}.library-index-row.gf-card{padding:var(--space-4);box-shadow:none;gap:0}.library-index-row p{margin:0}.library-index-row h3{font-size:16px}.contact-copy{position:relative;isolation:isolate}.contact-sphere{position:absolute;z-index:-1;top:var(--space-24);right:0;opacity:.15;width:240px;pointer-events:none}.contact-section{background:var(--gradient-bruma)}[data-theme=dark] .contact-section{background:var(--surface-sunken)}.api-landing-section .agent-cost-workbench{border:1px solid var(--line);box-shadow:none}.api-landing-copy>p,.api-landing-copy li{color:var(--ink-muted)}.map-legend{font-size:13px;color:var(--ink-muted);margin:var(--space-3) 0 0}.map-legend span{color:var(--grafem-500);letter-spacing:var(--space-1)}.coverage-map img{width:100%;height:auto}.use-case-card h3{font-size:20px}.use-case-card p{margin-bottom:0}.contact-grid{gap:var(--space-16)}
@media(max-width:1000px){.product-columns{gap:var(--space-4)}.product-column>ul{min-height:180px}.library-index{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.products-heading>img{width:100px;height:100px}.products-heading{align-items:start;gap:var(--space-4)}.products-heading .section-heading{margin:0}.products-heading h2{font-size:28px}.products-heading>img{display:none}.product-columns{grid-template-columns:1fr;gap:var(--space-12);margin-top:var(--space-8)}.product-column>p,.product-column>ul{min-height:0}.product-column>ul{margin-bottom:var(--space-4)}.product-column .heor-example-evidence>div{flex-direction:row}.library-index{grid-template-columns:1fr}.contact-grid{gap:var(--space-8)}.contact-sphere{width:160px}.agent-cost-workbench{padding:var(--space-4)}.agent-file-chip b{display:none}}
.map-legend{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.map-ramp{display:flex;gap:var(--space-1)}.map-ramp i{display:block;width:16px;height:8px;background:var(--grafem-100)}.map-ramp i:nth-child(2){background:var(--grafem-200)}.map-ramp i:nth-child(3){background:var(--grafem-300)}.map-ramp i:nth-child(4){background:var(--grafem-500)}.map-ramp i:nth-child(5){background:var(--grafem-600)}.map-inset-label{font-size:13px;color:var(--ink-muted);margin-bottom:var(--space-3)}
/* Detalles de lectura y operación: jerarquía y campos del mismo sistema. */
.blog-card--featured{grid-column:1/-1;display:grid;grid-template-columns:320px minmax(0,1fr);column-gap:var(--space-12);padding:var(--space-8);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-sunken);margin-bottom:var(--space-6)}.blog-featured-image{grid-column:1;grid-row:1/5;width:100%;height:280px;object-fit:contain}.blog-card--featured>:not(img){grid-column:2}.blog-card--featured h2{font-size:28px}.blog-card--featured>p:not(.blog-card-meta){font-size:16px}.blog-card-meta .gf-tag{font-size:13px}.blog-card--featured p{max-width:60ch}.form-row select{appearance:none;padding-right:var(--space-12);background-color:var(--surface);background-image:linear-gradient(45deg,transparent 50%,var(--ink-muted) 50%),linear-gradient(135deg,var(--ink-muted) 50%,transparent 50%);background-position:calc(100% - 22px) 21px,calc(100% - 16px) 21px;background-size:6px 6px;background-repeat:no-repeat}.form-row select:focus{border-color:var(--focus)}.turnstile-wrap.is-development{font-size:13px;color:var(--ink-muted);margin-block:var(--space-4)}.form-privacy-note{font-size:13px;color:var(--ink-muted)}.contact-submit{width:100%}.evidence-warning{max-width:90ch}.api-landing-section{background:var(--gradient-noche)}.gf-night{color:var(--grafem-100)}.gf-night .agent-cost-workbench{background:var(--grafem-900);color:var(--grafem-100)}.gf-night .agent-user-message{background:var(--grafem-700)}.gf-night :is(.api-landing-copy>p,.api-landing-copy li,.agent-file-chip small,.agent-run-log small,.agent-success-line small,.agent-cost-head small){color:var(--grafem-200)}.gf-night .agent-run-log>div>span{color:var(--grafem-300)}.gf-night .agent-file-chip strong,.gf-night .agent-run-log strong{color:var(--grafem-100)}.gf-night .agent-cost-head strong{color:var(--grafem-100)}.gf-night .agent-terminal-mark{color:var(--grafem-100)}
@media(max-width:760px){.blog-card--featured{display:block;padding:var(--space-6)}.blog-featured-image{height:140px;margin-bottom:var(--space-6)}.blog-card--featured h2{font-size:28px}.blog-card-meta .gf-tag{display:inline-flex;margin-bottom:var(--space-2)}}
/* Estados, gráficos de lectura y paleta final. */
button{background:var(--surface-raised);color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--radius-pill);padding:var(--space-2) var(--space-4);font-weight:500}body.grafem-public :is(.api-landing-section.gf-night,.footer.gf-night){color:var(--grafem-100)}body.grafem-public .api-landing-section.gf-night{background:var(--gradient-noche)}.gf-night .api-landing-points{color:var(--grafem-200)}.article-header{padding-block:var(--space-12)}.article-header .container{max-width:1000px}.article-header h1{margin-top:var(--space-6)}.article-content img,.article-body img{height:auto;max-width:100%}.article-content a{overflow-wrap:anywhere}.article-sidebar{position:sticky;top:96px;align-self:start}.article-content .article-table-wrap{max-width:100%;overflow:auto}.markov-simulator{margin-block:var(--space-8);padding:var(--space-6);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-raised)}.markov-simulator-head h3{margin-top:var(--space-2)}.markov-simulator-head p,.markov-note{font-size:13px;color:var(--ink-muted)}.markov-controls{display:flex;gap:var(--space-2);align-items:end;flex-wrap:wrap}.markov-controls label{font-size:13px;color:var(--ink-muted);display:grid;gap:var(--space-1)}.markov-control{font-size:14px}.markov-controls select{font-size:14px;min-height:40px;padding:var(--space-2)}.markov-stage{max-width:100%;overflow-x:auto;margin-block:var(--space-6)}.markov-stage svg{display:block;width:100%;min-width:720px;height:auto}.markov-paths path{fill:none;stroke:var(--grafem-300);stroke-width:2;marker-end:url(#markovArrow)}#markovArrow path{fill:var(--grafem-500)}.markov-node-base{fill:var(--surface-sunken);stroke:var(--line);stroke-width:1}.markov-node-share{fill:none;stroke:var(--grafem-500);stroke-width:3;transform:rotate(-90deg)}.markov-node text{fill:var(--ink);text-anchor:middle;font-size:13px}.markov-node-value{font-family:var(--font-num)}.markov-particle{fill:var(--grafem-600)}.markov-cycle{display:flex;gap:var(--space-3);align-items:baseline;margin-bottom:var(--space-6)}.markov-cycle small{color:var(--ink-muted)}.markov-results{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6);border-top:1px solid var(--line)}.markov-results dl{display:grid;gap:var(--space-3)}.markov-results dd{font-family:var(--font-num);font-size:14px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.grafem-public .lynora-consent button[data-consent-choice=accepted]{background:var(--accent);color:var(--on-accent)}.grafem-public .lynora-consent button[data-consent-choice=rejected]{background:var(--surface-raised);color:var(--ink)}.grafem-public .lynora-consent-actions{display:flex;gap:var(--space-2)}.agent-run-log .is-writing>span{width:13px;height:13px;border:2px solid var(--line);border-top-color:var(--grafem-300);border-radius:var(--radius-pill);margin-top:var(--space-1)}.form-status.is-error{color:var(--danger)}.form-status.is-success{color:var(--success)}
@media(max-width:760px){.article-sidebar{position:static}.article-header{padding-block:var(--space-8)}.markov-simulator{padding:var(--space-4)}.markov-results{grid-template-columns:1fr}.markov-cycle{flex-wrap:wrap}}

/* Ajustes de verificación final: especificidad del kit y formulario sin rejilla interna. */
.header .gf-nav__logo .logo-dark-version{display:none}[data-theme=dark] .header .gf-nav__logo .logo-light-version{display:none}[data-theme=dark] .header .gf-nav__logo .logo-dark-version{display:block}body.login-page main.login-container{display:block;width:min(440px,calc(100% - var(--space-8)));text-align:left}body.login-page .login-header,body.login-page #login-form{width:100%}.article-meta{display:flex;gap:var(--space-2);flex-wrap:wrap}.spinner{width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:var(--radius-pill)}.verification-resend{display:none}.alert-error{gap:var(--space-3);padding:var(--space-4);margin-bottom:var(--space-6);border:1px solid var(--danger);border-radius:var(--radius-md);color:var(--danger)}

/* Revisión independiente F1/F2: orden de lectura y celdas del ejemplo. */
.article-layout{grid-template-columns:200px minmax(0,760px);justify-content:center}.export-row{display:grid;grid-template-columns:minmax(180px,2fr) minmax(130px,1fr) minmax(90px,1fr) minmax(100px,1fr);gap:var(--space-4);min-width:600px;padding:var(--space-3);border-bottom:1px solid var(--line);font-size:13px}.export-head{font-weight:500;color:var(--ink-muted)}.export-row:not(.export-head)>span:nth-child(3){font-family:var(--font-num)}@media(max-width:760px){.article-layout{grid-template-columns:minmax(0,1fr)}}

/* Retoques finales de portada: órbita, pestañas y ritmo, 27/10/2026. */
.landing-page .section,.landing-page .hero-workbench{padding-block:var(--space-24)}
.landing-page .workflow-section{padding-bottom:var(--space-16)}
.hero-editorial{aspect-ratio:auto;background:var(--surface);box-shadow:none;overflow:visible;border-radius:0;align-self:center}
.hero-editorial grafem-orbit{width:100%}
.hero-source-slip{position:relative;left:auto;right:auto;bottom:auto;width:60%;max-width:60%;margin-top:-17.96875%;padding:var(--space-4)}
.hero-source-slip>strong{font-size:16px}.hero-source-slip dl{grid-template-columns:1fr;gap:var(--space-2)}.hero-source-slip dl>div{display:flex;justify-content:space-between;gap:var(--space-2)}.hero-source-slip dd{margin:0}
.data-mono{font-family:var(--font-num)!important;font-weight:400;font-variant-numeric:tabular-nums}
.product-column>h3{min-height:56px}.product-column>.data-readout,.product-column>.tender-example-sheet,.product-column>.heor-example-window{display:flex;flex-direction:column;align-items:stretch}
.product-column :is(.readout-kicker,.tender-example-head,.heor-example-head){min-height:40px}
.tender-example-body dd{font-family:var(--font-sans);font-size:14px}.product-column footer{margin-top:auto;padding-top:var(--space-4)}
.readout-tags .gf-tag{font-family:var(--font-sans);font-size:13px}.product-tabs{gap:var(--space-2);margin-top:var(--space-8)}.product-tabs button{flex:1;padding:var(--space-3) var(--space-2);font-size:14px;min-height:44px}.product-tabs [aria-selected=true]{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}
.workflow-steps{position:relative}.workflow-steps::before{content:'';position:absolute;top:7px;left:7px;right:calc((100% - 4 * var(--space-6)) / 5 - 7px);height:1px;background:var(--line-strong)}.workflow-step{position:relative;padding-top:var(--space-6)}.workflow-step::before{content:'';position:absolute;top:0;left:0;width:14px;height:14px;border-radius:var(--radius-pill);background:var(--gradient-marca)}
.export-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-raised);overflow:hidden}.export-card-head,.export-card-foot{padding:var(--space-6)}.export-card-head{border-bottom:1px solid var(--line)}.saved-search-card{font-size:14px}.saved-search-card>span{display:block;color:var(--ink-muted);font-size:13px;margin-bottom:var(--space-2)}.saved-search-card strong{font-family:var(--font-num);font-size:14px;font-weight:400}.saved-search-card p{margin:var(--space-2) 0 var(--space-4);color:var(--ink-muted)}.board-toolbar{display:flex;justify-content:space-between;gap:var(--space-4);align-items:center;font-size:14px;font-weight:500}.export-card .export-preview{padding:var(--space-3);border:0;border-radius:0}.export-card-foot{border-top:1px solid var(--line)}.board-note{font-size:13px;color:var(--ink-muted);margin:0}
.library-index-row.gf-card{display:flex;flex-direction:column}.library-count{order:-1;display:block;font-size:38px;line-height:1.2;margin-bottom:var(--space-4);color:var(--ink-brand)}.library-index-row h3{margin-bottom:var(--space-3)}.library-landing-actions{margin:var(--space-8) 0 0}.library-landing-note{margin:var(--space-6) 0 0}
.use-case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-6)}.use-case-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-raised);padding:var(--space-6)}.use-case-card p{font-size:15px}.contact-grid{align-items:start}.contact-copy>.eyebrow{margin-top:0}.contact-sphere{display:none}
@media(min-width:768px) and (max-width:1100px){.use-case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.hero-grid{grid-template-columns:minmax(0,1fr)}.workflow-steps{grid-template-columns:1fr}.landing-page .section,.landing-page .hero-workbench{padding-block:var(--space-16)}.hero-editorial{margin-top:0}.hero-source-slip{position:static;width:100%;max-width:100%;margin:var(--space-4) 0 0;padding:var(--space-6)}.hero-source-slip dl{grid-template-columns:1fr}.product-tabs:not([hidden]){display:flex}.product-columns{grid-template-columns:minmax(0,1fr);gap:0;margin-top:var(--space-6)}.product-column>h3{min-height:0}.product-column>p,.product-column>ul{min-height:0}.product-column :is(.data-readout,.tender-example-sheet,.heor-example-window){min-height:560px}.workflow-steps{gap:var(--space-6)}.workflow-steps::before{top:7px;bottom:7px;left:6px;right:auto;width:1px;height:auto}.workflow-step{display:block;padding:0 0 0 var(--space-8)}.workflow-step h3{margin-top:var(--space-2)}.workflow-step::before{top:0}.export-card-head,.export-card-foot{padding:var(--space-4)}.use-case-grid{grid-template-columns:minmax(0,1fr)}}

/* Retoques de cierre: navegación completa desde 960 y órbita sin tapar etiquetas. */
.eyebrow,.hero-eyebrow,table th{font:500 12px/1.5 var(--font-sans);text-transform:none;letter-spacing:normal;color:var(--ink-muted)}
.hero-editorial grafem-orbit{display:block;width:100%;min-width:100%}
.hero-source-slip{margin-top:0}
@media(min-width:960px) and (max-width:1100px){.header-shell{gap:12px;width:calc(100% - 32px)}.site-nav{display:flex;gap:0}.site-nav a{padding:8px}.header-actions{gap:8px}.header .nav-auth-btn{padding-inline:12px}.header-actions .mobile-menu-button{display:none}}
.public-session-avatar{width:28px;height:28px;border-radius:50%;object-fit:cover;margin-left:8px;vertical-align:middle}.nav-auth-btn.is-app-access,.mobile-auth-btn.is-app-access{display:inline-flex;align-items:center;gap:0}

.header-actions>.public-session-avatar{display:block!important;flex:0 0 32px;width:32px;height:32px;margin-left:0}.mobile-menu .public-session-avatar{display:inline-block!important}

.grafem-public [data-feature="extendedLibrary"][hidden]{display:none!important}.logo-link:is(:hover,:focus-visible) .logo-img{transform:none;transition:none}
