/* QKStudio — página de cada servicio (/servicios/<id>). Prefijo .sv1- (aislado). */
.sv1-hero{ padding:clamp(150px,16vw,210px) 0 clamp(56px,7vw,90px); }
.sv1-crumbs ol{ display:flex; flex-wrap:wrap; gap:6px 10px; list-style:none; margin:0 0 28px; padding:0; font-size:.82rem; letter-spacing:.04em; color:var(--gray-light); }
.sv1-crumbs li{ display:inline-flex; gap:10px; }
.sv1-crumbs li + li::before{ content:"/"; opacity:.5; }
.sv1-crumbs a{ transition:color .25s ease; }
.sv1-crumbs a:hover{ color:var(--white); }
.sv1-h1{ font-size:clamp(2.6rem,6.6vw,5.6rem); line-height:1.02; letter-spacing:-.03em; max-width:14em; margin:10px 0 0; }
.sv1-lead{ color:var(--gray-light); font-size:clamp(1.05rem,1.5vw,1.25rem); line-height:1.55; max-width:36em; margin:28px 0 0; }
.sv1-actions{ display:flex; flex-wrap:wrap; gap:14px; margin-top:38px; }

.sv1-what__grid{ display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); gap:clamp(36px,6vw,100px); align-items:center; }
.sv1-what__grid--solo{ grid-template-columns:minmax(0,52em); }
.sv1-what__txt h2{ font-size:clamp(1.8rem,3.4vw,2.8rem); margin:10px 0 22px; }
.sv1-what__txt p{ color:var(--gray-light); font-size:1.08rem; line-height:1.65; margin:0 0 18px; max-width:38em; }
.sv1-pills{ display:flex; flex-wrap:wrap; gap:10px; list-style:none; margin:30px 0 0; padding:0; }
.sv1-pills li{ border:1px solid var(--light-15); border-radius:100px; padding:8px 16px; font-size:.9rem; color:var(--gray-light); }
.sv1-what__img img{ display:block; width:100%; height:auto; border-radius:22px; }

