.blog-section{padding-top:70px;padding-bottom:90px}.blog-section h1{font-size:clamp(46px,6vw,78px);letter-spacing:-3px;line-height:1.04;margin:24px 0}.blog-lead{color:#686b61;font-size:19px;max-width:760px}.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:45px}.blog-card{border:1px solid #dedfd5;border-radius:12px;overflow:hidden;background:#fffef7}.blog-card img,.blog-card-art{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}.blog-card-art{background:#dcfa72;display:grid;place-items:center;font-size:100px}.blog-card-copy{padding:26px}.blog-card time{color:#686b61;font-size:12px}.blog-card h2{font-size:29px;letter-spacing:-1px;margin:16px 0}.blog-card p{color:#686b61;overflow-wrap:anywhere}.blog-card:hover h2{text-decoration:underline;text-underline-offset:5px}.blog-empty{border-top:1px solid #dedfd5;margin-top:50px;padding-top:40px}.blog-empty h2{font-size:36px}.blog-article{max-width:950px}.blog-date{margin-top:35px}.blog-cover{width:100%;height:auto;max-height:650px;object-fit:cover;border-radius:12px;margin:24px 0}.blog-body{max-width:760px;font-size:18px;overflow-wrap:anywhere}.blog-body p{margin-bottom:25px}.blog-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin:25px 0}.blog-form{display:grid;gap:24px;max-width:900px}.blog-form label{display:grid;gap:10px;font-size:15px}.blog-form input,.blog-form textarea,.blog-form select{width:100%;padding:14px;border:1px solid #c5c8ba;border-radius:5px;background:#fffef7;color:#22251f}.blog-form textarea{resize:vertical;line-height:1.6}.blog-form small{color:#686b61;line-height:1.5}.blog-login{max-width:440px}.blog-message{padding:18px;border:1px solid #81974b;background:#edf5d6;border-radius:5px}.blog-admin h2{font-size:32px;letter-spacing:-1px}.blog-admin-list article{padding:25px 0;border-bottom:1px solid #dedfd5}.blog-admin-list h2{margin-bottom:10px}.blog-admin-image{max-width:300px;max-height:200px;object-fit:contain}.blog-checkbox{display:flex!important;align-items:center;gap:8px!important;font-size:13px}.blog-checkbox input{width:auto}.blog-article h1{overflow-wrap:anywhere}@media(max-width:900px){.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.blog-grid{grid-template-columns:1fr}.blog-section{padding-top:40px;padding-bottom:55px}.blog-section h1{letter-spacing:-2px}.blog-admin .blog-actions{gap:15px}.blog-lead{font-size:17px}}

/* Formularios y administración del blog */
.blog-admin > .eyebrow { margin-bottom: 20px; }
.blog-admin > h1 { margin-bottom: 32px; }
.blog-form { padding: 32px; background: #eeefe5; border: 1px solid #dedfd5; border-radius: 12px; }
.blog-form label { font-weight: 600; line-height: 1.5; }
.blog-form label small { font-weight: 400; }
.blog-form input, .blog-form textarea, .blog-form select { min-width: 0; font-weight: 400; }
.blog-form input:not([type="checkbox"]), .blog-form select { min-height: 50px; }
.blog-form input[type="file"] { background: #f6f6ef; line-height: 1.5; }
.blog-form input::file-selector-button { border: 0; border-radius: 4px; padding: 9px 12px; margin-right: 12px; background: #dcfa72; color: #22251f; cursor: pointer; }
.blog-form .blog-actions { margin: 0; }
.blog-form > .button { justify-self: start; }
.blog-form textarea[readonly] { overflow-wrap: anywhere; font-family: monospace; font-size: 14px; }
.blog-admin-list { margin-top: 35px; }
.blog-admin-list article { display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.blog-admin-list article > div { min-width: 0; }
.blog-admin-list h2 { overflow-wrap: anywhere; }
.blog-admin-list p { margin-bottom: 0; color: #686b61; }
.blog-admin-list .blog-actions { flex-shrink: 0; }
.blog-admin-list form { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; }
.blog-message { max-width: 900px; overflow-wrap: anywhere; }
.blog-section code { font-size: .9em; overflow-wrap: anywhere; }
@media (max-width: 1000px) {
  .blog-admin-list article { align-items: flex-start; flex-direction: column; gap: 0; }
}
@media (max-width: 600px) {
  .blog-form { padding: 22px 18px; gap: 20px; }
  .blog-form .button { width: 100%; }
  .blog-form .blog-actions { align-items: stretch; flex-direction: column; }
  .blog-form .blog-actions .text-link { padding: 8px 0; }
  .blog-admin-list .blog-actions { flex-shrink: 1; }
}
