/* OrbitasWeb V4.0 — Normalizacion definitiva de componentes heredados
 * Base oficial: Manual OrbitasWeb V2.0 y Guia para desarrollo.
 * Se carga DESPUES de estilos.css y orbitasweb.css.
 * Esta hoja afecta exclusivamente presentacion. No modifica interacciones.
 */
:root {
  --ow-v4-text:#111827;
  --ow-v4-body:#334155;
  --ow-v4-muted:#526074;
  --ow-v4-brand:#2563EB;
  --ow-v4-hover:#1D4ED8;
  --ow-v4-soft:#EFF6FF;
  --ow-v4-line:#CBD5E1;
  --ow-v4-page:#F8FAFC;
}
/* Superficies que aun contenian gradientes verde bosque en estilos.css */
.side-box,
.quote-shell,
.audit,
.plan,
.plan--featured,
.quote-card {
  background:#FFFFFF;
  color:var(--ow-v4-body);
  border:1px solid #D6E0ED;
  box-shadow:0 12px 35px rgba(17,24,39,.065);
}
.side-box h2,.side-box h3,.side-box h4,
.quote-shell h2,.quote-shell h3,.quote-shell h4,
.audit h2,.audit h3,.audit h4,
.plan h2,.plan h3,.plan h4,
.quote-card h2,.quote-card h3,.quote-card h4 {color:var(--ow-v4-text)}
.side-box p,.side-box li,.side-box .muted,
.quote-shell p,.quote-shell li,.quote-shell .muted,
.audit p,.audit li,.audit .muted,
.plan p,.plan li,.plan .muted,
.quote-card p,.quote-card blockquote {color:var(--ow-v4-muted)}
.side-box strong,.quote-shell strong,.audit strong,.plan strong,.quote-card strong{color:var(--ow-v4-text)}

