/* Home · secciones propias (el resto del sistema está en site.css) */
.hero__mini{margin-top:1.1rem;font-size:.92rem;color:var(--text-3)}.hero__mini a{color:var(--pink-400);font-weight:600}

/* tarjeta de cristal genérica (también la usan las páginas interiores) */
.gx{position:relative;border-radius:24px;border:1px solid var(--glass-b);background:linear-gradient(160deg,rgba(255,255,255,.07),rgba(255,255,255,.02));backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:1.6rem;transition:border-color .4s,box-shadow .5s,translate .5s var(--ease)}
.gx:hover{border-color:rgba(255,77,184,.45);box-shadow:0 26px 70px rgba(123,47,190,.3);translate:0 -4px}
.gx--hl{background:linear-gradient(160deg,rgba(123,47,190,.3),rgba(233,30,140,.12));border-color:rgba(255,77,184,.35)}
.card--hot{background:linear-gradient(160deg,rgba(123,47,190,.38),rgba(233,30,140,.16));border-color:rgba(255,77,184,.45)}

/* datos clave */
.facts{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(2rem,6vw,6rem);align-items:start}
.facts__lead p{margin-top:1.3rem;max-width:34rem}.facts__lead .h2{margin-top:1.2rem}
.facts__list{border-top:1px solid var(--glass-b);background:rgba(10,10,24,.55);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-radius:22px;border:1px solid var(--glass-b);overflow:hidden}
.facts__list>div{display:grid;grid-template-columns:8.5rem 1fr;gap:1.4rem;padding:1.05rem 1.5rem;border-bottom:1px solid var(--glass-b);transition:background .3s}
.facts__list>div:last-child{border-bottom:0}.facts__list>div:hover{background:rgba(123,47,190,.12)}
.facts dt{font:500 .72rem var(--font-h);letter-spacing:.2em;text-transform:uppercase;color:var(--pink-400);padding-top:.25rem}
.facts dd{color:var(--text-2);font-size:.95rem}.facts dd a{color:#fff}
@media (max-width:900px){.facts{grid-template-columns:1fr}.facts__list>div{grid-template-columns:1fr;gap:.2rem}}

/* CTA calculadora */
.cta3d{padding-block:clamp(2rem,4vw,4rem)}
.cta3d__in{position:relative;display:grid;grid-template-columns:auto 1fr auto;gap:2rem;align-items:center;padding:clamp(1.6rem,3vw,2.8rem);border-radius:30px;overflow:hidden;background:linear-gradient(120deg,rgba(74,18,128,.55),rgba(155,21,120,.35));border:1px solid rgba(255,77,184,.35);box-shadow:0 30px 90px rgba(123,47,190,.35)}
.cta3d__in::before{content:"";position:absolute;inset:-60%;background:conic-gradient(from 0deg,transparent 0 70%,rgba(255,215,0,.22) 85%,transparent);animation:spin 9s linear infinite}
.cta3d__in>*{position:relative}
@keyframes spin{to{transform:rotate(360deg)}}
.cta3d__orb{width:96px;height:96px;border-radius:50%;display:grid;place-items:center;font-size:2.6rem;background:radial-gradient(circle at 30% 30%,#ff8fd0,#7b2fbe 60%,#1e0d42);box-shadow:0 0 50px rgba(233,30,140,.6);animation:float 5s ease-in-out infinite}
@keyframes float{50%{transform:translateY(-10px) rotate(6deg)}}
.cta3d h2{font:700 clamp(1.5rem,3vw,2.4rem)/1.1 var(--font-h);letter-spacing:-.025em;margin:.6rem 0 .8rem}
.chips{list-style:none;display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1rem}.chips li{padding:.35rem .8rem;border-radius:999px;border:1px solid var(--glass-b);background:rgba(0,0,0,.25);font-size:.8rem}
@media (max-width:900px){.cta3d__in{grid-template-columns:1fr;text-align:left}.cta3d__orb{width:72px;height:72px;font-size:2rem}}

/* GMB */
.gmb__g{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(2rem,5vw,5rem);align-items:start}
.gmb__lead>*+*{margin-top:1.4rem}.gmb__lead .h2{margin-top:1.2rem}
.gmb__list{display:grid;gap:1rem}
.gmb__list article{display:grid;grid-template-columns:auto 1fr;gap:.3rem 1.2rem}
.gmb__list span{grid-row:span 2;width:52px;height:52px;border-radius:16px;display:grid;place-items:center;font-size:1.5rem;background:linear-gradient(135deg,rgba(123,47,190,.5),rgba(233,30,140,.4))}
.gmb__list h4{font:700 1.1rem var(--font-h);letter-spacing:-.01em}.gmb__list p{color:var(--text-2);font-size:.92rem;grid-column:2}
@media (max-width:900px){.gmb__g{grid-template-columns:1fr}}

/* Sobre mí */
.about__g{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(2rem,6vw,6rem);align-items:center}
.about__g p{margin-top:1.2rem;color:var(--text-2)}.about__g p strong{color:#fff}.about__g .h2{margin-top:1.2rem}
.about__ph{position:relative;border-radius:28px 28px 120px 28px;overflow:hidden;border:1px solid var(--glass-b);box-shadow:0 40px 100px -30px rgba(123,47,190,.7)}
.about__ph::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(6,6,15,.85));pointer-events:none}
.about__ph img{width:100%;aspect-ratio:4/4.6;object-fit:cover;transition:transform 1.4s var(--ease)}.about__ph:hover img{transform:scale(1.05)}
.about__ph figcaption{position:absolute;left:1.4rem;bottom:1.2rem;z-index:2;font:500 .72rem var(--font-h);letter-spacing:.2em;text-transform:uppercase}
.pull{margin-top:2rem;padding:1.4rem 1.6rem;border-left:3px solid var(--pink-500);background:linear-gradient(90deg,rgba(233,30,140,.12),transparent)}
.pull p{margin:0!important;font:600 clamp(1.1rem,2vw,1.4rem)/1.35 var(--font-h);color:#fff!important}.pull cite{display:block;margin-top:.8rem;font-style:normal;color:var(--text-2);font-size:.88rem}
.steps-wrap{margin-top:clamp(4rem,8vw,7rem)}
.steps{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;counter-reset:s}
.steps li{display:flex;flex-direction:column;gap:.6rem;padding:1.6rem 1.3rem}
.steps__n{font:700 2.6rem/1 var(--font-h);background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;opacity:.9}
.steps li div{font-size:1.6rem}.steps strong{font:700 1.08rem var(--font-h)}.steps p{color:var(--text-2);font-size:.88rem}
@media (max-width:1100px){.steps{grid-template-columns:1fr 1fr}}@media (max-width:640px){.steps{grid-template-columns:1fr}}
@media (max-width:900px){.about__g{grid-template-columns:1fr}.about__ph{max-width:420px}}

/* Cobertura */
.coverage__g{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(2rem,6vw,6rem);align-items:center}
.coverage__g p{margin:1.2rem 0;color:var(--text-2)}.coverage__g p strong{color:#fff}.coverage__g .h2{margin-top:1.2rem}
.coverage__ph{border-radius:50% 50% 28px 28px/38% 38% 28px 28px;overflow:hidden;border:1px solid var(--glass-b);box-shadow:0 0 80px rgba(0,212,255,.18)}
.coverage__ph img{width:100%;aspect-ratio:4/3.5;object-fit:cover}
@media (max-width:900px){.coverage__g{grid-template-columns:1fr}}

/* Industrias */
.ind{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;perspective:1400px}
.ind__c{display:flex;flex-direction:column;gap:.6rem;min-height:250px;will-change:transform;transform-style:preserve-3d}
.ind__c span{font-size:2.2rem;width:64px;height:64px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(123,47,190,.5),rgba(233,30,140,.35));transform:translateZ(36px)}
.ind__c h3{font:700 1.35rem var(--font-h);letter-spacing:-.02em;margin-top:auto;transform:translateZ(24px)}.ind__c p{color:var(--text-2);font-size:.9rem}
.ind__c em{font:600 .85rem var(--font-h);font-style:normal;color:var(--pink-400)}
.ind__more{margin-top:2.2rem;text-align:center;color:var(--text-2)}.ind__more .link{margin-left:.4rem}
@media (max-width:1000px){.ind{grid-template-columns:1fr 1fr}}@media (max-width:520px){.ind{grid-template-columns:1fr}}
.work__sub{margin-top:.8rem;max-width:30rem;font-size:.95rem}

/* Casos */
.cases{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem;margin-bottom:clamp(3rem,6vw,5rem)}
.case{display:flex;flex-direction:column;gap:.7rem;padding:2rem}
.case b{font:700 clamp(3.2rem,6vw,5.4rem)/.95 var(--font-h);letter-spacing:-.05em}
.case small{font:500 .72rem var(--font-h);letter-spacing:.22em;text-transform:uppercase;color:var(--text-3)}
.case h3{font:700 1.3rem var(--font-h);letter-spacing:-.02em;margin-top:1rem}.case p{color:var(--text-2);font-size:.93rem;flex:1}
@media (max-width:900px){.cases{grid-template-columns:1fr}}

/* Testimonios */
.gbadge{display:inline-flex;align-items:center;gap:1rem;margin-top:1.2rem;padding:.8rem 1.2rem .8rem .9rem;border-radius:20px;border:1px solid var(--glass-b);background:linear-gradient(160deg,rgba(255,255,255,.09),rgba(255,255,255,.02));backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 14px 40px -14px rgba(0,0,0,.7);transition:border-color .4s,box-shadow .5s,translate .5s var(--ease)}
.gbadge:hover{border-color:rgba(255,215,0,.5);box-shadow:0 20px 50px -12px rgba(255,215,0,.22);translate:0 -3px}
.gbadge__g{flex:0 0 46px;height:46px;border-radius:14px;background:#fff;display:grid;place-items:center}.gbadge__g svg{width:26px;height:26px}
.gbadge__score{display:flex;flex-direction:column;align-items:flex-start;line-height:1;padding-right:1rem;border-right:1px solid var(--glass-b)}
.gbadge__score b{font:700 2rem/1 var(--font-h);letter-spacing:-.04em;background:linear-gradient(110deg,#fff,var(--gold));-webkit-background-clip:text;background-clip:text;color:transparent}
.gbadge__score .stars{font-size:.78rem;letter-spacing:.12em;margin-top:.35rem}
.gbadge__txt{display:flex;flex-direction:column;gap:.15rem}.gbadge__txt strong{font:600 .95rem var(--font-h)}.gbadge__txt em{font-style:normal;font-size:.8rem;color:var(--text-2)}
.gbadge .arr{color:var(--gold);margin-left:.2rem}
@media (max-width:480px){.gbadge{gap:.7rem;padding-right:.9rem}.gbadge__score b{font-size:1.6rem}.gbadge__txt strong{font-size:.86rem}}
.stars{color:var(--gold);letter-spacing:.25em}
.wall{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem;align-items:stretch}
.tcard{display:flex;flex-direction:column;gap:1.2rem;padding:1.9rem}
.tcard blockquote{flex:1;font:500 1.05rem/1.55 var(--font-b);color:#e8e8f6}.tcard blockquote strong{color:var(--pink-400)}
.tcard figcaption{display:flex;align-items:center;gap:.9rem}.tcard img{width:48px;height:48px;border-radius:50%;object-fit:cover;border:2px solid var(--pink-500)}
.tcard figcaption b{display:block;font-family:var(--font-h)}.tcard small{color:var(--text-3)}
@media (max-width:900px){.wall{grid-template-columns:1fr}}

/* Clientes: palabra gigante en bucle (inspo: titulares recortados que sangran por los bordes) */
.clients{padding:3rem 0 2rem;overflow:hidden}
.clients__t{text-align:center;font:500 .72rem var(--font-h);letter-spacing:.3em;text-transform:uppercase;color:var(--text-3);margin-bottom:1rem}
.bigword{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.bigword>div{display:flex;width:max-content;animation:mq 60s linear infinite reverse}
.bigword span{font:700 clamp(3rem,9vw,8rem)/1 var(--font-h);letter-spacing:-.04em;text-transform:uppercase;white-space:nowrap;padding-inline:2rem;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.28);transition:color .4s,-webkit-text-stroke-color .4s}
.bigword span:hover{color:rgba(255,77,184,.9);-webkit-text-stroke-color:transparent}
.bigword span::after{content:"✦";margin-left:4rem;font-size:.35em;color:var(--pink-400);-webkit-text-stroke:0;vertical-align:middle}

/* Blog */
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem}
.post{display:flex;flex-direction:column;gap:1rem;padding:.8rem .8rem 1.5rem;overflow:hidden}
.post img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:16px;transition:transform 1s var(--ease),filter .5s;filter:saturate(.9)}
.post:hover img{transform:scale(1.04);filter:saturate(1.2)}
.post div{padding:0 .8rem;display:flex;flex-direction:column;gap:.7rem;flex:1}
.post h3{font:700 1.12rem/1.25 var(--font-h);letter-spacing:-.015em}.post p{color:var(--text-2);font-size:.9rem;flex:1}
@media (max-width:1000px){.posts{grid-template-columns:1fr 1fr}}@media (max-width:640px){.posts{grid-template-columns:1fr}}

/* FAQ */
.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,6vw,6rem);align-items:start}
.faq__lead{position:sticky;top:7rem}.faq__lead .h2{margin:1.2rem 0}
.faq__list{display:grid;gap:.7rem}
.qa{border-radius:18px;border:1px solid var(--glass-b);background:rgba(10,10,24,.55);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);overflow:hidden;transition:border-color .3s,background .3s}
.qa[open]{border-color:rgba(255,77,184,.5);background:linear-gradient(160deg,rgba(123,47,190,.22),rgba(10,10,24,.6))}
.qa summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.15rem 1.4rem;font:600 1.02rem var(--font-h)}
.qa summary::-webkit-details-marker{display:none}
.qa summary i{flex:0 0 28px;height:28px;border-radius:50%;border:1px solid rgba(255,255,255,.3);position:relative;transition:transform .5s var(--ease),background .3s}
.qa summary i::before,.qa summary i::after{content:"";position:absolute;left:50%;top:50%;width:11px;height:1.5px;background:#fff;transform:translate(-50%,-50%)}
.qa summary i::after{transform:translate(-50%,-50%) rotate(90deg)}
.qa[open] summary i{transform:rotate(135deg);background:var(--pink-500);border-color:var(--pink-500)}
.qa__body{padding:0 1.4rem 1.3rem;color:var(--text-2);font-size:.96rem;overflow:hidden}.qa__body strong{color:#fff}.qa__body a{color:var(--pink-400);font-weight:600}
@media (max-width:900px){.faq{grid-template-columns:1fr}.faq__lead{position:static}}

/* Orgullo leonés */
.pride__g{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(2rem,6vw,6rem);align-items:center}
.pride__g p{margin:1.2rem 0;color:var(--text-2)}.pride__g .h2{margin-top:1.2rem}
.pride__ph{border-radius:200px 200px 28px 28px;overflow:hidden;border:1px solid var(--glass-b);box-shadow:0 0 90px rgba(255,215,0,.16)}
.pride__ph img{width:100%;aspect-ratio:4/4.6;object-fit:cover}
@media (max-width:900px){.pride__g{grid-template-columns:1fr}.pride__ph{max-width:420px}}

/* Freelance vs agencia */
.vs{display:grid;grid-template-columns:1fr 1.1fr;gap:1.1rem;align-items:stretch;perspective:1400px}
.vs__c{padding:2rem;border-radius:28px;border:1px solid var(--glass-b);display:flex;flex-direction:column;gap:1.2rem}
.vs__c h3{font:700 1.5rem var(--font-h);letter-spacing:-.02em;display:flex;align-items:center;gap:.7rem}
.vs__c ul{list-style:none;display:grid;gap:.85rem;flex:1}.vs__c li{display:flex;gap:.8rem;font-size:.97rem}
.vs__c--no{background:rgba(10,10,24,.45);color:var(--text-2)}.vs__c--no li::before{content:"✕";color:#ff6b81;font-weight:700}
.vs__c--yes{background:linear-gradient(160deg,rgba(123,47,190,.4),rgba(233,30,140,.18));border-color:rgba(255,77,184,.5);box-shadow:0 30px 90px rgba(233,30,140,.3)}
.vs__c--yes li::before{content:"✓";color:var(--cyan);font-weight:700}
@media (max-width:900px){.vs{grid-template-columns:1fr}}

/* CTA grande */
.ctabig{position:relative;text-align:center;padding:clamp(3rem,7vw,6rem) clamp(1.5rem,5vw,4rem);border-radius:36px;overflow:hidden;background:radial-gradient(ellipse at 50% 0%,rgba(233,30,140,.4),transparent 60%),linear-gradient(160deg,#241058,#0d0d1a);border:1px solid rgba(255,77,184,.4)}
.ctabig h2{font:700 clamp(2.2rem,6vw,5.2rem)/1 var(--font-h);letter-spacing:-.04em;max-width:15ch;margin:0 auto 1.4rem}
.ctabig p{max-width:40rem;margin:0 auto 2rem;color:var(--text-2)}.ctabig .hero__cta{justify-content:center}

/* Municipios */
.muni{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;perspective:1400px}
.muni a{display:flex;flex-direction:column;gap:.7rem;min-height:300px;will-change:transform}
.muni span{font:500 .75rem var(--font-h);letter-spacing:.18em;text-transform:uppercase;color:var(--purple-300)}
.muni h3{font:700 1.7rem var(--font-h);letter-spacing:-.03em}.muni p{color:var(--text-2);font-size:.9rem;flex:1}.muni em{font:600 .85rem var(--font-h);font-style:normal;color:var(--pink-400)}
@media (max-width:1000px){.muni{grid-template-columns:1fr 1fr}}@media (max-width:560px){.muni{grid-template-columns:1fr}}
