/* Regeneración Capilar Canary V6.5 — open editorial layout.
 * Goal: keep the proven hero carousel, booking/calendar and internal cards,
 * while removing oversized section capsules so the landing feels freer,
 * more editorial and closer to the Zi Vital home direction.
 */

body.zv-capilar-canary-v6 .act-page__content,
body.zv-capilar-canary-v6 .zv-treatment-landing-page .act-page__content{
  width:min(1520px,calc(100% - 42px))!important;
  max-width:1520px!important;
  margin:0 auto!important;
  padding:18px 0 96px!important;
}

body.zv-capilar-canary-v6 .zv-treatment-landing{
  overflow:visible!important;
}

/* HERO — free composition, preserve carousel and campaign card. */
body.zv-capilar-canary-v6 .zvtl5-hero{
  margin:0 0 24px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.zv-capilar-canary-v6 .zvtl5-hero:before,
body.zv-capilar-canary-v6 .zvtl5-hero:after{display:none!important}
body.zv-capilar-canary-v6 .zvtl5-hero__columns{
  gap:clamp(34px,4vw,68px)!important;
  min-height:640px!important;
  align-items:stretch!important;
}
body.zv-capilar-canary-v6 .zvtl5-hero__copy{
  min-height:640px!important;
  padding:58px clamp(8px,2vw,30px)!important;
}
body.zv-capilar-canary-v6 .zvtl6-hero-brand{
  left:clamp(8px,2vw,30px)!important;
}
body.zv-capilar-canary-v6 .zvtl5-hero__visual{
  min-height:640px!important;
  height:auto!important;
  border-radius:34px!important;
  overflow:hidden!important;
  box-shadow:0 24px 68px rgba(78,56,34,.095)!important;
}

/* Value cards stay as a compact diagnostic rail, but no outer capsule. */
body.zv-capilar-canary-v6 .zvtl5-value-rail{
  margin:34px 0 34px!important;
  gap:16px!important;
}

/* LARGE SECTIONS — no outer card. Use space, fine rules and ambient layers instead. */
body.zv-capilar-canary-v6 .zvtl5-section{
  position:relative!important;
  margin:0!important;
  padding:clamp(54px,5vw,78px) 0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.zv-capilar-canary-v6 .zvtl5-section + .zvtl5-section:before,
body.zv-capilar-canary-v6 .zvtl5-booking + .zvtl5-section:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(184,141,51,.20) 12%,rgba(184,141,51,.20) 88%,transparent);
  pointer-events:none;
}
body.zv-capilar-canary-v6 .zvtl5-section-head{
  margin-bottom:30px!important;
  gap:clamp(32px,4vw,64px)!important;
}
body.zv-capilar-canary-v6 .zvtl5-section-head h2{
  font-size:clamp(48px,4.6vw,72px)!important;
  line-height:.94!important;
}
body.zv-capilar-canary-v6 .zvtl5-section-head>p{
  max-width:500px!important;
  font-size:12px!important;
  line-height:1.7!important;
}

/* Treatments: keep only the individual treatment cards contained. */
body.zv-capilar-canary-v6 .zvtl5-treatments{
  margin-top:18px!important;
}
body.zv-capilar-canary-v6 .zvtl5-treatment-grid{
  gap:18px!important;
}

/* Results: open editorial field, cards retain their own frame. */
body.zv-capilar-canary-v6 .zvtl5-results{
  background:transparent!important;
}
body.zv-capilar-canary-v6 .zvtl5-results-grid{
  gap:18px!important;
}

/* Booking V6.4 is approved — preserve structure and calendar logic. */
body.zv-capilar-canary-v6 .zvtl5-booking{
  margin-top:46px!important;
}

