/* Consultoría de crecimiento — piezas propias de la página, tomadas del prototipo
   (paginas/consultoria-de-crecimiento.html). Va después de sitio.css. */

/* Promesa en dos líneas (el prototipo la pasa a bloque) */
.cc-statement.gj-statement{display:block;font-size:clamp(40px,5.8vw,96px);line-height:.94;letter-spacing:-.06em}
.cc-statement.gj-statement span{display:block;margin-left:0}
@media (max-width:900px){.cc-statement.gj-statement{font-size:clamp(38px,11vw,64px)}}

/* Portada partida en verde con el plan a la derecha */
.cc-stage.gj-stage{background:var(--surface-dark);min-height:620px}
.cc-stage__glow{position:absolute;inset:0;background:radial-gradient(at 78% 35%,rgba(47,122,96,.55),transparent 55%)}
.cc-stage .gj-stage__cap{bottom:auto;top:clamp(40px,6vw,90px);max-width:600px}
.cc-stage__lead{font-size:clamp(30px,3.3vw,50px);font-weight:500;letter-spacing:-.04em;line-height:1.06;margin:14px 0 28px}
.cc-stage__note{font-size:15px;line-height:1.5;margin:28px 0 0;max-width:440px;color:var(--on-dark-2)}
.cc-stage__note strong{color:var(--on-dark);font-weight:500}
.gj-stage__side{position:absolute;right:clamp(16px,6vw,110px);top:50%;transform:translateY(-50%);width:min(400px,40%)}
.cc-caption{margin-top:12px;text-align:right}

/* Inversión */
.cc-inv{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));gap:clamp(28px,4vw,64px);align-items:center;padding:0 clamp(4px,1.5vw,24px) clamp(16px,2vw,32px)}
.cc-inv .gj-price{margin-top:18px}
.cc-inv__fixed{margin:4px 0 0;color:var(--on-dark-2)}
.cc-ars{margin:14px 0 0;font-size:15px;line-height:1.5;color:var(--on-dark-2)}
.cc-ars strong{color:var(--on-dark);font-weight:500}
.cc-ars small{display:block;margin-top:2px;font-size:13px}
.cc-ars i{font-style:normal}
.cc-spec{list-style:none;margin:30px 0 0;padding:0}
.cc-spec li{display:grid;grid-template-columns:120px 1fr;gap:12px;padding:14px 0;border-top:1px solid var(--line-dark)}
.cc-spec li span:first-child{padding-top:3px}
.cc-spec li span:last-child{font-size:17px}

/* Tarjetas numeradas y textos */
.cc-card-n h3{font-size:23px;font-weight:500;letter-spacing:-.03em;margin:40px 0 10px;line-height:1.15}
.cc-card-n p{margin:0;color:var(--ink-2);line-height:1.5}
.cc-two-p{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:clamp(16px,3vw,48px);margin:-24px 0 56px}
.cc-two-p p{margin:0}
.cc-two-p strong{color:var(--ink);font-weight:500}

