/* survey.css — estilos del cotizador (extraídos del inline de contact.html) */

/* Survey image zoom button */
.survey-img-card-photo { position: relative; overflow: hidden; cursor: zoom-in; }
.survey-img-zoom {
  position: absolute; top: 6px; right: 6px;
  background: rgba(0,0,0,0.52); border: none; border-radius: 6px;
  padding: 5px 6px; cursor: pointer; color: #fff;
  display: flex; align-items: center; justify-content: center;
  z-index: 2; opacity: 0; transition: opacity .2s, background .2s;
  backdrop-filter: blur(4px); line-height: 0;
}
.survey-img-card-photo:hover .survey-img-zoom { opacity: 1; }
@media (hover: none) { .survey-img-zoom { opacity: .75; } }

/* Lightbox modal */
.survey-modal { position: fixed; inset: 0; z-index: 99999; background: rgba(0,0,0,.90); display: flex; align-items: center; justify-content: center; padding: 20px; cursor: zoom-out; }
.survey-modal-close { position: fixed; top: 18px; right: 18px; background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.22); border-radius: 50%; width: 44px; height: 44px; display: flex; align-items: center; justify-content: center; cursor: pointer; color: #fff; transition: background .2s; z-index: 100001; line-height: 0; }
.survey-modal-close:hover { background: rgba(255,255,255,.24); }
.survey-modal-content { text-align: center; cursor: default; }
.survey-modal-content img { max-width: min(96vw, 1300px); max-height: 92vh; width: auto; height: auto; border-radius: 10px; object-fit: contain; display: block; margin: 0 auto; box-shadow: 0 20px 60px rgba(0,0,0,.5); }
.survey-modal-caption { color: rgba(255,255,255,.65); margin-top: 14px; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; }