/* Testimonials V6.7 — equal cards, centered copy, image below the quote, name below image. */
body.zv-capilar-canary-v6 .zvtl5-testimonials{
  padding-top:70px!important;
  padding-bottom:70px!important;
}
body.zv-capilar-canary-v6 .zvtl5-testimonial-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-auto-rows:1fr!important;
  gap:18px!important;
  align-items:stretch!important;
}
body.zv-capilar-canary-v6 .zvtl5-testimonial{
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:24px!important;
  width:100%!important;
  height:100%!important;
  min-height:330px!important;
  margin:0!important;
  padding:30px 28px 26px!important;
  text-align:center!important;
  border:1px solid rgba(184,141,51,.17)!important;
  border-radius:26px!important;
  background:linear-gradient(180deg,#fff 0%,#fffaf3 100%)!important;
  box-shadow:0 14px 34px rgba(82,58,31,.05)!important;
  overflow:hidden!important;
  position:relative!important;
  transition:transform .3s cubic-bezier(.2,.75,.2,1),border-color .3s ease,box-shadow .3s ease!important;
}
body.zv-capilar-canary-v6 .zvtl5-testimonial:hover{
  transform:translateY(-7px)!important;
  border-color:rgba(184,141,51,.34)!important;
  box-shadow:0 24px 48px rgba(82,58,31,.10)!important;
}
body.zv-capilar-canary-v6 .zvtl6-testimonial__content{
  order:1!important;
  width:100%!important;
  margin:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  text-align:center!important;
}
body.zv-capilar-canary-v6 .zvtl5-testimonial__quote{
  max-width:340px!important;
  margin:0 auto!important;
  color:#3a3028!important;
  font-family:"Cormorant Garamond",serif!important;
  font-size:clamp(22px,1.55vw,27px)!important;
  font-weight:500!important;
  line-height:1.18!important;
  letter-spacing:-.015em!important;
  text-align:center!important;
}
body.zv-capilar-canary-v6 .zvtl6-testimonial__footer{
  order:2!important;
  width:100%!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  margin-top:auto!important;
  padding-top:20px!important;
  border-top:1px solid rgba(184,141,51,.13)!important;
  text-align:center!important;
}
body.zv-capilar-canary-v6 .zvtl6-testimonial__avatar{
  flex:0 0 auto!important;
  width:118px!important;
  height:86px!important;
  margin:0 auto!important;
  border:1px solid rgba(184,141,51,.22)!important;
  border-radius:18px!important;
  overflow:hidden!important;
  background:#f6ecdc!important;
  box-shadow:0 10px 24px rgba(82,58,31,.08)!important;
}
body.zv-capilar-canary-v6 .zvtl6-testimonial__avatar img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  object-fit:cover!important;
  object-position:center!important;
  border-radius:17px!important;
}
body.zv-capilar-canary-v6 .zvtl5-testimonial__meta{
  width:100%!important;
  margin:0!important;
  color:#9a7428!important;
  font:800 9px/1.5 Manrope,sans-serif!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  text-align:center!important;
}

/* Process: remove outer shell and equalize the four cards exactly. */
body.zv-capilar-canary-v6 .zvtl5-process{
  padding-top:70px!important;
  padding-bottom:70px!important;
}
body.zv-capilar-canary-v6 .zvtl5-process-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  grid-auto-rows:1fr!important;
  gap:16px!important;
  align-items:stretch!important;
}
body.zv-capilar-canary-v6 .zvtl5-step,
body.zv-capilar-canary-v6 .zvtl5-step:nth-child(n){
  min-height:260px!important;
  height:100%!important;
  margin:0!important;
  padding:26px 24px 24px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  border:1px solid rgba(184,141,51,.18)!important;
  border-radius:28px!important;
  background:rgba(255,255,255,.96)!important;
  box-shadow:0 14px 34px rgba(82,58,31,.045)!important;
  overflow:hidden!important;
  position:relative!important;
  isolation:isolate!important;
  transition:transform .3s cubic-bezier(.2,.75,.2,1),border-color .3s ease,box-shadow .3s ease,background .3s ease!important;
}
body.zv-capilar-canary-v6 .zvtl5-step:before{
  content:""!important;
  position:absolute!important;
  z-index:-1!important;
  inset:-48% -95%!important;
  background:linear-gradient(108deg,transparent 37%,rgba(255,255,255,.10) 44%,rgba(255,244,213,.95) 50%,rgba(202,166,87,.20) 56%,transparent 65%)!important;
  transform:translateX(-55%) rotate(7deg)!important;
  opacity:0!important;
  transition:transform .72s cubic-bezier(.2,.8,.2,1),opacity .22s ease!important;
  pointer-events:none!important;
}
body.zv-capilar-canary-v6 .zvtl5-step:hover{
  transform:translateY(-7px)!important;
  border-color:rgba(184,141,51,.42)!important;
  background:linear-gradient(145deg,#fffdfa 0%,#f7e7c7 100%)!important;
  box-shadow:0 24px 52px rgba(112,79,37,.10)!important;
}
body.zv-capilar-canary-v6 .zvtl5-step:hover:before{
  transform:translateX(45%) rotate(7deg)!important;
  opacity:1!important;
}
body.zv-capilar-canary-v6 .zvtl5-step__num{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  margin:0 0 24px!important;
  display:grid!important;
  place-items:center!important;
  flex:0 0 auto!important;
  border:1px solid rgba(184,141,51,.20)!important;
  border-radius:50%!important;
  background:#fff4dc!important;
  color:#aa7b20!important;
  font:800 10px/1 Manrope,sans-serif!important;
  transition:transform .28s ease,background .28s ease,color .28s ease,box-shadow .28s ease!important;
}
body.zv-capilar-canary-v6 .zvtl5-step:hover .zvtl5-step__num{
  transform:scale(1.08) rotate(-2deg)!important;
  background:#B88D33!important;
  color:#fff!important;
  box-shadow:0 12px 28px rgba(184,141,51,.20)!important;
}
body.zv-capilar-canary-v6 .zvtl5-step h3{
  min-height:30px!important;
  margin:0 0 12px!important;
  color:#332920!important;
  font-size:27px!important;
  line-height:1.05!important;
}
body.zv-capilar-canary-v6 .zvtl5-step p:last-child{
  margin:0!important;
  margin-top:auto!important;
  color:#786b61!important;
  font:500 11px/1.68 Manrope,sans-serif!important;
}
body.zv-capilar-canary-v6 .zvtl5-step:not(:last-child):after{display:none!important}

/* FAQ: no giant white capsule; individual accordions provide hierarchy. */
body.zv-capilar-canary-v6 .zvtl5-faq{
  padding-top:70px!important;
  padding-bottom:58px!important;
}
body.zv-capilar-canary-v6 .zvtl5-faq-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px 16px!important;
  margin-top:22px!important;
}
body.zv-capilar-canary-v6 .zvtl5-faq-grid details{
  margin:0!important;
  border:1px solid rgba(184,141,51,.16)!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.92)!important;
  box-shadow:0 10px 28px rgba(82,58,31,.035)!important;
}
body.zv-capilar-canary-v6 .zvtl5-faq-grid details[open]{
  border-color:rgba(184,141,51,.32)!important;
  background:#fffaf2!important;
  box-shadow:0 16px 34px rgba(82,58,31,.06)!important;
}
body.zv-capilar-canary-v6 .zvtl5-faq-grid summary{
  padding:17px 52px 17px 18px!important;
  font-size:17px!important;
  line-height:1.28!important;
}
body.zv-capilar-canary-v6 .zvtl5-faq-grid details p{
  padding:0 18px 18px!important;
  font-size:11px!important;
  line-height:1.7!important;
}