/* Rueda + gradiente con etiquetas (nueve frentes) */
.cc-two{display:grid;grid-template-columns:1fr 1fr;gap:var(--gutter);margin:0 var(--gutter)}
.cc-two .gj-tagfield{min-height:620px}
.cc-wheel .gj-wheel__view{--lh:clamp(44px,4vw,64px);min-width:0;width:100%;text-align:center}
.cc-wheel .gj-wheel__view li{font-size:clamp(24px,2.6vw,40px);letter-spacing:-.035em}
.cc-wheel .gj-wheel__row{margin:40px 0 24px}
.cc-wheel h2{max-width:560px}
.cc-wheel__list{list-style:none;margin:0;padding:0;text-align:left;width:100%;max-width:520px}
.cc-wheel__list li{padding:12px 0;border-top:1px dotted var(--line-dotted)}
.cc-wheel__list b{display:block;font-weight:500;font-size:18px;letter-spacing:-.02em}
.cc-wheel__list span{color:var(--ink-2)}
/* Con "reducir movimiento" la rueda no gira: se muestra la lista completa */
.cc-wheel__list{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (prefers-reduced-motion:reduce){
  .cc-wheel .gj-wheel__row,.cc-wheel .gj-wheel__desc{display:none}
  .cc-wheel__list{position:static;width:100%;height:auto;overflow:visible;clip:auto;white-space:normal;margin-top:40px}
}
.cc-tags .tg{font-size:clamp(14px,1.25vw,19px);padding:13px 22px}
.cc-tags .tg:nth-child(1){left:6%;top:4%}
.cc-tags .tg:nth-child(2){right:6%;top:11%}
.cc-tags .tg:nth-child(3){left:10%;top:18%}
.cc-tags .tg:nth-child(4){right:8%;top:25%}
.cc-tags .tg:nth-child(5){left:5%;top:32%}
.cc-tags .tg:nth-child(6){right:10%;top:39%}
.cc-tags .tg:nth-child(7){left:9%;top:46%}
.cc-tags .tg:nth-child(8){right:7%;top:53%}
.cc-tags .tg:nth-child(9){left:7%;top:60%}
.cc-tags .gj-tagfield__cap p{max-width:520px}

/* Proceso */
.cc-step{display:flex;flex-direction:column;min-height:420px}
.cc-step__top{display:flex;justify-content:space-between;align-items:baseline}
.cc-step__n{font-size:64px;font-weight:600;letter-spacing:-.06em;line-height:1}
.cc-step h3{font-size:24px;font-weight:500;letter-spacing:-.03em;line-height:1.15;margin:36px 0 12px}
.cc-step p{margin:0 0 28px;font-size:15px;line-height:1.55;color:var(--on-dark-2)}
.cc-step__tags{margin-top:auto;display:flex;flex-wrap:wrap;gap:8px}
.cc-tag{font-family:var(--font-mono);font-size:11px;letter-spacing:.05em;text-transform:uppercase;padding:7px 11px;border-radius:var(--radius-pill);background:var(--surface-dark-3);color:rgba(255,255,255,.85)}

/* Checks */
.cc-chk{width:26px;height:26px;border-radius:50%;background:var(--petrol-700);color:var(--on-dark);display:grid;place-items:center;font-size:13px;line-height:1;margin-top:1px}
.cc-chk.off{background:#D9D9D6;color:var(--ink-2)}
.cc-inc{display:grid;grid-template-columns:40px 1fr;gap:12px}
.cc-inc h3{font-size:19px;font-weight:500;letter-spacing:-.02em;margin:3px 0 8px}
.cc-inc p{margin:0;color:var(--ink-2);font-size:15px;line-height:1.5}
.cc-who h3{font-weight:500;font-size:20px;letter-spacing:-.02em;margin:0}
.cc-who ul{list-style:none;margin:18px 0 0;padding:0}
.cc-who li{display:grid;grid-template-columns:36px 1fr;gap:8px}
.cc-who--no li{color:var(--ink-2)}

/* Pendientes (?borrador) */
.cc-pending{margin-top:var(--gutter);padding:20px 24px;border:1px dashed var(--line-dotted);border-radius:var(--radius-lg);font-size:15px;line-height:1.5;color:var(--ink-2)}
.cc-pending strong{display:block;margin-bottom:6px;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;font-weight:400;color:var(--ink)}
.on-dark .cc-pending,.gj-about .cc-pending{color:var(--ink-2)}

/* Sobre mí */
.gj-about__tx .cc-closer{color:var(--ink);font-weight:500}
.cc-miles{list-style:none;margin:var(--gutter);padding:clamp(28px,4vw,56px);background:var(--surface-card);border-radius:22px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr))}
.cc-miles li{padding:18px 18px 18px 0;border-top:1px dotted var(--line-dotted)}
.cc-miles .gj-mono{font-size:13px;color:var(--ink)}
.cc-miles li:last-child .gj-mono{color:var(--petrol-700)}
.cc-miles p{margin:14px 0 0;font-size:16px;line-height:1.45;letter-spacing:-.01em}

/* Sin letra chica */
.cc-big{min-height:240px;display:flex;align-items:flex-end}
.cc-big p{margin:0;font-size:clamp(19px,1.6vw,23px);font-weight:500;letter-spacing:-.025em;line-height:1.3}
.cc-nolist{list-style:none;margin:0;padding:0;column-width:340px;column-gap:48px}
.cc-nolist li{break-inside:avoid;color:var(--ink-2)}
.cc-nolist a,.cc-prose a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}

/* Después de la sesión */
.cc-after{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:clamp(20px,4vw,64px);padding:clamp(28px,4vw,64px);align-items:end}
.cc-after h2{font-size:clamp(30px,3.2vw,48px);font-weight:500;letter-spacing:-.04em;line-height:1.06;margin:22px 0 0}
.cc-prose p{margin:0 0 14px;font-size:17px;line-height:1.55}
.cc-prose p+p{color:var(--ink-2)}