/* intl-tel-input — bottom-border style */
.scf-field .iti { display:block!important; width:100%!important; border-bottom:1.5px solid #d4d8d4!important; transition:border-color .2s!important; }
.scf-field .iti:focus-within { border-bottom-color:#607561!important; }
.scf-field .iti .iti__selected-flag { background:transparent!important; outline:none!important; }
.scf-field .iti .iti__selected-dial-code { color:#607561!important; font-weight:600!important; font-size:14px!important; font-family:'Inter',sans-serif!important; margin-left:4px!important; }
.scf-field .iti .iti__arrow { border-top-color:rgba(96,117,97,.7)!important; }
.scf-field .iti input[type=tel] { border:none!important; outline:none!important; background:transparent!important; padding-top:9px!important; padding-bottom:9px!important; padding-right:0!important; font-size:15px!important; color:#2a3328!important; font-family:inherit!important; }
.scf-field .iti input::placeholder { color:rgba(0,0,0,.25)!important; }
.iti__dropdown-content, .iti__country-list { border:1.5px solid #dde1dc!important; border-radius:6px!important; box-shadow:0 6px 24px rgba(0,0,0,.10)!important; font-size:13px!important; }
.iti__search-input { font-size:13px!important; border-bottom:1px solid #e8ebe8!important; padding:8px 12px!important; font-family:'Inter',sans-serif!important; outline:none!important; color:#1a1a1a!important; -webkit-text-fill-color:#1a1a1a!important; }
.iti__country.iti__highlight { background:rgba(96,117,97,.08)!important; }
/* Nombre del país e item — forzar texto oscuro (evita que salga en blanco) */
.iti__country { display:flex!important; align-items:center!important; gap:10px!important; padding:8px 14px!important; }
.iti__country, .iti__country-name { color:#1a1a1a!important; -webkit-text-fill-color:#1a1a1a!important; }
.iti__country-name { flex:1 1 auto; }
.iti__dial-code { color:rgba(0,0,0,.45)!important; -webkit-text-fill-color:rgba(0,0,0,.45)!important; }

/* Success summary */
.survey-success-summary { text-align:left; width:100%; max-width:520px; margin:20px auto 0; }
.ss-section { margin-bottom:16px; }
.ss-section-title { font-size:10px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:#607561; margin-bottom:6px; padding-bottom:5px; border-bottom:1px solid rgba(96,117,97,.18); }
.ss-row { display:flex; gap:8px; padding:4px 0; font-size:13px; line-height:1.4; }
.ss-label { color:rgba(0,0,0,.5); min-width:140px; flex-shrink:0; }
.ss-value { color:#1a2218; font-weight:500; word-break:break-word; }

/* Success actions */
.survey-success-actions { display:flex; gap:12px; justify-content:center; flex-wrap:wrap; margin-top:24px; }
.survey-btn-download { background:transparent; color:#607561; border:1.5px solid #607561; display:inline-flex; align-items:center; gap:8px; padding:11px 22px; border-radius:4px; font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; cursor:pointer; text-decoration:none; transition:background .2s,color .2s; }
.survey-btn-download:hover { background:#607561; color:#fff; }
.survey-btn-home { background:#1a2218; color:#fff; display:inline-flex; align-items:center; gap:8px; padding:12px 26px; border-radius:4px; font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; text-decoration:none; transition:background .2s; }
.survey-btn-home:hover { background:#2c3a29; color:#fff; }

/* Renderer dinámico */
.survey-dyn-question { margin-bottom:20px; }
.survey-btn { display:inline-flex; align-items:center; gap:8px; padding:12px 28px; border:none; border-radius:4px; font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; cursor:pointer; transition:background .2s,color .2s; }
.survey-btn-primary { background:#1a2218; color:#fff; }
.survey-btn-primary:hover { background:#2c3a29; }
.survey-btn-secondary { background:transparent; color:#607561; border:1.5px solid #607561; }
.survey-btn-secondary:hover { background:#607561; color:#fff; }
.survey-btn-ghost { background:transparent; color:#607561; border:1.5px solid rgba(96,117,97,.4); }
.survey-btn-ghost:hover { border-color:#607561; }
.survey-nav-shake { animation:shake 0.4s ease; }
.survey-contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px 24px; margin-top:12px; }
.survey-contact-field--full { grid-column:1/-1; }
.survey-contact-field label { display:block; font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:#607561; margin-bottom:6px; }
.survey-text-input, .survey-number-input, .survey-date-input, .survey-textarea-field { width:100%; background:transparent; border:none; border-bottom:1.5px solid #d4d8d4; padding:9px 0; font-size:15px; color:#2a3328; font-family:inherit; outline:none; transition:border-color .2s; }
.survey-text-input:focus, .survey-number-input:focus, .survey-date-input:focus, .survey-textarea-field:focus { border-color:#607561; }
.survey-textarea-field { resize:vertical; min-height:90px; border:1.5px solid #d4d8d4; border-radius:4px; padding:10px 12px; }
.survey-privacy { margin-top:20px; font-size:13px; }
.survey-privacy-label { display:flex; gap:10px; align-items:flex-start; cursor:pointer; }
.survey-privacy-label input[type="checkbox"] { margin-top:2px; flex-shrink:0; }
.survey-privacy-label a { color:#607561; }

/* Validación */
.survey-field-error { display:none; color:#c0392b; font-size:12px; margin-top:5px; }
.survey-input-invalid { border-color:#c0392b !important; }

/* Loader logo */
.survey-loader { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 320px; gap: 24px; }
.survey-loader-logo { width: 160px; height: auto; filter: brightness(0) saturate(100%) invert(42%) sepia(18%) saturate(544%) hue-rotate(77deg) brightness(94%) contrast(88%); animation: logo-pulse 1.6s ease-in-out infinite; }
.survey-loader-msg { color: rgba(0,0,0,.4); font-size: 13px; letter-spacing: .04em; margin: 0; }
@keyframes logo-pulse { 0%,100% { opacity: 1; transform: scale(1); } 50% { opacity: .55; transform: scale(1.05); } }
@keyframes shake { 0%,100%{transform:translateX(0)} 25%{transform:translateX(-6px)} 75%{transform:translateX(6px)} }
@media(max-width:576px){ .survey-contact-grid{grid-template-columns:1fr;} }
