/* Final polish: icons, sticky cases, compact hero, and service media panels */
.hero-display{font-size:clamp(2.82rem,4.65vw,5.25rem) !important;line-height:1.07 !important;}

.cursor,
.cursor-dot{
  will-change:transform, opacity !important;
  contain:layout style paint !important;
  transition:opacity .16s ease, background .16s ease, border-color .16s ease, box-shadow .16s ease !important;
}
.cursor{
  backdrop-filter:blur(2px) !important;
}

.cases-zone{overflow:visible !important;}
.case-feature{align-items:start !important;}
.case-copy{
  position:sticky !important;
  top:172px !important;
  align-self:start !important;
  max-height:none !important;
  overflow:hidden !important;
  transform:none !important;
}
.case-copy.reveal,
.case-copy.reveal.is-visible{transform:none !important;}
.case-grid{
  position:relative !important;
  top:auto !important;
  align-self:start !important;
  max-height:none !important;
  overflow:visible !important;
  scrollbar-width:auto;
}
.case-grid::-webkit-scrollbar{display:initial;}
.case-card{contain:layout paint;backface-visibility:hidden;}
.case-card img{transition:filter .35s ease !important;}
.case-card:hover img{transform:none !important;}
.case-card::after{display:none !important;}
.cinema{
  width:min(100%,650px) !important;
  min-height:560px !important;
  justify-self:center !important;
}
.hero-card{
  width:min(100%,620px) !important;
  max-width:620px !important;
}
.hero-card .poster{
  aspect-ratio:16/9 !important;
  height:auto !important;
}
.cta-logo{
  filter:none !important;
  opacity:1 !important;
}
.cinema::before{
  width:78% !important;
  height:62% !important;
  transform:rotate(-3deg) translate(6px,36px) !important;
}
.cinema::after{
  inset:9% 2% 6% 6% !important;
  filter:blur(12px) !important;
}
.floating-badge{
  top:26px !important;
  left:-14px !important;
}
.metric-tower{
  right:4px !important;
  bottom:104px !important;
}
.video-ui{
  cursor:pointer;
  will-change:transform;
}
.video-ui:hover .play-dot{
  transform:scale(1.06);
}
.video-ui:focus-visible{
  outline:2px solid rgba(217,185,121,.74);
  outline-offset:6px;
}
.video-modal{
  position:fixed;
  inset:0;
  z-index:2000;
  display:grid;
  place-items:center;
  padding:24px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .24s ease,visibility .24s ease;
}
.video-modal.is-open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.video-modal__backdrop{
  position:absolute;
  inset:0;
  background:rgba(22,18,15,.64);
  backdrop-filter:blur(12px);
}
.video-modal__panel{
  position:relative;
  width:min(980px,92vw);
  padding:14px;
  border-radius:34px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(255,255,255,.76);
  box-shadow:0 38px 110px rgba(20,14,10,.32);
}
.video-modal__close{
  position:absolute;
  top:18px;
  right:18px;
  z-index:2;
  width:42px;
  height:42px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.72);
  background:rgba(30,27,24,.94);
  color:#fff;
  font-size:1.35rem;
  line-height:1;
  cursor:pointer;
}
.video-frame{
  aspect-ratio:16/9;
  border-radius:26px;
  overflow:hidden;
  background:#16120f;
}
.video-frame iframe{
  width:100%;
  height:100%;
  border:0;
  display:block;
}
body.video-open{overflow:hidden;}
.section:not(.cases-zone),
.section-tight,
.final-cta,
.site-footer{
  content-visibility:auto;
  contain-intrinsic-size:900px;
}

.phase-card::before,
.commercial-step::before,
.info-card::before,
.plan-card::before{
  content:"" !important;
  width:46px !important;
  height:46px !important;
  border-radius:18px !important;
  display:grid !important;
  place-items:center !important;
  background-color:rgba(30,27,24,.92) !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:24px 24px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 16px 34px rgba(52,38,29,.13) !important;
  margin-bottom:4px !important;
}

.phase-card:nth-child(1)::before,
.info-card:nth-child(1)::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-4-4M11 8v6M8 11h6'/%3E%3C/svg%3E") !important;
}
.phase-card:nth-child(2)::before,
.info-card:nth-child(2)::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 5h16M7 12h10M9 19h6'/%3E%3Cpath d='M6 5v14M18 5v14'/%3E%3C/svg%3E") !important;
}
.phase-card:nth-child(3)::before,
.info-card:nth-child(3)::before{
  border-radius:50% !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 17 9 12l4 4 7-9'/%3E%3Cpath d='M14 7h6v6'/%3E%3C/svg%3E") !important;
}