/* Testimonios: tres en escalera */
.cc-testi .gj-testi__row{grid-template-columns:repeat(3,1fr)}
.cc-testi h2{margin-bottom:20px}
.cc-testi .pg-lead{margin:0 auto 56px}
.cc-testi .gj-quote footer span{display:block;margin-top:2px}
@media (max-width:900px){.cc-testi .gj-testi__row{grid-template-columns:1fr}}

/* Preguntas frecuentes en dos columnas */
.cc-faq{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:clamp(24px,4vw,64px);align-items:start}

/* Filtro */
.cc-filtro{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(360px,100%),1fr));gap:clamp(28px,4vw,64px);padding:0 clamp(4px,1.5vw,24px) clamp(8px,1vw,16px)}
.cc-filtro .pg-h2{font-size:clamp(44px,6vw,96px)}
.cc-track{list-style:none;margin:40px 0 0;padding:0}
.cc-track li{display:grid;grid-template-columns:130px 1fr;gap:12px;padding:16px 0;border-top:1px solid var(--line-dark)}
.cc-track .gj-mono{padding-top:3px}
.cc-track li.is-active .gj-mono{color:var(--on-dark)}
.cc-track b{display:block;font-weight:500;font-size:18px}
.cc-track small{display:block;margin-top:4px;font-size:15px;color:var(--on-dark-2)}
.cc-form{padding:clamp(22px,3vw,40px)}
.cc-contact{margin-bottom:22px}
.mj-result{display:none;min-height:420px;flex-direction:column}
.mj-result.is-shown{display:flex}
.mj-result h3{font-size:clamp(30px,3vw,44px);font-weight:500;letter-spacing:-.04em;line-height:1.05;margin:16px 0}
.mj-result p{margin:0 0 28px;line-height:1.55;color:var(--on-dark-2)}
.mj-result .gj-btn{margin-top:auto;align-self:flex-start}
.mj-result--ok .gj-mono{color:var(--oro)}
@media (max-width:900px){.cc-track li{grid-template-columns:110px 1fr}}

@media (max-width:900px){
  .cc-two{grid-template-columns:1fr}
  .cc-two .gj-tagfield{min-height:640px}
  .cc-two .gj-tagfield__cap h3{font-size:24px}
  .cc-tags .tg{font-size:14px;padding:10px 16px}
  .cc-tags .tg:nth-child(1){left:5%;top:4%}
  .cc-tags .tg:nth-child(2){right:5%;top:11%}
  .cc-tags .tg:nth-child(3){left:5%;top:18%}
  .cc-tags .tg:nth-child(4){right:5%;top:25%}
  .cc-tags .tg:nth-child(5){left:5%;top:32%}
  .cc-tags .tg:nth-child(6){right:5%;top:39%}
  .cc-tags .tg:nth-child(7){left:5%;top:46%}
  .cc-tags .tg:nth-child(8){right:5%;top:53%}
  .cc-tags .tg:nth-child(9){left:5%;top:60%}
  .cc-wheel .gj-wheel__view{--lh:40px}
  .cc-wheel .gj-wheel__view li{font-size:20px}
  .cc-step{min-height:0}
}

/* Sobre mí: números y línea de tiempo de la trayectoria */
.gj-about__tag .gj-mono{margin-left:22px;color:rgba(255,255,255,.75)}
.gj-about__tx .gj-feats{padding-top:48px}
.cc-stats{padding-top:clamp(56px,7vw,100px);padding-bottom:clamp(40px,5vw,70px)}
.cc-tl-panel{padding:clamp(28px,4vw,56px) clamp(16px,3vw,48px)}
.cc-tl{list-style:none;margin:0;padding:0;gap:14px;font-size:inherit}
.cc-tl .gj-tl__r{grid-template-columns:72px 1fr}
.cc-tl .gj-tl__r>.gj-mono{font-size:13px;color:var(--on-dark)}
.cc-tl .gj-tl__bar{height:auto;min-height:48px;padding:12px 16px;font-size:15px;line-height:1.35;border-radius:10px}
.cc-tl .gj-tl__bar.hi{border-color:transparent}
@media (max-width:900px){
  .cc-tl .gj-tl__r{grid-template-columns:52px 1fr}
  .cc-tl .gj-tl__bar{width:100%!important;margin-left:0!important}
}

