/* =========================VAR========================= */
:root {
  --sb-yellow: #FCC301;
  --lpd-maxw: 1280px;
  --lpd-pad: 24px;
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: 100px; 
}

/* =========================HEADER========================= */
.lpd-header {
  position: sticky;
  top: 0;
  z-index: 999;
  width: 100%;
  background: transparent;
  transition: background .25s ease, border-color .25s ease, box-shadow .25s ease, padding .25s ease;
  border-bottom: 1px solid transparent;
}
.lpd-header.scrolled {
  background: linear-gradient(0deg, rgba(16,16,16,.45), rgba(16,16,16,.45));
  backdrop-filter: blur(8px) saturate(120%);
  -webkit-backdrop-filter: blur(8px) saturate(120%);
  border-bottom-color: rgba(252,195,1,.35);
  box-shadow: 0 4px 30px rgba(0,0,0,.25);
}
.lpd-header.scrolled::after {
  content: "";
  position: absolute; inset: 0;
  background-image: radial-gradient(rgba(255,255,255,.05) 1px, transparent 1px);
  background-size: 3px 3px;
  pointer-events: none;
  mix-blend-mode: overlay;
}

/* =========================CONTAINERR========================= */
.lpd-header .lpd-container {
  max-width: var(--lpd-maxw);
  margin: 0 auto;
  padding: 20px var(--lpd-pad);
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 16px;
}
.lpd-header .lpd-logo { justify-self: start; }
.lpd-header .lpd-logo img {
  display: block;
  max-width: 100%;
  height: auto;
  max-height: 42px;
  width: auto;
}

/* =========================MENU========================= */
.lpd-header .lpd-nav-desktop { display: none; justify-self: center; }
@media (min-width: 1024px) {
  .lpd-header .lpd-nav-desktop { display: block; }
}
.lpd-header .lpd-menu {
  list-style: none;
  display: flex;
  gap: 28px;
  margin: 0;
  padding: 0;
}
.lpd-header .lpd-menu > li > a {
  position: relative;
  display: inline-block;
  padding: 8px 0;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .02em;
  text-transform: uppercase;
  color: #fff;
  text-decoration: none;
  transition: color .2s ease;
}
.lpd-header .lpd-menu > li > a:hover,
.lpd-header .lpd-menu > li > a:focus { color: var(--sb-yellow); }
.lpd-header .lpd-menu > li > a::after {
  content:"";
  position:absolute;
  left:0; right:0; bottom:-6px; height:2px;
  background: var(--sb-yellow);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .2s ease;
}
.lpd-header .lpd-menu > li > a:hover::after,
.lpd-header .lpd-menu > li > a:focus::after { transform: scaleX(1); }

.lpd-header .lpd-actions {
  display: flex;
  align-items: center;
  gap: 16px;
  justify-self: end;
}
.lpd-header .lpd-phones { display: none; }
@media (min-width: 1200px) {
  .lpd-header .lpd-phones {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 8px 14px;
    border: 1px solid var(--sb-yellow);
    border-radius: 14px;
  }
}
.lpd-header .lpd-phone {
  color: #fff;
  text-decoration: none;
  white-space: nowrap;
  font-size: 13px;
}
.lpd-header .lpd-phone:hover { color: var(--sb-yellow); }
.lpd-header .lpd-divider {
  width: 1px; height: 18px;
  background: var(--sb-yellow);
  display: inline-block;
}
.lpd-header .lpd-social,
.lpd-header .lpd-mobile-social {
  list-style: none;
  display: flex;
  gap: 14px;
  margin: 0; padding: 0;
}
.lpd-header .lpd-social a,
.lpd-header .lpd-mobile-social a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px; height: 32px;
  border-radius: 50%;
  transition: transform .2s ease;
}
.lpd-header .lpd-social a:hover,
.lpd-header .lpd-mobile-social a:hover { transform: translateY(-1px); }
@media (max-width: 1023.98px) {
  .lpd-header .lpd-social { display: none; }
}

.lpd-header .lpd-burger {
  display: inline-flex;
  gap: 4px;
  flex-direction: column;
  background: transparent;
  border: 0;
  cursor: pointer;
}
.lpd-header .lpd-burger-bar {
  width: 26px; height: 3px; background: var(--sb-yellow);
  border-radius: 2px;
}
@media (min-width: 1024px) {
  .lpd-header .lpd-burger { display: none; }
}

.lpd-header .lpd-mobile {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: rgba(10,10,10,.92);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  z-index: 1000;
  padding: 100px 24px 32px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  overflow-y: auto;
}
.lpd-header .lpd-mobile.open { display: flex; }
.lpd-header .lpd-mobile[hidden] { display: none !important; }
.lpd-header .lpd-close {
  position: absolute;
  top: 16px; right: 16px;
  width: 40px; height: 40px;
  border: 0; border-radius: 8px;
  background: transparent;
  color: #fff;
  font-size: 34px; line-height: 1;
  cursor: pointer;
}
.lpd-header .lpd-close:hover { color: var(--sb-yellow); }
.lpd-header .lpd-mobile-menu {
  list-style: none;
  margin: 0; padding: 0;
  display: flex; flex-direction: column; gap: 18px;
}
.lpd-header .lpd-mobile-menu a {
  color: #fff; text-decoration: none; font-size: 20px; font-weight: 800;
}
.lpd-header .lpd-mobile-menu a:hover { color: var(--sb-yellow); }
.lpd-header .lpd-mobile-phones {
  display: flex; flex-direction: column; gap: 10px;
}
.lpd-header .lpd-mobile-phones .lpd-phone {
  font-size: 18px; text-decoration: none;
}