.commercial-step:nth-child(1)::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 11a4 4 0 1 1 8 0c0 4-4 7-4 7s-4-3-4-7Z'/%3E%3Ccircle cx='12' cy='11' r='1'/%3E%3Cpath d='M4 20h16'/%3E%3C/svg%3E") !important;
}
.commercial-step:nth-child(2)::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 8h10M7 12h7'/%3E%3Cpath d='M5 4h14a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H9l-5 3v-3H5a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2Z'/%3E%3C/svg%3E") !important;
}
.commercial-step:nth-child(3)::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8'/%3E%3Cpath d='M12 8v4l3 2M4 12h2M18 12h2'/%3E%3C/svg%3E") !important;
}
.commercial-step:nth-child(4)::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 7h14v12H5z'/%3E%3Cpath d='M8 7V5h8v2M8 12h8M8 16h5'/%3E%3C/svg%3E") !important;
}
.commercial-step:nth-child(5)::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 13 4 4L19 7'/%3E%3Cpath d='M4 4h16v16H4z'/%3E%3C/svg%3E") !important;
}

.plan-card:nth-child(1)::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 19V5M4 19h16M8 16v-5M12 16V8M16 16v-9'/%3E%3C/svg%3E") !important;
}
.plan-card:nth-child(2)::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='M12 2v3M12 19v3M2 12h3M19 12h3'/%3E%3C/svg%3E") !important;
}
.plan-card:nth-child(3)::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 16 10 10l4 4 6-8'/%3E%3Cpath d='M15 6h5v5'/%3E%3Cpath d='M4 20h16'/%3E%3C/svg%3E") !important;
}

.service-hero{
  min-height:auto !important;
  padding:clamp(150px,11vw,190px) 0 clamp(70px,8vw,112px) !important;
}
.service-hero .container{
  display:grid !important;
  grid-template-columns:minmax(0,1.08fr) minmax(330px,.72fr);
  gap:clamp(28px,5vw,76px);
  align-items:center;
  row-gap:clamp(18px,2.8vw,34px);
}
.service-hero .eyebrow{
  grid-column:1 / -1 !important;
  margin-bottom:0 !important;
}
.service-hero .display{
  grid-column:1 !important;
  grid-row:2 !important;
  margin:0 !important;
}
.service-hero .lead{
  grid-column:2 !important;
  grid-row:2 !important;
  margin:0 !important;
  max-width:680px !important;
}
.service-hero .page-kicker{
  grid-column:1 / -1 !important;
  grid-row:3 !important;
  margin-top:clamp(10px,2vw,24px) !important;
}
.service-hero .container::after{
  content:none !important;
  display:none !important;
}
.service-hero .container::before{
  content:none !important;
  display:none !important;
}

@media (max-width:1180px){
  .case-copy,.case-grid{position:relative !important;top:auto !important;max-height:none;}
  .service-hero .container{grid-template-columns:1fr !important;}
  .service-hero .eyebrow,
  .service-hero .display,
  .service-hero .lead,
  .service-hero .page-kicker{grid-column:1 !important;grid-row:auto !important;}
  .service-hero .container::after{display:none !important;min-height:0;}
}
@media (max-width:760px){
  .hero-display{font-size:clamp(1.92rem,8.9vw,3.25rem) !important;}
  .service-hero{padding:118px 0 58px !important;}
}


