.implant-faq{padding-bottom:clamp(64px,8vw,112px)}
.implant-faq .section-heading{max-width:720px;margin-inline:auto;text-align:center}
.implant-faq .faq{max-width:900px;margin:32px auto 0}
.implant-faq summary span{flex:0 0 auto;color:#92733b}

/* Copy and patient image share one compact panel in the implant explainer. */
.implant-page .protocol-explainer{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.62fr);align-items:center;gap:clamp(24px,4vw,56px);margin:clamp(38px,5vw,68px) 0;padding:clamp(28px,3.5vw,52px);border-radius:12px;background:#f0e9dd}
.implant-page .protocol-explainer-content{min-width:0}
.implant-page .protocol-explainer-heading h2{max-width:15ch;font-size:clamp(34px,3.6vw,52px);line-height:1.04}
.implant-page .protocol-explainer-copy{padding-top:18px}
.implant-page .protocol-explainer-copy p{max-width:58ch;font-size:clamp(14px,1.05vw,16px);line-height:1.58}
.implant-page .protocol-explainer-copy p+p{margin-top:12px}
.implant-page .protocol-explainer-copy .text-cta{margin-top:16px}
.implant-page .protocol-explainer-image{width:min(100%,400px);height:clamp(320px,34vw,460px);justify-self:end;margin:0;overflow:hidden;border-radius:8px;background:#d8d2c8}
.implant-page .protocol-explainer-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 52%}
@media(max-width:900px){.implant-page .protocol-explainer{grid-template-columns:minmax(0,1fr) minmax(240px,.68fr);gap:22px;padding:28px}.implant-page .protocol-explainer-heading h2{font-size:clamp(32px,4.4vw,42px)}.implant-page .protocol-explainer-image{height:clamp(300px,42vw,380px)}}
@media(max-width:760px){.implant-page .protocol-explainer{grid-template-columns:minmax(0,1fr);gap:20px;margin:34px 0;padding:22px 18px}.implant-page .protocol-explainer-heading h2{max-width:17ch;font-size:clamp(30px,8vw,36px);line-height:1.06}.implant-page .protocol-explainer-copy{padding-top:12px}.implant-page .protocol-explainer-copy p{font-size:15px;line-height:1.58}.implant-page .protocol-explainer-copy .text-cta{margin-top:12px}.implant-page .protocol-explainer-image{justify-self:stretch;width:100%;height:min(92vw,390px);max-height:390px}.implant-page .protocol-explainer-image img{object-position:center 48%}}

/* Keep the implant case gallery inside a single, horizontally navigable slide. */
.protocol-results .protocol-case-track{display:flex!important;flex-flow:row nowrap!important;overflow-x:auto!important;scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.protocol-results .protocol-case-track::-webkit-scrollbar{display:none}
.protocol-results .protocol-case-slide{display:block!important;flex:0 0 100%!important;width:100%!important;min-width:100%!important;scroll-snap-align:start;overflow:hidden}

/* A seção de depoimentos vira um carrossel contínuo em todas as larguras. */
.protocol-video-carousel{overflow:hidden}
.protocol-stories .protocol-video-grid{display:flex;gap:12px;overflow:visible;padding:3px 2px 12px;scroll-snap-type:none;scrollbar-width:none;transform:translate3d(0,0,0);transition:transform .55s cubic-bezier(.22,.75,.25,1);will-change:transform}
.protocol-stories .protocol-video-card{display:block;flex:0 0 calc((100% - 2 * 12px) / 3.25);max-width:none;scroll-snap-align:none}
.protocol-stories .protocol-video-card[aria-hidden="true"]{pointer-events:none}
.protocol-video-controls{display:flex;align-items:center;justify-content:flex-end;gap:14px;margin-top:12px}
.protocol-video-controls .round-arrow{border:1px solid #b5a990;background:transparent;color:var(--paper)}
.protocol-video-controls .round-arrow:hover,.protocol-video-controls .round-arrow:focus-visible{background:#e3bd72;color:#211c16}
.protocol-video-count{min-width:52px;margin:0;color:#d8cfc2;font-size:12px;font-variant-numeric:tabular-nums;text-align:center}
.protocol-video-count span{padding-inline:4px;color:#a89e8e}
@media(max-width:760px){.protocol-stories .protocol-video-grid{gap:10px;overflow:visible;padding:3px 2px 12px;scrollbar-width:none}.protocol-stories .protocol-video-card{flex:0 0 72%;max-width:none}.protocol-video-controls{margin-top:8px}}
@media(prefers-reduced-motion:reduce){.protocol-stories .protocol-video-grid{transition:none}}

/* Limita a altura da galeria de casos para que as imagens não empurrem o painel para fora da dobra. */
.protocol-results .protocol-case-slide{display:grid!important;grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);align-items:stretch}
.protocol-results .protocol-case-gallery{height:clamp(300px,44vh,420px);min-height:0!important;align-items:stretch}
.protocol-results .protocol-case-cover{height:100%;aspect-ratio:auto}
.protocol-results .protocol-case-details{height:100%;grid-template-rows:repeat(2,minmax(0,1fr))}
@media(max-width:900px) and (min-width:761px){.protocol-results .protocol-case-slide{grid-template-columns:minmax(0,1.2fr) minmax(220px,.8fr)}.protocol-results .protocol-case-gallery{height:clamp(280px,40vh,360px)}}
@media(max-width:760px){.protocol-results .protocol-case-slide{display:block!important;grid-template-columns:1fr}.protocol-results .protocol-case-gallery{height:auto;min-height:0!important;grid-template-columns:1fr;grid-template-rows:auto auto}.protocol-results .protocol-case-cover{height:auto;aspect-ratio:4/3}.protocol-results .protocol-case-details{height:auto;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:100px!important}}

/* Em desktop, reduza os vídeos para que a seção inteira caiba em uma dobra. */
@media(min-width:761px){
  .protocol-stories{padding-block:clamp(40px,4vw,56px)}
  .protocol-stories .protocol-section-heading{margin-bottom:24px}
  .protocol-stories .protocol-section-heading h2{font-size:clamp(36px,3vw,48px)}
  .protocol-stories .protocol-video-card{flex:0 0 clamp(260px,18.5vw,340px);aspect-ratio:4/5}
}
@media(max-width:760px){.protocol-stories .protocol-video-card{flex:0 0 72%;aspect-ratio:9/14.5}}
@media(max-width:760px){
  .protocol-stories .protocol-video-card{flex-basis:min(62vw,220px)}
  .implant-faq{margin-top:40px;padding-top:0;padding-bottom:48px}
  .implant-faq .section-heading{margin-bottom:16px}
  .implant-faq .section-heading h2{max-width:18ch;margin:0 auto 12px;font-size:32px;line-height:1.08}
  .implant-faq .faq{margin-top:18px;padding:4px 18px}
  .implant-faq .faq summary{min-height:68px;padding:16px 0;gap:12px;font-size:15px}
  .implant-faq .faq summary>span{font-size:20px}
  .implant-faq .faq details p{padding-bottom:20px;font-size:14px}
}

/* Lightweight clinic preview; open the full film in a viewport-sized mobile player. */
.implant-page .clinic-video-section{grid-template-columns:minmax(0,340px) minmax(0,1fr)}
.implant-page .clinic-video-frame{aspect-ratio:9/15}
.implant-page .clinic-video-frame video{display:block;width:100%;height:100%;object-fit:cover}
.implant-page .clinic-video-play{z-index:1}
@media(max-width:900px) and (min-width:761px){.implant-page .clinic-video-section{grid-template-columns:minmax(0,36%) minmax(0,1fr)}}
@media(max-width:760px){
  .implant-page .clinic-video-section{grid-template-columns:minmax(0,1fr);max-width:440px;gap:16px}
  .implant-page .clinic-video-copy{order:1}
  .implant-page .clinic-video-frame{order:2}
  .implant-page .clinic-video-frame{width:min(100%,300px,32vh);width:min(100%,300px,32svh);justify-self:center;aspect-ratio:9/15}
  .implant-page .clinic-video-play{width:60px;height:60px}
  .implant-video-dialog[open]{position:fixed;inset:0;margin:0;width:100vw;max-width:none;height:100dvh;max-height:none;padding:0;border:0;border-radius:0;display:grid;place-items:center}
  .implant-video-dialog[open] video{width:100%;height:100%;max-height:none;object-fit:contain}
  .implant-video-dialog[open]>p{position:absolute;top:calc(env(safe-area-inset-top) + 12px);left:16px;right:68px;margin:0;padding:10px 12px;background:#111b;border-radius:6px;text-align:left}
  .implant-video-dialog[open] .protocol-video-close{top:calc(env(safe-area-inset-top) + 10px);right:12px}
}

/* Keep the FAQ compact on desktop so it does not dominate the landing page. */
@media(min-width:761px){
  .implant-faq{margin-top:48px;padding-bottom:20px}
  .implant-faq .section-heading{max-width:760px;margin-bottom:18px}
  .implant-faq .section-heading h2{font-size:clamp(34px,3vw,44px);line-height:1.08}
  .implant-faq .faq{max-width:760px;margin-top:16px;padding:8px 32px}
  .implant-faq .faq summary{min-height:64px;padding:12px 0;font-size:16px}
  .implant-faq .faq details p{padding-bottom:20px;font-size:14px}
}
