.wl-hero{
  padding:140px 24px 90px;
  background:
    linear-gradient(135deg,rgba(5,15,30,.94),rgba(13,53,102,.9)),
    url('https://images.unsplash.com/photo-1552664730-d307ca884978?q=80&w=1800&auto=format&fit=crop');
  background-size:cover;
  background-position:center;
  position:relative;
}

.wl-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 85% 20%,rgba(232,84,10,.20),transparent 28%),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:auto,42px 42px,42px 42px;
}

.wl-hero > *{position:relative;z-index:1}

.wl-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);
  gap:42px;
  align-items:center;
}

.wl-badge,
.wl-title span{
  display:inline-block;
  color:var(--laranja);
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:12px;
}

.wl-badge{
  background:rgba(232,84,10,.18);
  border:1px solid rgba(232,84,10,.35);
  color:#FFB089;
  padding:8px 16px;
  border-radius:100px;
}

.wl-hero h1{
  font-size:clamp(36px,5vw,60px);
  line-height:1.04;
  letter-spacing:-.05em;
  color:#fff;
  margin:22px 0 20px;
  font-family:'Plus Jakarta Sans',sans-serif;
}

.wl-hero h1 span,
.wl-title h2 span,
.cta-box h2 span{
  color:var(--laranja);
}

.wl-desc{
  color:rgba(255,255,255,.78);
  font-size:18px;
  line-height:1.75;
  max-width:720px;
}

.wl-actions,
.wl-cta-actions{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  margin-top:28px;
}

.wl-hero-card{
  background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.12);
  border-radius:28px;
  padding:34px;
  backdrop-filter:blur(12px);
  box-shadow:0 25px 60px rgba(0,0,0,.22);
}

.wl-hero-card h2{
  color:#fff;
  font-size:24px;
  margin-bottom:20px;
}

.wl-hero-card ul,
.wl-list-card ul,
.wl-plan ul{
  margin:0;
  padding-left:18px;
  line-height:2;
}

.wl-hero-card li{color:rgba(255,255,255,.84)}

.wl-section{
  padding:84px 24px;
  background:#fff;
}

.wl-section-soft{
  background:var(--fundo);
}