body.lpd-no-scroll { overflow: hidden; position: relative; }
@media (max-width: 1023.98px) {
  .lpd-header .lpd-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}


/* =========================Whatsapp========================= */

.lpd-whatsapp-float {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 999;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.lpd-whatsapp-float img {
  max-width: 70px;
  height: auto;
}

@media (max-width: 768px) {
  .lpd-whatsapp-float {
    right: 16px;
    bottom: 16px;
  }

  .lpd-whatsapp-float img {
    max-width: 60px;
  }
}


/* =========================HERO========================= */
.lpd-hero {
  margin-top: -90px;
  position: relative;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  z-index: 0;
  height: 100vh;
}
.lpd-hero__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  min-height: 100vh;
  background-image: url("../img-despesas/bg1.jpg");
  background-size: cover;          
  background-position: center;    
  background-repeat: no-repeat;   
  background-attachment: scroll;  
  background-color: #000;         
  z-index: -2;
}
@media (max-width: 768px) {
  .lpd-hero__bg {
    background-image: url("../img-despesas/bg-mobile.jpg");
    background-size: cover;
    background-position: center;
  }
}
.lpd-hero__bg::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
}
.lpd-hero__container {
  max-width: 1280px;
  margin: 0 auto;
  width: 100%;
  padding: 68px 24px 48px;
}
.lpd-hero__content {
  width: min(640px, 92vw);
  color: #fff;
  text-shadow: 0 2px 14px rgba(0,0,0,.45);
  text-align: left;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 14px;
}
.lpd-hero__logo {
  width: clamp(280px, 40vw, 540px);
  height: auto;
}
.lpd-hero__kicker {
  margin: 0;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
  font-size: 25px !important;
  opacity: .95;
}
.lpd-hero__lead {
  margin: 0 0 20px;
  font-size: clamp(14px, 2vw, 18px);
  line-height: 1.65;
  max-width: 56ch;
  opacity: .95;
}
.lpd-btn {
  display: inline-block;
  font-weight: 900;
  text-decoration: none;
  border-radius: 12px;
  padding: 16px 24px;
  transition: transform .15s ease, background-color .15s ease;
}
.lpd-btn--primary {
  background: var(--sb-yellow);
  color: #000;
  box-shadow: none;
}
.lpd-btn--primary:hover,
.lpd-btn--primary:focus {
  transform: translateY(-1px);
  background: #e3b601;
  color: #000;
}
@media (max-width: 768px) {
  .lpd-hero {
    justify-content: center;
  }
  .lpd-hero__container {
    padding: 60px 18px 40px;
  }
  .lpd-hero__content {
    margin-top: -200px;
    align-items: center;
    text-align: center;
  }
  .lpd-hero__logo {
    margin: 0 auto;
  }
  .lpd-hero__kicker {
    font-size: 15px !important;
  }
}

/* =========================SEÇÃO: Custo Invisível========================= */

.lpd-cost {
  position: relative;
  background: #fff;
  overflow: visible;
  padding: 48px 0;
}

.lpd-cost__container {
  max-width: none; 
  margin: 0;      
  padding: 0;      
  display: grid;
  grid-template-columns: 1fr minmax(0, 580px) calc((100vw - var(--lpd-maxw)) / 2 + var(--lpd-pad));
  align-items: center;
  gap: 36px;
}

.lpd-cost__media {
  margin: 0;
  line-height: 0;
  justify-self: stretch; 
  transform: none;       
  height: 100%;          
}
.lpd-cost__media img {
  display: block;
  width: 100%;             
  height: 100%;            
  object-fit: contain;     
  object-position: right center;
}


.lpd-cost__fade { display: none; }


.lpd-cost__content {
  margin-left: 0;     
  max-width: 580px;   
  color: #111;
}
.lpd-cost__title {
  margin: 0 0 18px;
  font-size: clamp(28px, 4.2vw, 48px);
  line-height: 1.05;
  font-weight: 900;
  letter-spacing: .01em;
  text-transform: uppercase;
}
.lpd-cost__title .accent {
  color: var(--sb-yellow);
  font-weight: 900;
}
.lpd-cost__p {
  margin: 0 0 16px;
  color: #2a2a2a;
  font-size: clamp(14px, 1.6vw, 16.5px);
  line-height: 1.7;
}

@media (max-width: 992px) {
  .lpd-cost { padding: 56px 0; }

  .lpd-cost__container {
    grid-template-columns: 1fr; 
    gap: 28px;
    padding: 0 18px;
  }

  .lpd-cost__content { order: 1; max-width: none; }
  .lpd-cost__media   { order: 2; width: 100vw; transform: none; }

  .lpd-cost__media {
    margin-left: calc(50% - 50vw);
  }
  .lpd-cost__media img {
    width: 100%;
    max-width: none;
    height: auto;
    object-position: left center;
  }

  .lpd-cost__title { font-size: clamp(26px, 8vw, 36px); }
  .lpd-cost__p { font-size: 14.5px; }
}