.sv1-projects__head{ display:flex; align-items:flex-end; justify-content:space-between; gap:20px 40px; flex-wrap:wrap; margin-bottom:clamp(28px,4vw,48px); }
.sv1-projects__head h2{ font-size:clamp(1.8rem,3.4vw,2.8rem); margin:10px 0 0; }
.sv1-grid{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:clamp(14px,1.6vw,24px); list-style:none; margin:0; padding:0; }
.sv1-card{ position:relative; display:block; color:inherit; }
.sv1-card__media{ position:relative; display:block; aspect-ratio:1/1; overflow:hidden; border-radius:18px; background:linear-gradient(150deg,#918fa7,#261e25); }
.sv1-card__img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .9s var(--ease), filter .5s ease; }
a.sv1-card:hover .sv1-card__img,a.sv1-card:focus-visible .sv1-card__img{ transform:scale(1.06); filter:brightness(.7); }
.sv1-card__txt{ display:block; padding:14px 2px 0; }
.sv1-card__tags{ display:block; font-size:.78rem; letter-spacing:.06em; text-transform:uppercase; color:var(--gray-light); margin-bottom:6px; }
.sv1-card__title{ display:block; font-family:var(--font-display); font-size:1.15rem; line-height:1.25; }
.sv1-card.is-nolink{ cursor:default; }
.sv1-card.is-nolink .sv1-card__img{ filter:grayscale(1) contrast(.95); opacity:.5; }
.sv1-card.is-nolink .sv1-card__txt{ opacity:.5; }
.sv1-card.is-nolink .sv1-card__tags,.sv1-card.is-nolink .sv1-card__title{ color:var(--gray-light); }
.sv1-card__go{ position:absolute; left:14px; top:14px; padding:8px 14px; border-radius:100px; background:var(--white); color:var(--gray-dark); font-size:.8rem; font-weight:600; opacity:0; transform:translateY(8px); transition:opacity .35s ease, transform .35s var(--ease); }
a.sv1-card:hover .sv1-card__go,a.sv1-card:focus-visible .sv1-card__go{ opacity:1; transform:none; }
.sv1-others__list{ display:flex; flex-wrap:wrap; gap:14px; list-style:none; margin:28px 0 0; padding:0; }
.sv1-others__list a{ display:inline-flex; gap:.6em; align-items:center; }

@media (max-width:1100px){ .sv1-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:900px){ .sv1-what__grid{ grid-template-columns:1fr; } }
@media (max-width:560px){
	.sv1-grid{ grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:78%; overflow-x:auto; scroll-snap-type:x mandatory; margin:0 calc(var(--pad) * -1); padding:0 var(--pad) 10px; scrollbar-width:none; }
	.sv1-grid::-webkit-scrollbar{ display:none; }
	.sv1-cell{ scroll-snap-align:start; }
}
@media (hover:none){ .sv1-card__go{ display:none; } }

/* ---- SEO (2026-10): secciones con h2, CTA y preguntas frecuentes ---- */
.sv1-sec{ padding-top:clamp(34px,4.6vw,60px); padding-bottom:clamp(34px,4.6vw,60px); }
.sv1-sec__grid{ display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:clamp(22px,5vw,80px); align-items:start; border-top:1px solid var(--light-08); padding-top:clamp(28px,3.6vw,44px); }
.sv1-sec h2{ font-size:clamp(1.6rem,3vw,2.4rem); margin:0; }
.sv1-sec__body p{ color:var(--gray-light); font-size:1.08rem; line-height:1.65; margin:0; max-width:38em; }
.sv1-list,.sv1-steps{ list-style:none; margin:0; padding:0; }
.sv1-list li,.sv1-steps li{ position:relative; padding:14px 0 14px 30px; border-top:1px solid var(--light-08); color:var(--gray-light); line-height:1.5; }
.sv1-list li:first-child,.sv1-steps li:first-child{ border-top:0; padding-top:0; }
.sv1-list li::before{ content:""; position:absolute; left:2px; top:1.35em; width:9px; height:9px; border-radius:50%; background:var(--ax,var(--gray-light)); }
.sv1-list li:first-child::before{ top:.55em; }
.sv1-steps{ counter-reset:sv1st; }
.sv1-steps li{ counter-increment:sv1st; padding-left:2.7em; }
.sv1-steps li::before{ content:counter(sv1st,decimal-leading-zero); position:absolute; left:0; top:14px; font-family:var(--font-display); font-weight:600; color:var(--ax,var(--gray-light)); }
.sv1-steps li:first-child::before{ top:0; }
.sv1-steps strong{ color:var(--white); font-weight:600; }
.sv1-cta{ padding-top:clamp(20px,3vw,40px); padding-bottom:clamp(20px,3vw,40px); }
.sv1-cta__in{ display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:22px 40px; border-top:1px solid var(--light-08); border-bottom:1px solid var(--light-08); padding-top:clamp(26px,3.6vw,44px); padding-bottom:clamp(26px,3.6vw,44px); }
.sv1-cta__t{ font-family:var(--font-display); font-weight:600; font-size:clamp(1.35rem,2.6vw,2.1rem); line-height:1.2; letter-spacing:-.01em; max-width:24em; margin:0; }
@media (max-width:900px){ .sv1-sec__grid{ grid-template-columns:1fr; } }

/* ---- Stack con íconos + párrafo seguido de lista (2026-10) ---- */
.sv1-sec__body p + .sv1-list,.sv1-sec__body p + .sv1-steps,.sv1-sec__body p + .sv1-stack{ margin-top:26px; }
.sv1-stack{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(auto-fill,minmax(112px,1fr)); gap:12px; }
.sv1-stack__it{ display:flex; flex-direction:column; align-items:center; gap:10px; padding:18px 8px 14px; border:1px solid var(--light-08); border-radius:16px; text-align:center; color:var(--gray-light); transition:border-color .3s ease, transform .4s var(--ease), color .3s ease; }
.sv1-stack__ic{ display:grid; place-items:center; width:34px; height:34px; color:var(--gray-light); transition:color .3s ease; }
.sv1-stack__ic svg{ display:block; width:28px; height:28px; }
.sv1-stack__mono{ display:grid; place-items:center; width:30px; height:30px; border-radius:50%; border:1px solid currentColor; font-family:var(--font-display); font-weight:600; font-size:.95rem; }
.sv1-stack__n{ font-size:.86rem; line-height:1.25; }
.sv1-stack__it:hover{ border-color:var(--light-30); transform:translateY(-3px); color:var(--white); }
.sv1-stack__it:hover .sv1-stack__ic{ color:var(--sv1-c,var(--white)); }
@media (prefers-reduced-motion:reduce){ .sv1-stack__it{ transition:none; } .sv1-stack__it:hover{ transform:none; } }
@media (max-width:560px){ .sv1-stack{ grid-template-columns:repeat(auto-fill,minmax(96px,1fr)); gap:10px; } }

/* Banner destacado (promo): enlace a otra página, p. ej. Google Partner Premier en Marketing Digital */
.sv1-promo{ padding-top:clamp(20px,3vw,40px); padding-bottom:0; }
.sv1-promo__box{ display:flex; align-items:center; gap:clamp(18px,3vw,40px); padding:clamp(20px,2.8vw,36px) clamp(22px,3.4vw,48px); border:1px solid var(--light-30); border-radius:28px; background:linear-gradient(135deg, rgba(145,143,167,.28), rgba(145,143,167,.06)); color:var(--white); transition:border-color .4s ease, transform .5s var(--ease); }
.sv1-promo__box:hover{ border-color:var(--white); transform:translateY(-3px); }
.sv1-promo__box:hover .btn-arrow{ transform:translate(3px,-3px); }
.sv1-promo__img{ flex:none; width:clamp(72px,9vw,110px); height:auto; }
.sv1-promo__txt{ display:flex; flex-direction:column; gap:8px; flex:1 1 auto; min-width:0; }
.sv1-promo__txt strong{ font-family:var(--font-display); font-weight:600; font-size:clamp(1.25rem,2.3vw,1.9rem); line-height:1.15; letter-spacing:-.01em; }
.sv1-promo__txt span{ color:var(--gray-light); line-height:1.55; max-width:42em; }
.sv1-promo__btn{ flex:none; }
@media (max-width:760px){ .sv1-promo__box{ flex-direction:column; align-items:flex-start; } }
@media (prefers-reduced-motion:reduce){ .sv1-promo__box{ transition:none; } }