.wl-section-dark{
  background:linear-gradient(135deg,#071C36,#0F2A52);
}

.wl-title{
  max-width:860px;
  margin-bottom:46px;
}

.wl-title.center{
  text-align:center;
  margin-left:auto;
  margin-right:auto;
}

.wl-title h2{
  font-size:clamp(30px,4vw,48px);
  line-height:1.1;
  margin-top:12px;
  letter-spacing:-.04em;
  color:var(--preto);
}

.wl-section-dark .wl-title h2{color:#fff}

.wl-grid,
.wl-plans{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:24px;
}

.wl-box,
.wl-plan,
.wl-list-card{
  background:var(--fundo);
  border:1px solid var(--borda);
  border-radius:24px;
  padding:30px;
  transition:.25s ease;
}

.wl-box:hover,
.wl-plan:hover{
  transform:translateY(-5px);
  box-shadow:0 20px 44px rgba(15,42,82,.12);
}

.wl-icon{
  width:56px;
  height:56px;
  border-radius:18px;
  background:rgba(232,84,10,.12);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:28px;
  margin-bottom:18px;
}

.wl-box h3,
.wl-plan h3,
.wl-list-card h3{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:20px;
  font-weight:800;
  margin-bottom:12px;
}

.wl-box p,
.wl-text,
.wl-plan p{
  color:var(--cinza-texto);
  font-size:15px;
  line-height:1.75;
}

.wl-two-col{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:44px;
  align-items:center;
}

.wl-list-card{
  background:#fff;
}

.wl-steps{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:16px;
}

.wl-step{
  display:flex;
  gap:14px;
  align-items:flex-start;
  background:var(--fundo);
  border:1px solid var(--borda);
  border-radius:18px;
  padding:18px;
}

.wl-step strong{
  width:38px;
  height:38px;
  min-width:38px;
  border-radius:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:var(--azul-gelo);
  color:var(--azul-inst);
  font-size:13px;
}

.wl-step span{
  font-weight:700;
  line-height:1.45;
}

.wl-plan{
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
}

.wl-plan h3,
.wl-plan p,
.wl-plan li{
  color:#fff;
}

.wl-plan strong{
  display:block;
  color:#FFB089;
  font-size:24px;
  margin:18px 0;
}

.wl-highlight{
  background:#FEF0E6;
  border-left:4px solid var(--laranja);
  padding:18px 22px;
  border-radius:0 14px 14px 0;
  margin-top:24px;
  color:#7A2E08;
  line-height:1.7;
}

.wl-highlight strong{
  color:var(--laranja);
}

@media(max-width:900px){
  .wl-hero-grid,
  .wl-two-col{
    grid-template-columns:1fr;
  }
}

@media(max-width:599px){
  .wl-hero{
    padding:110px 18px 64px;
  }

  .wl-actions,
  .wl-cta-actions{
    flex-direction:column;
  }

  .wl-actions a,
  .wl-cta-actions a{
    width:100%;
    justify-content:center;
    text-align:center;
  }
}

/* WHITE-LABEL-SITE-001-REV2-FIX — ajuste visual premium */

.wl-hero {
  min-height: 620px;
  display: flex;
  align-items: center;
}

.wl-hero-card {
  transform: scale(1.04);
}

.wl-opportunity {
  padding-top: 92px;
  padding-bottom: 92px;
}

.wl-numbers {
  display: grid;
  grid-template-columns: repeat(3, minmax(220px, 1fr));
  gap: 24px;
  margin-top: 38px;
}

.wl-numbers article {
  background: var(--fundo);
  border: 1px solid var(--borda);
  border-radius: 24px;
  padding: 34px 28px;
  text-align: center;
  box-shadow: 0 16px 36px rgba(15,42,82,.08);
}

.wl-numbers strong {
  display: block;
  font-size: 56px;
  line-height: 1;
  color: var(--laranja);
  font-family: 'Plus Jakarta Sans', sans-serif;
  font-weight: 900;
  margin-bottom: 10px;
}

.wl-numbers span {
  display: block;
  font-size: 18px;
  font-weight: 800;
  color: var(--preto);
  margin-bottom: 6px;
}

.wl-numbers p {
  color: var(--cinza-texto);
  line-height: 1.6;
  margin: 0;
}

.wl-section-plans {
  background: linear-gradient(135deg,#071C36,#0F2A52);
}

.wl-section-plans .wl-title h2 {
  color: #fff;
}

.wl-section-plans .wl-title span {
  color: #FFB089;
}

.wl-plans {
  align-items: stretch;
}

.wl-plan {
  position: relative;
  background: rgba(255,255,255,.09);
  border: 1px solid rgba(255,255,255,.16);
  box-shadow: 0 18px 44px rgba(0,0,0,.16);
  min-height: 390px;
}

.wl-plan h3 {
  font-size: 24px;
}

.wl-plan p {
  color: rgba(255,255,255,.78);
}

.wl-plan li {
  color: rgba(255,255,255,.88);
}

.wl-plan-featured {
  background: linear-gradient(180deg, rgba(232,84,10,.24), rgba(255,255,255,.10));
  border: 1px solid rgba(232,84,10,.55);
  transform: translateY(-12px);
}

.wl-plan-featured:hover {
  transform: translateY(-18px);
}

.wl-plan-badge {
  display: inline-block;
  background: var(--laranja);
  color: #fff;
  font-weight: 900;
  font-size: 11px;
  letter-spacing: .08em;
  text-transform: uppercase;
  padding: 7px 12px;
  border-radius: 999px;
  margin-bottom: 16px;
}

.wl-final-cta .cta-box {
  max-width: 980px;
  margin: 0 auto;
}

.wl-final-cta h2 {
  font-size: clamp(32px,4.2vw,54px);
  line-height: 1.05;
}

.wl-final-cta p {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
}

@media(max-width:900px) {
  .wl-hero {
    min-height: auto;
  }

  .wl-numbers {
    grid-template-columns: 1fr;
  }

  .wl-plan-featured {
    transform: none;
  }

  .wl-plan-featured:hover {
    transform: translateY(-5px);
  }
}

/* WHITE-LABEL-SITE-001B — cards comerciais de contratação e créditos */

.wl-hire-card h3 {
  font-size: 22px;
  line-height: 1.25;
  margin-bottom: 22px;
}

.wl-mini-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.wl-mini-grid article {
  display: flex;
  align-items: center;
  gap: 12px;
  background: #fff;
  border: 1px solid rgba(232,84,10,.18);
  border-radius: 16px;
  padding: 16px;
  box-shadow: 0 10px 26px rgba(15,42,82,.06);
}

.wl-mini-grid span {
  width: 42px;
  height: 42px;
  min-width: 42px;
  border-radius: 14px;
  background: #FEF0E6;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
}

.wl-mini-grid strong {
  font-size: 14px;
  line-height: 1.25;
  color: var(--preto);
}

.wl-price-card {
  background: linear-gradient(180deg,#fff,#FFF7F2);
  border-color: rgba(232,84,10,.22);
}

.wl-price-sub {
  color: var(--cinza-texto);
  line-height: 1.55;
  margin: -4px 0 18px;
  font-size: 14px;
}

.wl-credit-price-grid {
  display: grid;
  gap: 12px;
}

.wl-credit-price-grid article {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 4px 14px;
  align-items: center;
  background: #fff;
  border: 1px solid rgba(232,84,10,.18);
  border-radius: 16px;
  padding: 16px 18px;
  box-shadow: 0 10px 26px rgba(15,42,82,.06);
}

.wl-credit-price-grid span {
  font-weight: 900;
  color: var(--preto);
}

.wl-credit-price-grid strong {
  color: var(--laranja);
  font-size: 24px;
  font-family: 'Plus Jakarta Sans', sans-serif;
  line-height: 1;
}

.wl-credit-price-grid small {
  grid-column: 2;
  color: var(--cinza-texto);
  font-size: 12px;
}

@media(max-width:599px) {
  .wl-mini-grid {
    grid-template-columns: 1fr;
  }

  .wl-credit-price-grid article {
    grid-template-columns: 1fr;
  }

  .wl-credit-price-grid small {
    grid-column: auto;
  }
}

/* WHITE-LABEL-SITE-001C-FIX — destaque laranja com tamanho correto */
.wl-hero h1 span,
.wl-title h2 span,
.wl-final-cta h2 span,
.cta-box h2 span {
  color: var(--laranja) !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
  letter-spacing: inherit !important;
  text-transform: inherit !important;
  display: inline !important;
}

/* WHITE-LABEL-PLANOS-001 — botão dos planos vindo do banco */
.wl-plan-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin-top: 22px;
  padding: 14px 18px;
  border-radius: 14px;
  background: var(--laranja);
  color: #fff;
  font-weight: 900;
  text-decoration: none;
  transition: .25s ease;
  box-shadow: 0 14px 30px rgba(232,84,10,.22);
}

.wl-plan-btn:hover {
  transform: translateY(-2px);
  background: var(--laranja-vivo);
  color: #fff;
}

.wl-plan-featured .wl-plan-btn {
  background: #fff;
  color: var(--laranja);
}

.wl-plan-featured .wl-plan-btn:hover {
  background: #FEF0E6;
  color: var(--laranja);
}

/* WL-CADASTRO-001 — formulário público do parceiro */
.wl-cadastro-form {
  max-width: 980px;
  margin: 0 auto;
}

.wl-cadastro-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin: 24px 0;
}

.wl-cadastro-grid label {
  display: block;
  color: var(--azul-profundo);
  font-weight: 800;
  font-size: 13px;
}

.wl-cadastro-grid input,
.wl-cadastro-grid select {
  width: 100%;
  margin-top: 8px;
  border: 1px solid var(--borda);
  border-radius: 14px;
  padding: 13px 14px;
  font-size: 15px;
  background: #fff;
  color: var(--preto);
}

.wl-cadastro-grid input:focus,
.wl-cadastro-grid select:focus {
  outline: 2px solid rgba(232,84,10,.18);
  border-color: var(--laranja);
}

@media (max-width: 700px) {
  .wl-cadastro-grid {
    grid-template-columns: 1fr;
  }
}

/* VISUAL-WL-010 — seção demonstrativa da operação White Label */
.wl-platform-demo {
  background:
    radial-gradient(circle at 15% 20%, rgba(232,84,10,.10), transparent 28%),
    linear-gradient(180deg,#fff,#F7FAFC);
}

.wl-platform-demo .wl-title p {
  max-width: 820px;
  margin: 18px auto 0;
}

.wl-platform-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.wl-platform-grid article {
  position: relative;
  overflow: hidden;
  background: #fff;
  border: 1px solid rgba(15,42,82,.10);
  border-radius: 24px;
  padding: 30px;
  box-shadow: 0 16px 38px rgba(15,42,82,.08);
  transition: .25s ease;
}

.wl-platform-grid article::after {
  content: "";
  position: absolute;
  right: -44px;
  top: -44px;
  width: 120px;
  height: 120px;
  border-radius: 50%;
  background: rgba(232,84,10,.08);
}

.wl-platform-grid article:hover {
  transform: translateY(-5px);
  box-shadow: 0 22px 52px rgba(15,42,82,.13);
}

.wl-platform-grid span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  border-radius: 16px;
  background: var(--azul-gelo);
  color: var(--azul-inst);
  font-weight: 900;
  font-size: 13px;
  margin-bottom: 18px;
}

.wl-platform-grid strong {
  display: block;
  color: var(--preto);
  font-family: 'Plus Jakarta Sans', sans-serif;
  font-size: 20px;
  font-weight: 900;
  margin-bottom: 10px;
}

.wl-platform-grid p {
  color: var(--cinza-texto);
  line-height: 1.7;
  font-size: 15px;
  margin: 0;
}

@media(max-width: 900px) {
  .wl-platform-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media(max-width: 599px) {
  .wl-platform-grid {
    grid-template-columns: 1fr;
  }
}

/* VISUAL-WL-011 — refinamento de cores dos cards operacionais e CTA final */
.wl-platform-grid article:nth-child(1) span {
  background: var(--azul-gelo);
  color: var(--azul-inst);
}

.wl-platform-grid article:nth-child(2) span {
  background: #FEF0E6;
  color: var(--laranja);
}

.wl-platform-grid article:nth-child(3) span {
  background: #E8F7EF;
  color: #0F7A3A;
}

.wl-platform-grid article:nth-child(4) span {
  background: #EEF2FF;
  color: #3B4CCA;
}

.wl-platform-grid article:nth-child(5) span {
  background: #FFF7D6;
  color: #9A6700;
}

.wl-platform-grid article:nth-child(6) span {
  background: #EAF7FB;
  color: #087A9A;
}

.wl-final-cta .cta-box h2,
.wl-final-cta .cta-box h2 span {
  color: #fff !important;
}

.wl-final-cta .cta-box p,
.wl-final-cta .cta-box p strong {
  color: rgba(255,255,255,.92) !important;
}

.wl-final-cta .btn-secondary {
  background: #fff;
  color: var(--azul-profundo);
  border-color: #fff;
}

.wl-final-cta .btn-secondary:hover {
  background: var(--azul-profundo);
  color: #fff;
  border-color: var(--azul-profundo);
}