/* Final CTA intentionally remains contained and warmer as the closing anchor. */
body.zv-capilar-canary-v6 .zvtl5-final{
  margin-top:14px!important;
  padding:clamp(42px,4.6vw,72px)!important;
  border:1px solid rgba(184,141,51,.18)!important;
  border-radius:38px!important;
  background:linear-gradient(118deg,#fffaf1 0%,#f6e8d2 100%)!important;
  box-shadow:0 24px 64px rgba(85,60,32,.08)!important;
}

/* V6.6 — editorial reveal. Uses translate instead of transform so hover lifts remain intact. */
body.zv-capilar-canary-v6 .zvtl6-reveal-item{
  opacity:0;
  translate:0 30px;
  filter:blur(5px);
  transition:
    opacity .68s ease var(--zvtl6-reveal-delay,0ms),
    translate .72s cubic-bezier(.2,.8,.2,1) var(--zvtl6-reveal-delay,0ms),
    filter .68s ease var(--zvtl6-reveal-delay,0ms)!important;
  will-change:opacity,translate,filter;
}
body.zv-capilar-canary-v6 .zvtl6-reveal-item.is-visible{
  opacity:1;
  translate:0 0;
  filter:blur(0);
}

@media(max-width:1100px){
  body.zv-capilar-canary-v6 .zvtl5-process-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.zv-capilar-canary-v6 .zvtl5-testimonial-grid{grid-template-columns:1fr!important}
  body.zv-capilar-canary-v6 .zvtl5-testimonial{min-height:300px!important}
}

@media(max-width:900px){
  body.zv-capilar-canary-v6 .zvtl5-hero__columns{grid-template-columns:1fr!important;gap:22px!important}
  body.zv-capilar-canary-v6 .zvtl5-hero__copy{min-height:auto!important;padding:76px 22px 32px!important}
  body.zv-capilar-canary-v6 .zvtl6-hero-brand{left:22px!important}
  body.zv-capilar-canary-v6 .zvtl5-hero__visual{min-height:520px!important;height:520px!important}
}

@media(max-width:680px){
  body.zv-capilar-canary-v6 .act-page__content,
  body.zv-capilar-canary-v6 .zv-treatment-landing-page .act-page__content{
    width:calc(100% - 20px)!important;
    padding-top:10px!important;
  }
  body.zv-capilar-canary-v6 .zvtl5-section{padding:44px 0!important}
  body.zv-capilar-canary-v6 .zvtl5-section-head h2{font-size:44px!important}
  body.zv-capilar-canary-v6 .zvtl5-process-grid,
  body.zv-capilar-canary-v6 .zvtl5-faq-grid{grid-template-columns:1fr!important}
  body.zv-capilar-canary-v6 .zvtl5-step{min-height:220px!important;padding:24px 20px!important}
  body.zv-capilar-canary-v6 .zvtl5-hero__visual{min-height:430px!important;height:430px!important;border-radius:26px!important}
  body.zv-capilar-canary-v6 .zvtl5-final{border-radius:28px!important;padding:34px 22px!important}
  body.zv-capilar-canary-v6 .zvtl5-testimonial{min-height:300px!important;padding:26px 20px 22px!important}
  body.zv-capilar-canary-v6 .zvtl6-testimonial__avatar{width:108px!important;height:80px!important}
}

@media(prefers-reduced-motion:reduce){
  body.zv-capilar-canary-v6 .zvtl6-reveal-item,
  body.zv-capilar-canary-v6 .zvtl6-reveal-item.is-visible{
    opacity:1!important;
    translate:0 0!important;
    filter:none!important;
    transition:none!important;
  }
  body.zv-capilar-canary-v6 .zvtl5-step,
  body.zv-capilar-canary-v6 .zvtl5-step:before,
  body.zv-capilar-canary-v6 .zvtl5-testimonial{
    transition:none!important;
  }
}