:root{--dwv-ink:#292b3e;--dwv-violet:#3d4166;--dwv-violet-deep:#282b47;--dwv-lavender:#a8a6c9;--dwv-lavender-soft:#eeedf6;--dwv-orange:#f28c28;--dwv-paper:#f7f7f6;--dwv-white:#fff;--dwv-line:rgba(61,65,102,.16);--dwv-ok:#2f6b4f;--dwv-warn:#8a6d1d;--dwv-bad:#8a3030;--dwv-na:#666}
.dwv-aiv{color:var(--dwv-ink);font-family:"Montserrat",Arial,sans-serif;line-height:1.6;max-width:1280px;margin-inline:auto;padding:clamp(20px,3vw,44px) clamp(16px,3vw,32px) 72px;box-sizing:border-box}
.dwv-aiv *,.dwv-aiv *::before,.dwv-aiv *::after{box-sizing:border-box}
.dwv-aiv h2,.dwv-aiv h3,.dwv-aiv h4{color:var(--dwv-violet);line-height:1.15;margin-top:0}
.dwv-aiv h2{font-size:clamp(1.55rem,2.8vw,2.65rem);letter-spacing:-.035em}
.dwv-aiv h3{font-size:clamp(1.15rem,2vw,1.5rem)}
.dwv-aiv a{color:var(--dwv-violet)}
.dwv-aiv a:focus-visible{outline:3px solid var(--dwv-orange);outline-offset:2px}

/* Hero */
.dwv-aiv__stage{position:relative;isolation:isolate;overflow:hidden;margin-bottom:36px;border:1px solid var(--dwv-line);border-radius:4px;background:var(--dwv-paper)}
.dwv-aiv__atmosphere{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,.72),rgba(238,237,246,.7)),repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),rgba(61,65,102,.07) 25%);border-top:5px solid var(--dwv-orange)}
.dwv-aiv__hero{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(290px,.72fr);gap:clamp(28px,5vw,72px);align-items:start;padding:clamp(28px,5vw,60px)}
.dwv-aiv__eyebrow,.dwv-aiv__panel-kicker{color:var(--dwv-orange);font-size:.76rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase;margin:0 0 .75rem}
.dwv-aiv__hero h2{max-width:22ch;margin-bottom:.8rem}
.dwv-aiv__lead{font-size:clamp(1rem,1.5vw,1.15rem);max-width:62ch;margin:.1rem 0 1.4rem}