/* Panel de orientacion /servicios /portafolio /auditoria-web */
.side-box {
  position:sticky;
  top:100px;
  padding:clamp(1.25rem,2.5vw,1.75rem);
  border-radius:16px;
}
.side-box h3{font-size:1.15rem;line-height:1.35;letter-spacing:-.02em;margin:0 0 .6rem}
.side-box ul{margin:1.15rem 0 1.55rem;gap:.65rem}
.side-box li{color:#334155;font-size:.9rem;line-height:1.45}
.side-box li::before{color:#2563EB}
.side-box .btn{width:100%;min-height:48px;border-radius:9px}
.side-box .btn--wa{background:#FFFFFF;color:#1D4ED8;border:1px solid #93C5FD;box-shadow:none}
.side-box .btn--wa:hover{background:#EFF6FF;border-color:#2563EB;color:#1D4ED8}
.side-box .mt-2{font-size:.82rem;color:#526074}

/* Cotizador: los degradados heredados provocaban texto oscuro sobre fondo oscuro */
.quote-shell {
  display:grid;
  overflow:hidden;
  border-radius:18px;
  box-shadow:0 14px 48px rgba(17,24,39,.07);
}
.quote-side{
  background:#F3F7FD;
  color:#334155;
  border-color:#D5E0F0;
}
.quote-side h3{color:#111827;font-size:1.2rem;letter-spacing:-.025em}
.quote-side .muted{color:#526074;line-height:1.65}
.quote-side ol{gap:1.05rem}
.quote-side li{color:#526074;line-height:1.55;padding-left:2.55rem}
.quote-side li b{color:#111827;margin-bottom:.18rem;font-size:.9rem}
.quote-side li::before{background:#FFFFFF;border:1px solid #BFDBFE;color:#1D4ED8;box-shadow:0 1px 4px rgba(17,24,39,.05)}
.quote-side .estimate,.quote-main .estimate{background:#FFFFFF;border:1px solid #BFDBFE;border-radius:12px;box-shadow:none}
.quote-side .estimate>span,.quote-main .estimate>span{color:#1D4ED8}
.quote-side .estimate b,.quote-main .estimate b{color:#111827}
.quote-side .estimate small,.quote-main .estimate small{color:#526074}
.quote-side .note-box{background:#E7F0FF;border:1px solid #BFDBFE;border-left:3px solid #2563EB;border-radius:9px}
.quote-side .note-box p{color:#1E3A8A;font-size:.84rem}
.quote-side .note-box svg{color:#2563EB}
.quote-main{background:#FFFFFF;color:#334155}
.quote-main h3{color:#111827;font-size:1.2rem;line-height:1.3}
.quote-main .hint,.quote-main .form-note{color:#526074}
.quote-main .progress-line{background:#E2E8F0;height:4px}
.quote-main .progress-line i{background:#2563EB}
.quote-main .stepper i{background:#FFFFFF;color:#526074;border:1px solid #94A3B8}
.quote-main .stepper i.on{background:#2563EB;color:#FFFFFF;border-color:#2563EB}
.quote-main .stepper i.done{background:#EFF6FF;color:#1D4ED8;border-color:#93C5FD}
.quote-main .stepper hr{background:#CBD5E1}
.quote-main .choices,.quote-main .switch-list{gap:.65rem}
.quote-main .choice{
  color:#334155;
  background:#FFFFFF;
  border:1px solid #CBD5E1;
  border-radius:10px;
  line-height:1.4;
  min-height:54px;
  box-shadow:0 1px 2px rgba(17,24,39,.025);
}
.quote-main .choice:hover{background:#F8FAFC;border-color:#93C5FD;color:#111827}
.quote-main .choice:has(input:checked){background:#EFF6FF;color:#1E40AF;border-color:#2563EB;box-shadow:inset 0 0 0 1px #2563EB}
.quote-main .choice .box{background:#FFFFFF;border:1.5px solid #64748B}
.quote-main .choice input:checked~.box{background:#2563EB;border-color:#2563EB}
.quote-main .choice input:checked~.box::after{background:#FFFFFF}
.quote-main .choice input:focus-visible~.box{outline:3px solid #2563EB;outline-offset:3px}
.quote-main .field label{color:#111827;font-weight:600}
.quote-main .field label i{color:#2563EB}
.quote-main .field input,
.quote-main .field select,
.quote-main .field textarea{background-color:#FFFFFF;color:#111827;border-color:#94A3B8;box-shadow:none}
.quote-main .field input::placeholder,.quote-main .field textarea::placeholder{color:#64748B}
.quote-main .field input:focus,.quote-main .field select:focus,.quote-main .field textarea:focus{background-color:#FFFFFF;border-color:#2563EB;box-shadow:0 0 0 3px rgba(37,99,235,.14);outline:none}
.quote-main .summary{background:#FFFFFF;border-color:#CBD5E1}
.quote-main .summary-row{border-color:#E2E8F0}
.quote-main .summary-row dt{color:#1D4ED8}
.quote-main .summary-row dd{color:#334155}
.quote-main .consent{color:#334155}
.quote-main .consent input{accent-color:#2563EB}
.quote-main .qstep-nav{align-items:center}
.quote-main .btn--ghost{background:#FFFFFF;color:#1D4ED8;border:1px solid #93C5FD}
.quote-main .btn--ghost:hover{background:#EFF6FF;color:#1D4ED8}

/* Auditoria digital: fondo claro y controles de respuesta legibles */
.audit{background:#FFFFFF;border-radius:18px;box-shadow:0 12px 35px rgba(17,24,39,.06)}
.audit::before{background:radial-gradient(500px 250px at 100% 0%,rgba(37,99,235,.065),transparent 70%)}
.audit .q-row{background:#FFFFFF;border:1px solid #CBD5E1;color:#334155;border-radius:9px}
.audit .q-row:hover{background:#F8FAFC;border-color:#93C5FD}
.audit .q-row input{background:#CBD5E1;border:1px solid #94A3B8}
.audit .q-row input::after{background:#FFFFFF}
.audit .q-row input:checked{background:#2563EB;border-color:#2563EB}
.audit .q-row input:checked::after{background:#FFFFFF}
.audit .q-row input:focus-visible{outline:3px solid #2563EB;outline-offset:2px}
.audit .audit-result{background:#F8FAFC;border:1px solid #D6E0ED;color:#334155}
.audit .ring{background:conic-gradient(#2563EB calc(var(--p)*1%),#E2E8F0 0)}
.audit .ring::after{background:#FFFFFF;border-color:#CBD5E1}
.audit .ring b{color:#111827}
.audit .ring b i{color:#526074}

/* Planes y testimonios: uniformar paneles sin borrar contenidos */
.plan{border-radius:16px}
.plan--featured{border:2px solid #93C5FD;box-shadow:0 18px 50px rgba(37,99,235,.11)}
.plan h3,.plan .price b{color:#111827}
.plan .plan-sub,.plan li,.plan .price span{color:#526074}
.plan .plan-for{color:#1D4ED8}
.plan li::before{color:#2563EB}
.plan-badge{background:#2563EB;color:#FFFFFF}
.quote-card{border-radius:14px}
.quote-card blockquote{color:#334155}
.quote-card .stars{color:#2563EB}
.quote-card .quote-who b{color:#111827}
.quote-card .quote-who span{color:#526074}
.post-thumb{background:linear-gradient(135deg,#DCEBFF,#EFF6FF);border-bottom:1px solid #CBD5E1}
.post-thumb svg{color:#2563EB}

/* Retroalimentacion y accesibilidad global */
.toast{background:#111827;color:#FFFFFF;border-color:#60A5FA}
.toast a{color:#BFDBFE}
.side-box :is(a,button):focus-visible,
.quote-shell :is(a,button,summary,input,textarea,select):focus-visible,
.audit :is(a,button,input):focus-visible{outline:3px solid #2563EB;outline-offset:3px}
@media(min-width:960px){
  .quote-shell{grid-template-columns:.85fr 1.15fr}
  .quote-side{border-bottom:0;border-right:1px solid #D5E0F0}
}
@media(max-width:959px){
  .quote-shell{grid-template-columns:1fr}
  .quote-side{border-bottom:1px solid #D5E0F0;border-right:0}
  .side-box{position:static}
}
@media(max-width:600px){
  .quote-side,.quote-main{padding:1.3rem}
  .quote-main .choices{grid-template-columns:repeat(2,minmax(0,1fr))}
  .quote-main .choice{padding:.78rem .65rem;font-size:.84rem}
  .quote-main .stepper{margin-bottom:1.3rem}
}
@media(max-width:370px){.quote-main .choices{grid-template-columns:1fr}}