/* Client-requested info-only polish */
:root{--shine-rose-gold:linear-gradient(92deg,#8f614f 0%,#c98f7b 24%,#f7e3b1 48%,#d9b979 68%,#b87867 100%);}
.display,.title,.compact-title,.case-title,.section-head h2,.hero-display .line,.page-hero .display{
  background:var(--shine-rose-gold) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
  text-shadow:0 14px 42px rgba(201,143,123,.18),0 2px 10px rgba(217,185,121,.16) !important;
}
.rose-gold,.inline.rose-gold{
  background:linear-gradient(95deg,#c98f7b,#f7e3b1,#d9b979,#c98f7b) !important;
  -webkit-background-clip:text !important;background-clip:text !important;color:transparent !important;
}
.floating-badge.circle-only{width:118px !important;height:118px !important;border-radius:50% !important;padding:13px !important;display:grid !important;place-items:center !important;}
.floating-badge.circle-only img{width:100% !important;height:100% !important;object-fit:contain !important;transform:none !important;}
.diff-icon,.commercial-step::before,.timeline-item::before,.mini-card span,.info-card .eyebrow,.plan-card .eyebrow{
  color:#b98955 !important;
  text-shadow:0 0 18px rgba(217,185,121,.24) !important;
}
.diff-icon{background:linear-gradient(135deg,rgba(217,185,121,.32),rgba(201,143,123,.18)) !important;border-color:rgba(217,185,121,.46) !important;}
.testimonial-track,.testimonials-track,.testimonial-marquee{animation:testimonialFlow 26s linear infinite;}
@keyframes testimonialFlow{from{transform:translateX(0)}to{transform:translateX(-38%)}}
.addon-grid-three{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
.growth-addon-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
.preview-controls{gap:10px !important;align-items:center !important;}
.preview-pill{padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.42);border:1px solid rgba(255,255,255,.62);font-size:.68rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--rose-deep);}
.preview-strip{pointer-events:none !important;opacity:.76 !important;}
.preview-strip .thumb{cursor:default !important;}
.viewer-panel::after{content:'PREVISUALIZACIÓN PROTEGIDA';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-18deg);font-weight:900;letter-spacing:.22em;color:rgba(158,107,94,.16);font-size:clamp(1.2rem,3vw,3rem);pointer-events:none;z-index:4;white-space:nowrap;}
.page-kicker span:empty{display:none !important;}
.plan-card .price{display:none !important;}
@media(max-width:1180px){.addon-grid-three,.growth-addon-grid{grid-template-columns:1fr !important;}.floating-badge.circle-only{width:92px !important;height:92px !important;}}


/* === AJUSTE FINAL CLIENTE: legibilidad + degradado animado + carrusel testimonios === */
:root{--shine-rose-gold-animated:linear-gradient(100deg,#a36a57 0%,#d49a84 20%,#f8e7b8 42%,#d9b979 58%,#c98f7b 78%,#f7e3b1 100%);}
.display,.title,.compact-title,.case-title,.section-head h2,.hero-display .line,.page-hero .display,.founder-copy .title,.content-card .title{
  background:var(--shine-rose-gold-animated) !important;
  background-size:240% 100% !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
  -webkit-text-fill-color:transparent !important;
  text-shadow:0 3px 18px rgba(217,185,121,.16) !important;
  filter:none !important;
  animation:roseGoldFlow 7.5s ease-in-out infinite alternate !important;
  transform:translateZ(0);
}
.hero-display .line:not(.rose-gold),.title .line:not(.rose-gold){
  background:var(--shine-rose-gold-animated) !important;
  background-size:240% 100% !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
  -webkit-text-fill-color:transparent !important;
  filter:none !important;
  animation:roseGoldFlow 7.5s ease-in-out infinite alternate !important;
}
@keyframes roseGoldFlow{0%{background-position:0% 50%;}50%{background-position:100% 50%;}100%{background-position:20% 50%;}}
.process-wrap .section-head .title,.process-wrap .section-head .title .line,
.dark-section .title,.dark-section .title .line{
  text-shadow:0 2px 14px rgba(247,227,177,.22) !important;
  opacity:1 !important;
}
.rose-gold.inline{background:var(--shine-rose-gold-animated) !important;background-size:240% 100% !important;-webkit-background-clip:text !important;background-clip:text !important;color:transparent !important;-webkit-text-fill-color:transparent !important;animation:roseGoldFlow 7.5s ease-in-out infinite alternate !important;}
.plan-card .price,[class*="price"],.pricing,.amount{display:none !important;visibility:hidden !important;}
.growth-addon-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
.testimonial-grid{
  display:grid !important;
  grid-auto-flow:column !important;
  grid-auto-columns:calc((100% - 36px)/3) !important;
  grid-template-columns:none !important;
  gap:18px !important;
  overflow-x:auto !important;
  overflow-y:visible !important;
  scroll-snap-type:x mandatory !important;
  scroll-behavior:smooth !important;
  padding-bottom:8px !important;
  -webkit-overflow-scrolling:touch !important;
}
.testimonial-grid::-webkit-scrollbar{display:none !important;}
.testimonial-grid{scrollbar-width:none !important;}
.testimonial-grid .testimonial{min-width:0 !important;scroll-snap-align:start !important;}
@media(max-width:1180px){.growth-addon-grid{grid-template-columns:1fr !important;}.testimonial-grid{grid-auto-columns:calc((100% - 18px)/2) !important;}}
@media(max-width:760px){.testimonial-grid{grid-auto-columns:100% !important;}}


/* V32 HARD FIX: quitar degradado global en títulos; solo .rose-gold mantiene oro rosa */
html body .display,
html body .title,
html body .compact-title,
html body .case-title,
html body .section-head h2,
html body .page-hero .display,
html body .founder-copy .title,
html body .content-card .title,
html body .hero-display .line,
html body .hero-display .line:not(.rose-gold),
html body .title .line,
html body .title .line:not(.rose-gold){
  color:#1e1b18 !important;
  -webkit-text-fill-color:#1e1b18 !important;
  background:none !important;
  background-image:none !important;
  -webkit-background-clip:initial !important;
  background-clip:initial !important;
  animation:none !important;
  text-shadow:none !important;
}
html body .rose-gold,
html body .display .rose-gold,
html body .title .rose-gold,
html body .hero-display .rose-gold{
  display:inline !important;
  color:transparent !important;
  -webkit-text-fill-color:transparent !important;
  background-image:linear-gradient(90deg,#b57d69 0%,#d8a58f 42%,#f0d99f 74%,#b57d69 100%) !important;
  background-size:100% 100% !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  animation:none !important;
  text-shadow:none !important;
  filter:none !important;
}
html body .rose-gold::before,
html body .rose-gold::after{display:none !important;content:none !important;}
