/* Biblioteca de herramientas · Pack 5. Inspiración editorial de tienda de apps, identidad original.
   Sólo se aplica a la portada: las fichas y sus scripts permanecen intactos. */
:root{color-scheme:light;--page:#f8f9fc;--ink:#171827;--ink-2:#44465e;--muted:#72758b;--line:#e6e7ef;--purple:#6753e6;--purple-deep:#5242ca;--white:#fff;--radius:22px;--shadow:0 10px 40px rgba(26,24,70,.045)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:var(--page);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}
img{max-width:100%}button,input{font:inherit}button{cursor:pointer}a{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #6c56ee;outline-offset:3px}
[hidden]{display:none!important}.visually-hidden:not(:focus):not(:active){position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.container{width:min(1200px,calc(100% - 54px));margin:0 auto}
.skip-link{position:absolute;top:-100px;left:20px;padding:12px 18px;border-radius:8px;background:#fff;z-index:100}.skip-link:focus{top:12px}
.site-header{position:sticky;top:0;z-index:30;backdrop-filter:blur(20px);background:rgba(248,249,252,.93);border-bottom:1px solid rgba(39,39,73,.07)}
.header-inner{height:73px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none;min-width:0}.brand-logo{background:linear-gradient(135deg,#7869eb,#5d46cc);display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;border-radius:13px;box-shadow:0 5px 12px rgba(111,86,219,.18)}.brand-logo svg{width:30px;height:30px}.brand-name{font-size:1.06rem;font-weight:800;letter-spacing:-.045em;white-space:nowrap}.brand-suffix{font-weight:650;color:#4c4c60}
.site-nav{display:flex;align-items:center;gap:30px}.site-nav a{text-decoration:none;font-weight:650;color:#53546b;font-size:.9rem}.site-nav a:hover{color:#5b48db}.site-nav .nav-cta{padding:10px 17px;border-radius:11px;color:white;background:#17192a;white-space:nowrap}.site-nav .nav-cta:hover{color:white;background:#5140ca}
.hero{padding:29px 0 37px}.hero-surface{position:relative;overflow:hidden;isolation:isolate;border:1px solid #e8e3fa;border-radius:29px;min-height:407px;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);align-items:center;background:radial-gradient(circle at 92% 10%,#eadfff 0,transparent 35%),linear-gradient(120deg,#f0eaff 0%,#f7f5ff 48%,#e8f2ff 100%);box-shadow:0 14px 48px rgba(83,65,166,.06)}
.hero-copy{position:relative;z-index:4;padding:43px 0 40px 53px}.eyebrow{display:inline-flex;gap:9px;align-items:center;padding:7px 13px;background:#fff;border:1px solid #e6defc;border-radius:100px;font-weight:720;font-size:.79rem;color:#5c49c6;box-shadow:0 3px 15px rgba(70,54,145,.04)}.eyebrow-dot{height:8px;width:8px;border-radius:50%;background:#6b55e5}
h1{font-size:clamp(2.15rem,3.85vw,3.65rem);line-height:1.09;letter-spacing:-.065em;font-weight:820;margin:24px 0 16px}h1 span{color:#6752da}.hero-lead{font-size:1rem;line-height:1.68;color:#64647b;max-width:51ch;margin:0}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:17px;margin-top:26px}.button{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:11px;text-decoration:none;border:1px solid transparent;border-radius:12px;padding:11px 17px;min-height:43px;font-size:.88rem;line-height:1.25;font-weight:760;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.button:hover{transform:translateY(-1px)}.button-primary{color:white;background:#6955e8;box-shadow:0 6px 16px rgba(98,76,209,.14)}.button-primary:hover{background:#503aca}.button-text{color:#504d70;padding-left:3px;padding-right:3px}.button-text:hover{color:#503aca}.hero-proof{display:flex;gap:15px;align-items:center;flex-wrap:wrap;margin-top:28px;color:#686981;font-size:.77rem}.hero-proof strong{font-weight:820;color:#252441;font-size:.9rem}.hero-proof i{height:4px;width:4px;border-radius:50%;background:#b4a9d1}
.hero-art{position:relative;align-self:stretch;min-height:380px}.orb{position:absolute;border-radius:50%;pointer-events:none}.orb-one{width:390px;height:390px;right:-50px;bottom:-170px;background:rgba(167,149,241,.22)}.orb-two{width:235px;height:235px;right:160px;top:-130px;background:rgba(255,255,255,.49)}
.hero-phone{position:absolute;border-radius:25px;background:#171827;padding:6px;box-shadow:0 22px 37px rgba(31,22,89,.2);overflow:hidden;transform-origin:center center;z-index:2}.hero-phone img{width:100%;height:100%;display:block;object-fit:cover;object-position:top;border-radius:19px}.hero-phone-front{width:188px;height:380px;right:133px;bottom:-50px;transform:rotate(-8deg)}.hero-phone-back{width:167px;height:345px;right:25px;bottom:21px;transform:rotate(12deg);z-index:1;box-shadow:0 23px 40px rgba(45,25,89,.16)}
.hero-float{position:absolute;z-index:4;background:rgba(255,255,255,.94);border:1px solid rgba(107,85,207,.08);box-shadow:0 8px 27px rgba(55,40,110,.11);border-radius:13px;color:#32314f;font-size:.77rem;font-weight:780}.hero-float-top{top:62px;right:197px;padding:10px 14px;transform:rotate(-6deg)}.hero-float-top span{color:#8c5de2}.hero-float-bottom{bottom:42px;right:4px;padding:9px 14px;display:flex;align-items:center;gap:9px;transform:rotate(5deg)}.hero-float-bottom small{font-size:.65rem;color:#8b8aa0;font-weight:520}.float-icon{display:grid;place-items:center;background:#e3f8ec;border-radius:9px;color:#3d9b67;font-size:1.1rem;width:29px;height:29px}
.catalog-section{padding:10px 0 42px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:0 0 23px}.section-kicker{color:#6d59e5;letter-spacing:.16em;font-weight:850;font-size:.72rem;margin:0 0 9px}.section-heading h2,.values-intro h2{letter-spacing:-.052em;font-size:clamp(1.65rem,2.6vw,2.38rem);line-height:1.17;font-weight:800;margin:0}.title-star{font-size:.85em;color:#a495ef;margin-left:10px}.section-subtitle{margin:9px 0 0;color:#7a7b8f;font-size:.91rem}.collection-count{flex-shrink:0;background:#fff;border:1px solid #eaebf2;padding:8px 13px;border-radius:12px;font-weight:750;color:#6a6880;font-size:.82rem;box-shadow:0 3px 13px rgba(26,24,70,.025)}
.catalog-toolbar{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:19px}.filters{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.filter-button{border:1px solid transparent;background:transparent;border-radius:11px;padding:10px 14px;color:#77788e;font-size:.88rem;font-weight:760;white-space:nowrap}.filter-button:hover{background:#eff0f8}.filter-button.is-active{background:#191a2b;color:white;box-shadow:0 5px 13px rgba(26,25,54,.1)}.filter-button span{display:inline-grid;place-items:center;margin-left:6px;min-width:20px;padding:0 4px;height:20px;border-radius:6px;background:#edecf6;font-size:.71rem;color:#6a6886}.filter-button.is-active span{color:#3c3a58;background:#f3f0ff}.search-wrap{display:flex;align-items:center;gap:9px;min-width:250px;width:294px;padding:0 13px;border-radius:12px;border:1px solid #e5e6ef;background:white;box-shadow:0 4px 17px rgba(27,26,68,.025)}.search-wrap svg{height:19px;width:19px;flex-shrink:0;color:#999aac}.search-wrap input{width:100%;min-height:42px;outline:none;border:0;background:transparent;color:#292b41;font-size:.84rem}.search-wrap:focus-within{outline:2px solid #9f91f0;outline-offset:2px}.search-wrap input::placeholder{color:#a2a1b2}
.apps-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.app-card{min-width:0;background:#fff;border-radius:23px;border:1px solid #e9eaf0;overflow:hidden;box-shadow:var(--shadow);transition:transform .17s ease,box-shadow .17s ease;display:flex;flex-direction:column}.app-card:hover{transform:translateY(-3px);box-shadow:0 18px 45px rgba(27,26,68,.08)}
.card-art{height:181px;overflow:hidden;position:relative;isolation:isolate}.card-art-lector{background:linear-gradient(105deg,#e7dafd,#f4ecff 64%,#decafc)}.card-art-recetario{background:linear-gradient(115deg,#ffe1c4,#fff0df 65%,#ffdfbd)}.card-art-clara{background:linear-gradient(115deg,#d4f2e6,#f0faf4 62%,#c7eddf)}.card-art-punto{background:linear-gradient(120deg,#ffe9bb,#fff3d6 65%,#ffd9a3)}.card-art-copy{position:absolute;z-index:3;top:33px;left:29px;display:flex;flex-direction:column;max-width:59%;color:#282342}.art-tag{display:inline-block;align-self:flex-start;font-size:.66rem;font-weight:850;letter-spacing:.11em;color:#6d58a1;margin-bottom:16px}.card-art-copy strong{font-size:clamp(1.4rem,2.2vw,1.83rem);letter-spacing:-.047em;line-height:1.14;margin-bottom:6px}.card-art-copy>span:last-child{font-size:.85rem;color:#615775}.card-art-recetario .art-tag{color:#ab6531}.card-art-recetario .card-art-copy{color:#4f311f}.card-art-recetario .card-art-copy>span:last-child{color:#8a5c42}.card-art-clara .art-tag{color:#327e71}.card-art-clara .card-art-copy{color:#164c46}.card-art-clara .card-art-copy>span:last-child{color:#477970}.card-art-punto .art-tag{color:#9b6a1c}.card-art-punto .card-art-copy{color:#563b18}.card-art-punto .card-art-copy>span:last-child{color:#8a703c}
.card-phone{position:absolute;z-index:2;top:13px;right:66px;width:122px;height:248px;padding:5px;border-radius:20px;background:#25253a;box-shadow:0 13px 28px rgba(28,25,49,.2);transform:rotate(9deg);overflow:hidden}.card-phone img{width:100%;height:100%;object-fit:cover;object-position:top;border-radius:15px;display:block}.card-phone-recetario{transform:rotate(-8deg);right:69px}.card-phone-punto{transform:rotate(10deg);right:64px}.art-shape{position:absolute;z-index:1;border-radius:50%;width:230px;height:230px;right:-58px;bottom:-155px}.art-shape-lector{background:#d5c5f5}.art-shape-recetario{background:#ffcd9c}.art-shape-clara{background:#b7e4d5}.art-shape-punto{background:#ffd08b}
.desktop-illustration{position:absolute;z-index:2;width:235px;height:150px;right:28px;bottom:-28px;transform:rotate(-6deg);background:#fff;border:6px solid #183f3d;border-radius:12px;box-shadow:0 16px 32px rgba(36,87,76,.17);padding:10px 12px;display:flex;flex-direction:column;gap:9px}.desktop-bar{display:flex;gap:4px}.desktop-bar i{height:5px;width:5px;background:#a5dad3;border-radius:50%}.desktop-title{font-size:.65rem;letter-spacing:-.02em;font-weight:800;color:#235954}.desktop-recipe{display:flex;gap:8px}.desktop-image{width:72px;height:50px;display:block;background:#fff1de;border-radius:6px;overflow:hidden}.desktop-image svg{width:100%;height:100%}.desktop-lines{display:flex;flex-direction:column;gap:6px;flex:1;padding-top:5px}.desktop-lines i{height:5px;border-radius:5px;background:#e4efed}.desktop-lines i:nth-child(2){width:75%}.desktop-lines i:nth-child(3){width:88%}.desktop-small-cards{display:flex;gap:7px}.desktop-small-cards i{height:28px;flex:1;background:#eff6ed;border-radius:5px}
.card-body{padding:20px 22px 19px;display:flex;flex-direction:column;flex:1}.app-identity{display:flex;align-items:center;gap:12px}.app-icon{width:52px;height:52px;border-radius:14px;display:block;flex-shrink:0}.app-identity>div{flex:1;min-width:0}.app-identity h3{font-size:1.17rem;letter-spacing:-.035em;line-height:1.2;margin:0 0 3px;font-weight:820}.app-identity p{margin:0;color:#9796a6;font-size:.76rem;font-weight:600}.free-label{background:#eaf8f0;color:#269363;border-radius:8px;padding:5px 9px;font-size:.72rem;font-weight:850;flex-shrink:0}.app-description{margin:16px 0 12px;color:#64677c;font-size:.89rem;line-height:1.6;min-height:43px}.app-meta{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 15px}.app-meta span{border:1px solid #eeeeF3;color:#77788e;border-radius:8px;padding:5px 9px;font-size:.71rem;font-weight:650;background:#fafafd}.card-footer{border-top:1px solid #eff0f5;padding-top:15px;margin-top:auto;display:flex;justify-content:space-between;align-items:end;gap:12px;flex-wrap:wrap}.downloads{display:flex;flex-direction:column;gap:0;min-width:116px}.downloads strong{font-size:1.17rem;line-height:1.15;font-weight:850;color:#26243f;font-variant-numeric:tabular-nums}.downloads span{font-size:.71rem;color:#8e8c9c}.downloads small{font-size:.65rem;color:#b0aebe}.card-actions{display:flex;gap:7px;flex-wrap:wrap}.card-actions .button{min-height:39px;font-size:.78rem;padding:8px 11px;border-radius:10px}.button-outline{background:white;border-color:#e7e6f0;color:#3f3d58}.button-outline:hover{background:#f5f3fd}.button-dark{background:#1c1d30;color:white}.button-dark:hover{background:#5040c3}
.empty-results{padding:50px 20px;text-align:center;border:1px dashed #d6d2ee;background:white;border-radius:20px}.empty-results h3{font-size:1.25rem;margin:0 0 5px}.empty-results p{color:#77788a;margin:0 0 18px}.empty-icon{font-size:2.8rem;color:#7d6de1}
.values-section{padding:16px 0 52px}.values-panel{padding:34px 38px;border:1px solid #ebe9f2;background:white;border-radius:23px;display:grid;grid-template-columns:1.04fr .96fr;gap:50px}.values-intro h2{font-size:clamp(1.7rem,3vw,2.45rem)}.values-intro>p:not(.section-kicker){color:#75778b;max-width:48ch;font-size:.92rem;margin:15px 0}.values-intro>a{font-size:.86rem;font-weight:750;color:#6250d5;text-decoration:none}.values-intro>a:hover{text-decoration:underline}.value-list{display:grid;gap:19px;align-content:center}.value-item{display:flex;align-items:start;gap:14px}.value-icon{width:34px;height:34px;border-radius:11px;background:#f0edfe;color:#6552d4;display:grid;place-items:center;flex-shrink:0;font-size:1.08rem;font-weight:800}.value-item h3{margin:0;font-size:.92rem;font-weight:800;letter-spacing:-.02em}.value-item p{margin:3px 0 0;color:#858699;font-size:.82rem}
.site-footer{border-top:1px solid #e6e7ee;background:#fff;padding:29px 0 35px}.footer-inner{display:flex;justify-content:space-between;align-items:start;gap:22px}.footer-inner strong{font-size:.96rem;font-weight:820;letter-spacing:-.03em}.footer-inner p{margin:4px 0 0;color:#8d8e9d;font-size:.77rem}.footer-links{display:flex;gap:18px;align-items:center;flex-wrap:wrap;font-size:.78rem;color:#87889c}.footer-links a{color:#504e75;text-decoration:none}.footer-links a:hover{text-decoration:underline}
@media(max-width:1050px){.hero-surface{grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr)}.hero-copy{padding-left:35px}.hero-phone-front{right:92px}.hero-phone-back{right:9px}.hero-float-top{right:132px}.hero-float-bottom{right:0}.card-art-copy{left:22px}.card-phone{right:30px}.card-phone-recetario{right:31px}.desktop-illustration{right:15px}.card-body{padding:18px}.card-footer{align-items:start}.card-actions .button{padding:8px 10px}}
@media(max-width:820px){.site-nav{gap:16px}.hero-surface{grid-template-columns:minmax(0,1fr) minmax(220px,.55fr);min-height:372px}.hero-copy{padding:31px 0 33px 30px}h1{font-size:clamp(2rem,4.6vw,2.7rem)}.hero-phone-front{width:154px;height:324px;right:63px;bottom:-36px}.hero-phone-back{width:130px;height:277px;right:-17px;bottom:45px}.hero-float-top{top:50px;right:98px}.hero-float-bottom{bottom:25px;right:-5px}.apps-grid{gap:14px}.card-art{height:167px}.card-art-copy strong{font-size:1.35rem}.card-phone{width:103px;height:210px;right:18px}.card-phone-recetario{right:21px}.desktop-illustration{width:187px;right:8px}.card-footer{flex-direction:column;align-items:stretch}.card-actions{width:100%}.card-actions .button{flex:1}}
@media(max-width:700px){.container{width:min(100% - 30px,1200px)}.header-inner{height:65px}.brand-suffix{display:none}.site-nav>a:not(.nav-cta){display:none}.hero{padding-top:16px}.hero-surface{display:block;min-height:0}.hero-copy{padding:31px 24px 200px}.hero-copy h1{font-size:clamp(2.05rem,8vw,3.1rem)}.hero-lead{max-width:62ch}.hero-proof{margin-top:18px}.hero-art{position:absolute;right:0;bottom:0;width:100%;height:240px;min-height:0;pointer-events:none}.hero-phone-front{width:102px;height:202px;right:122px;bottom:-30px}.hero-phone-back{width:89px;height:188px;right:43px;bottom:-12px}.hero-float-top{font-size:.67rem;top:8px;right:190px;padding:6px 10px}.hero-float-bottom{bottom:24px;right:13px;font-size:.65rem;padding:6px 8px}.hero-proof{max-width:65%}.orb-one{width:265px;height:265px;bottom:-150px}.section-heading{align-items:start}.collection-count{margin-top:6px}.catalog-toolbar{flex-direction:column;align-items:stretch;gap:12px}.search-wrap{width:100%}.apps-grid{grid-template-columns:1fr}.card-art{height:181px}.card-phone{width:120px;height:245px;right:55px}.card-phone-recetario{right:60px}.desktop-illustration{width:232px;right:36px}.card-footer{flex-direction:row;align-items:end}.card-actions{width:auto}.values-panel{grid-template-columns:1fr;gap:25px;padding:26px}.footer-inner{flex-direction:column}}
@media(max-width:430px){.brand-name{font-size:.97rem}.site-nav .nav-cta{padding:9px 12px}.hero-copy{padding:25px 20px 165px}.hero-copy h1{font-size:2.25rem;margin:17px 0 12px}.hero-lead{font-size:.88rem}.hero-actions{gap:8px;margin-top:18px}.hero-actions .button{font-size:.79rem;padding:9px 12px}.hero-proof{gap:8px;font-size:.66rem}.hero-proof strong{font-size:.73rem}.hero-art{height:210px}.hero-phone-front{width:87px;height:180px;right:105px}.hero-phone-back{width:79px;height:158px;right:32px}.hero-float-top{right:170px;top:19px}.hero-float-bottom{right:0;bottom:19px}.section-heading{flex-direction:column;gap:12px}.section-heading h2{font-size:1.78rem}.collection-count{margin-top:0}.card-art-copy{left:22px;max-width:60%}.card-art-copy strong{font-size:1.5rem}.card-phone{width:105px;height:220px;right:23px}.card-phone-recetario{right:22px}.desktop-illustration{right:-15px;width:190px}.card-body{padding:17px}.app-identity h3{font-size:1.06rem}.card-footer{flex-direction:column;align-items:stretch}.card-actions{width:100%}.card-actions .button{flex:1}.values-panel{padding:22px}.footer-links{gap:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.app-card,.button{transition:none}.app-card:hover,.button:hover{transform:none}}

/* Pack 5.4 · Avisos por email: armonizado con el diseño de la Biblioteca */
.newsletter-section{padding:4px 0 39px}
.newsletter-panel{background:linear-gradient(113deg,#eeebff 0%,#f8f7ff 52%,#eaf4ff 100%);border:1px solid #e4def9;border-radius:24px;padding:28px 32px;display:grid;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:20px}
.newsletter-icon{width:56px;height:56px;display:grid;place-items:center;border-radius:17px;color:#6753e6;background:#fff;font-size:1.8rem;box-shadow:0 9px 23px rgba(70,53,120,.08)}
.newsletter-copy h2{font-size:clamp(1.35rem,2.1vw,1.83rem);line-height:1.19;letter-spacing:-.035em;margin:4px 0 9px;font-weight:820}
.newsletter-copy p:not(.section-kicker){margin:0;max-width:62ch;font-size:.89rem;color:#62657b}
.newsletter-action{display:flex;flex-direction:column;align-items:center;gap:9px}
.newsletter-action .button{white-space:nowrap}
.newsletter-action>span{font-size:.72rem;color:#777590}
@media(max-width:830px){.newsletter-panel{grid-template-columns:52px minmax(0,1fr)}.newsletter-action{grid-column:2;align-items:flex-start}}
@media(max-width:520px){.newsletter-panel{display:flex;align-items:flex-start;flex-direction:column;padding:24px 22px;gap:12px}.newsletter-icon{width:48px;height:48px}.newsletter-action{width:100%}.newsletter-action .button{width:100%}}

/* Tarjeta Rutas a Pie: quinta app preservada al integrar Brevo (Pack 5.4) */
.card-art-rutas{background:linear-gradient(130deg,#d4f5e7 0%,#e9fbf3 60%,#bce9d5 100%);color:#16463c}
.card-art-rutas .art-tag{color:#2d7860}
.card-art-rutas .card-art-copy strong{color:#153f35}
.card-phone-rutas{right:8%;top:8%;width:30%;height:135%;transform:rotate(12deg);border:6px solid #1b2b2a;border-radius:27px;overflow:hidden;box-shadow:0 20px 48px rgba(13,52,42,.24);background:#fff;position:absolute;z-index:2}
.card-phone-rutas img{display:block;width:100%;height:100%;object-fit:cover;object-position:top}
.art-shape-rutas{background:#79cbaa;position:absolute;right:-8%;bottom:-35%;height:75%;width:44%;border-radius:50%;opacity:.28}
@media(max-width:700px){.card-phone-rutas{width:33%;right:5%;top:12%}}
