@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Space+Grotesk:wght@400;500;600;700&display=swap');:root{--ink:#17203c;--purple:#5d2ee8;--pink:#ff376c;--yellow:#ffe55b;--aqua:#00dfc5;--paper:#f8f8ff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 'DM Sans',sans-serif}h1,h2,h3,.brand{font-family:'Space Grotesk',sans-serif;line-height:1.13}h1{font-size:clamp(2.6rem,6vw,5.6rem)}h2{font-size:clamp(2rem,4vw,3rem)}a{color:inherit;text-decoration:none}a:hover{color:var(--purple)}.site-head{display:flex;align-items:center;justify-content:space-between;padding:22px max(5%,calc((100% - 1200px)/2));background:white;gap:15px;flex-wrap:wrap}.brand{font-weight:800;font-size:1.5rem}.site-head nav{display:flex;gap:25px;font-weight:700}.hero{background:radial-gradient(circle at 80% 15%,#ff6484 0,transparent 27%),radial-gradient(circle at 70% 85%,#08dfc5 0,transparent 29%),linear-gradient(115deg,#4621c8,#9131df 60%,#ff376c);padding:105px max(5%,calc((100% - 1200px)/2));color:white;min-height:550px}.hero h1{max-width:850px;margin:20px 0}.hero em{font-style:normal;color:var(--yellow)}.hero p{max-width:600px;font-size:1.2rem}.eyebrow{font-size:.76rem;font-weight:800;letter-spacing:.2em;color:var(--yellow)}.eyebrow.dark{color:var(--purple)}.btn,button{border:0;background:var(--ink);color:white;border-radius:12px;padding:13px 24px;font:700 1rem 'DM Sans',sans-serif;cursor:pointer;display:inline-block}.btn.bright{background:var(--yellow);color:var(--ink);margin-top:20px}.wrap{max-width:1200px;margin:auto;padding:65px 22px}.narrow{max-width:740px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;flex-wrap:wrap}.section-head h2{margin:12px 0}.search{display:flex;gap:7px}.search input{width:230px}.chips{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0 35px}.chip{border:1px solid #d9d8eb;padding:8px 15px;border-radius:30px;font-size:.9rem;font-weight:700;background:white}.chip.selected,.chip:hover{background:var(--purple);color:white}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.card{overflow:hidden;border-radius:20px;background:white;box-shadow:0 12px 36px #23234a12;transition:transform .2s}.card:hover{transform:translateY(-5px)}.card img,.placeholder{width:100%;height:225px;object-fit:cover}.placeholder{display:grid;place-items:center;font-size:6rem;color:var(--yellow);background:linear-gradient(125deg,var(--purple),var(--pink))}.card-body{padding:24px}.tag{font-size:.75rem;letter-spacing:.08em;font-weight:800;color:#ba1e58;text-transform:uppercase}.card h3{font-size:1.5rem;margin:10px 0}.card p{color:#586078}.more{font-weight:800;color:var(--purple)}.pagination{display:flex;gap:10px;margin-top:30px}.article{max-width:900px}.article .tag{display:block;margin-top:30px}.article h1{font-size:clamp(2.5rem,5vw,4.5rem)}.lead{font-size:1.3rem;color:#5a6175}.cover{width:100%;border-radius:18px;max-height:520px;object-fit:cover}.article-text{font-size:1.12rem;white-space:normal;margin-top:35px}.panel{background:white;border-radius:18px;padding:30px;box-shadow:0 10px 35px #23234a13}label{display:block;font-weight:700;margin:0 0 20px}input,textarea,select{display:block;width:100%;padding:12px;border:1px solid #d4d5e5;border-radius:9px;margin-top:7px;font:inherit}table{width:100%;border-collapse:collapse}td,th{text-align:left;padding:12px;border-bottom:1px solid #ddd}td a{color:var(--purple)}.error{color:#a51040;font-weight:700}.hidden{position:absolute;left:-9999px}footer{padding:40px;text-align:center;background:var(--ink);color:white}@media(max-width:760px){.cards{grid-template-columns:1fr}.hero{padding:70px 24px;min-height:0}.search,.search input{width:100%}.site-head nav{gap:12px}.panel{overflow-x:auto;padding:18px}}

/* OPUS NOVUM 2.2: menús accesibles y responsive */
.site-head{position:relative;z-index:20}.site-head nav{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.nav-group{position:relative}.nav-group summary{cursor:pointer;list-style:none;padding:10px 14px;border-radius:12px;font-weight:800}.nav-group summary::-webkit-details-marker{display:none}.nav-group summary::after{content:' ▾';font-size:.75em}.nav-group[open] summary,.nav-group summary:hover{background:#f0eaff;color:#5d2ee8}.nav-sub{position:absolute;top:100%;left:0;min-width:205px;background:#fff;box-shadow:0 12px 32px #18204024;border:1px solid #e6e1f5;border-radius:12px;padding:8px;display:grid;gap:2px;z-index:30}.nav-sub a{padding:10px;border-radius:8px;white-space:nowrap}.nav-sub a:hover,.nav-sub a:focus-visible{background:#f2eafd}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.table-scroll table{min-width:650px}button,input,textarea,select{max-width:100%}a,button,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #ff376c;outline-offset:3px}
@media(max-width:760px){.site-head{padding:16px 20px;align-items:flex-start}.site-head nav{width:100%;gap:6px}.nav-group{flex:1 1 125px}.nav-group summary{padding:12px 9px;text-align:center;background:#f3efff;font-size:.91rem}.nav-sub{left:0;right:0;min-width:0}.brand{font-size:1.25rem}.wrap{padding:35px 16px}.panel{padding:18px}.hero h1{overflow-wrap:anywhere}.search{flex-wrap:wrap}.cards{grid-template-columns:1fr}}
@media(max-width:420px){.nav-group{flex:1 1 100%}.nav-sub{position:static;box-shadow:none}.site-head nav>a{padding:10px}}

/* OPUS NOVUM 2.4 branding */
.brand{display:inline-flex;align-items:center;gap:9px;white-space:nowrap}.brand-mark{width:44px;height:44px;object-fit:contain;border-radius:9px}.brand-gradient{background:linear-gradient(95deg,#008ce8,#d218a0,#ff8a00,#13a86c);background-clip:text;-webkit-background-clip:text;color:transparent}@media(max-width:430px){.brand{font-size:1.1rem}.brand-mark{width:36px;height:36px}}
