/* contact module: agregado de estilos inline de views */

/* === form.htm === */
[data-theme='light'] { --mc-card-bg:rgba(255,255,255,.95); --mc-card-shadow:0 25px 50px rgba(0,0,0,.2); --mc-header-border:#e2e8f0; --mc-title-color:#122530; --mc-text-color:#64748b; --mc-label-color:#122530; --mc-input-bg:#fff; --mc-input-border:#e2e8f0; --mc-input-focus-shadow:rgba(58,94,114,.1); --mc-placeholder:#a0aec0; --mc-back-hover-bg:#f8fafc; --mc-back-hover-color:#122530; --mc-alt-bg:#f8fafc; --mc-alt-link-bg:#fff; --mc-alt-link-color:#122530 }
[data-theme='dark'] { --mc-card-bg:rgba(18,18,18,.98); --mc-card-shadow:0 25px 50px rgba(0,0,0,.5); --mc-header-border:rgba(255,255,255,.08); --mc-title-color:#fff; --mc-text-color:rgba(255,255,255,.55); --mc-label-color:#fff; --mc-input-bg:rgba(255,255,255,.06); --mc-input-border:rgba(255,255,255,.12); --mc-input-focus-shadow:rgba(255,255,255,.08); --mc-placeholder:rgba(255,255,255,.35); --mc-back-hover-bg:rgba(255,255,255,.08); --mc-back-hover-color:#fff; --mc-alt-bg:rgba(255,255,255,.04); --mc-alt-link-bg:rgba(255,255,255,.08); --mc-alt-link-color:#fff }
.mcontact_section { display:none; animation:slideUp .5s ease; width:100%!important }
.mcontact_card { background:var(--mc-card-bg); border-radius:20px; padding:40px; box-shadow:var(--mc-card-shadow) }
.mcontact_header { margin-bottom:30px; padding-bottom:20px; border-bottom:1px solid var(--mc-header-border) }
.mcontact_header h2 { font-size:1.5rem; color:var(--mc-title-color); margin:0 0 8px; font-weight:700 }
.mcontact_header p { color:var(--mc-text-color); margin:0; font-size:.95rem }
.mcontact_badge { display:inline-flex; align-items:center; gap:6px; padding:6px 14px; background:rgba(211,57,75,.1); color:var(--c-accent); border-radius:20px; font-size:.8rem; font-weight:600; margin-bottom:15px }
.mcontact_badge svg { width:14px; height:14px }
.mcontact_grid { display:grid; grid-template-columns:repeat(2,1fr); gap:20px }
.mcontact_field { position:relative }
.mcontact_field.full { grid-column:span 2 }
.mcontact_label { display:block; font-size:.85rem; font-weight:600; color:var(--mc-label-color); margin-bottom:8px }
.mcontact_label .req { color:var(--c-accent) }
.mcontact_input { width:100%; padding:14px 16px; border:2px solid var(--mc-input-border); border-radius:10px; font-size:.95rem; transition:all .2s; background:var(--mc-input-bg); font-family:inherit; color:var(--mc-title-color) }
.mcontact_input:focus { outline:none; border-color:var(--c-primary); box-shadow:0 0 0 4px var(--mc-input-focus-shadow) }
.mcontact_input::placeholder { color:var(--mc-placeholder) }
.mcontact_textarea { min-height:120px; resize:vertical; font-family:inherit }
.mcontact_footer { display:flex; justify-content:space-between; align-items:center; margin-top:30px; padding-top:20px; border-top:1px solid var(--mc-header-border) }
.mcontact_submit { padding:14px 32px; background:var(--c-accent); color:#fff; border:none; border-radius:50px; font-size:1rem; font-weight:600; cursor:pointer; transition:all .2s; display:flex; align-items:center; gap:8px }
.mcontact_submit:hover { transform:translateY(-2px); box-shadow:0 8px 25px rgba(211,57,75,.35) }
.mcontact_submit:disabled { opacity:.6; cursor:not-allowed; transform:none }
.mcontact_submit svg { width:20px; height:20px }
.mcontact_back { padding:14px 24px; background:transparent; color:var(--mc-text-color); border:1px solid var(--mc-input-border); border-radius:50px; font-size:.95rem; cursor:pointer; transition:all .2s; display:flex; align-items:center; justify-content:center }
.mcontact_back:hover { background:var(--mc-back-hover-bg); color:var(--mc-back-hover-color) }
.mcontact_back svg { width:20px; height:20px }
.mcontact_alt { margin-top:25px; padding:20px; background:var(--mc-alt-bg); border-radius:12px; text-align:center }
.mcontact_alt p { color:var(--mc-text-color); font-size:.9rem; margin:0 0 12px }
.mcontact_alt_links { display:flex; justify-content:center; gap:15px; flex-wrap:wrap }
.mcontact_alt_link { display:inline-flex; align-items:center; gap:6px; padding:10px 18px; background:var(--mc-alt-link-bg); border:1px solid var(--mc-input-border); border-radius:25px; color:var(--mc-alt-link-color); text-decoration:none; font-size:.85rem; font-weight:500; transition:all .2s }
.mcontact_alt_link:hover { border-color:var(--c-primary); color:var(--c-primary) }
.mcontact_alt_link svg { width:18px; height:18px }
.mcontact_alt_link.whatsapp { background:#25d366; border-color:#25d366; color:#fff }
.mcontact_alt_link.whatsapp:hover { background:#20bd5a }
@keyframes slideUp { from{opacity:0;transform:translateY(30px)} to{opacity:1;transform:translateY(0)} }
@keyframes spin { to{transform:rotate(360deg)} }
@media(max-width:600px){
.mcontact_grid { grid-template-columns:1fr }
.mcontact_field.full { grid-column:span 1 }
.mcontact_card { padding:25px 20px }
.mcontact_footer { flex-direction:column-reverse; gap:15px }
.mcontact_submit,.mcontact_back { width:100%; justify-content:center }
.mcontact_alt_links { flex-direction:column }
}

/* === hero.htm === */
:root { --c-primary:#3a5e72; --c-accent:#D3394B; --c-dark:#122530; --c-light:#f8fafc; --c-muted:#64748b; --c-border:#e2e8f0; --c-success:#059669; --c-warning:#d97706 }
[data-theme='light'] { --c-text:#000; --c-text-soft:rgba(0,0,0,.75); --c-bg:#fff; --c-hero-icon-bg:rgba(0,0,0,.05); --c-hero-icon-border:rgba(0,0,0,.1); --c-hero-icon-stroke:#3a5e72; --c-progress-bg:rgba(0,0,0,.1) }
[data-theme='dark'] { --c-text:#fff; --c-text-soft:rgba(255,255,255,.75); --c-bg:#122530; --c-hero-icon-bg:rgba(255,255,255,.1); --c-hero-icon-border:rgba(255,255,255,.15); --c-hero-icon-stroke:#fff; --c-progress-bg:rgba(255,255,255,.2) }
* { box-sizing:border-box }
.contact-wrap { min-height:100vh; padding:0; margin:0; font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif }
.contact-container { max-width:900px; margin:0 auto; padding:60px 20px 40px }
.contact-hero { text-align:center; padding:40px 0 50px; animation:fadeIn .6s ease }
.contact-hero h1 { font-size:2.8rem; color:var(--c-text); margin:0 0 15px; font-weight:700; letter-spacing:-1px }
.contact-hero p { font-size:1.15rem; color:var(--c-text-soft); margin:0; max-width:500px; margin:0 auto; line-height:1.6 }
.contact-hero-icon { width:80px; height:80px; background:var(--c-hero-icon-bg); border-radius:50%; display:flex; align-items:center; justify-content:center; margin:0 auto 25px; backdrop-filter:blur(10px); border:1px solid var(--c-hero-icon-border) }
.contact-hero-icon svg { width:40px; height:40px; stroke:var(--c-hero-icon-stroke) }
.progress-bar { display:flex; justify-content:center; gap:8px; margin-top:35px }
.progress-step { width:60px; height:4px; background:var(--c-progress-bg); border-radius:4px; transition:all .3s }
.progress-step.active { background:var(--c-accent); width:80px }
.progress-step.done { background:var(--c-success) }
@keyframes fadeIn { from{opacity:0;transform:translateY(-20px)} to{opacity:1;transform:translateY(0)} }
@media(max-width:600px){
.contact-hero h1 { font-size:2rem }
.contact-hero p { font-size:1rem }
.contact-container { padding:40px 15px 30px }
}

/* === success.htm === */
.success-section { display:none; animation:scaleIn .5s ease }
.success-card { background:linear-gradient(135deg,var(--c-success) 0%,#047857 100%); border-radius:20px; padding:60px 40px; text-align:center; color:#fff; box-shadow:0 25px 50px rgba(0,0,0,.2) }
.success-icon { width:100px; height:100px; background:rgba(255,255,255,.2); border-radius:50%; display:flex; align-items:center; justify-content:center; margin:0 auto 30px; animation:bounce .6s ease }
.success-icon svg { width:50px; height:50px; stroke:#fff; stroke-width:2.5 }
.success-card h2 { font-size:2rem; margin:0 0 15px; font-weight:700 }
.success-card p { font-size:1.1rem; opacity:.9; margin:0 0 10px; line-height:1.6 }
.success-card .sub { font-size:.95rem; opacity:.7 }
.success-actions { margin-top:35px; display:flex; justify-content:center; gap:15px; flex-wrap:wrap }
.success-btn { padding:14px 28px; border-radius:50px; font-size:.95rem; font-weight:600; text-decoration:none; transition:all .2s; display:inline-flex; align-items:center; gap:8px }
.success-btn-primary { background:#fff; color:var(--c-success) }
.success-btn-primary:hover { transform:translateY(-2px); box-shadow:0 8px 25px rgba(0,0,0,.2) }
.success-btn-secondary { background:rgba(255,255,255,.2); color:#fff; border:1px solid rgba(255,255,255,.3) }
.success-btn-secondary:hover { background:rgba(255,255,255,.3) }
.success-btn svg { width:18px; height:18px }
.success-info { margin-top:40px; padding-top:30px; border-top:1px solid rgba(255,255,255,.2) }
.success-info p { font-size:.9rem; opacity:.8; margin:0 }
.success-info a { color:#fff; text-decoration:underline }
@keyframes scaleIn { from{opacity:0;transform:scale(.9)} to{opacity:1;transform:scale(1)} }
@keyframes bounce { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-10px)} }
@media(max-width:600px){
.success-card { padding:40px 25px }
.success-card h2 { font-size:1.6rem }
.success-actions { flex-direction:column }
.success-btn { width:100%; justify-content:center }
}

/* === wizard.htm === */
[data-theme='light'] { --wz-text:#000; --wz-text-soft:rgba(0,0,0,.6); --wz-card-bg:rgba(0,0,0,.03); --wz-card-border:rgba(0,0,0,.08); --wz-card-hover-bg:rgba(0,0,0,.06); --wz-card-hover-border:rgba(0,0,0,.15); --wz-icon-bg:rgba(0,0,0,.05); --wz-icon-stroke:#3a5e72; --wz-nav-border:rgba(0,0,0,.1); --wz-btn-back-color:rgba(0,0,0,.6); --wz-btn-back-border:rgba(0,0,0,.15); --wz-btn-back-hover:rgba(0,0,0,.05); --wz-quick-link-bg:rgba(0,0,0,.05); --wz-quick-link-color:#333 }
[data-theme='dark'] { --wz-text:#fff; --wz-text-soft:rgba(255,255,255,.6); --wz-card-bg:rgba(255,255,255,.08); --wz-card-border:rgba(255,255,255,.1); --wz-card-hover-bg:rgba(255,255,255,.12); --wz-card-hover-border:rgba(255,255,255,.25); --wz-icon-bg:rgba(255,255,255,.1); --wz-icon-stroke:#fff; --wz-nav-border:rgba(255,255,255,.1); --wz-btn-back-color:rgba(255,255,255,.7); --wz-btn-back-border:rgba(255,255,255,.2); --wz-btn-back-hover:rgba(255,255,255,.1); --wz-quick-link-bg:rgba(255,255,255,.1); --wz-quick-link-color:#fff }
.wizard-section { animation:slideUp .5s ease; width:100%!important }
.wizard-step { display:none }
.wizard-step.active { display:block }
.wizard-title { color:var(--wz-text); font-size:1.1rem; text-align:center; margin-bottom:25px; font-weight:500 }
.wizard-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:15px }
.wizard-card { background:var(--wz-card-bg); border:2px solid var(--wz-card-border); border-radius:16px; padding:28px 20px; cursor:pointer; transition:all .25s ease; text-align:center; backdrop-filter:blur(10px) }
.wizard-card:hover { background:var(--wz-card-hover-bg); border-color:var(--wz-card-hover-border); transform:translateY(-3px) }
.wizard-card.selected { background:rgba(211,57,75,.15); border-color:var(--c-accent); box-shadow:0 0 30px rgba(211,57,75,.2) }
.wizard-card-icon { width:56px; height:56px; background:var(--wz-icon-bg); border-radius:14px; display:flex; align-items:center; justify-content:center; margin:0 auto 15px }
.wizard-card-icon svg { width:28px; height:28px; stroke:var(--wz-icon-stroke) }
.wizard-card.selected .wizard-card-icon { background:var(--c-accent) }
.wizard-card.selected .wizard-card-icon svg { stroke:#fff }
.wizard-card h3 { color:var(--wz-text); font-size:1.05rem; margin:0 0 6px; font-weight:600 }
.wizard-card p { color:var(--wz-text-soft); font-size:.85rem; margin:0; line-height:1.4 }
.wizard-nav { display:flex; justify-content:space-between; margin-top:30px; padding-top:20px; border-top:1px solid var(--wz-nav-border) }
.wizard-btn { padding:12px 28px; border-radius:50px; font-size:.95rem; font-weight:600; cursor:pointer; transition:all .2s ease; border:none }
.wizard-btn-back { background:transparent; color:var(--wz-btn-back-color); border:1px solid var(--wz-btn-back-border) }
.wizard-btn-back:hover { background:var(--wz-btn-back-hover); color:var(--wz-text) }
.wizard-btn-next { background:var(--c-accent); color:#fff; box-shadow:0 4px 15px rgba(211,57,75,.3) }
.wizard-btn-next:hover { transform:translateY(-2px); box-shadow:0 6px 20px rgba(211,57,75,.4) }
.wizard-btn-next:disabled { opacity:.5; cursor:not-allowed; transform:none }
.wizard-btn-next svg { width:18px; height:18px; margin-left:6px; vertical-align:middle }
.wizard-quick { margin-top:25px; padding:20px; background:rgba(5,150,105,.15); border-radius:12px; border:1px solid rgba(5,150,105,.3); display:none }
.wizard-quick.show { display:block; animation:fadeIn .3s ease }
.wizard-quick-title { color:var(--c-success); font-size:.9rem; font-weight:600; margin-bottom:10px; display:flex; align-items:center; gap:8px }
.wizard-quick-title svg { width:18px; height:18px }
.wizard-quick-links { display:flex; flex-wrap:wrap; gap:10px }
.wizard-quick-link { padding:8px 16px; background:var(--wz-quick-link-bg); border-radius:20px; color:var(--wz-quick-link-color); font-size:.85rem; text-decoration:none; transition:all .2s }
.wizard-quick-link:hover { background:var(--c-success); color:#fff }
@keyframes slideUp { from{opacity:0;transform:translateY(30px)} to{opacity:1;transform:translateY(0)} }
@media(max-width:600px){
.wizard-grid { grid-template-columns:1fr }
.wizard-card { padding:22px 18px }
.wizard-nav { flex-direction:column-reverse; gap:12px }
.wizard-btn { width:100%; text-align:center }
}
