/* V3.78 — revisão integral e isolada de /carnaval-e-trio-eletrico/ */
.carnaval-page-v376 .btn,
.carnaval-page-v376 .nav-links .contract{border-radius:999px!important}

/* Hero: preserva o container centralizado. Não sobrescrever width do .container. */
.carnaval-page-v376 .segment-hero-grid{
  grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
  gap:clamp(44px,5vw,84px);
  align-items:center;
}
.carnaval-page-v376 .segment-hero-copy{min-width:0}
.carnaval-page-v376 .segment-hero-copy h1{
  max-width:600px;
  font-size:clamp(3.7rem,5.15vw,5.75rem);
  line-height:.94;
}
.carnaval-page-v376 .segment-hero-copy p{
  max-width:590px;
  font-size:clamp(.98rem,1.2vw,1.12rem);
  line-height:1.72;
  margin-top:24px;
  margin-bottom:28px;
}
.carnaval-page-v376 .segment-main-photo{margin:0;min-width:0}
.carnaval-page-v376 .segment-main-photo img{
  width:100%;
  height:auto;
  max-height:min(560px,calc(100vh - 190px));
  aspect-ratio:2048/1308;
  object-fit:contain;
  object-position:center;
  display:block;
}
@media(min-width:901px){
  .carnaval-page-v376 .segment-hero{
    min-height:calc(100vh - 83px);
    display:flex;
    align-items:center;
    padding:44px 0;
  }
}

/* Segunda dobra: proposta de valor + prova. */
.carnaval-page-v376 .segment-context{
  padding:70px 0 74px;
}
.carnaval-page-v376 .segment-context-title{
  margin:.08em 0 .28em;
  max-width:820px;
}
.carnaval-page-v376 .segment-context-title span{display:block}
.carnaval-page-v376 .segment-context-copy{max-width:940px}
.carnaval-page-v376 .segment-context-copy p{
  font-size:clamp(1rem,1.22vw,1.16rem);
  line-height:1.82;
  margin:0;
}
.carnaval-page-v376 .segment-tags{margin-top:26px}
.carnaval-page-v376 .segment-tags span{border-radius:999px}
.carnaval-page-v376 .segment-tags .segment-tag-year{
  background:#162C38;color:#fff;border-color:#162C38;
}
.carnaval-page-v376 .carnaval-proof{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px;
  margin-top:28px;
  border:1px solid rgba(29,29,29,.1);
  background:rgba(29,29,29,.1);
  border-radius:18px;
  overflow:hidden;
  max-width:980px;
}
.carnaval-page-v376 .carnaval-proof-item{
  background:rgba(255,255,255,.72);
  padding:19px 22px;
}
.carnaval-page-v376 .carnaval-proof-item strong{
  display:block;
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:clamp(1.8rem,2.5vw,2.7rem);
  line-height:1;
  margin-bottom:7px;
}
.carnaval-page-v376 .carnaval-proof-item span{
  font-size:.76rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
}
@media(min-width:901px){
  .carnaval-page-v376 .segment-context,
  .carnaval-page-v376 .section-sand,
  .carnaval-page-v376 main > .section:not(.segment-context):not(.segment-end):not(.section-sand){
    min-height:calc(100vh - 83px);
    display:flex;
    align-items:center;
  }
}

/* Fotografias e narrativa das dobras centrais. */
.carnaval-page-v376 .segment-story figure img{
  height:min(500px,calc(100vh - 250px));
  min-height:360px;
  object-fit:cover;
}
.carnaval-page-v376 .segment-story-copy h2{max-width:610px}
.carnaval-page-v376 .segment-story-copy p{max-width:600px}

