/* v14 — refinamento de marca, capa, carrossel e prova social */
.hero .photo-layer{
  inset:0;
  width:100%;
  background-image:url('/files/hero-v13.webp');
  background-repeat:no-repeat;
  background-position:right center;
  background-size:auto 100%;
  filter:saturate(.75) contrast(.94);
  opacity:1;
  mask-image:linear-gradient(90deg,transparent 0%,transparent 42%,rgba(0,0,0,.05) 55%,rgba(0,0,0,.34) 67%,rgba(0,0,0,.82) 80%,#000 91%);
}
.hero .photo-soft{
  inset:-1.5% 0;
  width:100%;
  background-image:url('/files/hero-v13.webp');
  background-repeat:no-repeat;
  background-position:right center;
  background-size:auto 101%;
  filter:blur(24px) saturate(.56);
  transform:scale(1.015);
  opacity:.5;
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.08) 12%,rgba(0,0,0,.36) 35%,rgba(0,0,0,.78) 59%,#000 78%);
}
.hero .overlay{
  background:
    radial-gradient(ellipse 58% 100% at 55% 50%,rgba(27,32,33,.32),transparent 72%),
    linear-gradient(90deg,#1b2021 0%,rgba(27,32,33,.995) 24%,rgba(27,32,33,.92) 38%,rgba(27,32,33,.66) 53%,rgba(27,32,33,.22) 72%,rgba(20,21,21,.04) 100%);
}
.brand{width:162px;height:96px}
.brand-logo{width:162px;height:auto;filter:drop-shadow(0 4px 17px rgba(0,0,0,.2))}
.down{font-size:9px;letter-spacing:.19em}

.treatment-head{margin-bottom:38px}
.treatment-carousel-shell{position:relative}
.treatment-viewport{
  margin-right:calc(-1 * clamp(28px,5vw,76px));
  padding:2px clamp(28px,5vw,76px) 28px 1px;
  scroll-snap-type:none;
  scroll-behavior:auto;
}
.treatment-track{width:calc(100% - 70px)}
.treatment-track .treatment{
  opacity:.5;
  transform:scale(.97);
  transform-origin:center;
  transition:opacity .5s ease,transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .4s ease,border-color .4s ease;
}
.treatment-track .treatment.is-primary{opacity:1;transform:scale(1)}
.treatment-track .treatment.is-primary:hover{transform:translateY(-7px)}
.treatment-track .treatment-media video{pointer-events:none}
.carousel-controls{
  position:absolute;
  inset:0;
  z-index:7;
  display:block;
  pointer-events:none;
  margin:0;
}
.carousel-arrow{
  position:absolute;
  top:50%;
  width:62px;
  height:104px;
  margin-top:-66px;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:transparent!important;
  font-size:0!important;
  box-shadow:none!important;
  cursor:pointer;
  pointer-events:auto;
  transform:none!important;
  transition:opacity .22s ease!important;
}
.carousel-arrow[data-carousel-prev]{left:4px}
.carousel-arrow[data-carousel-next]{right:12px}
.carousel-arrow::before,.carousel-arrow::after{
  content:"";
  position:absolute;
  top:50%;
  width:34px;
  height:2px;
  background:#fff;
  box-shadow:0 1px 8px rgba(0,0,0,.35);
  transition:background .2s ease,transform .2s ease;
}
.carousel-arrow[data-carousel-next]::before,.carousel-arrow[data-carousel-next]::after{right:8px;transform-origin:right center}
.carousel-arrow[data-carousel-next]::before{transform:rotate(43deg)}
.carousel-arrow[data-carousel-next]::after{transform:rotate(-43deg)}
.carousel-arrow[data-carousel-prev]::before,.carousel-arrow[data-carousel-prev]::after{left:8px;transform-origin:left center}
.carousel-arrow[data-carousel-prev]::before{transform:rotate(43deg)}
.carousel-arrow[data-carousel-prev]::after{transform:rotate(-43deg)}
.carousel-arrow:hover:not(:disabled)::before,.carousel-arrow:hover:not(:disabled)::after{background:#d2a985}
.carousel-arrow:focus-visible{outline:0}
.carousel-arrow:focus-visible::before,.carousel-arrow:focus-visible::after{background:#d2a985}
.carousel-arrow:disabled{opacity:0;pointer-events:none}

.results-grid-real{grid-template-columns:.72fr 1.28fr;gap:18px}
.results-grid-real .result-image{height:690px}
.results-grid-real .result-image img{object-fit:cover;object-position:center;filter:saturate(.78) contrast(.98)}
.quotes-real{height:690px;grid-template-columns:1fr 1fr;gap:14px}
.quotes-real .quote{min-height:0;padding:28px;background:#edf0f0;border:1px solid rgba(41,48,49,.05)}
.quotes-real .quote:first-child{grid-column:1/-1}
.quotes-real .quote p{font-size:13px;line-height:1.72;margin:14px 0 18px;color:#3f4647}
.quotes-real .quote b{font-size:13px;color:#293031}
.quote-stars{color:#b18462;font-size:13px;letter-spacing:.14em}

@media(max-width:1100px){
  .brand,.brand-logo{width:148px}
  .treatment-track{width:calc(100% - 52px)}
  .treatment-track .treatment{flex-basis:calc(50% - 8px)}
  .results-grid-real .result-image,.quotes-real{height:620px}
  .quotes-real .quote{padding:22px}
  .quotes-real .quote p{font-size:12px;line-height:1.62}
}

@media(max-width:800px){
  .brand{width:128px;height:84px}
  .brand-logo{width:128px;filter:drop-shadow(0 4px 14px rgba(0,0,0,.2))}
  .hero .photo-layer{
    inset:0 0 auto;
    width:100%;
    height:54%;
    background-size:auto 100%;
    background-position:center top;
    opacity:.95;
    mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.9) 62%,rgba(0,0,0,.26) 84%,transparent 100%);
  }
  .hero .photo-soft{
    inset:-2% -2% auto;
    width:104%;
    height:60%;
    background-size:auto 98%;
    background-position:center top;
    opacity:.38;
    mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.64) 56%,transparent 100%);
  }
  .hero .overlay{background:linear-gradient(0deg,#1b2021 0%,rgba(27,32,33,.99) 54%,rgba(27,32,33,.22) 100%)}
  .treatment-viewport{margin-right:-22px;padding-right:44px}
  .treatment-track{width:100%}
  .treatment-track .treatment{flex-basis:82vw;opacity:.42}
  .treatment-track .treatment.is-primary{opacity:1}
  .carousel-arrow{top:50%;width:54px;height:96px;margin-top:-58px}
  .carousel-arrow[data-carousel-next]{right:18px}
  .carousel-arrow[data-carousel-prev]{left:3px}
  .carousel-arrow::before,.carousel-arrow::after{width:29px}
  .results-grid-real{grid-template-columns:1fr}
  .results-grid-real .result-image{height:560px}
  .quotes-real{height:auto;grid-template-columns:1fr}
  .quotes-real .quote:first-child{grid-column:auto}
  .quotes-real .quote{min-height:240px}
}

@media(max-width:430px){
  .brand,.brand-logo{width:117px}
  .hero h1{font-size:43px}
  .results-grid-real .result-image{height:500px}
  .quotes-real .quote{min-height:220px;padding:22px}
  .quotes-real .quote p{font-size:11.5px}
}

@media(prefers-reduced-motion:reduce){
  .treatment-track .treatment{transition:opacity .2s ease,transform .2s ease}
}
