/* wrapper centralizado */
#oferta-modal{
  position:fixed; inset:0; z-index:100;
  display:grid; place-items:center;
  padding:16px;
}
#oferta-modal[aria-hidden="true"]{ display:none; }

/* overlay */
#oferta-modal .cgc-overlay{
  position:absolute; inset:0;
  background:rgba(0,0,0,.55);
  backdrop-filter:saturate(100%) blur(1px);
}

/* caixa */
#oferta-modal .cgc-modal{
  position:relative; z-index:1;
  width:min(1120px,95vw);
  background:var(--surface,#121415);
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 24px 60px rgba(0,0,0,.5);
  display:grid; grid-template-columns: 1.5fr 1fr;
}
@media (max-width: 980px){
  #oferta-modal .cgc-modal{ grid-template-columns:1fr; width:min(780px,95vw); }
}

/* fechar */
#oferta-modal .cgc-close{
  position:absolute; top:10px; right:10px;
  width:40px; height:40px; border-radius:999px;
  display:grid; place-items:center;
  background:rgba(0,0,0,.55); color:#fff; border:0; cursor:pointer;
}
#oferta-modal .cgc-close:hover{ background:rgba(0,0,0,.65); }

/* mídia */
.cgc-offer__media{ position:relative; background:#000; }
.cgc-offer__media img{ width:100%; height:100%; object-fit:cover; min-height:560px; }

/* barra com overlay só embaixo */
.cgc-offer__bar{
  position:absolute; inset-inline:0; bottom:0;
  padding:20px 22px 22px;
  color:#fff;
  background:linear-gradient(to top, rgba(0,0,0,.45), rgba(0,0,0,.1), rgba(0,0,0,0));
}
.cgc-offer__name{ font:800 22px/1.25 system-ui, -apple-system, Segoe UI, Roboto, sans-serif; margin:0; }
.cgc-offer__meta{ margin:.5rem 0 0; opacity:.9; font-size:14px; display:flex; gap:8px; flex-wrap:wrap; }
.cgc-offer__price{ margin-top:8px; font:800 26px/1 system-ui; }
.cgc-offer__link{ display:inline-block; margin-top:8px; color:#fff; opacity:.9; text-decoration:underline; }

/* painel do form */
.cgc-offer__panel{ padding:26px 26px 28px; color:#e8e8e8; }
.cgc-offer__title{ font:700 20px/1.25 system-ui; margin:0 0 14px; }

/* normalização CF7 */
.cgc-cf7 p{ margin:0 0 12px; }

.cgc-cf7 input[type="text"],
.cgc-cf7 input[type="email"],
.cgc-cf7 input[type="tel"],
.cgc-cf7 textarea{
  width:100%; background:#0f1214; color:#e9eef1;
  border:1px solid rgba(255,255,255,.09); border-radius:12px;
  height:44px; padding:10px 14px; outline:0;
  transition:border-color .2s, box-shadow .2s, background .2s;
}
.cgc-cf7 textarea{ height:140px; resize:vertical; }

.cgc-cf7 input:focus, .cgc-cf7 textarea:focus{
  border-color:rgba(64,199,255,.6);
  box-shadow:0 0 0 3px rgba(64,199,255,.15) inset;
}

/* linha dupla (Cidade + Telefone) */
.cgc-form .row-2{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
@media (max-width:640px){ .cgc-form .row-2{ grid-template-columns:1fr; } }

/* botão branco padrão */
.cgc-cf7 input[type="submit"]{
  width:100%; height:48px; border-radius:999px;
  background:#fff; color:#0e1113; font-weight:800; border:0; cursor:pointer;
  transition:transform .06s ease, box-shadow .2s ease;
}
.cgc-cf7 input[type="submit"]:hover{ transform:translateY(-1px); box-shadow:0 12px 26px rgba(0,0,0,.22); }

/* mensagens CF7 */
.wpcf7-not-valid-tip{ color:#ff7a7a; font-size:12px; margin-top:6px; }
.wpcf7 form .wpcf7-response-output{ margin:12px 0 0; }


/* bloco de compartilhamento */
.cgc-share-block { margin-top: 18px; }
.cgc-share-row {
  display: flex; align-items: center; gap: 10px;
  margin-bottom: 12px;
}
.cgc-share-label { font-size: .9rem; color: #9aa3a7; margin-right: 4px; }
.cgc-share-btn {
  width: 36px; height: 36px; border-radius: 999px;
  display: grid; place-items: center;
  background: #171a1d; color: #eaf0f3;
  border: 1px solid rgba(255,255,255,.08);
  transition: transform .06s ease, background .2s ease, border-color .2s ease, color .2s ease;
}
.cgc-share-btn:hover { transform: translateY(-1px); background:#1f2427; border-color: rgba(255,255,255,.16); }

/* ===== AÇÕES / SHARE / BOTÃO ===== */
.cgc-actions { margin-top: 18px; }

.cgc-share {
  display:flex; align-items:center; justify-content:space-between;
  gap:12px; margin-bottom:12px;
  padding-bottom:10px; border-bottom:1px solid rgba(255,255,255,.06);
}
.cgc-share__label { font-size:.9rem; color:#9aa3a7; white-space:nowrap; }
.cgc-share__icons { display:flex; gap:10px; flex-wrap:wrap; }

.cgc-share__btn{
  width:38px; height:38px; border-radius:10px;
  display:grid; place-items:center;
  background:#14181b; color:#e9eef1;
  border:1px solid rgba(255,255,255,.08);
  transition:transform .06s ease, background .2s ease, border-color .2s ease, color .2s ease;
}
.cgc-share__btn:hover{
  transform:translateY(-1px);
  background:#1b2024; border-color:rgba(255,255,255,.16);
}

/* botão branco independente do tema */
.cgc-btn-interest{
  width:100%; height:56px; border:0; cursor:pointer;
  border-radius:16px; background:#ffffff; color:#0e1113;
  font-weight:800; display:flex; align-items:center; justify-content:center; gap:.6rem;
  box-shadow:0 10px 24px rgba(0,0,0,.18);
  transition:transform .06s ease, box-shadow .2s ease, background .2s ease, color .2s ease;
}
.cgc-btn-interest:hover{
  transform:translateY(-1px); box-shadow:0 14px 30px rgba(0,0,0,.24);
}
.cgc-btn-interest .arr{ transition:transform .15s ease; }
.cgc-btn-interest:hover .arr{ transform:translateX(4px); }

/* quando o tema tiver .btn fortes, isso garante prioridade */
.cgc-btn-interest, .cgc-btn-interest *{ all:unset; display:revert; box-sizing:border-box; }
.cgc-btn-interest span{ font-weight:800; }

/* acessório: feedback do copiar link (opcional) */
.cgc-share__btn.copied { background:#1e7f40; color:#fff; border-color:transparent; }


/* --- botão “Tenho Interesse” igual ao do submit do modal --- */
.cgc-btn-interest{
  width:100%;
  height:56px;               /* igual ao do modal */
  border-radius:999px;
  background:#fff;
  color:#0e1113;
  font-weight:800;
  font-size:1rem;
  letter-spacing:.02em;
  border:none;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.5rem;
  cursor:pointer;
  transition:transform .06s ease, box-shadow .2s ease, background .2s ease, color .2s ease;
}
.cgc-btn-interest .arr{ transform:translateX(0); transition:transform .15s ease; }
.cgc-btn-interest:hover{ transform:translateY(-1px); box-shadow:0 10px 24px rgba(0,0,0,.22); }
.cgc-btn-interest:hover .arr{ transform:translateX(4px); }
.cgc-btn-interest:active{ transform:translateY(0); box-shadow:0 6px 16px rgba(0,0,0,.18); }

/* acessibilidade/foco */
.cgc-btn-interest:focus-visible{
  outline:0;
  box-shadow:0 0 0 3px rgba(64,199,255,.15), 0 0 0 1px rgba(64,199,255,.65) inset;
}

/* opcional: manter alinhamento ao bloco de compartilhamento */
.cgc-share-block + .cgc-btn-interest{ margin-top:16px; }

/* Fallback: se por algum motivo .cgc-cf7 não estiver presente, 
   ainda assim estilizar quando estiver dentro de .cgc-offer-form */
.cgc-offer-form .wpcf7 input[type="text"],
.cgc-offer-form .wpcf7 input[type="email"],
.cgc-offer-form .wpcf7 input[type="tel"],
.cgc-offer-form .wpcf7 textarea {
  width:100%;
  background:#0f1214;
  color:#e9eef1;
  border:1px solid rgba(255,255,255,.09);
  border-radius:12px;
  height:44px;
  padding:10px 14px;
  outline:0;
  transition:border-color .2s, box-shadow .2s, background .2s;
}
.cgc-offer-form .wpcf7 textarea { height:140px; resize:vertical; }


/* ----------------------------------------------------
   FORM: inputs (leve destaque no foco)
---------------------------------------------------- */
.cgc-offer-form .wpcf7 input[type="text"],
.cgc-offer-form .wpcf7 input[type="email"],
.cgc-offer-form .wpcf7 input[type="tel"],
.cgc-offer-form .wpcf7 textarea {
  width: 100%;
  background: #0f1214;                 /* base escura */
  border: 1px solid rgba(255,255,255,.09);
  color: #e9eef1;
  border-radius: 12px;
  height: 44px;
  padding: 10px 14px;
  outline: none;
  transition: background .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.cgc-offer-form .wpcf7 textarea { height: 140px; resize: vertical; }

/* foco: um pouco mais claro e um sutil glow interno */
.cgc-offer-form .wpcf7 input[type="text"]:focus,
.cgc-offer-form .wpcf7 input[type="email"]:focus,
.cgc-offer-form .wpcf7 input[type="tel"]:focus,
.cgc-offer-form .wpcf7 textarea:focus {
  background: #14181b;                 /* +claro */
  border-color: rgba(255,255,255,.18);
  box-shadow: inset 0 0 0 2px rgba(255,255,255,.06);
}

/* grid 2 colunas (Cidade / Telefone) */
.cgc-form .row-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
@media (max-width: 640px){ .cgc-form .row-2 { grid-template-columns: 1fr; } }

/* ----------------------------------------------------
   FORM: botão submit (mesmo estilo do modal — pílula branca)
---------------------------------------------------- */
.cgc-offer-form .wpcf7 .actions { margin-top: 12px; }
.cgc-offer-form .wpcf7 .actions p { margin: 0; }

.cgc-offer-form .wpcf7 input[type="submit"]{
  -webkit-appearance: none;
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 52px;
  border-radius: 999px;
  background: #fff;           /* branco */
  color: #0e1113;             /* texto escuro */
  font-weight: 800;
  letter-spacing: .02em;
  border: 0;
  cursor: pointer;
  transition: transform .06s ease, box-shadow .2s ease, background .2s ease;
}
.cgc-offer-form .wpcf7 input[type="submit"]:hover{
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(0,0,0,.22);
}
.cgc-offer-form .wpcf7 input[type="submit"]:active{
  transform: translateY(0);
}

/* spinner do CF7 alinhado ao botão */
.cgc-offer-form .wpcf7 .wpcf7-spinner{
  position: relative;
  margin-left: 10px;
  vertical-align: middle;
}