/* Form */
.dwv-aiv__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.dwv-aiv__field{display:grid;gap:6px;min-width:0}
.dwv-aiv__field--wide{grid-column:1/-1}
.dwv-aiv__field label{font-weight:700;font-size:.95rem}
.dwv-aiv__req{color:var(--dwv-orange)}
.dwv-aiv__opt{font-weight:500;color:#666;font-size:.85em}
.dwv-aiv__field input,.dwv-aiv__field textarea,.dwv-aiv__comp-row input{min-height:48px;padding:11px 13px;border:1px solid rgba(61,65,102,.35);border-radius:2px;font:inherit;background:var(--dwv-white);width:100%;min-width:0}
.dwv-aiv__field textarea{min-height:90px;resize:vertical}
.dwv-aiv__field input:focus,.dwv-aiv__field textarea:focus,.dwv-aiv__comp-row input:focus{outline:3px solid rgba(242,140,40,.35);outline-offset:2px;border-color:var(--dwv-orange)}
.dwv-aiv__competitors{border:1px dashed rgba(61,65,102,.3);border-radius:2px;padding:14px;margin:16px 0 0}
.dwv-aiv__competitors legend{font-weight:700;font-size:.95rem;padding-inline:6px}
.dwv-aiv__comp-row{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;margin-bottom:8px;align-items:center}
.dwv-aiv__hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.dwv-aiv__note{font-size:.9rem;color:#555;margin:14px 0 0;max-width:76ch}
.dwv-aiv__consent{font-size:.83rem;color:#555;margin:12px 0 0;max-width:76ch}
.dwv-aiv__actions-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.dwv-aiv__error{color:var(--dwv-bad);font-weight:700;overflow-wrap:anywhere}

/* Buttons */
.dwv-aiv__btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 19px;border-radius:2px;border:1px solid var(--dwv-violet);background:var(--dwv-white);color:var(--dwv-violet);font:inherit;font-weight:700;cursor:pointer;text-decoration:none;text-align:center}
.dwv-aiv__btn--primary{background:var(--dwv-violet);color:#fff;border-color:var(--dwv-violet)}
.dwv-aiv__btn--primary:hover{background:var(--dwv-violet-deep)}
.dwv-aiv__btn--ghost{background:transparent}
.dwv-aiv__btn--small{min-height:40px;padding:7px 13px;font-size:.88rem}
.dwv-aiv__btn:focus-visible{outline:3px solid var(--dwv-orange);outline-offset:2px}
.dwv-aiv__btn[disabled]{opacity:.55;cursor:progress}

/* Right panel */
.dwv-aiv__panel{background:var(--dwv-violet);color:#fff;padding:clamp(22px,3vw,34px);box-shadow:12px 12px 0 var(--dwv-lavender);min-width:0}
.dwv-aiv__panel-list{list-style:none;margin:0;padding:0;border-top:1px solid rgba(255,255,255,.25)}
.dwv-aiv__panel-list li{display:grid;grid-template-columns:2.4rem 1fr;gap:.5rem;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.25);font-size:.92rem;font-weight:600;line-height:1.35}
.dwv-aiv__panel-list span{color:#f8bf82;font-size:.72rem;font-weight:800;letter-spacing:.08em}
.dwv-aiv__panel-note{margin:16px 0 0;color:#e3e2f4;font-size:.82rem;line-height:1.45}

/* Notices / progress */
.dwv-aiv__provider-notice{margin:0 0 28px;background:#fff8ef;border-left:4px solid var(--dwv-orange);padding:16px 18px;font-size:.95rem}
.dwv-aiv__provider-notice p{margin:0;max-width:90ch}
.dwv-aiv__progress,.dwv-aiv__results{margin-top:32px;padding:clamp(20px,3vw,34px);border:1px solid var(--dwv-line);background:#fff}
.dwv-aiv__progress-copy{max-width:76ch}
.dwv-aiv__stages{list-style:none;padding:0;margin:14px 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.dwv-aiv__stages li{padding:10px 12px;background:var(--dwv-paper);border-left:3px solid var(--dwv-lavender);font-size:.9rem}
.dwv-aiv__stages li.is-active{border-left-color:var(--dwv-orange);font-weight:700}
.dwv-aiv__progress-note{display:flex;align-items:center;gap:10px;color:#555;font-size:.9rem}
.dwv-aiv__spinner{width:16px;height:16px;border:3px solid var(--dwv-lavender-soft);border-top-color:var(--dwv-orange);border-radius:50%;animation:dwv-aiv-spin 1s linear infinite;flex:0 0 auto}
@keyframes dwv-aiv-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.dwv-aiv__spinner{animation:none}}

/* Report */
.dwv-aiv__report-head{display:flex;flex-wrap:wrap;gap:18px;align-items:flex-start;justify-content:space-between;border-bottom:1px solid var(--dwv-line);padding-bottom:18px;margin-bottom:22px}
.dwv-aiv__report-title h2{margin:0 0 .35rem}
.dwv-aiv__report-meta{margin:0;color:#555;font-size:.9rem;max-width:70ch}
.dwv-aiv__badges{display:flex;flex-wrap:wrap;gap:10px}
.dwv-aiv__score-card{background:var(--dwv-paper);border-top:4px solid var(--dwv-violet);padding:16px 20px;min-width:180px}
.dwv-aiv__score-card p{margin:0}
.dwv-aiv__score-label{font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--dwv-violet)}
.dwv-aiv__score-value{font-size:2rem;font-weight:800;color:var(--dwv-violet);line-height:1.1}
.dwv-aiv__score-level{font-weight:700}
.dwv-aiv__score-card.level-muy_baja,.dwv-aiv__score-card.level-baja{border-top-color:var(--dwv-bad)}
.dwv-aiv__score-card.level-intermedia{border-top-color:var(--dwv-warn)}
.dwv-aiv__score-card.level-alta,.dwv-aiv__score-card.level-muy_alta{border-top-color:var(--dwv-ok)}
.dwv-aiv__score-card.level-no_calculable{border-top-color:var(--dwv-na)}
.dwv-aiv__score-note{font-size:.78rem;color:#666;max-width:34ch;margin-top:6px!important}
.dwv-aiv__section{margin-top:34px}
.dwv-aiv__section h3{border-left:4px solid var(--dwv-orange);padding-left:12px;margin-bottom:14px}
.dwv-aiv__kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin:14px 0}
.dwv-aiv__kpi{background:var(--dwv-paper);border-top:4px solid var(--dwv-lavender);padding:14px}
.dwv-aiv__kpi p{margin:0}
.dwv-aiv__kpi-num{font-size:1.5rem;font-weight:800;color:var(--dwv-violet)}
.dwv-aiv__kpi-label{font-size:.85rem;color:#555}

/* Tables */
.dwv-aiv__table-wrap{overflow-x:auto;margin:10px 0}
.dwv-aiv table{width:100%;border-collapse:collapse;font-size:.92rem;min-width:560px}
.dwv-aiv caption{text-align:left;font-weight:700;color:var(--dwv-violet);padding-bottom:8px}
.dwv-aiv th,.dwv-aiv td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--dwv-line);vertical-align:top}
.dwv-aiv thead th{background:var(--dwv-lavender-soft);color:var(--dwv-violet);font-size:.82rem;letter-spacing:.04em;text-transform:uppercase}
.dwv-aiv tbody tr.is-brand{background:#fff8ef;font-weight:700}
.dwv-aiv__bar{position:relative;background:var(--dwv-lavender-soft);height:10px;min-width:90px;border-radius:2px;overflow:hidden}
.dwv-aiv__bar span{position:absolute;inset:0 auto 0 0;background:var(--dwv-violet);border-radius:2px}

/* Query list */
.dwv-aiv__query{border:1px solid var(--dwv-line);background:#fff;margin:9px 0}
.dwv-aiv__query summary{cursor:pointer;font-weight:700;color:var(--dwv-violet);padding:14px 16px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.dwv-aiv__query-body{padding:0 16px 16px;display:grid;gap:10px}
.dwv-aiv__pill{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.74rem;font-weight:700;letter-spacing:.03em;border:1px solid var(--dwv-line);background:var(--dwv-paper);color:var(--dwv-ink)}
.dwv-aiv__pill--ok{background:#e8f2ec;border-color:#bcd8c8;color:var(--dwv-ok)}
.dwv-aiv__pill--no{background:#f6e9e9;border-color:#e2c4c4;color:var(--dwv-bad)}
.dwv-aiv__pill--warn{background:#fbf3e0;border-color:#ecd9a8;color:var(--dwv-warn)}
.dwv-aiv__pill--na{background:var(--dwv-lavender-soft);color:var(--dwv-na)}
.dwv-aiv__provider-line{border-top:1px solid var(--dwv-line);padding-top:10px;display:grid;gap:6px}
.dwv-aiv__provider-line p{margin:0;font-size:.92rem}

/* Signals */
.dwv-aiv__signals{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}
.dwv-aiv__signal{background:var(--dwv-paper);border-left:4px solid var(--dwv-lavender);padding:13px 15px}
.dwv-aiv__signal.is-ok{border-left-color:var(--dwv-ok)}
.dwv-aiv__signal.is-warn{border-left-color:var(--dwv-orange)}
.dwv-aiv__signal h4{font-size:.92rem;margin:0 0 4px}
.dwv-aiv__signal p{margin:0;font-size:.86rem;color:#555}
.dwv-aiv__signal-status{font-weight:700;font-size:.8rem}
.dwv-aiv__signal.is-ok .dwv-aiv__signal-status{color:var(--dwv-ok)}
.dwv-aiv__signal.is-warn .dwv-aiv__signal-status{color:var(--dwv-warn)}

/* Opportunities */
.dwv-aiv__opps{display:grid;gap:10px}
.dwv-aiv__opp{border:1px solid var(--dwv-line);background:#fff;padding:16px 18px;border-top:4px solid var(--dwv-lavender)}
.dwv-aiv__opp.prio-alta{border-top-color:var(--dwv-bad)}
.dwv-aiv__opp.prio-media{border-top-color:var(--dwv-orange)}
.dwv-aiv__opp.prio-complementaria{border-top-color:var(--dwv-lavender)}
.dwv-aiv__opp h4{margin:0 0 6px;font-size:1rem}
.dwv-aiv__opp p{margin:.3rem 0;font-size:.92rem}
.dwv-aiv__opp-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}

/* Result actions / capture */
.dwv-aiv__result-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.dwv-aiv__capture{display:block;background:var(--dwv-lavender-soft);border-left:4px solid var(--dwv-violet);padding:24px;margin-top:28px}
.dwv-aiv__capture h3{margin-bottom:.5rem}
.dwv-aiv__capture-ctas{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}
.dwv-aiv__lead-toggle summary{cursor:pointer;font-weight:700;color:var(--dwv-violet);margin-top:6px}
.dwv-aiv__lead-form{margin-top:14px}
.dwv-aiv__flash{background:#fff;border-left:4px solid var(--dwv-orange);padding:12px 14px;margin-top:14px}

/* Figure */
.dwv-aiv__figure{margin:56px auto 0;max-width:850px}
.dwv-aiv__figure img{display:block;width:100%;height:auto;border:1px solid var(--dwv-line);border-radius:4px}

/* SEO blocks: centered reading column so the page doesn't look lopsided inside the 1280px shell. */
.dwv-aiv__seo-block{margin-top:56px;margin-inline:auto;max-width:850px}
.dwv-aiv__seo-block h2{margin-bottom:.65rem}
.dwv-aiv__seo-steps{padding-left:1.3rem}
.dwv-aiv__seo-steps li{margin:.55rem 0}
.dwv-aiv__seo-links{padding-left:1.25rem}
.dwv-aiv__seo-links li{margin:.45rem 0}
.dwv-aiv__ext-note{font-size:.85rem;color:#555}
.dwv-aiv__faq-item{border-top:1px solid var(--dwv-line);padding:.9rem 0}
.dwv-aiv__faq-item:last-child{border-bottom:1px solid var(--dwv-line)}
.dwv-aiv__faq-item summary{cursor:pointer;font-weight:700;color:var(--dwv-violet)}
.dwv-aiv__faq-item p{margin:.55rem 0 0}
.dwv-aiv__method{display:grid;gap:6px;margin-top:10px}
.dwv-aiv__method p{margin:0;font-size:.92rem}
.dwv-aiv__sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.dwv-aiv__source-link{overflow-wrap:anywhere}

/* Desktop: split editorial (título izquierda, contenido derecha) para aprovechar el ancho completo. */
@media(min-width:1100px){
.dwv-aiv__figure{max-width:1000px;margin-inline:auto}
.dwv-aiv__seo-block{max-width:none;display:grid;grid-template-columns:minmax(250px,340px) minmax(0,1fr);column-gap:clamp(44px,5vw,90px);align-items:start}
.dwv-aiv__seo-block>h2{grid-column:1;margin:0}
.dwv-aiv__seo-block>:not(h2){grid-column:2}
.dwv-aiv__seo-block>:not(h2):first-of-type{margin-top:.2rem}
.dwv-aiv__seo-block p,.dwv-aiv__seo-block li{max-width:76ch}
}

/* Mobile */
@media(max-width:760px){
.dwv-aiv{padding-inline:16px}
.dwv-aiv__hero{grid-template-columns:minmax(0,1fr);padding:28px 22px 34px;gap:28px}
.dwv-aiv__hero h2{font-size:clamp(1.55rem,7.5vw,2.05rem)}
.dwv-aiv__panel{box-shadow:7px 7px 0 var(--dwv-lavender)}
.dwv-aiv__grid{grid-template-columns:1fr}
.dwv-aiv__comp-row{grid-template-columns:1fr}
.dwv-aiv__stages{grid-template-columns:1fr}
.dwv-aiv__progress,.dwv-aiv__results{padding:20px 16px}
.dwv-aiv__seo-block{margin-top:42px}
.dwv-aiv__actions-row .dwv-aiv__btn,.dwv-aiv__result-actions .dwv-aiv__btn,.dwv-aiv__capture-ctas .dwv-aiv__btn{width:100%}
.dwv-aiv table{min-width:480px}
}

/* Expand the legacy utility-sheet wrapper (same approach as DWVisual Radar). */
#dw-main .dw-legal--utility.section-shell:has(.dwv-aiv){width:min(calc(100% - 80px),1280px);max-width:none}
#dw-main .dw-legal--utility:has(.dwv-aiv) .dw-legal__prose{width:100%;max-width:none;min-width:0}
#dw-main .dw-legal--utility:has(.dwv-aiv) .dwv-aiv{width:100%;max-width:none;min-width:0;margin:0;padding-inline:0}
#dw-main .dw-legal--utility:has(.dwv-aiv) .dw-legal__hero{max-width:none}
#dw-main .dw-legal--utility:has(.dwv-aiv) .dw-legal__hero h1{max-width:none}
#dw-main:has(.dwv-aiv),#dw-main .entry-content:has(.dwv-aiv),#dw-main .dw-legal--utility:has(.dwv-aiv),#dw-main .dwv-aiv__hero-copy,#dw-main .dwv-aiv__panel{min-width:0}
#dw-main .dwv-aiv__field input{min-width:0;max-width:100%}
@media(max-width:760px){#dw-main .dw-legal--utility.section-shell:has(.dwv-aiv){width:calc(100vw - 32px);max-width:calc(100vw - 32px)}#dw-main .dw-legal--utility:has(.dwv-aiv) .dw-legal__prose,#dw-main .dw-legal--utility:has(.dwv-aiv) .dwv-aiv{width:100%;max-width:100%}#dw-main .dw-legal--utility:has(.dwv-aiv) .dw-legal__hero{padding:24px 20px 28px;margin-bottom:24px;overflow-wrap:anywhere}#dw-main .dw-legal--utility:has(.dwv-aiv) .dw-legal__hero h1{font-size:clamp(30px,9vw,40px);max-width:none;overflow-wrap:anywhere}}
