/* =========================================================
   VICMOS CONSULTATION — native privacy-first WhatsApp flow
   ========================================================= */

.vwc-page,
.vwc-page * { box-sizing: border-box; }

.vwc-page {
  --vwc-green: var(--vwt-green, #2f7d32);
  --vwc-green-dark: #123f2a;
  --vwc-ink: #17231d;
  --vwc-muted: #66736c;
  --vwc-soft: #f5f8f6;
  --vwc-line: #e1e9e4;
  --vwc-gold: var(--vwt-gold, #d5a936);
  background: #fff;
  color: var(--vwc-ink);
  overflow: hidden;
}

.vwc-shell {
  width: min(1160px, calc(100% - 36px));
  margin-inline: auto;
}

.vwc-kicker {
  display: inline-block;
  margin-bottom: 14px;
  color: var(--vwc-green);
  font-size: 12px;
  font-weight: 850;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.vwc-hero {
  padding: clamp(54px, 7vw, 92px) 0 clamp(58px, 7vw, 88px);
  background:
    radial-gradient(circle at 86% 10%, rgba(213,169,54,.15), transparent 28%),
    linear-gradient(180deg, #f4faf6 0%, #fff 90%);
}

.vwc-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(380px, 1.05fr);
  align-items: center;
  gap: clamp(38px, 6vw, 82px);
}

.vwc-hero-copy h1 {
  max-width: 680px;
  margin: 0 0 20px;
  color: var(--vwc-ink);
  font-size: clamp(44px, 6vw, 72px);
  line-height: 1.01;
  letter-spacing: -.047em;
}

.vwc-hero-copy > p {
  max-width: 650px;
  margin: 0 0 28px;
  color: var(--vwc-muted);
  font-size: clamp(17px, 2vw, 20px);
  line-height: 1.72;
}

.vwc-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 11px;
}

.vwc-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 51px;
  padding: 13px 20px;
  border-radius: 12px;
  font-weight: 850;
  text-decoration: none;
}

.vwc-button-primary { background: var(--vwc-green); color: #fff; }
.vwc-button-ghost { border: 1px solid #d8e2dc; background: #fff; color: var(--vwc-green-dark); }

.vwc-trust-row {
  display: flex;
  flex-wrap: wrap;
  gap: 9px 18px;
  margin-top: 25px;
  color: #5d6c64;
  font-size: 13px;
  font-weight: 650;
}
.vwc-trust-row span::before { content:"✓"; color:var(--vwc-green); margin-right:7px; font-weight:900; }

.vwc-hero-visual {
  min-width: 0;
  overflow: hidden;
  border-radius: 28px;
  background: #eaf3ed;
  box-shadow: 0 30px 74px rgba(18,63,42,.13);
}

.vwc-hero-visual > img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 4.2;
  object-fit: cover;
}

.vwc-visual-card {
  position: relative;
  min-height: 520px;
  overflow: hidden;
  background:
    linear-gradient(150deg, rgba(255,255,255,.12), transparent 42%),
    linear-gradient(135deg, #123f2a, #2f7d32 64%, #3b8f53);
}

.vwc-visual-orbit {
  position:absolute;
  border:1px solid rgba(255,255,255,.15);
  border-radius:50%;
}
.vwc-orbit-one { width:420px; height:420px; top:-165px; right:-120px; }
.vwc-orbit-two { width:330px; height:330px; left:-170px; bottom:-150px; }

.vwc-consult-illustration {
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:28px;
  padding:42px;
}

.vwc-person {
  position:relative;
  flex:0 0 92px;
  height:170px;
}
.vwc-person i {
  position:absolute;
  left:50%;
  top:0;
  width:62px;
  height:62px;
  transform:translateX(-50%);
  border-radius:50%;
  background:#d3a07b;
  box-shadow:inset 0 -10px 0 rgba(71,42,27,.08);
}
.vwc-person b {
  position:absolute;
  left:50%;
  bottom:0;
  width:92px;
  height:105px;
  transform:translateX(-50%);
  border-radius:48px 48px 16px 16px;
  background:#f7f9f8;
}
.vwc-person-consultant b::before {
  content:"";
  position:absolute;
  top:0;
  left:43px;
  width:6px;
  height:100%;
  background:#cbd6d0;
}
.vwc-person-client i { background:#8e5b3e; }
.vwc-person-client b { background:#e5b94c; }

.vwc-dialogue {
  position:relative;
  z-index:2;
  display:flex;
  width:min(260px, 42%);
  min-height:138px;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  padding:25px;
  border:1px solid rgba(255,255,255,.17);
  border-radius:20px;
  background:rgba(255,255,255,.11);
  backdrop-filter:blur(10px);
  color:#fff;
  text-align:center;
}
.vwc-dialogue strong { margin-bottom:8px; font-size:20px; }
.vwc-dialogue small { color:rgba(255,255,255,.75); line-height:1.55; }

.vwc-topics { padding: clamp(58px, 7vw, 86px) 0; background:#fff; }
.vwc-section-head { max-width:760px; margin-bottom:30px; }
.vwc-section-head h2,
.vwc-form-copy h2,
.vwc-safety h2 {
  margin:0 0 13px;
  color:var(--vwc-ink);
  font-size:clamp(32px,4vw,50px);
  line-height:1.07;
  letter-spacing:-.04em;
}
.vwc-section-head p,
.vwc-form-copy > p { margin:0; color:var(--vwc-muted); line-height:1.7; }

.vwc-topic-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:15px;
}

.vwc-topic-card {
  appearance:none;
  width:100%;
  min-height:188px;
  padding:24px;
  border:1px solid var(--vwc-line);
  border-radius:18px;
  background:#fff;
  color:var(--vwc-ink);
  text-align:left;
  cursor:pointer;
  box-shadow:0 10px 32px rgba(19,60,40,.04);
  transition:border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.vwc-topic-card:hover,
.vwc-topic-card.is-selected {
  border-color:var(--vwc-green);
  transform:translateY(-2px);
  box-shadow:0 16px 36px rgba(19,60,40,.08);
}
.vwc-topic-card > span {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:38px;
  height:28px;
  margin-bottom:18px;
  border-radius:999px;
  background:#edf6f0;
  color:var(--vwc-green-dark);
  font-size:11px;
  font-weight:850;
}
.vwc-topic-card strong { display:block; margin-bottom:8px; font-size:20px; line-height:1.2; }
.vwc-topic-card small { display:block; color:var(--vwc-muted); font-size:14px; line-height:1.55; }

.vwc-form-section {
  padding: clamp(58px, 7vw, 92px) 0;
  background:var(--vwc-soft);
  border-top:1px solid #edf1ee;
  border-bottom:1px solid #edf1ee;
}
.vwc-form-grid {
  display:grid;
  grid-template-columns:minmax(0,.75fr) minmax(500px,1.25fr);
  align-items:start;
  gap:clamp(36px,6vw,78px);
}
.vwc-form-copy { position:sticky; top:110px; }

.vwc-steps { display:grid; gap:13px; margin-top:30px; }
.vwc-steps > div { display:grid; grid-template-columns:38px 1fr; gap:13px; align-items:start; }
.vwc-steps > div > span {
  display:flex; align-items:center; justify-content:center;
  width:36px; height:36px; border-radius:10px;
  background:#e6f1e9; color:var(--vwc-green-dark); font-weight:850;
}
.vwc-steps p { margin:0; }
.vwc-steps strong { display:block; margin-bottom:3px; }
.vwc-steps small { display:block; color:var(--vwc-muted); line-height:1.5; }

.vwc-form {
  padding:clamp(24px,4vw,36px);
  border:1px solid #dfe8e2;
  border-radius:24px;
  background:#fff;
  box-shadow:0 18px 48px rgba(20,53,37,.07);
}
.vwc-form-row { display:grid; gap:15px; margin-bottom:16px; }
.vwc-form-row-two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.vwc-form label > span { display:block; margin-bottom:7px; color:#36443d; font-size:13px; font-weight:800; }
.vwc-form label > span b { color:#a5302b; }
.vwc-form label > span small { color:#88928d; font-weight:600; }

.vwc-form input,
.vwc-form select,
.vwc-form textarea {
  width:100%;
  min-height:49px;
  border:1px solid #d8e2dc !important;
  border-radius:11px !important;
  outline:0;
  background:#fff !important;
  color:var(--vwc-ink) !important;
  box-shadow:none !important;
  font:inherit;
}
.vwc-form input,
.vwc-form select { padding:0 13px; }
.vwc-form textarea { padding:13px; resize:vertical; line-height:1.55; }
.vwc-form input:focus,
.vwc-form select:focus,
.vwc-form textarea:focus { border-color:var(--vwc-green) !important; box-shadow:0 0 0 3px rgba(47,125,50,.09) !important; }

.vwc-form-wide { display:block; margin-bottom:16px; }

.vwc-consent {
  display:grid !important;
  grid-template-columns:20px 1fr;
  gap:10px;
  align-items:start;
  margin:7px 0 18px;
  cursor:pointer;
}
.vwc-consent input { width:18px; min-height:18px; height:18px; margin-top:2px; accent-color:var(--vwc-green); }
.vwc-consent > span { margin:0 !important; color:#5f6d66 !important; font-size:12.5px !important; font-weight:600 !important; line-height:1.55; }

.vwc-form-error {
  margin-bottom:14px;
  padding:12px 14px;
  border:1px solid #efcfcc;
  border-radius:10px;
  background:#fff4f2;
  color:#813a35;
  font-size:13px;
  font-weight:650;
}
.vwc-form-error[hidden] { display:none !important; }

.vwc-submit {
  display:flex;
  width:100%;
  min-height:54px;
  align-items:center;
  justify-content:center;
  gap:9px;
  border:0;
  border-radius:12px;
  background:var(--vwc-green);
  color:#fff;
  font-size:15px;
  font-weight:850;
  cursor:pointer;
}
.vwc-submit:hover { background:var(--vwc-green-dark); }
.vwc-submit span:last-child { transition:transform .2s ease; }
.vwc-submit:hover span:last-child { transform:translateX(3px); }

.vwc-privacy-note { margin:12px 0 0; color:#808b85; font-size:11.5px; line-height:1.55; text-align:center; }

.vwc-safety { padding:clamp(48px,6vw,72px) 0; background:#fff; }
.vwc-safety-inner {
  display:grid;
  grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
  gap:36px;
  align-items:center;
  padding:clamp(26px,4vw,40px);
  border:1px solid #eaded2;
  border-radius:22px;
  background:#fffaf5;
}
.vwc-safety .vwc-kicker { color:#936a34; }
.vwc-safety h2 { font-size:clamp(28px,3.5vw,40px); }
.vwc-safety p { margin:0; color:#6e5d50; line-height:1.7; }

.vwc-mini-footer { padding:28px 0 34px; border-top:1px solid var(--vwc-line); background:#f8faf9; }
.vwc-mini-footer .vwc-shell { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:8px 16px; color:#718078; font-size:12px; }
.vwc-mini-footer strong { color:var(--vwc-ink); }
.vwc-mini-footer a { color:inherit; text-decoration:none; }

@media (max-width: 980px) {
  .vwc-hero-grid,
  .vwc-form-grid { grid-template-columns:1fr; }
  .vwc-hero-copy { max-width:760px; }
  .vwc-hero-visual { max-width:760px; }
  .vwc-form-copy { position:static; max-width:760px; }
  .vwc-topic-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width: 720px) {
  .vwc-shell { width:min(100% - 24px,1160px); }
  .vwc-hero { padding-top:42px; }
  .vwc-hero-copy h1 { font-size:clamp(39px,12vw,55px); }
  .vwc-hero-actions { flex-direction:column; }
  .vwc-button { width:100%; }
  .vwc-trust-row { display:grid; gap:7px; }
  .vwc-hero-visual { border-radius:20px; }
  .vwc-visual-card { min-height:390px; }
  .vwc-consult-illustration { gap:14px; padding:22px; transform:scale(.9); }
  .vwc-dialogue { width:44%; padding:17px; }
  .vwc-topic-grid { grid-template-columns:1fr; }
  .vwc-topic-card { min-height:0; padding:20px; }
  .vwc-form { padding:22px 17px; border-radius:18px; }
  .vwc-form-row-two { grid-template-columns:1fr; }
  .vwc-safety-inner { grid-template-columns:1fr; gap:9px; }
}

@media (max-width: 430px) {
  .vwc-person { flex-basis:72px; height:140px; }
  .vwc-person i { width:52px; height:52px; }
  .vwc-person b { width:72px; height:85px; }
  .vwc-person-consultant b::before { left:34px; width:5px; }
  .vwc-dialogue { width:46%; min-height:120px; padding:13px; }
  .vwc-dialogue strong { font-size:16px; }
  .vwc-dialogue small { font-size:10.5px; }
}

@media (prefers-reduced-motion: reduce) {
  .vwc-topic-card,
  .vwc-submit span:last-child { transition:none; }
}

/* v3.6.1 — channel-neutral consultation */
.vwc-contact-choice { margin:0 0 20px; padding:0; border:0; }
.vwc-contact-choice legend { margin:0 0 10px; color:#36443d; font-size:13px; font-weight:850; }
.vwc-contact-choice legend b { color:#a5302b; }
.vwc-contact-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.vwc-contact-option {
  position:relative; display:grid!important; grid-template-columns:20px 1fr; gap:10px; align-items:start;
  min-height:104px; margin:0!important; padding:15px; border:1px solid #dce5df; border-radius:14px;
  background:#fff; cursor:pointer; transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.vwc-contact-option:hover,.vwc-contact-option.is-selected { border-color:var(--vwc-green); background:#f4faf6; box-shadow:0 0 0 3px rgba(47,125,50,.07); }
.vwc-contact-option input { width:18px!important; min-height:18px!important; height:18px!important; margin:2px 0 0!important; accent-color:var(--vwc-green); }
.vwc-contact-option > span { margin:0!important; }
.vwc-contact-option strong { display:block; margin-bottom:4px; color:var(--vwc-ink); font-size:14px; }
.vwc-contact-option small { display:block; color:var(--vwc-muted); font-size:11.5px; font-weight:600; line-height:1.45; }
.vwc-honeypot { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
.vwc-submit:disabled { opacity:.68; cursor:wait; }
.vwc-submit.is-loading span:last-child { display:none; }
.vwc-success {
  padding:clamp(28px,4vw,42px); border:1px solid #dfe8e2; border-radius:24px; background:#fff;
  box-shadow:0 18px 48px rgba(20,53,37,.07); text-align:center;
}
.vwc-success[hidden] { display:none!important; }
.vwc-success-mark { display:flex; align-items:center; justify-content:center; width:58px; height:58px; margin:0 auto 16px; border-radius:50%; background:#e7f5eb; color:var(--vwc-green); font-size:27px; font-weight:900; }
.vwc-success h3 { margin:0 auto 12px; max-width:560px; color:var(--vwc-ink); font-size:clamp(26px,4vw,38px); line-height:1.15; letter-spacing:-.03em; }
.vwc-success p { max-width:600px; margin:0 auto 14px; color:var(--vwc-muted); line-height:1.65; }
.vwc-reference { display:block; margin:16px auto 22px; color:var(--vwc-green-dark); font-size:15px; }
.vwc-button-whatsapp { background:#1fbd63; color:#071e10; margin-bottom:14px; }
.vwc-start-again { display:block; margin:6px auto 0; border:0; background:transparent; color:var(--vwc-muted); text-decoration:underline; cursor:pointer; font:inherit; font-size:13px; font-weight:700; }
@media(max-width:700px){.vwc-contact-options{grid-template-columns:1fr}.vwc-contact-option{min-height:auto}.vwc-form-row-two{grid-template-columns:1fr}}

/* Consultation is intentionally distraction-free. Translation remains
   available elsewhere in VicMos, but floating translator UI must not cover
   form, safety or success content on this focused page. */
body.vicmos-smart-consultation #trp-floater-ls,
body.vicmos-smart-consultation .trp-floater-ls,
body.vicmos-smart-consultation [id*="trp-floater"],
body.vicmos-smart-consultation [class*="trp-floater"],
body.vicmos-smart-consultation .gt_float_switcher,
body.vicmos-smart-consultation .gt_float_switcher_wrapper {
    display: none !important;
}


/* =========================================================
   Consultation focus mode: suppress floating translation UI
   Third-party language floaters can overlap consent/safety content.
   The site's normal language controls remain available elsewhere.
   ========================================================= */
body.vwt-consultation-page #trp-floater-ls,
body.vwt-consultation-page .trp-floater-ls,
body.vwt-consultation-page .trp-language-switcher,
body.vwt-consultation-page .trp-translatepress-container,
body.vwt-consultation-page .gtranslate_wrapper,
body.vwt-consultation-page .gt_float_switcher,
body.vwt-consultation-page .wpml-ls-statics-shortcode_actions,
body.vwt-consultation-page .wpml-ls-statics-footer,
body.vwt-consultation-page .vmw-language-switcher,
body.vwt-consultation-page .vmw-translatepress-switcher {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}
