/* Dream Movers | form de cotação em Elementor Pro. Cartões de opção, chips, etapas e bloco de reviews.
   Tokens do site: teal #0ABBCF, teal escuro #087F8C, headline #0D0D12, corpo #36394A, apoio #5B6070, borda #EAECF1, campo #F6F7FA. */

.dm-quote-form .elementor-form{
  --e-form-steps-indicator-progress-color:#0ABBCF;
  --e-form-steps-indicator-progress-background-color:#EAECF1;
  --e-form-steps-indicator-progress-height:6px;
  --e-form-steps-indicator-progress-border-radius:3px;
  --e-form-steps-indicator-progress-meter-color:#0D0D12;
}
.dm-quote-form .e-form__indicators{margin-bottom:22px}
.dm-quote-form .elementor-field-group{margin-bottom:0}
.dm-quote-form .elementor-field-label{color:#0D0D12}
.dm-quote-form .elementor-field-textual::placeholder{color:#8A90A0}
.dm-quote-form .elementor-field-textual:focus{outline:2px solid #0ABBCF;outline-offset:1px;background:#fff}

/* Opções em cartão (radio e checkbox) */
.elementor-field-subgroup.dm-cards{display:grid;gap:10px;width:100%}
.elementor-field-subgroup.dm-cards-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.elementor-field-subgroup.dm-cards-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.elementor-field-subgroup.dm-rows{grid-template-columns:minmax(0,1fr)}
.dm-cards .elementor-field-option,
.dm-chips .elementor-field-option{position:relative;margin:0;padding:0}
.dm-cards .elementor-field-option input,
.dm-chips .elementor-field-option input{position:absolute;opacity:0;width:1px;height:1px;margin:0;pointer-events:none}
.dm-cards .elementor-field-option label{
  display:flex;flex-direction:column;justify-content:flex-end;gap:10px;min-height:84px;padding:14px 12px;
  border:1.5px solid #EAECF1;border-radius:8px;background:#fff;
  font:600 14px/1.3 Inter,system-ui,sans-serif;color:#0D0D12;cursor:pointer;transition:border-color .15s,background .15s
}
.dm-rows .elementor-field-option label{flex-direction:row;align-items:center;min-height:56px;padding:12px 14px}
.dm-cards-2 .elementor-field-option label{flex-direction:row;align-items:center;min-height:64px}
.dm-cards .elementor-field-option label::before{
  content:"";width:26px;height:26px;flex:none;background:#5B6070;
  -webkit-mask:var(--dm-ic,none) center/contain no-repeat;mask:var(--dm-ic,none) center/contain no-repeat
}
.dm-cards .elementor-field-option input:checked+label{border-color:#0ABBCF;background:#E9F9FB}
.dm-cards .elementor-field-option input:checked+label::before{background:#087F8C}
.dm-cards .elementor-field-option input:focus-visible+label,
.dm-chips .elementor-field-option input:focus-visible+label{outline:2px dashed #5B6070;outline-offset:2px}

/* Chips (itens especiais) */
.elementor-field-subgroup.dm-chips{display:flex;flex-wrap:wrap;gap:8px;width:100%}
.dm-chips .elementor-field-option label{
  display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border:1.5px solid #EAECF1;border-radius:999px;
  background:#fff;font:500 14px/1 Inter,system-ui,sans-serif;color:#0D0D12;cursor:pointer
}
.dm-chips .elementor-field-option input:checked+label{border-color:#0ABBCF;background:#E9F9FB}

/* Ícones por opção, pela ordem das opções no JSON */
.dm-quote-form .elementor-field-group-property_type .elementor-field-option:nth-child(1) label{--dm-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 10.5 12 3l9 7.5'/%3E%3Cpath d='M5 9.5V21h14V9.5'/%3E%3Cpath d='M10 21v-6h4v6'/%3E%3C/svg%3E")}
.dm-quote-form .elementor-field-group-property_type .elementor-field-option:nth-child(2) label{--dm-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='3' width='14' height='18' rx='1'/%3E%3Cpath d='M9 7h1M14 7h1M9 11h1M14 11h1M9 15h1M14 15h1'/%3E%3Cpath d='M11 21v-3h2v3'/%3E%3C/svg%3E")}
.dm-quote-form .elementor-field-group-property_type .elementor-field-option:nth-child(3) label{--dm-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='7' width='18' height='13' rx='2'/%3E%3Cpath d='M8 7V5a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2'/%3E%3Cpath d='M3 13h18'/%3E%3C/svg%3E")}
.dm-quote-form .elementor-field-group-property_type .elementor-field-option:nth-child(4) label{--dm-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='4' width='16' height='16' rx='1.5'/%3E%3Cpath d='M4 9h16M8 13h8M8 16.5h8'/%3E%3C/svg%3E")}
.dm-quote-form .elementor-field-group-property_type .elementor-field-option:nth-child(5) label{--dm-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 21V8l9-5 9 5v13'/%3E%3Cpath d='M7 21v-9h10v9'/%3E%3Cpath d='M7 15h10M7 18h10'/%3E%3C/svg%3E")}
.dm-quote-form .elementor-field-group-move_size .elementor-field-option:nth-child(1) label{--dm-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 8 12 3 3 8v8l9 5 9-5z'/%3E%3Cpath d='M3 8l9 5 9-5M12 13v8'/%3E%3C/svg%3E")}
.dm-quote-form .elementor-field-group-move_size .elementor-field-option:nth-child(n+2) label{--dm-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 18V7'/%3E%3Cpath d='M3 14h18v4'/%3E%3Cpath d='M21 14v-2a3 3 0 0 0-3-3h-7v5'/%3E%3Ccircle cx='7' cy='11' r='1.6'/%3E%3C/svg%3E")}
.dm-quote-form [class*="elementor-field-group-access_"] .elementor-field-option:nth-child(1) label{--dm-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 21h16'/%3E%3Cpath d='M7 21V4h10v17'/%3E%3Cpath d='M14 12.5h.01'/%3E%3C/svg%3E")}
.dm-quote-form [class*="elementor-field-group-access_"] .elementor-field-option:nth-child(2) label{--dm-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='3' width='14' height='18' rx='1.5'/%3E%3Cpath d='M12 3v18'/%3E%3Cpath d='m7.5 10 1.5-2 1.5 2M13.5 14l1.5 2 1.5-2'/%3E%3C/svg%3E")}
.dm-quote-form [class*="elementor-field-group-access_"] .elementor-field-option:nth-child(3) label{--dm-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 20h5v-4h4v-4h4V8h5'/%3E%3C/svg%3E")}
.dm-quote-form .elementor-field-group-packing .elementor-field-option:nth-child(1) label{--dm-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8h18v12H3z'/%3E%3Cpath d='M3 8l2-4h14l2 4'/%3E%3Cpath d='M10 8v5l2-1 2 1V8'/%3E%3C/svg%3E")}
.dm-quote-form .elementor-field-group-packing .elementor-field-option:nth-child(2) label{--dm-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 3h8l-1 7a3 3 0 0 1-6 0z'/%3E%3Cpath d='M12 13v7M9 21h6'/%3E%3C/svg%3E")}
.dm-quote-form .elementor-field-group-packing .elementor-field-option:nth-child(3) label{--dm-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 11V6a2 2 0 0 1 4 0v4M11 9V5a2 2 0 0 1 4 0v5M15 9a2 2 0 0 1 4 0v5a7 7 0 0 1-7 7h-1a6 6 0 0 1-5-2.7L3.5 15a1.8 1.8 0 0 1 3-2L7 14'/%3E%3C/svg%3E")}
.dm-quote-form .elementor-field-group-arrival .elementor-field-option:nth-child(1) label{--dm-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v3M5.6 7.6 7 9M18.4 7.6 17 9M3 16h18M7 16a5 5 0 0 1 10 0M8 20h8'/%3E%3C/svg%3E")}
.dm-quote-form .elementor-field-group-arrival .elementor-field-option:nth-child(2) label{--dm-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='M12 2v2M12 20v2M4.9 4.9l1.4 1.4M17.7 17.7l1.4 1.4M2 12h2M20 12h2M4.9 19.1l1.4-1.4M17.7 6.3l1.4-1.4'/%3E%3C/svg%3E")}
.dm-quote-form .elementor-field-group-arrival .elementor-field-option:nth-child(3) label{--dm-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 18h18M6 14a6 6 0 0 1 12 0'/%3E%3Cpath d='M12 4v2M4.2 8.2l1.4 1.4M19.8 8.2l-1.4 1.4'/%3E%3C/svg%3E")}
.dm-quote-form .elementor-field-group-arrival .elementor-field-option:nth-child(4) label{--dm-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E")}

/* Aceite (data flexível) como linha com toggle visual simples */
.dm-quote-form .elementor-field-type-acceptance .elementor-field-subgroup label{font:500 14px/1.4 Inter,system-ui,sans-serif;color:#0D0D12}

/* Botões de etapa e envio */
.dm-quote-form .e-form__buttons{gap:10px}
.dm-quote-form .e-form__buttons__wrapper__button-previous{background:#fff;color:#0D0D12;border:1.5px solid #CBD3DD}
.dm-quote-form .e-form__buttons__wrapper__button-previous:hover{background:#F6F7FA;color:#0D0D12}

/* Bloco de reviews (widget HTML da página) */
.dm-reviews{margin:12px 0 0;padding:24px;border:1px solid #EAECF1;border-radius:12px;background:#fff;max-width:520px;box-sizing:border-box;font-family:Inter,system-ui,sans-serif}
.dm-reviews__head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.dm-reviews__stars{display:flex;gap:2px;color:#F4B400}
.dm-reviews__stars svg{width:18px;height:18px}
.dm-reviews__label{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#5B6070}
.dm-reviews__list{list-style:none;margin:14px 0 0;padding:0;min-height:4.2em}
.dm-reviews__item blockquote{margin:0;padding:0;font-size:20px;line-height:1.4;font-weight:700;color:#0D0D12;letter-spacing:-.01em;text-wrap:pretty}
.dm-reviews__item cite{display:block;margin-top:12px;font-style:normal;font-size:13px;color:#5B6070}
.dm-reviews__nav{display:flex;align-items:center;justify-content:flex-end;gap:6px;margin-top:12px}
.dm-reviews__prev,.dm-reviews__next{width:40px;height:40px;padding:0;border:1px solid #EAECF1;border-radius:8px;background:#fff;color:#0D0D12;display:flex;align-items:center;justify-content:center;cursor:pointer}
.dm-reviews__prev:hover,.dm-reviews__next:hover{border-color:#0ABBCF}
.dm-reviews__prev svg,.dm-reviews__next svg{width:18px;height:18px}
.dm-reviews__count{min-width:48px;text-align:center;font-size:13px;color:#5B6070;font-variant-numeric:tabular-nums}
.dm-reviews__link{display:inline-block;margin-top:14px;font-size:14px;font-weight:600;color:#087F8C}
@media (max-width:639px){
  .dm-reviews{padding:20px}
  .dm-reviews__item blockquote{font-size:18px}
  .dm-reviews__list{min-height:5.6em}
  .elementor-field-subgroup.dm-cards-3{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* Ajustes conferidos no navegador em 17/10. O Elementor deixa o label como inline e cada botão de etapa em coluna de 100%. */
.dm-quote-form .elementor-field-subgroup.dm-cards .elementor-field-option label{display:flex!important;width:100%;box-sizing:border-box;margin:0}
.dm-quote-form .elementor-field-subgroup.dm-chips .elementor-field-option label{display:inline-flex!important;margin:0}
.dm-quote-form .e-form__indicators__indicator__progress__meter{font-size:0;line-height:0}
.dm-quote-form .e-form__buttons{flex-wrap:nowrap;gap:10px}
.dm-quote-form .e-form__buttons__wrapper{width:auto!important;flex:1 1 auto;max-width:none;padding:0!important}
.dm-quote-form .e-form__buttons__wrapper.elementor-field-type-previous{flex:0 0 auto}
.dm-quote-form .e-form__buttons__wrapper__button-previous{width:auto;padding-left:22px;padding-right:22px}
.dm-quote-form .elementor-field-subgroup.dm-chips .elementor-field-option{display:inline-block;width:auto;flex-basis:auto!important}
.dm-quote-form .elementor-field-subgroup.dm-rows .elementor-field-option label{justify-content:flex-start}
.flatpickr-day.selected,.flatpickr-day.selected:hover{background:#0ABBCF;border-color:#0ABBCF;color:#0D0D12}
.flatpickr-day.today{border-color:#CBD3DD}
.flatpickr-calendar{font-family:Inter,system-ui,sans-serif;border-radius:12px;box-shadow:0 20px 48px -24px rgba(13,13,18,.35)}
/* 17/10: o calendário saía com 280 px e cortava a coluna de sábado (a grade tem 307,875 px). */
.flatpickr-calendar,.flatpickr-calendar.open{z-index:99999 !important;background:#fff;width:307.875px !important;max-width:calc(100vw - 16px)}
.flatpickr-calendar .flatpickr-innerContainer,.flatpickr-calendar .flatpickr-rContainer,.flatpickr-calendar .flatpickr-days{width:307.875px !important;max-width:100%}
.dm-quote-form .elementor-button.e-form__buttons__wrapper__button-previous{background:#FFFFFF!important;color:#0D0D12!important;border:1.5px solid #CBD3DD!important}
.dm-quote-form .elementor-button.e-form__buttons__wrapper__button-previous:hover{background:#F6F7FA!important}
/* 17/10: o hover do tema pintava o botão de preto com o texto escuro, ilegível. Teal mais escuro, texto escuro. */
.dm-quote-form .elementor-button:not(.e-form__buttons__wrapper__button-previous),.dm-quote-form .elementor-button:not(.e-form__buttons__wrapper__button-previous) .elementor-button-text{color:#0D0D12!important}
.dm-quote-form .elementor-button:not(.e-form__buttons__wrapper__button-previous):hover,.dm-quote-form .elementor-button:not(.e-form__buttons__wrapper__button-previous):focus-visible{background:#09A9BB!important;background-image:none!important;color:#0D0D12!important;border-color:#09A9BB!important}
.dm-quote-form .elementor-button:not(.e-form__buttons__wrapper__button-previous):hover .elementor-button-text,.dm-quote-form .elementor-button:not(.e-form__buttons__wrapper__button-previous):hover .elementor-button-icon{color:#0D0D12!important;fill:#0D0D12!important}
.dm-quote-form .elementor-button:not(.e-form__buttons__wrapper__button-previous):hover::before,.dm-quote-form .elementor-button:not(.e-form__buttons__wrapper__button-previous):hover::after{opacity:0!important}