/* =========================SEÇÃO: Solução========================= */
.lpd-solution {
  background: #fff;
  padding: 48px 0 72px;
}
.lpd-solution__container {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 24px;
}
.lpd-solution__hero {
  position: relative;
  border-radius: 24px;
  overflow: hidden;
  background-image: url("../img-despesas/msolucao.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  display: flex;
  align-items: flex-end;
  min-height: 650px;
}
.lpd-solution__hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    180deg,
    rgba(0,0,0,0) 0%,
    rgba(0,0,0,.35) 45%,
    rgba(0,0,0,.70) 100%
  );
  pointer-events: none;
}
.lpd-solution__text {
  position: relative;
  z-index: 1;
  color: #fff;
  margin: 0;
  padding: 22px 22px 26px;
  max-width: 560px;
  font-size: clamp(14px, 1.6vw, 18px);
  line-height: 1.6;
}
.lpd-solution__features {
  display: grid;
  grid-template-columns: 1fr;
  gap: 18px;
  margin: 22px 0;
  padding: 0;
  list-style: none;
}
.lpd-feature {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 10px;
}
.lpd-feature__icon {
  width: 76px;
  height: 76px;
  flex: 0 0 76px;
  display: block;
}
.lpd-feature__label {
  margin: 0;
  color: #111;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .01em;
  line-height: 1.35;
  font-size: 12.5px;
}
@media (max-width: 992px) {
  .lpd-solution .lpd-feature__label br { display: none; }
}
.lpd-solution__cta {
  display: flex;
  justify-content: center;
  margin-top: 8px;
}
.lpd-solution__cta .lpd-btn {
  text-align: center;
}
@media (min-width: 993px) {
  .lpd-solution__hero {
    background-image: url("../img-despesas/solucao.jpg");
    min-height: clamp(260px, 36vw, 360px);
    align-items: center;
  }
  .lpd-solution__hero::after {
    display: none;
  }
  .lpd-solution__text {
    padding: 28px 28px 28px 55px;
    max-width: 55% !important;
  }
  .lpd-solution__features {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: clamp(16px, 3.2vw, 30px);
    margin: 28px 0 28px;
    padding: 0 6px;
  }
  .lpd-feature {
    flex-direction: row;
    align-items: center;
    text-align: left;
    gap: 16px;
    flex: 1 1 0;
    min-width: 0;
  }
  .lpd-feature__icon {
    width: 84px;
    height: 84px;
    flex: 0 0 84px;
  }
  .lpd-feature__label {
    font-size: 14px;
    line-height: 1.25;
    max-width: 280px;
    text-align: left;
  }
}