/* Showreel como peça de conversão. */
.carnaval-page-v376 .carnaval-showreel-trigger{
  appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:10px;
  margin-top:8px;padding:14px 20px;border:1px solid #d04e4e;border-radius:999px;
  background:#d04e4e;color:#fff;font-family:Manrope,Arial,sans-serif;font-size:.8rem;
  font-weight:800;line-height:1.2;letter-spacing:.065em;text-transform:uppercase;
  box-shadow:0 10px 24px rgba(208,78,78,.22);cursor:pointer;
  transition:transform .22s ease,box-shadow .22s ease,background .22s ease;
}
.carnaval-page-v376 .carnaval-showreel-icon{
  display:grid;place-items:center;width:25px;height:25px;flex:0 0 25px;border-radius:50%;
  background:#fff;color:#d04e4e;font-size:.7rem;padding-left:2px;
}
@media(hover:hover){
 .carnaval-page-v376 .carnaval-showreel-trigger:hover{background:#c8425a;transform:translateY(-2px);box-shadow:0 14px 30px rgba(208,78,78,.30)}
}
.carnaval-page-v376 .carnaval-showreel-trigger:focus-visible{outline:3px solid rgba(208,78,78,.30);outline-offset:4px}
body.carnaval-showreel-open{overflow:hidden}
.carnaval-page-v376 .carnaval-showreel-modal[hidden]{display:none}
.carnaval-page-v376 .carnaval-showreel-modal{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:30px}
.carnaval-page-v376 .carnaval-showreel-backdrop{position:absolute;inset:0;background:rgba(5,18,27,.88);backdrop-filter:blur(7px)}
.carnaval-page-v376 .carnaval-showreel-dialog{position:relative;z-index:1;width:min(1120px,calc(100vw - 60px));max-height:calc(100vh - 60px);overflow:auto;background:#0b2637;color:#fff;padding:34px;border-radius:24px;box-shadow:0 30px 90px rgba(0,0,0,.45)}
.carnaval-page-v376 .carnaval-showreel-close{position:absolute;top:14px;right:18px;width:44px;height:44px;border:1px solid rgba(255,255,255,.32);border-radius:50%;background:rgba(255,255,255,.08);color:#fff;font-size:2rem;line-height:1;cursor:pointer}
.carnaval-page-v376 .carnaval-showreel-heading{padding-right:60px;margin-bottom:20px}
.carnaval-page-v376 .carnaval-showreel-heading .eyebrow{color:#E3A45E;margin-bottom:16px}
.carnaval-page-v376 .carnaval-showreel-heading h2{max-width:820px;margin:0;color:#fff;font-size:clamp(2.2rem,4.4vw,4.8rem)}
.carnaval-page-v376 .carnaval-showreel-video{display:block;width:100%;max-height:62vh;background:#000;border-radius:14px}
.carnaval-page-v376 .carnaval-showreel-caption{display:flex;justify-content:space-between;gap:20px;margin-top:14px;font-size:.76rem;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.72)}
.carnaval-page-v376 .carnaval-showreel-caption strong{color:#fff}

/* Fechamento: mantém contraste e CTA de proposta. */
.carnaval-page-v376 .section.segment-end:not(.section-dark):not(.section-sea){
  background:#162C38!important;background-image:none!important;color:#fff;
}
.carnaval-page-v376 .segment-end h2,
.carnaval-page-v376 .segment-end p{color:#fff}
.carnaval-page-v376 .segment-end .eyebrow{color:#E3A45E}
.carnaval-page-v376 .segment-end .btn-ghost{color:#fff;background:transparent;border-color:rgba(255,255,255,.45)}
@media(min-width:901px){
  .carnaval-page-v376 .segment-end{min-height:calc(100vh - 83px);display:flex;align-items:center}
}

@media(max-width:1100px) and (min-width:901px){
  .carnaval-page-v376 .segment-hero-grid{gap:38px;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)}
  .carnaval-page-v376 .segment-hero-copy h1{font-size:clamp(3.45rem,5.8vw,4.8rem)}
  .carnaval-page-v376 .segment-main-photo img{max-height:min(500px,calc(100vh - 180px))}
}
@media(max-width:900px){
  .carnaval-page-v376 .segment-hero-grid{grid-template-columns:1fr;gap:32px}
  .carnaval-page-v376 .segment-main-photo{max-width:760px}
  .carnaval-page-v376 .segment-main-photo img{max-height:none}
  .carnaval-page-v376 .segment-story figure img{height:420px;min-height:0}
}
@media(max-width:600px){
  .carnaval-page-v376 .segment-context{padding:62px 0 66px}
  .carnaval-page-v376 .carnaval-proof{grid-template-columns:1fr}
  .carnaval-page-v376 .segment-tags span{border-radius:999px}
  .carnaval-page-v376 .segment-story figure img{height:300px}
  .carnaval-page-v376 .carnaval-showreel-trigger{width:100%;padding:14px 16px}
  .carnaval-page-v376 .carnaval-showreel-modal{padding:14px}
  .carnaval-page-v376 .carnaval-showreel-dialog{width:calc(100vw - 28px);max-height:calc(100vh - 28px);padding:22px;border-radius:18px}
  .carnaval-page-v376 .carnaval-showreel-heading{padding-right:44px}
  .carnaval-page-v376 .carnaval-showreel-caption{display:grid;gap:6px}
}