/* Portada con la foto de la oficina (reemplaza al escenario partido) */
.cc-hero.gj-stage{height:min(86vh,860px);min-height:640px}
.cc-hero__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:40% 30%}
.cc-hero__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.62) 0,rgba(0,0,0,.25) 45%,rgba(0,0,0,0) 65%),linear-gradient(180deg,rgba(0,0,0,0) 40%,rgba(0,0,0,.65))}
.cc-hero__cap.gj-stage__cap{bottom:118px;max-width:560px}
.cc-hero .cc-stage__lead{font-size:clamp(26px,2.6vw,40px);margin:12px 0 24px}
.cc-hero .cc-stage__note{color:rgba(255,255,255,.82)}
.cc-hero__side{position:absolute;right:clamp(16px,2.6vw,36px);top:clamp(16px,2.6vw,36px);width:min(380px,34%)}
.cc-hero__side .gj-plan{background:rgba(18,57,45,.86);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.cc-hero__side .cc-caption{color:rgba(255,255,255,.82)}
@media (max-width:900px){
  .cc-hero.gj-stage{height:auto;min-height:0;display:flex;flex-direction:column;background:var(--surface-dark)}
  .cc-hero.gj-stage>.cc-hero__img{position:relative;inset:auto;height:340px;object-position:45% 25%}
  .cc-hero__shade{display:none}
  .cc-hero__cap.gj-stage__cap{position:relative;left:auto;bottom:auto;padding:28px 20px 8px;max-width:none}
  .cc-hero__side{position:relative;right:auto;top:auto;width:auto;padding:20px}
  .cc-hero__side .gj-plan{background:var(--surface-dark-2)}
  .cc-hero__anchors.gj-anchors{position:relative;left:auto;right:auto;bottom:auto;padding:0 12px 12px}
}

/* Diferencial (cierra "Por qué esta propuesta") */
.cc-diff{margin-top:var(--gutter)}
.cc-diff p{margin:14px 0 0;max-width:900px;font-size:clamp(19px,1.6vw,23px);font-weight:500;letter-spacing:-.025em;line-height:1.3}

/* Tres partes, siete frentes + ejemplo de semáforo. Los colores del semáforo
   salen de tokens que ya existen (podcast-rojo, oro, petrol-500). */
.cc-dims{margin:var(--gutter) var(--gutter) 0}
.cc-dim h3{font-size:23px;font-weight:500;letter-spacing:-.03em;line-height:1.15;margin:40px 0 18px}
.cc-dim ul{list-style:none;margin:0;padding:0}
.cc-dim li{display:grid;grid-template-columns:36px 1fr;gap:8px}
.cc-dim li .gj-mono{padding-top:4px}
.cc-dim b{display:block;font-weight:500;font-size:18px;letter-spacing:-.02em}
.cc-dim li div span{color:var(--ink-2)}
.cc-sem{margin:var(--gutter) var(--gutter) 0;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 32px}
.cc-sem ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.cc-sem li{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:var(--radius-pill);background:var(--surface-card);font-size:15px}
.cc-sem li b{font-weight:500}
.cc-sem li span{color:var(--ink-2)}
.cc-sem i{width:10px;height:10px;border-radius:50%;flex:none}
.cc-sem i.is-rojo{background:var(--podcast-rojo)}
.cc-sem i.is-naranja{background:var(--oro)}
.cc-sem i.is-verde{background:var(--petrol-500)}

/* «Todavía no»: lista de espera del newsletter */
.mj-optin{margin-top:auto;display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.mj-optin .gj-btn{margin-top:0}
.mj-optin__fine{margin:0!important;font-size:14px;color:var(--on-dark-2)}
.mj-optin__ok{margin-top:auto!important;font-size:17px;color:var(--on-dark)!important}
.mj-optin__ok b{font-weight:500}
.mj-optin__home{margin-top:22px;align-self:flex-start;font-size:14px}

/* Ancla: la Auditoría como primer paso (debajo del precio y antes del pie) */
.cc-ancla{margin:var(--gutter);padding:clamp(20px,2.4vw,28px) clamp(20px,3vw,44px);background:var(--surface-card);border-radius:var(--radius-xl);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 40px}
.cc-ancla__q{margin:0;font-size:clamp(17px,1.4vw,19px);font-weight:500;letter-spacing:-.02em;line-height:1.35}
.cc-ancla__d{margin:6px 0 0;font-size:15px;line-height:1.5;color:var(--ink-2)}
.cc-ancla__d i{font-style:normal}
.cc-ancla .gj-btn{flex:none;white-space:nowrap;position:relative}
.cc-ancla .gj-btn::after{content:"";position:absolute;inset:-12px -8px}