/* =========================SEÇÃO: O QUE O ZIPBOXCARD ENTREGA========================= */
.lpd-what {
  background: #fff;
  padding: clamp(32px, 6vw, 72px) 0;
  overflow: visible;
}
.lpd-what__container {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 24px;
  overflow: visible;
}
.oqc-title {
  margin: 0 0 24px;
  font-weight: 900;
  font-size: clamp(28px, 4.2vw, 48px);
  line-height: 1.05;
  letter-spacing: .01em;
  color: #111;
}
.oqc-title .oqc-accent {
  color: var(--sb-yellow, #F4C014);
  font-weight: 900;
}
.oqc-title .break {
  display: block;
  margin-top: 6px;
}

/* Linha controlada para o título 'O QUE O ZIPBOXCARD ENTREGA...' */
.oqc-title .oqc-line {
  display: inline;
  font-weight: 900;
}

/* Desktop: mostra apenas elementos desktop, cada linha em uma linha separada */
.oqc-title .oqc-line-1-mobile,
.oqc-title .oqc-line-2-mobile,
.oqc-title .oqc-line-3-mobile {
  display: none;
  text-align: center;
}

.oqc-title .oqc-line-1-desktop,
.oqc-title .oqc-line-2-desktop {
  display: block;
}

.oqc-title .oqc-line-1-desktop + .oqc-line-2-desktop {
  margin-top: 6px;
}

@media (max-width: 768px) {
  /* Mobile: esconde elementos desktop e mostra apenas mobile */
  .oqc-title .oqc-line-1-desktop,
  .oqc-title .oqc-line-2-desktop {
    display: none;
  }
  
  .oqc-title .oqc-line-1-mobile,
  .oqc-title .oqc-line-2-mobile,
  .oqc-title .oqc-line-3-mobile {
    display: block;
  }
  
  .oqc-title .oqc-line-1-mobile + .oqc-line-2-mobile,
  .oqc-title .oqc-line-2-mobile + .oqc-line-3-mobile {
    margin-top: 6px;
  }
}

/* =========================Carrossel Reutilizável========================= */
.lpd-caro {
  --gap: 32px;
  position: relative;
  margin: 0 60px;
}
.lpd-caro__viewport {
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  outline: none;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.lpd-caro__viewport::-webkit-scrollbar { display: none; }
.lpd-caro__track {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-auto-flow: column;
  column-gap: var(--gap);
  grid-auto-columns: calc((100% - (var(--gap) * 2)) / 3);
}
.lpd-caro__slide {
  scroll-snap-align: start;
}
.lpd-card {
  position: relative;
  border-radius: 24px;
  overflow: hidden;
  color: #fff;
  min-height: clamp(300px, 40vw, 420px);
  background-image: var(--card-bg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.lpd-card__content {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: clamp(18px, 3.2vw, 28px);
  text-shadow: 0 5px 12px rgba(0,0,0,.99);
}
.lpd-card__title {
  margin: 0 0 6px;
  font-weight: 900;
  font-size: clamp(18px, 2.6vw, 24px);
  line-height: 1.1;
  letter-spacing: .01em;
  text-transform: uppercase;
}
.lpd-card__text {
  margin: 0;
  font-size: clamp(13px, 1.8vw, 16px);
  line-height: 1.6;
  opacity: 1;
}
.lpd-caro__nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  background: #fff;
  border-radius: 50%;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08);
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2rem;
  border: none;
  cursor: pointer;
}
.lpd-caro__nav:hover { background: #dcdcdc; }
.lpd-caro__nav[disabled] {
  opacity: .45;
  cursor: default;
}
.lpd-caro__nav--prev {
  left: -56px;
}
.lpd-caro__nav--next {
  right: -56px;
}
@media (max-width: 1024px) {
  .lpd-caro { 
    --gap: 24px;
    margin: 0 50px;
  }
  .lpd-caro__track {
    grid-auto-columns: calc((100% - var(--gap)) / 2);
  }
  .lpd-caro__nav--prev { left: -50px; }
  .lpd-caro__nav--next { right: -50px; }
}
@media (max-width: 768px) {
  .lpd-caro { 
    --gap: 18px;
    margin: 0 50px;
  }
  .lpd-caro__track {
    grid-auto-columns: calc(100% - var(--gap));
  }
  .lpd-caro__nav {
    width: 40px;
    height: 40px;
    font-size: 20px;
  }
  .lpd-caro__nav--prev { left: -50px; }
  .lpd-caro__nav--next { right: -50px; }
}
@media (max-width: 480px) {
  .lpd-caro { 
    margin: 0 44px;
  }
  .lpd-caro__track {
    grid-auto-columns: calc(100% - var(--gap));
  }
  .lpd-caro__nav {
    width: 36px;
    height: 36px;
    font-size: 18px;
  }
  .lpd-caro__nav--prev { left: -44px; }
  .lpd-caro__nav--next { right: -44px; }
}

/* =========================SESSÃO: Quem confia========================= */
.lpd-trust { background:#fff; padding:56px 0 80px; overflow: visible; }
.lpd-trust__container { max-width:1280px; margin:0 auto; padding:0 24px; overflow: visible; }
.lpd-trust__head {
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:16px;
  align-items:start;
}
.lpd-trust__title{
  margin:0;
  font-weight:900;
  font-size:clamp(28px,4.2vw,48px);
  line-height:1.05;
  letter-spacing:.01em;
  color:#111;
}
.lpd-trust__title .accent{
  color:var(--sb-yellow);
  font-weight:900;
  display:block;
  margin-top:6px;
}
.lpd-trust__intro{
  margin:6px 0 0;
  font-size:clamp(14px,1.6vw,16.5px);
  line-height:1.7;
  color:#222;
}
.lpd-tcard{
  position:relative;
  border:1px solid #000;
  border-radius:16px;
  background:#fff;
  min-height:210px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding-top:28px;
  padding-bottom:22px;
}
.lpd-tcard__quotes{
  position:absolute;
  top:-15px; right:5px;
  width:84px; height:84px;
  background:url("../img-despesas/aspa.webp") center/contain no-repeat;
  pointer-events:none;
  opacity:1;
}
.lpd-tcard__text{
  max-width: 80%;
  margin:0 0 18px;
  color:#111;
  font-size:16px;
  line-height:1.65;
  padding:0 36px;
}
.lpd-tcard__footer{
  display:flex;
  align-items:center;
  gap:12px;
  padding:0 36px;
  background:transparent;
}
@media (min-width:993px){
  .lpd-tcard__text{ padding:0 40px 18px; }
  .lpd-tcard__footer{ padding:0 40px; }
}
.lpd-tcard__avatar{
  display:grid; place-items:center;
  flex:0 0 auto;
}
.lpd-tcard__avatar img{ width:40px; height:40px; display:block; }
.lpd-tcard__author{ font-weight:600; color:#111; font-size:14px; line-height:1.35; }
.lpd-caro--trust{ margin-top:26px; }
@media (min-width:993px){
  .lpd-caro--trust .lpd-caro__viewport{ overflow:visible; }
  .lpd-caro--trust .lpd-caro__track{
    grid-auto-columns: calc((100% - var(--gap)) / 2);
    column-gap: var(--gap);
  }
  .lpd-caro--trust .lpd-caro__nav{ display:none; }
}
@media (max-width:1024px){
  .lpd-caro--trust { margin-left: 50px; margin-right: 50px; }
  .lpd-caro--trust .lpd-caro__track{
    grid-auto-columns: calc((100% - var(--gap)) / 2);
  }
  .lpd-caro--trust .lpd-caro__nav--prev { left: -50px; }
  .lpd-caro--trust .lpd-caro__nav--next { right: -50px; }
}
/* ========================= SEÇÃO: Quem confia (MOBILE) ========================= */
@media (max-width: 768px){

  /* head da seção ok */
  .lpd-trust__head{
    grid-template-columns: 1fr;
    gap: 16px;
  }

  /* mantém seu padrão de carrossel (1 card por vez) */
  .lpd-caro--trust{
    margin-left: 50px;
    margin-right: 50px;
  }
  .lpd-caro--trust .lpd-caro__track{
    grid-auto-columns: calc(100% - var(--gap));
  }

  /* garante centralização real na snap */
  .lpd-caro--trust .lpd-caro__viewport{
    scroll-padding: 0 50px;          /* centro consistente */
  }
  .lpd-caro--trust .lpd-caro__slide{
    scroll-snap-align: center;       /* centraliza cada slide */
    height: 100%;
  }

  /* card com altura consistente */
  .lpd-tcard{
    margin: 30px 0 0;
    width: 100%;
    min-height: 280px;
    height: 280px;

    /* MAIS espaço pra aspas não serem cortadas e texto ficar no meio */
    padding: 74px 22px 18px;

    display: flex;
    flex-direction: column;
    justify-content: flex-start;
  }

  /* aspas visíveis (não “comidas”) */
  .lpd-tcard__quotes{
    top: -25px !important;              /* sobe pouco, não invade o texto */
    right: 10px;
    width: 78px;
    height: 78px;
    z-index: 3;
  }

  /* texto ocupa toda a largura e fica mais central */
  .lpd-tcard__text{
    max-width: 100%;
    padding: 0;
    margin: 40px 0 0;
    flex: 1 1 auto;
    text-align: left;
    line-height: 1.45;
  }

  /* footer sempre alinhado no fim */
  .lpd-tcard__footer{
    padding: 0;
    margin-top: auto;
  }

  /* setas continuam como você já tinha ajustado */
  .lpd-caro--trust .lpd-caro__nav{
    width: 40px;
    height: 40px;
    top: 50%;
    transform: translateY(-50%);
  }
  .lpd-caro--trust .lpd-caro__nav--prev{ left: -50px; }
  .lpd-caro--trust .lpd-caro__nav--next{ right: -50px; }
}

@media (max-width: 480px){

  .lpd-tcard{
    min-height: 270px;
    height: 270px;
    padding-top: 70px;
  }

  .lpd-caro--trust{
    margin-left: 44px;
    margin-right: 44px;
  }
  .lpd-caro--trust .lpd-caro__viewport{
    scroll-padding: 0 44px;
  }

  .lpd-caro--trust .lpd-caro__nav--prev{ left: -44px; }
  .lpd-caro--trust .lpd-caro__nav--next{ right: -44px; }
}

/* =========================SESSÃO: Veja como é simples========================= */
.lpd-how { background:#fff; padding:56px 0 72px; }
.lpd-how__container { max-width:1280px; margin:0 auto; padding:0 24px;
  display:grid; grid-template-columns: 0.9fr 1.1fr; gap:40px; align-items:center; }
.how-title{
  margin:0 0 12px;
  font-weight:900;
  font-size:clamp(28px,4.2vw,48px);
  line-height:1.05;
  letter-spacing:.01em;
  color:#111;
}
.how-title .accent{ color:var(--sb-yellow); font-weight:900; }
.how-title .break{ display:block; }
.how-lead{ margin:10px 0 20px; color:#222; font-size:clamp(14px,1.6vw,16.5px); line-height:1.7; max-width: 75%; }
.lpd-how__caro { position:relative; margin:0 60px; }
.lpd-how__caro .lpd-caro__viewport { 
  overflow-x: auto;
  overflow-y: hidden;
  width: 100%;
  scroll-snap-type: x mandatory;
  scroll-padding: 0;
}
.lpd-how__caro .lpd-caro__track{ 
  grid-auto-columns: 100%;
  column-gap: 0;
  padding: 0;
}
.lpd-how__caro .lpd-caro__slide {
  scroll-snap-align: start;
  scroll-snap-stop: always;
  width: 100%;
  flex-shrink: 0;
}
.lpd-how__caro .lpd-caro__nav--prev{ left:-70px; }
.lpd-how__caro .lpd-caro__nav--next{ right:-70px; }
.how-card{ margin:0; }
.how-card__mock{
  border-radius:28px;
  padding:14px;
}
.how-card__mock img{
  display:block; width:100%; height:auto;
  border-radius:14px; background:#fff;
}
.how-card__caption{
  text-align:center; margin-top:12px; color:#111;
  font-size:14px; line-height:1.4; font-weight:600;
}
@media (max-width:1024px){
  .lpd-how__container{ grid-template-columns:1fr; gap:24px; }
  /* keep arrows outside the image area on tablet/mobile */
  .lpd-how__caro .lpd-caro__viewport { 
    overflow-x: auto;
    overflow-y: hidden;
    width: 100%;
    scroll-snap-type: x mandatory;
    scroll-padding: 0;
  }
  .lpd-how__caro .lpd-caro__track{ 
    grid-auto-columns: 100%;
    column-gap: 0;
    padding: 0;
  }
  .lpd-how__caro .lpd-caro__slide {
    scroll-snap-align: start;
    scroll-snap-stop: always;
    width: 100%;
    flex-shrink: 0;
  }
  .lpd-how__caro .lpd-caro__nav--prev{ left:-40px; }
  .lpd-how__caro .lpd-caro__nav--next{ right:-40px; }
}
@media (max-width:768px){
  .lpd-how img {
    width: 70%;
    display: block;
    margin: 0 auto;
  }
  .how-lead{
    max-width: 100%;
  }
  .lpd-how{ padding:40px 0 56px; }
  .lpd-how__caro { margin: 0 20px; }
  .lpd-how__caro .lpd-caro__viewport { 
    overflow-x: auto;
    overflow-y: hidden;
    width: 100%;
    scroll-snap-type: x mandatory;
    scroll-padding: 0;
  }
  .lpd-how__caro .lpd-caro__track{ 
    grid-auto-columns: 100%;
    column-gap: 0;
    padding: 0;
  }
  .lpd-how__caro .lpd-caro__slide {
    scroll-snap-align: start;
    scroll-snap-stop: always;
    width: 100%;
    flex-shrink: 0;
  }
  .lpd-how__caro .lpd-caro__nav{ width:40px; height:40px; }
  /* ensure arrows remain outside the image on small screens */
  .lpd-how__caro .lpd-caro__nav--prev{ left:-30px; }
  .lpd-how__caro .lpd-caro__nav--next{ right:-30px; }
}
@media (max-width:480px){
  .lpd-how__caro { margin: 0 10px; }
  .lpd-how__caro .lpd-caro__viewport { 
    overflow-x: auto;
    overflow-y: hidden;
    width: 100%;
    scroll-snap-type: x mandatory;
    scroll-padding: 0;
  }
  .lpd-how__caro .lpd-caro__track{ 
    grid-auto-columns: 100%;
    column-gap: 0;
    padding: 0;
  }
  .lpd-how__caro .lpd-caro__slide {
    scroll-snap-align: start;
    scroll-snap-stop: always;
    width: 100%;
    flex-shrink: 0;
  }
  .lpd-how__caro .lpd-caro__nav{ 
    width: 36px; 
    height: 36px; 
    font-size: 18px;
  }
  .lpd-how__caro .lpd-caro__nav--prev{ left: 4px; }
  .lpd-how__caro .lpd-caro__nav--next{ right: 4px; }
}

/* =========================SESSÃO: App ZipBoxCard========================= */
.lpd-app{ background:#fff; padding:calc(56px + 32px) 0 72px; }
.lpd-app__container{ max-width:1280px; margin:0 auto; padding:0 24px; }
.lpd-app__wrap{
  --px: clamp(28px, 5vw, 48px);
  --pt: clamp(22px, 3.3vw, 36px);
  --pb: clamp(40px, 1.8vw, 20px);
  position: relative;
  background:#000;
  border-radius:28px;
  padding: var(--pt) var(--px) var(--pb);
  display:grid;
  grid-template-columns: 1.05fr 1fr;
  align-items:center;
  gap: clamp(20px, 4vw, 48px);
  overflow:visible;
}
.lpd-app__phone{
  margin:0; line-height:0; height:0;
}
.lpd-app__phone img{
  position:absolute;
  left: var(--px);
  bottom: var(--pb);
  width: 380px;
  height:auto;
  display:block;
}
.lpd-app__content{ color:#f2f2f2; padding-block: clamp(6px, 1.6vw, 14px); }
.lpd-app__brand{
  display:block;
  width: clamp(240px, 36vw, 520px);
  height:auto;
  margin: 0 0 14px;
}
.lpd-app__text{
  margin: 10px 0 22px;
  color:#e7e7e7;
  font-size: clamp(14px, 1.6vw, 16.5px);
  line-height:1.7;
  max-width:56ch;
}
.lpd-app__badges{
  display:flex;
  align-items:center;
  gap: 28px;
  flex-wrap:nowrap;
}
.lpd-app__badges img{
  display:block;
  width:auto; height:auto;
  max-height:46px;
}
@media (max-width: 992px){
  .lpd-app{ padding:56px 0 72px; }
  .lpd-app__wrap{
    grid-template-columns:1fr;
    --px: clamp(20px, 5vw, 28px);
    --pt: var(--px);
    --pb: clamp(14px, 3.5vw, 22px);
    padding: var(--pt) var(--px) var(--pb);
    text-align:left;
  }
  .lpd-app__phone{ height:auto; align-self:end; justify-self:center; }
  .lpd-app__phone img{
    position:static;
    width: clamp(240px, 60vw, 360px);
    height:auto;
    transform: translateY(-58px);
    margin-bottom:-20px;
  }
  .lpd-app__content{ text-align:left; padding-block:0; }
}
@media (max-width:480px){
  .lpd-app__badges{ gap:14px; }
  .lpd-app__badges img{ max-height:35px; }
  .lpd-app__content {
      margin-top: -105px;
      z-index: 5;
      padding-bottom: 35px;
  }
  .lpd-app__brand {
      width: 90%;
  }
}
@media (min-width: 993px){
  .lpd-app__wrap{
    --content-shift: 14px;
    --phone-drop: 40px;
  }
  .lpd-app__content{
    transform: translateX(calc(-8 * var(--content-shift)));
  }
  .lpd-app__phone img{
    bottom: calc(var(--pb) - var(--phone-drop));
  }
}

/* =========================SESSÃO: Excelência em Gestão========================= */
.lpd-exc { background:#fff; padding:56px 0 80px; }
.lpd-exc__container { max-width:1280px; margin:0 auto; padding:0 24px; }
.lpd-exc__wrap{
  display:grid;
  grid-template-columns: 1.1fr 0.9fr;
  align-items:center;
  gap: clamp(28px, 4vw, 56px);
}
.lpd-exc__title{
  margin:0 0 10px;
  font-weight:900;
  font-size:clamp(28px, 4.2vw, 48px);
  line-height:1.05;
  letter-spacing:.01em;
  color:#111;
}
.lpd-exc__title .accent{
  color:var(--sb-yellow, #FCC301);
  font-weight:900;
}
.lpd-exc__kicker{
  margin:6px 0 18px;
  font-size:clamp(12.5px, 1.3vw, 13.5px);
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:#111;
}
.lpd-exc__p{
  margin:0 0 16px;
  color:#222;
  font-size:clamp(14px, 1.6vw, 16.5px);
  line-height:1.7;
  max-width: 66ch;
}
.lpd-exc__cta { margin-top:10px; }
.lpd-exc__cta .lpd-btn { text-align:center; }
.lpd-exc__media{
  margin:0;
  line-height:0;
  justify-self:end;
}
.lpd-exc__media img{
  display:block;
  width:clamp(420px, 42vw, 560px);
  height:auto;
  border-radius:28px;
  object-fit:cover;
}
@media (max-width: 992px){
  .lpd-exc { padding:48px 0 64px; }
  .lpd-exc__wrap{
    grid-template-columns:1fr;
    gap:22px;
  }
  .lpd-exc__content{ order:1; }
  .lpd-exc__media{ order:2; justify-self:stretch; }
  .lpd-exc__media img{
    width:100%;
    max-width:none;
    border-radius:24px;
  }
  .lpd-exc__cta .lpd-btn{
    width:100%;
  }
}

/* =========================FAQ========================= */
.lpd-faq { background:#fff; padding:56px 0 72px; }
.lpd-faq__container { max-width:1280px; margin:0 auto; padding:0 24px; }
.lpd-faq__title{
  margin:0 0 24px;
  font-weight:900;
  font-size:clamp(26px, 4.2vw, 40px);
  letter-spacing:.01em;
  text-align:center;
}
.lpd-faq__list{ display:grid; gap:16px; }
.lpd-faq__btn{
  all:unset;
  box-sizing:border-box;
  width:100%;
  cursor:pointer;
  padding:18px 44px 18px 20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  font-weight:800;
  font-size:14px;
  letter-spacing:.02em;
  background:#fff;
  border:1px solid #eee;
  border-radius:12px;
}
.lpd-faq__icon{
  position:relative;
  width:16px; height:16px; flex:0 0 16px;
}
.lpd-faq__icon::before,
.lpd-faq__icon::after{
  content:"";
  position:absolute; left:50%; top:50%;
  background:var(--sb-yellow, #FCC301);
  transform:translate(-50%,-50%);
  border-radius:1px;
}
.lpd-faq__icon::before{ width:14px; height:2px; }
.lpd-faq__btn[aria-expanded="true"] .lpd-faq__icon::after{ display:none; }
.lpd-faq__icon::after{ width:2px; height:14px; }
.lpd-faq__a{
  padding: 20px 0;
  margin: 0 8px;
  color: #222;
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  transition:
    max-height 320ms cubic-bezier(.2,.7,.2,1),
    opacity    200ms ease;
  will-change: max-height, opacity;
}
.lpd-faq__a > p{ margin:0; }
.lpd-faq__a.is-open{
  opacity: 1;
}
@media (min-width: 992px){
  .lpd-faq__btn{ font-size:15px; padding:20px 52px 20px 22px; }
  .lpd-faq__a{ font-size:15px; padding-left:22px; }
}

/* =========================SESSÃO: Contato========================= */
.lpd-contact{
  position: relative;
  background: #000;
  isolation: isolate;
  padding: 84px 0 120px;
  color: #fff;
}
.lpd-contact__bg{
  position: absolute;
  inset: 0;
  z-index: -1;
  background-image: url("../img-despesas/bgcontato.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.lpd-contact__container{
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 24px;
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  align-items: start;
  gap: clamp(24px, 4vw, 56px);
}
.lpd-contact__title{
  margin: 0 0 14px;
  font-weight: 900;
  font-size: clamp(28px, 4.2vw, 48px);
  line-height: 1.05;
  letter-spacing: .01em;
  color:#fff;
}
.lpd-contact__title .accent{
  color: var(--sb-yellow);
  font-weight: 900;
}
.lpd-contact__lead{
  margin: 8px 0 0;
  font-size: clamp(14px, 1.6vw, 16.5px);
  line-height: 1.7;
  max-width: 46ch;
  color: #f2f2f2;
  text-shadow: 0 1px 6px rgba(0,0,0,.25);
}
.lpd-contact__form{
  width: 100%;
  max-width: 620px;
  margin-left: auto;
}
.lpd-contact__form .wpcf7 form{ display:grid; gap:14px; }
.lpd-contact__form .wpcf7 input[type="text"],
.lpd-contact__form .wpcf7 input[type="email"],
.lpd-contact__form .wpcf7 input[type="tel"],
.lpd-contact__form .wpcf7 textarea{
  width:100%; padding:14px 16px; border-radius:10px;
  border:1px solid rgba(255,255,255,.28);
  background:rgba(0,0,0,.18); color:#fff; outline:none; font-size:14px;
  transition:border-color .2s ease, background-color .2s ease, box-shadow .2s ease;
}
.lpd-contact__form .wpcf7 textarea{ min-height:120px; resize:vertical; }
.lpd-contact__form .wpcf7 input::placeholder,
.lpd-contact__form .wpcf7 textarea::placeholder{ color:rgba(255,255,255,.7); }
.lpd-contact__form .wpcf7 input:focus,
.lpd-contact__form .wpcf7 textarea:focus{
  border-color:var(--sb-yellow);
  box-shadow:0 0 0 2px rgba(252,195,1,.18);
  background:rgba(0,0,0,.24);
}
.lpd-contact__form .wpcf7 input[type="submit"]{
  margin-top:6px; cursor:pointer; border:0; border-radius:12px;
  padding:16px 22px; font-weight:900; text-transform:uppercase; letter-spacing:.02em;
  background:var(--sb-yellow); color:#000;
  transition:transform .15s ease, background-color .15s ease;
}
.lpd-contact__form .wpcf7 input[type="submit"]:hover{
  transform:translateY(-1px); background:#e3b601;
}
@media (max-width: 992px){
  .lpd-contact{ padding: 84px 0 clamp(200px, 28vw, 280px); }
  .lpd-contact__bg{
    background-image: url("../img-despesas/bgcontatomobile.webp");
    background-position: center top;
  }
  .lpd-contact__container{
    grid-template-columns: 1fr;
    gap: 18px;
    padding-bottom: 300px;
  }
  .lpd-contact__form{
    max-width: 520px;
    margin: 8px 0 0;
  }
}

/* =========================FOOTER========================= */
.lpd-footer{
  background:#fff;
  padding:36px 0 56px;
}
.lpd-footer__container{
  max-width:1080px;
  margin:0 auto;
  padding:0 24px;
  text-align:center;
}
@media (min-width:992px){
  .lpd-footer__container{
    display:grid;
    grid-template-columns:auto auto;
    justify-content:center;
    column-gap:16px;
    row-gap:12px;
    align-items:start;
  }
  .lpd-footer__logo,
  .lpd-footer__social,
  .lpd-footer__addr{
    grid-column:1 / -1;
    justify-self:center;
  }
  .lpd-footer__container > .lpd-pill{
    justify-self:center;
    width:auto;
    max-width:none;
    margin:14px 0;
  }
}
.lpd-footer__logo img{
  display:block;
  margin:0 auto 22px;
  height:auto;
}
.lpd-pill{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  border:1px solid #e9e9e9;
  border-radius:18px;
  padding:14px 18px;
  margin:14px auto;
  width:auto;
  max-width:100%;
}
.lpd-pill__div{ width:1px; height:24px; background:#e6e6e6; }
.lpd-pill__link{
  color:#111;
  text-decoration:none;
  font-weight:400;
  letter-spacing:.01em;
  white-space:nowrap;
}
.lpd-pill__link:hover{ color:var(--sb-yellow); }
.lpd-pill--phones .lpd-pill__label{
  font-weight:900;
  margin-right:6px;
  color:#111;
}
.lpd-pill__tel{ font-weight:400; white-space:nowrap; }
.lpd-footer__social{
  list-style:none;
  display:flex;
  justify-content:center;
  gap:16px;
  padding:18px 0 8px;
  margin:0;
}
.lpd-footer__social a{
  display:inline-flex; align-items:center; justify-content:center;
  width:28px; height:28px;
  border-radius:50%;
  transition:transform .15s ease;
}
.lpd-footer__social a:hover{ transform:translateY(-1px); }
.lpd-footer__social img{ width:22px; height:22px; }
.lpd-footer__addr{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin:8px 0 0;
  color:#111 !important;
  font-weight:700;
  letter-spacing:.01em;
  text-decoration:none !important;
}
.lpd-footer__addr:hover,
.lpd-footer__addr:focus{
  color:#111 !important;
  text-decoration:none !important;
}
.lpd-footer__pin{
  width:30px; height:30px;
  vertical-align:-5px;
}
@media (max-width:640px){
  .lpd-pill {
    padding: 12px 16px;
    gap: 10px;
    flex-wrap: nowrap;
  }

  .lpd-pill__link,
  .lpd-pill__label,
  .lpd-pill__tel {
    font-size: 13px;
  }
  
  .lpd-pill__div {
    height: 20px;
  }

  .lpd-footer__social {
    gap: 14px;
  }
  .lpd-footer__addr {
    font-size: 13px;
  }
}

/* =========================HIDE MOBILE========================= */
.lpd-hide-mobile {
  display: none;
}

@media (min-width: 769px) {
  .lpd-hide-mobile {
    display: inline-block;
  }
}

/* =========================MOBILE: Reduce section spacing========================= */
@media (max-width: 768px) {
  .lpd-cost,
  .lpd-solution,
  .lpd-what,
  .lpd-trust,
  .lpd-how,
  .lpd-app,
  .lpd-exc,
  .lpd-faq,
  .lpd-contact {
    padding-top: 28px;
    padding-bottom: 36px;
  }

  .lpd-hero__container {
    padding: 20px 16px 32px;
  }

  .lpd-hero__content {
    gap: 10px;
  }

  .lpd-contact__container,
  .lpd-exc__wrap,
  .lpd-how__container,
  .lpd-trust__container {
    padding-left: 16px;
    padding-right: 16px;
  }

  .lpd-tcard {
    padding-top: 20px;
    padding-bottom: 18px;
  }
}

@media (max-width: 768px) {
  #btn-mobile-hidden {
    display: none !important;
  }
}

/* mantém tudo igual no desktop */
.lpd-faq__title .lpd-faq__t1,
.lpd-faq__title .lpd-faq__t2{
  display: inline;
  font-weight: 900;
}

/* mobile: quebra exatamente entre as palavras */
@media (max-width: 768px){
  .lpd-faq__title{
    text-align: center; /* garante que não vá pra esquerda */
  }

  .lpd-faq__title .lpd-faq__t1,
  .lpd-faq__title .lpd-faq__t2{
    display: block;     /* força a quebra */
  }
}
