:root{--bg-paper:#f7f1e6;--bg-surface:#fffdf9;--bg-warm:#efe5d3;--bg-barro:#1e1b18;--ink:#1e1b18;--ink-soft:#524b44;--ink-muted:#7e746a;--gold:#e8a33d;--gold-deep:#b57310;--gold-soft:#e8a33d29;--grana:#9e2b3a;--grana-hover:#82202d;--grana-soft:#9e2b3a1c;--agave:#4f7a6a;--agave-soft:#4f7a6a21;--border:#1e1b181c;--border-strong:#1e1b1833;--shadow-sm:0 2px 10px #1e1b180d;--shadow-md:0 12px 32px #1e1b1814;--shadow-lg:0 22px 54px #1e1b1824;--radius-sm:10px;--radius-md:16px;--radius-lg:24px;--font-serif:"Fraunces", Georgia, serif;--font-sans:"Inter", system-ui, -apple-system, sans-serif;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--bg-paper);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--font-serif);letter-spacing:-.015em;margin:0 0 .6rem;font-weight:600;line-height:1.18}h1{font-size:clamp(2.05rem,4.6vw,3.55rem)}h2{font-size:clamp(1.6rem,3.2vw,2.45rem)}h3{font-size:clamp(1.2rem,2vw,1.5rem)}p{margin:0 0 1rem}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select,textarea{font-family:inherit;font-size:1rem}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 clamp(1rem,4vw,2.25rem)}.section{padding:clamp(3rem,6vw,5.5rem) 0}.section-warm{background:var(--bg-warm)}.section-surface{background:var(--bg-surface)}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--grana);align-items:center;gap:.45rem;margin-bottom:.85rem;font-size:.78rem;font-weight:700;display:inline-flex}.mitla-rule{opacity:.35;background-image:repeating-linear-gradient(90deg, var(--grana) 0 12px, transparent 12px 18px, var(--gold-deep) 18px 30px, transparent 30px 36px);width:100%;height:3px;margin:2rem 0;-webkit-mask-image:linear-gradient(90deg,#0000,#000 15% 85%,#0000);mask-image:linear-gradient(90deg,#0000,#000 15% 85%,#0000)}.btn{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;min-height:44px;padding:.68rem 1.35rem;font-size:.94rem;font-weight:600;transition:transform .16s,background .16s,box-shadow .16s;display:inline-flex}.btn:active{transform:scale(.98)}.btn-primary{background:var(--grana);color:#fffdf9;box-shadow:0 6px 18px #9e2b3a3d}.btn-primary:hover{background:var(--grana-hover)}.btn-gold{background:var(--gold);color:var(--ink);font-weight:700}.btn-gold:hover{background:#df9628}.btn-outline{border-color:var(--border-strong);color:var(--ink);background:0 0}.btn-outline:hover{background:var(--bg-warm)}.btn-ghost{color:var(--ink-soft);background:0 0;padding:.5rem .85rem}.btn-ghost:hover{color:var(--ink);background:#1e1b180f}.btn-sm{min-height:36px;padding:.4rem .9rem;font-size:.84rem}.badge{border-radius:999px;align-items:center;gap:.3rem;padding:.22rem .65rem;font-size:.75rem;font-weight:600;line-height:1.3;display:inline-flex}.badge-gold{background:var(--gold-soft);color:#7d4e05}.badge-grana{background:var(--grana-soft);color:var(--grana)}.badge-agave{background:var(--agave-soft);color:#2f5446}.badge-ink{color:var(--ink-soft);background:#1e1b1814}.pub-header{z-index:60;padding-top:var(--safe-top);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border);background:#f7f1e6eb;position:sticky;top:0}.pub-header-inner{justify-content:space-between;align-items:center;gap:1rem;min-height:70px;display:flex}.brand-link{align-items:center;gap:.65rem;min-width:0;display:inline-flex}.brand-link img{flex-shrink:0;width:38px;height:38px}.brand-title{font-family:var(--font-serif);font-size:1.18rem;font-weight:700;line-height:1.1}.brand-sub{letter-spacing:.14em;text-transform:uppercase;color:var(--grana);font-size:.68rem;font-weight:600;display:block}.pub-nav-desktop{align-items:center;gap:.25rem;display:flex}.pub-nav-link{color:var(--ink-soft);border-radius:999px;padding:.48rem .78rem;font-size:.92rem;font-weight:500;transition:background .15s,color .15s}.pub-nav-link:hover,.pub-nav-link.active{color:var(--ink);background:#1e1b180f}.pub-actions{align-items:center;gap:.5rem;display:flex}.lang-pill{background:var(--bg-warm);border:1px solid var(--border);border-radius:999px;padding:2px;display:inline-flex}.lang-pill button{cursor:pointer;color:var(--ink-soft);background:0 0;border:0;border-radius:999px;padding:.28rem .6rem;font-size:.76rem;font-weight:700}.lang-pill button.active{background:var(--bg-surface);color:var(--ink);box-shadow:var(--shadow-sm)}.pub-burger{border:1px solid var(--border);background:var(--bg-surface);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;display:none}.mobile-drawer-backdrop{z-index:90;background:#1e1b1873;justify-content:flex-end;display:flex;position:fixed;inset:0}.mobile-drawer{background:var(--bg-paper);width:min(86vw,360px);height:100%;padding:calc(1.25rem + var(--safe-top)) 1.25rem calc(1.5rem + var(--safe-bottom));box-shadow:var(--shadow-lg);flex-direction:column;gap:.4rem;display:flex;overflow-y:auto}.mobile-drawer a,.mobile-drawer .drawer-item{min-height:46px;color:var(--ink);border-radius:12px;align-items:center;gap:.7rem;padding:.6rem .9rem;font-weight:600;display:flex}.mobile-drawer a.active,.mobile-drawer .drawer-item.active{background:var(--grana-soft);color:var(--grana)}@media (width<=1020px){.pub-nav-desktop,.hide-mobile{display:none!important}.pub-burger{display:inline-flex}}.hero-grid{grid-template-columns:1.12fr .88fr;align-items:center;gap:clamp(1.75rem,4vw,3.5rem);display:grid}.hero-media{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--border);position:relative;overflow:hidden}.hero-media img{object-fit:cover;width:100%;height:clamp(280px,44vw,470px)}.hero-floating-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius-md);border:1px solid var(--border);background:#fffdf9ed;padding:.95rem 1.15rem;font-size:.88rem;position:absolute;bottom:1rem;left:1rem;right:1rem}@media (width<=860px){.hero-grid{grid-template-columns:1fr}}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.35rem;display:grid}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.35rem;display:grid}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.1rem;display:grid}@media (width<=980px){.grid-4,.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);flex-direction:column;padding:clamp(1.15rem,2.5vw,1.65rem);display:flex}.card-quote{background:var(--bg-barro);color:var(--bg-paper);border-radius:var(--radius-lg);text-align:center;padding:clamp(1.75rem,4vw,3rem)}.card-quote blockquote{max-width:820px;font-family:var(--font-serif);margin:0 auto;font-size:clamp(1.25rem,2.4vw,1.85rem);font-style:italic;line-height:1.42}.field{flex-direction:column;gap:.35rem;margin-bottom:.95rem;display:flex}.field label{color:var(--ink-soft);font-size:.84rem;font-weight:600}.input,.select,.textarea{border:1px solid var(--border-strong);width:100%;min-height:44px;color:var(--ink);background:#fff;border-radius:12px;padding:.62rem .88rem;transition:border-color .15s,box-shadow .15s}.textarea{resize:vertical;min-height:110px}.input:focus,.select:focus,.textarea:focus{border-color:var(--grana);box-shadow:0 0 0 3px var(--grana-soft);outline:none}.studio-layout{background:var(--bg-paper);grid-template-columns:268px minmax(0,1fr);min-height:100dvh;display:grid}.studio-sidebar{background:var(--bg-barro);color:var(--bg-paper);flex-direction:column;gap:.35rem;height:100dvh;padding:1.35rem 1rem;display:flex;position:sticky;top:0;overflow-y:auto}.studio-nav-btn{color:#f7f1e6c2;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:11px;align-items:center;gap:.7rem;width:100%;min-height:42px;padding:.55rem .85rem;font-size:.9rem;font-weight:500;transition:background .14s,color .14s;display:flex}.studio-nav-btn:hover{color:#fff;background:#ffffff14}.studio-nav-btn.active{background:var(--gold);color:var(--ink);font-weight:700}.studio-main{flex-direction:column;min-width:0;display:flex}.studio-topbar{z-index:50;padding:calc(.6rem + var(--safe-top)) 1rem .6rem;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);background:#f7f1e6f0;justify-content:space-between;align-items:center;gap:.75rem;display:none;position:sticky;top:0}.studio-content{width:100%;max-width:1320px;margin:0 auto;padding:clamp(1rem,3vw,2.2rem)}.studio-bottom-nav{z-index:55;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--border);padding:.35rem .4rem calc(.35rem + var(--safe-bottom));background:#fffdf9f7;grid-template-columns:repeat(5,minmax(0,1fr));gap:.15rem;display:none;position:fixed;bottom:0;left:0;right:0}.bottom-tab{min-height:50px;color:var(--ink-muted);cursor:pointer;background:0 0;border:0;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:.18rem;padding:.2rem;font-size:.68rem;font-weight:600;display:flex}.bottom-tab span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.bottom-tab.active{color:var(--grana);background:var(--grana-soft)}@media (width<=1024px){.studio-layout{grid-template-columns:1fr}.studio-sidebar{display:none}.studio-topbar{display:flex}.studio-bottom-nav{display:grid}.studio-content{padding-bottom:calc(5.5rem + var(--safe-bottom))}}.kpi-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.1rem 1.25rem}.kpi-label{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);font-size:.78rem;font-weight:600}.kpi-value{font-family:var(--font-serif);margin-top:.2rem;font-size:clamp(1.55rem,2.6vw,2.05rem);font-weight:700}.table-wrap{-webkit-overflow-scrolling:touch;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);width:100%;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:.9rem}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:middle;padding:.78rem .95rem}.data-table th{text-transform:uppercase;letter-spacing:.07em;color:var(--ink-muted);background:#efe5d373;font-size:.74rem}.data-table tr:last-child td{border-bottom:0}@media (width<=720px){.data-table.stack-mobile thead{display:none}.data-table.stack-mobile,.data-table.stack-mobile tbody,.data-table.stack-mobile tr,.data-table.stack-mobile td{width:100%;display:block}.data-table.stack-mobile tr{border-bottom:1px solid var(--border);padding:.85rem 1rem}.data-table.stack-mobile td{border:0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.28rem 0;display:flex}.data-table.stack-mobile td:before{content:attr(data-label);text-transform:uppercase;color:var(--ink-muted);font-size:.74rem;font-weight:700}}.modal-backdrop{z-index:100;background:#1e1b188c;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-card{background:var(--bg-surface);border-radius:var(--radius-lg);width:min(100%,560px);max-height:90dvh;box-shadow:var(--shadow-lg);border:1px solid var(--border);padding:clamp(1.25rem,3vw,2rem);overflow-y:auto}.alert{border:1px solid #0000;border-radius:12px;margin-bottom:1rem;padding:.85rem 1.05rem;font-size:.9rem}.alert-error{background:var(--grana-soft);color:var(--grana);border-color:#9e2b3a40}.alert-ok{background:var(--agave-soft);color:#264a3d;border-color:#4f7a6a47}.alert-warn{background:var(--gold-soft);color:#6e4506;border-color:#e8a33d66}.pub-footer{background:var(--bg-barro);color:#f7f1e6d9;padding:3.5rem 0 calc(2.2rem + var(--safe-bottom));margin-top:3rem}.pub-footer a:hover{color:var(--gold)}.progress-track{background:var(--bg-warm);border:1px solid var(--border);border-radius:999px;width:100%;height:10px;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--grana), var(--gold));border-radius:999px;height:100%;transition:width .35s}.classroom-grid{grid-template-columns:310px minmax(0,1fr);align-items:start;gap:1.35rem;display:grid}@media (width<=900px){.classroom-grid{grid-template-columns:1fr}}.lesson-step-btn{border:1px solid var(--border);background:var(--bg-surface);width:100%;color:var(--ink);text-align:left;cursor:pointer;border-radius:12px;justify-content:space-between;align-items:center;gap:.65rem;padding:.72rem .85rem;transition:background .15s,border-color .15s;display:flex}.lesson-step-btn:hover:not(:disabled){background:var(--bg-warm)}.lesson-step-btn.active{border-color:var(--grana);background:var(--grana-soft)}.lesson-step-btn:disabled{opacity:.56;cursor:not-allowed}.diploma-sheet{border:2px solid var(--gold-deep);box-shadow:var(--shadow-md);background:#fffdf9;border-radius:18px;padding:clamp(.85rem,2vw,1.35rem)}.diploma-border-inner{background:radial-gradient(circle at 100% 0,#e8a33d14,#0000 55%);border:1px solid #9e2b3a52;border-radius:12px;padding:clamp(1.1rem,3vw,2.2rem)}.diploma-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.diploma-logo{width:auto;height:46px}.diploma-footer{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1.5rem;margin-top:1.4rem;padding-top:1.1rem;display:flex}.diploma-qr-box{border:1px solid var(--border);background:#fffdf9;border-radius:12px;flex-direction:column;align-items:center;gap:.35rem;padding:.55rem;display:flex}.diploma-qr-svg svg{width:112px;height:112px;display:block}@media print{body{background:#fff!important}.pub-header,.pub-footer,.studio-sidebar,.studio-topbar,.studio-bottom-nav,.no-print{display:none!important}.studio-layout{display:block!important}.studio-content{max-width:100%!important;padding:0!important}.diploma-sheet{break-inside:avoid;box-shadow:none!important;border:2px solid #b57310!important}}
