/* Piano Interactivo · web estática informativa, sin JavaScript ni rastreadores propios */
:root{color-scheme:dark;--base:#06182f;--bg:#071c35;--panel:#102c4e;--border:#284867;--text:#f7fbff;--muted:#b9c8d9;--cyan:#46e6f6;--yellow:#ffd769;--green:#55e8bc;--max:1050px;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(180deg,#071932 0%,#06182f 100%);color:var(--text);line-height:1.65}a{color:var(--cyan)}a:hover{text-decoration:none}a:focus-visible{outline:3px solid var(--yellow);outline-offset:4px;border-radius:4px}.shell{width:min(var(--max),calc(100% - 40px));margin-inline:auto}.skip{position:absolute;left:-10000px;top:auto}.skip:focus{position:fixed;left:12px;top:12px;background:var(--yellow);color:#081c34;padding:8px 12px;z-index:10}
.topbar{border-bottom:1px solid #ffffff16;background:#071a32ed}.nav{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:12px;color:#fff;text-decoration:none;font-size:1.12rem;font-weight:700;letter-spacing:.02em}.brand img{height:42px;width:42px;border-radius:10px;object-fit:cover}.brand strong{color:var(--cyan)}.nav nav{display:flex;gap:25px;align-items:center}.nav nav a{color:var(--muted);text-decoration:none;font-size:.92rem}.nav nav a:hover,.nav nav a.active{color:#fff}
.hero{min-height:505px;display:grid;grid-template-columns:1.25fr .8fr;align-items:center;gap:32px;padding-block:84px 70px}.eyebrow,.overline{font-size:.75rem;font-weight:800;letter-spacing:.16em;color:var(--cyan);text-transform:uppercase}.eyebrow{display:inline-flex;align-items:center;gap:9px;border:1px solid #48dfec54;padding:9px 15px;border-radius:30px;background:#30dce90c}.spark{color:var(--yellow);font-size:1.1rem}.hero h1,.legal h1{font-size:clamp(2.5rem,5vw,4.3rem);line-height:1.13;letter-spacing:-.04em;margin:22px 0 20px}.hero h1 span,.legal h1 span{color:var(--cyan)}.lead{color:var(--muted);max-width:550px;font-size:1.16rem}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:31px 0 24px}.btn{min-height:47px;display:inline-flex;gap:12px;align-items:center;justify-content:center;padding:11px 19px;text-decoration:none;border-radius:12px;font-weight:700;font-size:.93rem;border:1px solid transparent;transition:transform .18s ease,background .18s ease}.btn:hover{transform:translateY(-2px)}.btn.primary{background:var(--cyan);color:#06182f}.btn.secondary{background:transparent;border-color:#487090;color:#fff}.btn.secondary:hover{background:#ffffff0b}.status{font-size:.82rem;color:#a9bdcc;display:flex;gap:8px;align-items:center}.status-dot{height:7px;width:7px;border-radius:50%;background:var(--yellow)}
.art{position:relative;display:flex;align-items:center;justify-content:center;min-height:330px}.art-glow{position:absolute;width:270px;height:270px;border-radius:50%;background:#15cbe6;filter:blur(95px);opacity:.23}.art img{position:relative;border:2px solid #39dded91;border-radius:38px;box-shadow:0 25px 70px #0008;transform:rotate(-4deg);width:min(260px,72vw);height:auto}.star{position:absolute;color:var(--yellow);font-size:2.4rem}.star1{top:25px;right:20px}.star2{bottom:25px;left:25px}
.features{padding:45px 0 88px}.features h2,.contact h2{font-size:clamp(1.45rem,3vw,2.15rem);line-height:1.3;letter-spacing:-.02em;max-width:720px;margin:10px 0 30px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{padding:27px 25px;border:1px solid var(--border);border-radius:22px;background:#102b4a;box-shadow:0 18px 45px #0001}.symbol{height:54px;width:54px;display:flex;align-items:center;justify-content:center;font-size:2rem;border-radius:15px;background:#163b5c}.symbol.cyan{color:var(--cyan)}.symbol.yellow{color:var(--yellow)}.symbol.green{color:var(--green)}.card h3{font-size:1.17rem;margin:22px 0 6px}.card p{color:var(--muted);margin:0;font-size:.96rem}
.contact{border:1px solid #4776946f;border-radius:24px;background:linear-gradient(115deg,#143754,#0e2948);padding:28px 35px;display:flex;justify-content:space-between;align-items:center;gap:26px;margin-bottom:75px}.contact h2{margin:4px 0 6px}.contact p:not(.overline){color:var(--muted);margin:0}.contact .overline{margin:0}
footer{border-top:1px solid #ffffff1f}.footer{padding:26px 0;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:.87rem;color:var(--muted)}.footer div{display:flex;gap:23px}.footer a{color:var(--muted);text-decoration:none}
.legal{max-width:850px;padding-block:60px 95px}.legal h1{font-size:clamp(2.3rem,4.5vw,3.6rem);margin-bottom:7px}.legal .updated{color:#a6b9c8;font-size:.88rem;margin:0 0 34px}.legal .intro{font-size:1.06rem;color:#d7e6f4;background:#15334f;border-left:3px solid var(--cyan);padding:21px 25px;border-radius:0 12px 12px 0}.legal section{margin-top:35px}.legal section h2{font-size:1.21rem;color:#f9fdff;line-height:1.35;margin-bottom:12px}.legal section p{margin:12px 0;color:#bfcfe0}.legal section a{overflow-wrap:anywhere}.legal-contact{border:1px solid #3a647d;border-radius:20px;margin-top:48px;padding:26px;background:#102b4a}.legal-contact h2{margin:0 0 8px}.legal-contact p{margin:0 0 18px;color:var(--muted)}
@media(max-width:800px){.hero{grid-template-columns:1fr;padding-block:52px 45px;gap:25px}.art{min-height:235px;order:-1}.art img{width:190px;border-radius:28px}.art-glow{width:200px;height:200px}.star1{right:20%}.star2{left:20%}.cards{grid-template-columns:1fr;gap:13px}.features{padding-bottom:48px}.contact{flex-direction:column;align-items:flex-start}}@media(max-width:520px){.shell{width:calc(100% - 30px)}.nav{min-height:72px;gap:10px;flex-wrap:wrap;padding-block:13px}.brand{font-size:.98rem}.brand img{width:36px;height:36px}.nav nav{gap:16px}.nav nav a{font-size:.8rem}.hero{padding-top:36px}.art{min-height:190px}.art img{width:150px}.hero h1{font-size:2.5rem}.lead{font-size:1.02rem}.contact{padding:23px}.footer{flex-direction:column;align-items:flex-start}.legal{padding-block:40px 65px}.legal .intro{padding:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}.btn:hover{transform:none}}

/* v2: más funciones y soporte */
.cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.symbol.coral{color:#ff9e9b}
.faq h3{font-size:1.07rem;color:#fff;margin:25px 0 5px}
.faq p{margin:0 0 12px;color:var(--muted)}
.error404{min-height:calc(100vh - 220px);padding-block:110px 85px}
.error404 h1{font-size:clamp(2.2rem,5vw,3.6rem);margin:10px 0}
.error404 p:not(.overline){color:var(--muted);font-size:1.04rem}
@media(max-width:620px){.cards{grid-template-columns:1fr}.error404{padding-block:80px}}
@media(max-width:370px){.nav nav{gap:10px}.nav nav a{font-size:.74rem}}
