:root{--negro:#040b12;--plata-tenue:#a0adbd;--cian:#78d9ff;--azul:#246fff}
body{background:var(--negro)}
.skip-link{position:absolute;left:20px;top:-80px;z-index:50;background:white;color:#040b12;padding:12px}.skip-link:focus{top:10px}
.site-header{padding:24px clamp(22px,5vw,80px);min-height:84px;border-bottom:1px solid #ffffff0d;position:relative;z-index:5;background:#040b12}
.nav a{font-size:16px;color:#b9c6d8}.nav a[aria-current]{color:white;border-color:var(--cian)}
.hero-planet{min-height:690px;height:calc(100svh - 84px);max-height:1000px;padding:clamp(32px,6vw,90px);justify-content:center;isolation:isolate;background:radial-gradient(ellipse at 70% 50%,#0a2635,transparent 65%)}
.hero-planet::before,.hero-planet::after{display:none}
.hero-planet::after{display:block;position:absolute;inset:0;height:auto;z-index:0;pointer-events:none;background:linear-gradient(90deg,#040b12 0%,#040b12e8 17%,#040b12a8 33%,transparent 60%)}
.hero-copy h1 em{text-shadow:none}
.contact-form .honeypot{display:none}
.whatsapp-float{position:fixed;right:max(22px,env(safe-area-inset-right));bottom:max(22px,env(safe-area-inset-bottom));z-index:50;display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:#25d366;color:#fff;box-shadow:0 5px 22px #0005;text-decoration:none}
.whatsapp-float svg{width:34px;height:34px}
.whatsapp-float:hover{background:#20bf5b}
.footer-v2{padding-right:100px!important;padding-bottom:90px!important}
.contact-page-lead{padding:70px clamp(22px,5vw,80px) 45px}
.contact-page-lead h1{font-size:clamp(48px,6.5vw,86px);font-weight:500;letter-spacing:-.05em;line-height:1.08;max-width:none;margin:0 0 24px}
.contact-email{font-size:clamp(18px,2.4vw,28px);color:#c8e3f8;text-decoration:none;overflow-wrap:anywhere}
.contact-channels{padding:24px clamp(22px,5vw,80px) 70px;display:grid;grid-template-columns:.9fr 1.3fr;gap:35px}
.contact-page h2{font-size:clamp(32px,3.4vw,46px);font-weight:500;line-height:1.1;letter-spacing:-.035em;margin:0 0 28px}
.phone-list{min-width:0}.phone-card{display:grid;grid-template-columns:1fr auto;gap:4px 12px;border-top:1px solid #a7c6e32b;padding:18px 0;color:white;text-decoration:none}.phone-card span{color:#a0adbd;font-size:15px}.phone-card strong{grid-column:1;font-size:clamp(23px,2.4vw,32px);font-weight:500}.phone-card svg{width:24px;height:24px;grid-column:2;grid-row:1/3;align-self:center;color:#78d9ff}
.whatsapp-card{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:28px;padding:32px;border:1px solid #438cff66;border-radius:16px;background:radial-gradient(at top right,#1250a538,transparent 70%),#0a1724}.whatsapp-card>div{flex:1 1 190px}.whatsapp-card p{color:#b8cddd;font-size:17px}.whatsapp-card h2{margin-bottom:20px}.qr-link{display:block;background:white;padding:8px;border-radius:12px;flex:0 1 210px;max-width:100%}.qr-link img{display:block;width:100%;height:auto}
.social-section{padding:60px clamp(22px,5vw,80px);border-top:1px solid #a7c6e324}.social-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.social-card{padding:28px;border:1px solid #a7c6e32b;border-radius:12px;min-width:0;background:#0a1724}.social-card p{font-size:16px;color:#a8bed1;margin:0 0 12px}.social-card h3{font-size:28px;font-weight:500;color:white;margin:0 0 30px}.social-card a{display:flex;align-items:center;gap:15px;color:#8ddaff;font-size:18px;text-decoration:none}.social-card svg{width:20px;height:20px}.profile-pending{font-size:16px;color:#a8bed1}
.contact-bottom{margin:0 clamp(22px,5vw,80px) 70px;padding:45px 0;border-top:1px solid #a7c6e324;display:flex;justify-content:space-between;align-items:center;gap:24px}.contact-bottom h2{margin:0}
@media(max-width:850px){.contact-channels{grid-template-columns:1fr}.social-grid{grid-template-columns:1fr}.contact-bottom{align-items:flex-start;flex-direction:column}.whatsapp-card{padding:26px}.qr-link{flex-basis:190px}}
.planet-art{position:absolute;inset:0 -13% 0 auto;width:92%;display:flex;align-items:center;z-index:-1;pointer-events:none;transform:translateY(var(--planet-y,0px)) scale(var(--planet-zoom,1));transform-origin:60% 50%;mask-image:linear-gradient(90deg,transparent,black 24%,black 90%,transparent)}
.planet-art video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;mask-image:linear-gradient(0deg,transparent,black 15%,black 85%,transparent)}
.hero-copy{width:53%;position:relative;z-index:1;padding:20px 0}
.hero-copy h1{font-size:clamp(46px,5.45vw,84px);line-height:1.04;letter-spacing:-.055em;max-width:12ch;font-weight:500;margin-bottom:38px;text-shadow:0 2px 24px #040b12cc}
h1 em,h2 em{font-style:normal;background:linear-gradient(100deg,#d1dbe8,#6acfff 80%);background-clip:text;-webkit-background-clip:text;color:transparent}
.btn{border-radius:8px;min-height:54px;font-size:18px;background:linear-gradient(110deg,#1558ff,#368bff);box-shadow:0 8px 32px #246fff42;border:1px solid #7baeff66}
.hero-cta{padding:18px 32px;gap:26px;box-shadow:0 0 0 6px #246fff0d,0 10px 45px #246fff59}
.btn svg,.package-cta svg,.section-heading a svg,.monthly a svg{width:20px;height:20px;flex:none}
.planet-toggle{position:absolute;right:96px;bottom:26px;width:42px;height:42px;border-radius:50%;border:1px solid #92c9e64d;background:#07131dd9;color:#c2e9ff;cursor:pointer;display:grid;place-items:center}
.planet-toggle svg{width:20px;height:20px}
.planet-toggle[aria-pressed=true]{color:white;border-color:var(--cian)}
.packages-section{padding:90px clamp(22px,5vw,80px);background:linear-gradient(#07111c,#040b12);border-top:1px solid #77bfff2b;position:relative}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:48px}
.section-heading h2,.contact-v2 h2{font-size:clamp(42px,5vw,72px);line-height:1.05;font-weight:500;letter-spacing:-.045em;margin:0}
.section-heading a{display:flex;gap:14px;align-items:center;font-size:17px;color:#b8cddd;text-decoration:none;border-bottom:1px solid #78d9ff4d;padding-bottom:8px}
.package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.package{border:1px solid #a7c6e32b;border-radius:14px;padding:30px;background:linear-gradient(145deg,#10233380,#08131e);min-width:0;min-height:350px;display:flex;flex-direction:column;position:relative}
.package.initial{border-color:#438cff80;background:radial-gradient(ellipse at 100% 0,#1250a54a,transparent 60%),linear-gradient(145deg,#0f2338,#08131e)}
.package-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}.package-index{font-size:16px;color:#8797ac}.package-icon{width:36px;height:36px;color:#8ddaff}
.package h3{font-size:clamp(24px,2.2vw,33px);line-height:1.15;font-weight:500;color:white;letter-spacing:-.035em;margin:0 0 20px;min-height:2.3em}
.package h3 .package-sub{display:block;font-size:.55em;color:#a9bfd3;letter-spacing:0;margin-top:8px}
.package-price{font-size:clamp(27px,2.6vw,38px);line-height:1.2;letter-spacing:-.04em;margin:0 0 22px;color:#d9e8f6}.initial .package-price{font-size:44px;color:white}.package-price span{font-size:17px;letter-spacing:0;color:#a9bfd3}
details{border-top:1px solid #a7c6e324;margin-top:0}summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:17px 0;color:#c6d6e6;font-size:17px;min-height:50px}summary::-webkit-details-marker{display:none}summary span{font-size:23px;color:#76caff}details[open] summary span{transform:rotate(45deg)}details p,details li{font-size:17px;color:#aebfd0;line-height:1.65}details ul{padding-left:20px;margin:8px 0 22px}details li{margin:6px 0}details li::marker{color:#6bbcff}
.package-cta{display:flex;justify-content:space-between;gap:12px;align-items:center;color:#f0f7ff;font-size:17px;text-decoration:none;border-top:1px solid #a7c6e324;padding-top:20px;margin-top:auto;min-height:54px}.initial .package-cta{color:#8ddaff}
.monthly{display:grid;grid-template-columns:1fr 2.3fr;gap:40px;align-items:center;padding-top:56px;margin-top:50px;border-top:1px solid #a7c6e324}.monthly h3{font-size:30px;line-height:1.15;letter-spacing:-.025em;font-weight:500;color:white;margin:0}.monthly-options{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.monthly a{color:#d5e3f0;text-decoration:none;border-left:1px solid #78d9ff33;padding-left:20px;display:block}.monthly strong{display:block;font-size:26px;font-weight:500;margin-bottom:10px}.monthly span{display:flex;gap:8px;align-items:center;font-size:15px}
.contact-v2{padding:100px clamp(22px,5vw,80px);display:grid;grid-template-columns:1fr 1fr;gap:10%;border-top:1px solid #a7c6e324;background:radial-gradient(ellipse at 0 60%,#0a2a42,transparent 60%)}
.promo{display:inline-block;color:#a4dfff;background:#56bdff12;border:1px solid #56bdff4d;border-radius:30px;padding:8px 20px;font-size:18px;margin:0 0 24px}.contact-intro>p:last-child{font-size:25px;color:#c5d5e4;margin-top:28px}
.contact-form{display:grid;gap:20px}.contact-form label{font-size:17px;color:#c2d1e0;display:grid;gap:8px}.contact-form input,.contact-form select,.contact-form textarea{font:inherit;font-size:18px;width:100%;border:1px solid #a7c6e338;border-radius:8px;background:#0b1927;color:#e6f2ff;padding:15px;min-height:54px}.contact-form textarea{resize:vertical}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#8f9fb0}.submit-btn{justify-content:space-between;cursor:pointer}.submit-btn:disabled{opacity:.62;cursor:not-allowed;box-shadow:none}.contact-form>p{margin:0;color:#b2c0cf;font-size:16px}
input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,summary:focus-visible,a:focus-visible{outline:2px solid #91dcff;outline-offset:5px}
.footer-v2{padding:30px clamp(22px,5vw,80px);border-top:1px solid #a7c6e324;display:flex;align-items:center;justify-content:space-between;gap:25px;color:#93a7bd;font-size:15px}.footer-v2>a{color:#c4d3e2;text-decoration:none}
.about-lead{padding:90px clamp(22px,6vw,90px);max-width:1100px}.about-lead h1{font-size:clamp(44px,6vw,82px);max-width:16ch}.about-lead p{font-size:22px;color:#bbcbdb;max-width:65ch}.about-v2 .sec{padding:70px clamp(22px,6vw,90px)}.about-v2 .etapa:nth-child(n){margin-top:0}.about-v2 .camino,.about-v2 .rotulos{display:none}.about-v2 .recorrido{margin-top:38px}.about-v2 #proceso{overflow:visible}.about-v2 h2{max-width:24ch}.info-packages details{max-width:850px}.info-packages summary{font-size:23px}.info-packages .btn{margin-top:28px}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.package{transition:border-color .25s,transform .25s}.package:hover{transform:translateY(-4px);border-color:#78c9ff80}.package-cta:hover{color:#80cfff}}
@media(max-width:860px){.package-grid{grid-template-columns:1fr}}
@media(max-width:1100px){.monthly{grid-template-columns:1fr}.hero-planet{min-height:650px}.planet-art{width:105%;right:-25%}.hero-copy{width:58%}}
@media(max-width:699px){.site-header{padding:18px 20px;gap:12px;min-height:95px}.marca{font-size:13px}.nav{gap:20px;width:100%;justify-content:space-between}.nav a{font-size:15px}.hero-planet{height:auto;min-height:750px;max-height:none;padding:380px 22px 60px;justify-content:flex-end}.planet-art{top:0;left:-28%;right:auto;bottom:auto;width:156%;height:410px;mask-image:linear-gradient(0deg,transparent,black 15%,black 85%,transparent)}.hero-copy{width:100%;padding:0}.hero-copy h1{font-size:clamp(41px,10vw,62px);max-width:14ch;margin-bottom:28px}.hero-copy h1 br:first-child{display:none}.hero-cta{font-size:18px;min-height:58px;padding:16px 28px}.planet-toggle{top:330px;bottom:auto;right:20px}.packages-section{padding:62px 20px}.section-heading{display:block;margin-bottom:32px}.section-heading a{display:inline-flex;margin-top:24px;font-size:16px}.package-grid{grid-template-columns:1fr;gap:16px}.package{padding:28px;min-height:330px}.package h3{font-size:32px;min-height:0}.package-price{font-size:31px}.package-top{margin-bottom:20px}.monthly{gap:28px;margin-top:38px;padding-top:38px}.monthly-options{grid-template-columns:1fr;gap:20px}.monthly a{display:flex;justify-content:space-between;align-items:center;padding:14px 0 14px 18px}.monthly strong{font-size:25px;margin:0}.contact-v2{padding:65px 22px;grid-template-columns:1fr;gap:36px}.contact-v2 h2{font-size:58px}.footer-v2{flex-wrap:wrap;padding:25px 22px}.footer-v2>span{width:100%}.about-lead{padding:60px 22px}.about-lead p{font-size:19px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.planet-art{transform:none!important}}
@media(min-width:700px) and (min-height:620px) and (prefers-reduced-motion:no-preference){
 .hero-scroll{height:175svh;position:relative}
 .hero-scroll .hero-planet{position:sticky;top:0;height:100svh;min-height:0;max-height:none}
}
/* Celular: títulos grandes con menos tracking negativo para que las letras no se encimen */
@media(max-width:699px){h1,h2,.hero-copy h1,.contact-page-lead h1,.contact-page h2,.section-heading h2,.contact-v2 h2,.package h3,.package-price{letter-spacing:-.015em}h1,.hero-copy h1,.contact-page-lead h1,.section-heading h2,.contact-v2 h2{line-height:1.1}#gmar-score .wrap h2{letter-spacing:-.015em;line-height:1.1}}
/* El brillo decorativo de Proceso es más ancho que pantallas chicas y tablets */
.about-v2 #proceso{overflow-x:clip}
/* Planeta fijo de fondo en la portada; las secciones lo dejan ver tenue */
.planet-art{position:fixed}
main #gmar-score{background:#040b12b3}
.packages-section{background:linear-gradient(#07111cc2,#040b12d1)}
.contact-v2{background-color:#040b12c7;position:relative}
.footer-v2{background:#040b12e6;position:relative}
@media(max-width:699px){.planet-art{top:116px}}
/* Botón de acceso al CRM privado en el menú */
.nav .nav-acceso{border:1px solid #78d9ff59;border-radius:999px;padding:5px 14px;color:#dff4ff}
.nav .nav-acceso:hover{border-color:var(--cian);color:#fff}
@media(max-width:699px){.nav .nav-acceso{padding:3px 10px}}
@media(max-width:420px){.nav{gap:10px}.nav a{font-size:13.5px;white-space:nowrap}.nav .nav-acceso{padding:3px 9px}}
/* Paquetes: textos centrados; mensualidades en columna (nombre arriba, precio abajo), no en una sola fila */
.package h3,.package-price{text-align:center}
.monthly{grid-template-columns:1fr;text-align:center}
.monthly a{text-align:center}
.monthly a:first-child{border-left:0}
.monthly span{justify-content:center}
@media(max-width:699px){.monthly a{display:block;border-left:0;border-top:1px solid #78d9ff33;padding:18px 0}.monthly strong{margin-bottom:8px}}
/* Aviso de privacidad: enlace discreto bajo el formulario y texto legible */
.form-privacy{font-size:13px;color:#8fa6ba;margin:14px 0 0}.form-privacy a{color:inherit}
.privacy{max-width:820px}.privacy h2{font-size:clamp(24px,3vw,32px);margin:40px 0 12px}.privacy h2:first-child{margin-top:0}.privacy p{color:#bbcbdb;font-size:18px;line-height:1.6}.privacy a{color:#8ddaff}.privacy ul{color:#bbcbdb;font-size:18px;line-height:1.6;padding-left:22px}.privacy li{margin:6px 0}.privacy strong{color:#e6f1fb;font-weight:600}
/* SEO: línea de servicios en la portada, zona en contacto, páginas de servicio y pie con más enlaces */
.hero-sub{font-size:clamp(17px,1.35vw,20px);line-height:1.5;color:#c4d3e2;max-width:38ch;margin:-14px 0 32px;text-shadow:0 2px 18px #040b12}
.contact-zone{color:#bbcbdb;font-size:19px;line-height:1.55;max-width:46ch;margin:0 0 16px}
.svc-cta{display:flex;flex-wrap:wrap;gap:14px;margin:36px 0 10px}.svc-cta .btn.alt{background:transparent;border:1px solid #78d9ff59;box-shadow:none}
.svc-more{margin-top:28px;font-size:16px!important}.svc-link{color:#8ddaff;text-decoration:none}
.footer-v2{flex-wrap:wrap;row-gap:14px}
@media(max-width:699px){.hero-sub{font-size:17px;margin:-10px 0 26px}.contact-zone{font-size:17px}.svc-cta .btn{width:100%;justify-content:space-between}}
.price-note{margin:22px 0 0;text-align:center;color:#8fa6ba;font-size:14px}
/* Accesibilidad: áreas táctiles del menú y del pie en celular; sin contorno al enfocar <main> */
main:focus{outline:none}
@media(max-width:699px){.nav a{min-height:44px;display:inline-flex;align-items:center}.footer-v2>a:not(.whatsapp-float){padding-block:10px}}
.footer-v2>.whatsapp-float{color:#fff}
/* Páginas de servicio: animación temática en el encabezado y aparición suave de secciones */
.svc-hero{max-width:none;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(24px,4vw,64px);align-items:center}
.svc-art{width:100%;max-width:520px;justify-self:end}.svc-art svg{display:block;width:100%;height:auto;overflow:visible;font-family:inherit}
.pd-ring,.pd-pin,.pd-chip,.mk-dot,.mk-bar{transform-box:fill-box;transform-origin:center}
.svc-art.paused *{animation-play-state:paused!important}
.pd-ring{animation:pdPing 3s ease-out infinite both}
.pd-pin{transform-origin:center bottom;animation:pdDrop .9s cubic-bezier(.3,1.5,.5,1) .2s both,pdFloat 3.4s ease-in-out 1.4s infinite}
.pd-link{stroke-dasharray:100;animation:pdDraw 1s ease-out .6s both}
.pd-flow{stroke-dasharray:3 10;animation:pdFlow 1.1s linear infinite}
.pd-chip{animation:pdPop .6s cubic-bezier(.3,1.4,.5,1) var(--d) both,pdBob 4s ease-in-out var(--b) infinite}
@keyframes pdPing{from{transform:scale(.4);opacity:.9}to{transform:scale(2.4);opacity:0}}
@keyframes pdDrop{from{transform:translateY(-80px);opacity:0}}
@keyframes pdFloat{50%{transform:translateY(-7px)}}
@keyframes pdDraw{from{stroke-dashoffset:100}}
@keyframes pdFlow{to{stroke-dashoffset:-26}}
@keyframes pdPop{from{transform:scale(.5);opacity:0}}
@keyframes pdBob{50%{transform:translateY(-5px)}}
.mk-dot{animation:mkFall 3.2s cubic-bezier(.5,0,.7,1) var(--d) infinite both}
.mk-win{animation-name:mkWin}
.mk-bar{transform-origin:center bottom;animation:mkGrow .9s cubic-bezier(.2,.8,.2,1) var(--d) both}
.mk-trend{stroke-dasharray:100;animation:mkTrend 4.5s ease-in-out 1.2s infinite both}
@keyframes mkFall{0%{transform:translate(0,0);opacity:0}12%{opacity:1}72%{transform:translate(calc(var(--x)*.92px),140px);opacity:1}100%{transform:translate(calc(var(--x)*1px),170px);opacity:0}}
@keyframes mkWin{0%{transform:translate(0,0);opacity:0}12%{opacity:1}60%{transform:translate(calc(var(--x)*.92px),140px)}85%{transform:translate(calc(var(--x)*1px),222px);opacity:1}100%{transform:translate(calc(var(--x)*1px + 40px),250px);opacity:0}}
@keyframes mkGrow{from{transform:scaleY(0)}}
.mk-head{animation:mkHead 4.5s ease-in-out 1.2s infinite both}
@keyframes mkHead{0%,38%{opacity:0}42%,85%{opacity:1}100%{opacity:0}}
@keyframes mkTrend{0%{stroke-dashoffset:100}40%,85%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:0}}
.rv{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}.rv.in{opacity:1;transform:none}
@media(max-width:860px){.svc-hero{grid-template-columns:minmax(0,1fr)}.svc-art{order:-1;max-width:380px;justify-self:center;margin-bottom:6px}}
@media(prefers-reduced-motion:reduce){.svc-art *{animation:none!important}}
/* Contacto: entrada escalonada suave y realce discreto al pasar o enfocar (solo CSS) */
.contact-page .contact-page-lead>*,.contact-page .phone-list,.contact-page .whatsapp-card{animation:ctIn .8s cubic-bezier(.2,.7,.2,1) both}
.contact-page .contact-page-lead>:nth-child(2){animation-delay:.08s}.contact-page .contact-page-lead>:nth-child(3){animation-delay:.16s}.contact-page .contact-page-lead>:nth-child(4){animation-delay:.24s}.contact-page .contact-page-lead>:nth-child(5){animation-delay:.32s}
.contact-page .phone-list{animation-delay:.4s}.contact-page .whatsapp-card{animation-delay:.5s}
@keyframes ctIn{from{opacity:0;transform:translateY(18px)}}
.contact-email{background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .45s ease,color .3s}
.phone-card strong{transition:color .3s}.phone-card svg{transition:transform .3s ease}
.whatsapp-card{transition:border-color .35s,box-shadow .35s,transform .35s ease}
.qr-link{position:relative;overflow:hidden}
.qr-link::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 44%,#5fd9f266 50%,transparent 56%);transform:translateY(-100%);pointer-events:none}
.contact-email:focus-visible{background-size:100% 1px}
.phone-card:focus-visible strong{color:#8ddaff}.phone-card:focus-visible svg{transform:translateX(5px)}
.qr-link:focus-visible::after{animation:ctScan 1.4s ease-in-out}
@media(hover:hover){
 .contact-email:hover{background-size:100% 1px;color:#fff}
 .phone-card:hover strong{color:#8ddaff}.phone-card:hover svg{transform:translateX(5px)}
 .whatsapp-card:hover{border-color:#78d9ffaa;box-shadow:0 18px 50px -22px #1e6bffaa;transform:translateY(-3px)}
 .qr-link:hover::after{animation:ctScan 1.4s ease-in-out}
}
@keyframes ctScan{to{transform:translateY(100%)}}
/* Páginas de servicio: al hacer scroll la ilustración se desplaza y pasa a una variante (color y forma); al subir regresa */
.svc-art svg{transform:translateY(calc(var(--sp,0)*-28px)) scale(calc(1 - var(--sp,0)*.05)) rotate(calc(var(--sp,0)*-3deg));will-change:transform}
.pd-ring,.pd-flow,.pd-road,.pd-chip rect,.pd-chip circle,.pd-body,.mk-funnel,.mk-dot,.mk-bar,.sy-node,.sy-pulse,.sy-spin,.sy-bg{transition:fill .8s ease,stroke .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
.alt .pd-ring{stroke:#1E6BFF}.alt .pd-body{fill:#5FD9F2}.alt .pd-flow{stroke:#8ddaff;stroke-dasharray:1 6}.alt .pd-road{stroke:rgba(30,107,255,.55)}
.alt .pd-chip rect{stroke:#5FD9F2}.alt .pd-chip circle{fill:#1E6BFF}
.mk-funnel{transform-box:fill-box;transform-origin:center top}
.alt .mk-funnel{fill:rgba(95,217,242,.1);stroke:#1E6BFF;transform:scaleX(.9)}.alt .mk-win{fill:#fff}.alt .mk-dot:not(.mk-win){fill:rgba(143,166,186,.45)}.alt .mk-bar{fill:#5FD9F2}
.sy-bg{transform-box:view-box;transform-origin:200px 160px}
.alt .sy-node{stroke:#1E6BFF;fill:#0b1f3a}.alt .sy-pulse{fill:#fff}.alt .sy-spin{stroke:#8ddaff;stroke-dasharray:1 5}.alt .sy-bg{stroke:rgba(30,107,255,.3);transform:scale(1.12)}
@media(prefers-reduced-motion:reduce){.svc-art svg{transform:none}}
/* Páginas de servicio: la ilustración queda fija detrás del contenido durante toda la página (misma lógica que el planeta de la portada) */
.svc-art{position:fixed;z-index:0;pointer-events:none;right:clamp(22px,5vw,90px);top:calc(50% + 40px);translate:0 -50%;width:min(38vw,520px);transition:opacity .8s ease}
.svc-hero .svc-copy,main .svc,.footer-v2{position:relative;z-index:1}
.svc-art[data-stage="1"]{opacity:.6}.svc-art[data-stage="2"],.svc-art[data-stage="3"]{opacity:.42}
.svc-art svg{transform:translateY(calc(var(--sp,0)*-40px)) scale(calc(1 + var(--sp,0)*.12)) rotate(calc(var(--sp,0)*-5deg))}
/* Variante 2 (Qué incluye) y 3 (Precio / Cómo trabajamos) de cada ilustración */
[data-stage="2"] .pd-ring{stroke:#8ddaff}[data-stage="2"] .pd-body{fill:#1E6BFF}[data-stage="2"] .pd-chip rect{fill:rgba(30,107,255,.22)}[data-stage="2"] .pd-road{stroke:#5FD9F2}
[data-stage="3"] .pd-ring{stroke:#fff}[data-stage="3"] .pd-body{fill:#fff}[data-stage="3"] .pd-chip rect{fill:rgba(95,217,242,.18);stroke:#fff}[data-stage="3"] .pd-chip circle{fill:#5FD9F2}[data-stage="3"] .pd-flow{stroke:#fff;stroke-dasharray:8 4}
[data-stage="2"] .mk-funnel{fill:rgba(95,217,242,.18);stroke:#8ddaff;transform:scaleX(.8)}[data-stage="2"] .mk-dot:not(.mk-win){fill:rgba(143,166,186,.3)}
[data-stage="3"] .mk-funnel{fill:rgba(255,255,255,.08);stroke:#fff;transform:scaleX(.7)}[data-stage="3"] .mk-bar{fill:#8ddaff}[data-stage="3"] .mk-dot:not(.mk-win){fill:rgba(143,166,186,.2)}
[data-stage="2"] .sy-node{fill:#0f2a4d;stroke:#5FD9F2}[data-stage="2"] .sy-pulse{fill:#5FD9F2}[data-stage="2"] .sy-bg{transform:scale(1.25)}
[data-stage="3"] .sy-node{stroke:#fff}[data-stage="3"] .sy-pulse{fill:#fff}[data-stage="3"] .sy-spin{stroke:#fff;stroke-dasharray:8 4}[data-stage="3"] .sy-bg{stroke:rgba(95,217,242,.3);transform:scale(1.4)}
@media(max-width:860px){.svc-hero{padding-top:calc(min(86vw,380px)*.8 + 70px)}.svc-art{right:auto;left:50%;top:112px;translate:-50% 0;width:min(86vw,380px);margin:0}.svc-art[data-stage="1"]{opacity:.35}.svc-art[data-stage="2"],.svc-art[data-stage="3"]{opacity:.2}}
@media(prefers-reduced-motion:reduce){.svc-art svg{transform:none}}
/* Servicios individuales: mismas tarjetas que los paquetes, en una cuadrícula de 4 */
.singles{margin-top:56px;padding-top:50px;border-top:1px solid #a7c6e324}
.singles-head{text-align:center;margin-bottom:32px}.singles-head h3{font-size:30px;line-height:1.15;letter-spacing:-.025em;font-weight:500;color:#fff;margin:0 0 10px}.singles-head p{color:#a9bfd3;margin:0}
.single-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:stretch}
.single.package h3{font-size:clamp(22px,1.8vw,27px)}.single.package .package-price{font-size:clamp(26px,2.2vw,32px)}
.singles-about{font-size:23px;margin:34px 0 10px;color:#fff}
@media(max-width:1100px){.single-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:699px){.single-grid{grid-template-columns:1fr}.singles{margin-top:38px;padding-top:38px}}
/* Botón "Contratar por WhatsApp" en cada tarjeta (lo agrega whatsapp.js) */
.package-wa{display:flex;white-space:nowrap;align-items:center;justify-content:center;gap:10px;margin-top:auto;margin-bottom:14px;min-height:48px;padding:10px 16px;border-radius:10px;border:1px solid #25d36673;background:#25d3661a;color:#f0f7ff;font-size:16px;font-weight:500;text-decoration:none;transition:background .2s,border-color .2s}
.package-wa svg{width:22px;height:22px;flex:none;color:#25d366}
.package-wa:hover,.package-wa:focus-visible{background:#25d36633;border-color:#25d366}
.package-wa+.package-cta{margin-top:0}
@media(min-width:1101px) and (max-width:1300px){.single.package{padding:26px 20px}.single .package-wa{font-size:14.5px;gap:7px;padding:10px 8px}.single .package-wa svg{width:19px;height:19px}}
@media(min-width:861px) and (max-width:1000px){.package-grid .package{padding:26px 20px}.package-grid .package-wa{font-size:14.5px;gap:7px;padding:10px 8px}.package-grid .package-wa svg{width:19px;height:19px}}
/* Mensualidades: etiqueta de plan anual y desglose de lo que incluye cada plan */
.monthly-options{align-items:start}
.monthly .monthly-annual{display:inline-block;margin-top:12px;font-style:normal;font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:#8ddaff;border:1px solid #78d9ff59;border-radius:999px;padding:4px 12px}
.monthly ul{list-style:none;margin:12px 0 0;padding:0;font-size:15px;line-height:1.5;color:#a9bfd3}.monthly li+li{margin-top:6px}
