/* SYNALE — Extensões da landing: Parcerias, Central de Ajuda e WhatsApp. */
.partnership-section{
  padding:clamp(72px,8vw,116px) 0;
  background:linear-gradient(120deg,#fffefd 0%,#fcf8ff 51%,#fff8fc 100%);
}
.partnership-panel{
  position:relative;isolation:isolate;overflow:hidden;
  display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,1fr);
  gap:clamp(12px,1.5vw,20px);align-items:center;
  padding:clamp(30px,3.7vw,54px);border-radius:30px;
  border:1px solid rgba(202,160,217,.45);
  background:
    radial-gradient(ellipse at 97% 0%,rgba(227,180,236,.26),transparent 47%),
    radial-gradient(ellipse at 3% 100%,rgba(255,227,189,.26),transparent 39%),
    linear-gradient(125deg,rgba(255,255,255,.97),rgba(249,240,254,.94));
  box-shadow:0 25px 75px rgba(68,44,116,.09),inset 0 1px 0 #fff;
}
.partnership-panel::before{
  content:"";position:absolute;left:0;right:0;top:0;height:3px;
  background:linear-gradient(90deg,#9a6ad4,#e7bb74,#c758a8,#9777e0);
}
.partnership-panel::after{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background-image:linear-gradient(rgba(145,102,205,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(145,102,205,.1) 1px,transparent 1px);
  background-size:44px 44px;opacity:.3;
  -webkit-mask-image:linear-gradient(90deg,transparent 45%,#000 100%);
  mask-image:linear-gradient(90deg,transparent 45%,#000 100%);
}
.partnership-body{position:relative;z-index:2}
.partnership-eyebrow{display:block;color:#8760be;letter-spacing:1.8px;font-size:10px}
.partnership-body h2{font-size:clamp(32px,3.5vw,51px);line-height:1.17;letter-spacing:-1.8px;max-width:700px;margin:20px 0 16px;font-weight:800}
.partnership-body h2 span{color:#b44e97}
.partnership-emphasis{color:#6f49ab!important;font-size:17px!important;font-weight:800!important;margin-bottom:19px!important}
.partnership-body p{font-size:14px;line-height:1.82;color:#575875;max-width:680px;margin:0 0 13px}
.partnership-actions{display:flex;align-items:center;flex-wrap:wrap;gap:13px;margin-top:27px}
.partnership-actions .button{min-height:51px}
.partnership-email-cta[aria-disabled="true"]{opacity:.55;filter:grayscale(.18);cursor:not-allowed;pointer-events:none;box-shadow:none}
.partnership-whatsapp-cta img{width:21px;height:21px;display:block}
.partnership-email-note{font-size:12px!important;margin:12px 0 0!important;color:#886899!important}
.partnership-fineprint{font-size:11px!important;color:#7f7c90!important;margin:15px 0 0!important}
/* O Syn fica livre, em pé, sem moldura ou cartão ao redor. */
.partnership-visual{
  position:relative;
  min-width:0;
  min-height:500px;
  display:flex;
  align-items:flex-end;
  justify-content:flex-end;
  align-self:stretch;
  background:none;
  border:0;
  box-shadow:none;
}
.partnership-character{
  display:block;
  position:relative;
  width:min(100%,540px);
  max-width:100%;
  max-height:none;
  height:auto;
  flex:none;
  margin-right:0;
  margin-bottom:-12px;
  object-fit:contain;
  object-position:center bottom;
  filter:drop-shadow(0 19px 28px rgba(74,49,116,.16));
}
.partnership-decoration{pointer-events:none;position:absolute;inset:0;overflow:hidden;z-index:-1}
.partnership-decoration span{position:absolute;border-radius:50%;border:1px solid rgba(199,150,221,.16);width:360px;height:360px;top:-230px;right:-180px}
.partnership-decoration span:nth-child(2){width:240px;height:240px;top:auto;bottom:-190px;left:-120px}
.partnership-decoration span:nth-child(3){width:115px;height:115px;top:28px;right:16%;border-color:rgba(219,172,97,.21)}
.whatsapp-float[hidden],.partnership-whatsapp-cta[hidden]{display:none!important}
.whatsapp-float{
  position:fixed;z-index:80;right:24px;bottom:91px;
  display:inline-flex;align-items:center;gap:10px;
  text-decoration:none;transition:transform .2s ease;max-width:calc(100vw - 32px);
}
.whatsapp-float-label{
  background:#fff;color:#3b3a62;border:1px solid rgba(192,175,214,.7);
  border-radius:100px;padding:11px 15px;font-size:12px;font-weight:800;
  box-shadow:0 9px 26px rgba(64,42,105,.13);white-space:nowrap
}
.whatsapp-float-circle{
  display:grid;place-items:center;width:58px;height:58px;flex:none;
  border:2px solid rgba(255,255,255,.92);border-radius:50%;
  background:#25d366;box-shadow:0 12px 28px rgba(28,143,76,.24),0 0 0 5px rgba(45,206,105,.12)
}
.whatsapp-float-circle img{width:32px;height:32px}
.whatsapp-float:hover{transform:translateY(-4px)}
.whatsapp-float:focus-visible{outline:3px solid #7256dc;border-radius:100px;outline-offset:5px}
.privacy-page .whatsapp-float,.error-page .whatsapp-float{bottom:24px}
.help-content{max-width:1100px;padding-top:65px;padding-bottom:95px}
.help-intro{max-width:700px;margin-bottom:29px}
.help-intro h2{font-size:clamp(28px,3vw,39px);letter-spacing:-1.4px;line-height:1.2;margin:16px 0 14px}
.help-intro h2 span{color:#b44e97}
.help-intro p{color:#60617f;font-size:14px;line-height:1.85}
.help-accordion{display:grid;gap:13px}
.help-question{
  border-radius:18px;background:#fff;border:1px solid #ebdff5;
  box-shadow:0 10px 33px rgba(87,65,137,.055);overflow:hidden
}
.help-question[open]{border-color:rgba(175,123,203,.59);box-shadow:0 14px 42px rgba(106,64,145,.09)}
.help-question summary{
  display:flex;justify-content:space-between;align-items:center;gap:18px;
  cursor:pointer;list-style:none;padding:23px 26px;color:#35335f;font-size:15px;font-weight:800;line-height:1.4;
}
.help-question summary::-webkit-details-marker{display:none}
.help-question summary:focus-visible{outline:3px solid #7256dc;outline-offset:-5px;border-radius:12px}
.help-question[open] summary{color:#7048af}
.help-toggle{
  width:29px;height:29px;border:1px solid #e1d4f1;border-radius:50%;
  display:grid;place-items:center;flex:none;color:#825bbb;background:#f8f3fc;
}
.help-toggle::before{content:"+";font-size:22px;line-height:1;font-weight:400}
.help-question[open] .help-toggle::before{content:"−"}
.help-answer{border-top:1px solid #f1eaf7;padding:18px 26px 25px}
.help-answer p{color:#5a5c78;font-size:14px;line-height:1.85;margin:0 0 9px}
.help-answer p:last-child{margin-bottom:0}
.help-answer a{color:#8854c1;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.help-contact{
  display:flex;align-items:center;justify-content:space-between;gap:26px;
  padding:30px 35px;margin-top:36px;border-radius:22px;border:1px solid rgba(192,148,214,.46);
  background:linear-gradient(115deg,#f7edff,#fffafc 68%,#fff6e9);
}
.help-contact h2{margin:10px 0;font-size:26px;letter-spacing:-.6px}
.help-contact p{font-size:13px;color:#5e607c;line-height:1.75;max-width:620px;margin:0}
.help-contact .button{flex:none}
.help-contact-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px}
.help-contact-actions .button{white-space:nowrap}
@media(max-width:700px){.help-contact-actions{width:100%;justify-content:flex-start}.help-contact-actions .button{white-space:normal}}
@media (min-width:991px) and (max-width:1350px){
 .desktop-nav{gap:12px}
 .nav-link{font-size:11.6px}
 .nav-inner{gap:17px}
}
@media (min-width:991px) and (max-width:1090px){.button-nav{display:none}}
@media (max-width:990px){
 .mobile-nav.open{max-height:calc(100dvh - 80px);overflow-y:auto;overscroll-behavior:contain}
 .partnership-panel{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;padding:32px}
 .partnership-visual{min-height:430px}
 .partnership-character{width:min(100%,455px);max-width:100%;max-height:none;margin-right:0;margin-bottom:-14px}
}
@media (max-width:700px){
 .mobile-nav.open{max-height:calc(100dvh - 74px)}
 .partnership-section{padding:68px 0}
 .partnership-panel{grid-template-columns:1fr;gap:0;padding:28px 22px;border-radius:22px}
 .partnership-body h2{font-size:clamp(29px,8.4vw,39px);letter-spacing:-1.25px}
 .partnership-emphasis{font-size:14px!important}
 .partnership-body p{font-size:13px;line-height:1.8}
 .partnership-actions{align-items:stretch;flex-direction:column;gap:10px}
 .partnership-actions .button{width:100%;white-space:normal;text-align:center}
 .partnership-visual{min-height:0;width:100%;max-width:none;margin:22px auto 0;justify-content:center}
 .partnership-character{width:min(100%,375px);max-height:none;margin:0}
 .whatsapp-float{right:17px;bottom:72px}
 .whatsapp-float-label{display:none}
 .whatsapp-float-circle{width:52px;height:52px}
 .whatsapp-float-circle img{width:29px;height:29px}
 .privacy-page .whatsapp-float,.error-page .whatsapp-float{bottom:17px}
 .help-content{padding-top:45px;padding-bottom:65px}
 .help-question summary{padding:18px 17px;font-size:13.5px}
 .help-answer{padding:16px 18px 19px}
 .help-answer p{font-size:13px}
 .help-contact{flex-direction:column;align-items:flex-start;padding:25px 21px}
 .help-contact .button{max-width:100%;white-space:normal}
}
@media (prefers-reduced-motion:reduce){.whatsapp-float{transition:none}}

/* O primeiro card abre sua página individual; os futuros seguem o mesmo padrão. */
a.course-card{display:block;color:inherit;text-decoration:none;cursor:pointer}
a.course-card:focus-visible{outline:3px solid #7256dc;outline-offset:5px}
a.course-card:hover .course-card-bottom{color:#a34890}

/* Carrossel de cursos: navegação centralizada e pausa automática em hover/foco. */
.courses-carousel{
  position:relative;
  width:100%;
  padding:0 49px 12px;
  margin:15px auto 0;
}
.courses-carousel-viewport{
  overflow-x:auto;
  overflow-y:hidden;
  padding:18px 0 27px;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
}
.courses-carousel-viewport::-webkit-scrollbar{display:none}
.courses-carousel.is-ready .courses-carousel-viewport{
  overflow:hidden;
  scroll-snap-type:none;
}
.courses-carousel-track{
  position:relative;
  display:flex;
  align-items:stretch;
  gap:22px;
  width:max-content;
  min-width:100%;
}
.courses-carousel .course-card,
.courses-carousel a.course-card{
  display:flex;
  flex:0 0 var(--course-card-width,clamp(275px,29vw,380px));
  flex-direction:column;
  width:var(--course-card-width,clamp(275px,29vw,380px));
  min-height:479px;
  scroll-snap-align:center;
  transition:transform .45s ease,box-shadow .45s ease,opacity .45s ease;
}
.courses-carousel .course-image{height:215px;flex:none}
.courses-carousel .course-body{display:flex;flex:1;flex-direction:column}
.courses-carousel .course-body p{min-height:0}
.courses-carousel .course-card-bottom{margin-top:auto}
.courses-carousel .course-card--upcoming{cursor:default}
.courses-carousel .course-image-upcoming .card-photo-fallback{
  background:radial-gradient(circle at 50% 30%,rgba(255,255,255,.46),transparent 50%);
}
.courses-carousel .course-image-upcoming .card-photo-fallback span{
  position:relative;
  padding:7px 13px;
  border-radius:100px;
  border:1px solid rgba(255,255,255,.78);
  background:rgba(255,255,255,.69);
  color:#7858ab;
}
.courses-carousel.is-ready .course-card:not(.is-current){
  opacity:.86;
  transform:scale(.966);
}
.courses-carousel.is-ready .course-card.is-current{
  opacity:1;
  transform:translateY(-4px);
  box-shadow:0 28px 62px rgba(96,59,153,.15);
}
.courses-carousel.is-ready .course-card:hover{
  opacity:1;
  transform:translateY(-5px);
}
.courses-carousel-arrow{
  display:none;
  position:absolute;
  top:43%;
  z-index:5;
  width:43px;
  height:43px;
  padding:0;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(147,116,195,.35);
  border-radius:50%;
  background:rgba(255,255,255,.94);
  box-shadow:0 9px 25px rgba(76,49,115,.12);
  color:#7256bd;
  cursor:pointer;
  transform:translateY(-50%);
}
.courses-carousel.is-ready .courses-carousel-arrow{display:flex}
/* Mesmo com um curso cadastrado, o público pode navegar pelas próximas formações. */
/* Um curso real: disposição estável, sem rotação ou cálculo de deslocamento. */
.courses-carousel.is-single-course .courses-carousel-viewport{
  overflow:visible;
  scroll-snap-type:none;
}
.courses-carousel.is-single-course .courses-carousel-track{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:stretch;
  width:100%;
  min-width:0;
  gap:22px;
  transform:none!important;
  transition:none!important;
}
.courses-carousel.is-single-course .course-card,
.courses-carousel.is-single-course a.course-card{
  width:100%;
  max-width:none;
  min-width:0;
  flex:none;
  opacity:1;
  transform:none;
}
.courses-carousel.is-single-course .course-card.is-current{
  transform:translateY(-4px);
}
.courses-carousel.is-single-course .courses-carousel-arrow{display:flex}
.courses-carousel.is-single-course .courses-carousel-dots{display:flex}

@media(max-width:700px){
  .courses-carousel.is-single-course{padding:0 12px 10px}
  .courses-carousel.is-single-course .courses-carousel-track{
    grid-template-columns:minmax(0,380px);
    justify-content:center;
    gap:0;
  }
  .courses-carousel.is-single-course .course-card:not(.is-current){display:none}
  .courses-carousel.is-single-course .course-card,
  .courses-carousel.is-single-course a.course-card{width:100%}
}

.courses-carousel-prev{left:0}
.courses-carousel-next{right:0}
.courses-carousel-prev .icon{transform:rotate(180deg)}
.courses-carousel-arrow .icon{width:18px;height:18px}
.courses-carousel-arrow:hover{background:#f8f1ff;color:#aa448e}
.courses-carousel-arrow:focus-visible,
.courses-carousel-dots button:focus-visible,
.courses-carousel-viewport:focus-visible{
  outline:3px solid #7256bd;
  outline-offset:4px;
}
.courses-carousel-dots{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-height:22px;
  margin-top:0;
}
.courses-carousel-dots button{
  width:9px;
  height:9px;
  border:0;
  border-radius:99px;
  background:#d7c9e8;
  padding:0;
  cursor:pointer;
  transition:width .24s ease,background .24s ease;
}
.courses-carousel-dots button[aria-pressed="true"]{
  width:25px;
  background:linear-gradient(100deg,#7957ca,#d05b9f);
}
.courses-carousel-status{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  border:0;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
}
@media(max-width:700px){
  .courses-carousel{padding:0 35px 10px;margin-top:6px}
  .courses-carousel-track{gap:14px}
  .courses-carousel .course-card,
  .courses-carousel a.course-card{
    flex-basis:min(77vw,330px);
    width:min(77vw,330px);
    min-height:445px;
  }
  .courses-carousel .course-image{height:196px}
  .courses-carousel-arrow{width:33px;height:37px}
  .courses-carousel-arrow .icon{width:15px;height:15px}
}
@media(prefers-reduced-motion:reduce){
  .courses-carousel .course-card,
  .courses-carousel-dots button{transition:none!important}
}
