.advisory-page .top-strip { display:none; }
.advisory-page .header-inner { min-height:62px; }
.advisory-page .brand img { width:43px; height:43px; }
.advisory-page .brand-divider { height:36px; }
.advisory-page .brand-copy strong { font-size:12px; }
.advisory-page .brand-copy span { font-size:7px; }
.advisory-page { background:#f4f5f7; }
.advisory-hero { position:relative; padding:22px 0; color:#fff; background:#173649; }
.advisory-hero::before { content:""; position:absolute; inset:0; opacity:.22; background:linear-gradient(100deg,#0b2636 0%,#0b2636e0 55%,#0b263673 100%),url("/assets/redes-instagram.jpg?v=1") center 53% / cover no-repeat; }
.advisory-hero > .container { position:relative; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.advisory-hero h1 { margin:0; font-size:32px; line-height:1.12; letter-spacing:-.04em; }
.advisory-hero p { margin:5px 0 0; max-width:900px; color:#d4e1e7; font-size:13px; line-height:1.55; }
/* Institutional basis stays compact; the full article opens on demand. */
.advisory-hero > .container > div { flex:1; min-width:0; }
.advisory-charter { flex:0 0 340px; min-width:0; border:1px solid #ffffff36; border-radius:12px; background:#ffffff0a; }
.advisory-charter summary { display:flex; align-items:center; gap:12px; min-height:66px; padding:12px 15px; color:#fff; cursor:pointer; list-style:none; }
.advisory-charter summary::-webkit-details-marker { display:none; }
.advisory-charter summary > span { flex:1; }
.advisory-charter summary strong,.advisory-charter summary small { display:block; }
.advisory-charter summary strong { font-size:13px; line-height:1.5; }
.advisory-charter summary small { margin-top:2px; color:#d4e1e7; font-size:11px; line-height:1.5; }
.advisory-charter .commission-icon { flex:0 0 22px; width:22px; height:22px; }
.advisory-charter .advisory-charter-caret { flex-basis:16px; width:16px; height:16px; transition:transform .15s; }
.advisory-charter[open] .advisory-charter-caret { transform:rotate(180deg); }
.advisory-charter-content { padding:0 15px 14px; }
.advisory-charter blockquote { margin:0 0 8px; padding-top:12px; border-top:1px solid #ffffff26; color:#eef4f7; font-size:12px; line-height:1.7; }
.advisory-charter-content a { display:inline-flex; align-items:center; min-height:44px; color:#fff; font-size:12px; text-underline-offset:4px; }
.advisory-charter summary:focus-visible,.advisory-charter a:focus-visible { outline:2px solid #fff; outline-offset:3px; }
.commission-back { display:inline-flex; align-items:center; min-height:48px; flex:0 0 auto; color:#d4e1e7; font-size:12px; text-underline-offset:4px; }
.advisory-section { position:relative; isolation:isolate; padding:24px 0 28px; background:#f4f5f7; }
.advisory-section::before { content:""; position:absolute; z-index:-1; inset:0; background:url("/assets/asesoras-laterales.svg?v=1") center top / max(100%, 1320px) auto no-repeat; pointer-events:none; }
.advisory-form-card { position:relative; max-width:920px; min-width:0; margin-inline:auto; padding:0 32px 24px; border:1px solid #e0e3e7; border-radius:15px; background:#fff; box-shadow:0 16px 46px #17364912; }
.advisory-form-head { display:flex; align-items:center; gap:12px; min-height:54px; margin:0 -32px 24px; padding:14px 32px; border-radius:14px 14px 0 0; color:#fff; background:#151b23; }
.advisory-form-head > div { display:flex; flex:1; flex-wrap:wrap; align-items:baseline; justify-content:space-between; gap:5px 16px; }
.advisory-form-head strong { font-size:15px; line-height:1.35; letter-spacing:-.02em; }
.advisory-form-head small { color:#adb7c0; font-size:11px; line-height:1.4; }
.advisory-availability { margin:0 0 12px; padding:0; color:#466451; font-size:12px; line-height:1.5; }
.advisory-availability.is-error, .advisory-status.is-error { color:#92223b; }
.advisory-secondary { min-height:48px; padding:11px 18px; border:1px solid #c9cdd1; border-radius:10px; background:#fff; color:#303b42; font:inherit; font-size:15px; font-weight:650; cursor:pointer; }
#advisoryRetryStatus { margin-bottom:15px; }
.advisory-secondary:disabled { opacity:.5; cursor:not-allowed; }
.advisory-no-script { font-size:14px; line-height:1.6; }
.advisory-honeypot { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.advisory-visually-hidden { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
#advisoryFields { min-width:0; margin:0; padding:0; border:0; }
.advisory-block { min-width:0; margin:0; padding:0; border:0; }
.advisory-block legend { margin:0 0 20px; padding:0; font-size:24px; line-height:1.3; letter-spacing:-.025em; font-weight:750; }
.advisory-step-commission { grid-column:1/-1; }
.advisory-help { margin:0 0 18px; color:#6d737b; font-size:13px; line-height:1.5; }
.advisory-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.advisory-option { position:relative; display:flex; min-width:0; cursor:pointer; }
.advisory-option input { position:absolute; opacity:0; width:1px; height:1px; margin:0; }
.advisory-option > span { position:relative; display:flex; flex-direction:column; align-items:flex-start; gap:14px; width:100%; min-height:194px; padding:22px; border:1px solid #dfe3e6; border-radius:12px; background:#fff; transition:border-color .15s, background .15s; }
.advisory-option > span::after { content:""; position:absolute; top:21px; right:18px; width:18px; height:18px; border:1.5px solid #c8c1c3; border-radius:50%; background:#fff; }
.advisory-option-icon { display:grid; place-items:center; flex:0 0 46px; width:46px; height:46px; border-radius:12px; color:#214f62; background:#e7f0f4; }
.advisory-option-icon .commission-icon { width:27px; height:27px; }
.advisory-option strong { font-size:16px; line-height:1.45; font-weight:700; }
.advisory-option small { display:none; }
.advisory-option:hover > span { border-color:#9baeb9; background:#f8fafb; }
.advisory-option input:checked + span { border-color:var(--red); background:#fff6f7; }
.advisory-option input:checked + span .advisory-option-icon { color:#fff; background:var(--red); }
.advisory-option input:checked + span::after { border-color:var(--red); background:var(--red); box-shadow:inset 0 0 0 3px #fff; }
.advisory-option input:focus-visible + span { outline:3px solid var(--red); outline-offset:3px; }
.advisory-field-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 22px; }
.advisory-wide { grid-column:1/-1; }
.advisory-field { min-width:0; display:grid; gap:7px; }
.advisory-field > span { font-size:14px; line-height:1.4; font-weight:650; }
.advisory-field small { color:#727985; font-size:12px; font-weight:400; }
.advisory-field input, .advisory-field textarea { width:100%; min-width:0; min-height:48px; padding:10px 12px; border:1px solid #cdd1d5; border-radius:8px; color:#202b33; background:#fff; font:inherit; font-size:16px; line-height:1.5; }
.advisory-field textarea { resize:vertical; min-height:89px; }
.advisory-field input:focus, .advisory-field textarea:focus { border-color:var(--red); outline:2px solid #cf15351f; outline-offset:1px; }
.advisory-field input::placeholder, .advisory-field textarea::placeholder { color:#818790; }
.advisory-field + .advisory-help { margin-top:7px; margin-bottom:0; }
.advisory-consent { display:grid; grid-template-columns:22px minmax(0,1fr); gap:12px; min-height:48px; margin-top:22px; padding:20px 0 0; border-top:1px solid #e8e8e8; color:#4f5963; font-size:13px; line-height:1.6; cursor:pointer; }
.advisory-consent input { width:22px; height:22px; margin:1px 0 0; accent-color:var(--red); }
.advisory-actions { display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; margin-top:26px; }
.advisory-submit { min-width:250px; min-height:48px; margin:0 0 0 auto; padding:11px 18px; }
#advisoryNext { min-width:170px; min-height:48px; margin-left:auto; padding:11px 24px; justify-content:center; }
.advisory-submit-note { margin:7px 0 0; text-align:right; color:#767b82; font-size:11px; line-height:1.5; }
.advisory-status { overflow-wrap:anywhere; font-size:13px; line-height:1.6; }
.advisory-status:not(:empty) { margin:12px 0; padding:12px 14px; border:1px solid #eccbd2; border-radius:9px; background:#fff5f6; }
.advisory-step-nav { display:contents; }
.advisory-progress { margin:0 0 28px; }
.advisory-progress ol { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin:0; padding:0; list-style:none; }
.advisory-progress li { display:flex; align-items:center; gap:9px; color:#747b82; font-size:13px; line-height:1.5; }
.advisory-progress li > span { display:grid; place-items:center; width:26px; height:26px; flex:0 0 26px; border:1px solid #d6d8db; border-radius:50%; font-size:12px; }
.advisory-progress li[aria-current="step"] { color:var(--red-dark); font-weight:750; }
.advisory-progress li[aria-current="step"] > span { color:#fff; border-color:var(--red); background:var(--red); }
.advisory-success { padding:16px 0 20px; max-width:670px; margin:auto; }
.advisory-success-mark { display:grid; place-items:center; width:48px; height:48px; border-radius:50%; background:#eaf3ec; color:#3b6b4d; }
.advisory-success h2 { margin:16px 0 10px; font-size:28px; line-height:1.2; letter-spacing:-.03em; }
.advisory-success p { color:#57636b; font-size:14px; line-height:1.6; }
.advisory-receipt { padding:13px 16px; background:#f5f5f4; border-radius:10px; }
.advisory-receipt span, .advisory-receipt strong { display:block; }
.advisory-receipt span { font-size:12px; margin-bottom:5px; }
.advisory-receipt strong { color:#29383e; font-size:14px; overflow-wrap:anywhere; font-variant-numeric:tabular-nums; }
.advisory-footer { color:#d7dce1; background:#11151a; border-top:3px solid #cf1535; }
.advisory-footer .footer-inner { padding:28px 0 24px; gap:30px; }
.advisory-footer .footer-brand strong { font-size:18px; line-height:1.35; }
.advisory-footer .footer-brand span, .advisory-footer .footer-copy { font-size:12px; line-height:1.65; }
.advisory-footer .footer-column strong { margin-bottom:9px; font-size:11px; letter-spacing:.06em; }
.advisory-footer .footer-column a { min-height:28px; margin:0; padding:4px 0; font-size:12px; line-height:1.55; }
.advisory-footer .footer-column a:hover { text-decoration:underline; text-underline-offset:4px; }
.advisory-footer .footer-column a:focus-visible { outline:2px solid #fff; outline-offset:4px; }
.advisory-footer .footer-column .commission-icon { width:14px; height:14px; vertical-align:middle; }
.advisory-footer .footer-bottom-inner { min-height:48px; font-size:10px; }
@media(max-width:1180px) { .advisory-section::before { opacity:.45; } }
@media(max-width:760px) {
  .advisory-page .header-inner { min-height:60px; }
  .advisory-page .brand-copy strong { font-size:10px; }
  .advisory-page .brand-copy span { font-size:6px; }
  .advisory-hero { padding:12px 0; }
  .advisory-hero > .container { flex-direction:column; align-items:stretch; gap:12px; }
  .advisory-charter { flex:auto; width:100%; }
  .advisory-charter summary { min-height:62px; padding:10px 12px; }
  .advisory-hero h1 { font-size:28px; }
  .advisory-hero p { margin-top:6px; font-size:12px; line-height:1.5; }
  .advisory-hero .commission-back { display:none; }
  .advisory-section { padding:16px 0 24px; }
  .advisory-section::before { background-size:1320px auto; opacity:.3; }
  .advisory-form-card { padding:0 20px 20px; border-radius:12px; }
  .advisory-form-head { min-height:48px; margin:0 -20px 20px; padding:12px 20px; border-radius:11px 11px 0 0; }
  .advisory-form-head strong { font-size:14px; }
  .advisory-form-head small { display:none; }
  .advisory-availability { margin-bottom:12px; font-size:12px; }
  #advisoryFields { display:block; }
  .advisory-progress { margin-bottom:22px; }
  .advisory-progress ol { gap:8px; }
  .advisory-progress li { gap:6px; font-size:11px; }
  .advisory-progress li > span { width:22px; height:22px; flex-basis:22px; font-size:11px; }
  .advisory-block legend { margin-bottom:18px; font-size:21px; }
  .advisory-options { grid-template-columns:1fr; gap:12px; }
  .advisory-option > span { flex-direction:row; align-items:center; gap:12px; min-height:82px; padding:14px 34px 14px 12px; }
  .advisory-option > span::after { top:calc(50% - 9px); right:10px; }
  .advisory-option-icon { flex-basis:40px; width:40px; height:40px; border-radius:10px; }
  .advisory-option-icon .commission-icon { width:24px; height:24px; }
  .advisory-option strong { font-size:14px; }
  .advisory-field-grid { gap:16px 14px; }
  .advisory-field[for="advisoryPhone"], .advisory-field[for="advisoryEmail"] { grid-column:1/-1; }
  .advisory-field > span { font-size:13px; }
  .advisory-field input, .advisory-field textarea { font-size:16px; min-height:48px; }
  .advisory-consent { font-size:12px; line-height:1.6; margin-top:18px; padding-top:18px; }
  .advisory-actions { justify-content:space-between; margin-top:22px; }
  #advisoryPrevious { flex:0 0 auto; }
  #advisoryNext { flex:1; min-width:0; min-height:48px; padding:11px 18px; justify-content:center; }
  .advisory-submit { flex:1; min-width:180px; width:auto; justify-content:space-between; gap:10px; }
  .advisory-submit-note { text-align:left; font-size:11px; line-height:1.5; }
  .advisory-footer .footer-inner { grid-template-columns:repeat(2,minmax(0,1fr)); gap:26px 20px; padding:30px 0; }
  .advisory-footer .footer-inner > div:first-child { grid-column:1/-1; }
  .advisory-footer .footer-brand strong { font-size:16px; }
  .advisory-footer .footer-column a { width:auto; min-height:48px; margin:0; display:flex; align-items:center; gap:4px; }
  .advisory-footer .footer-bottom-inner { flex-direction:column; align-items:flex-start; justify-content:center; gap:9px; padding:18px 0; }
}
@media(max-width:360px) { .advisory-hero h1 { font-size:26px; } .advisory-form-card { padding:0 16px 18px; } .advisory-form-head { margin:0 -16px 20px; padding:12px 16px; } .advisory-progress li { gap:4px; font-size:10px; } .advisory-progress ol { gap:5px; } .advisory-option strong { font-size:13px; } .advisory-submit { min-width:0; font-size:14px; } }
@media(prefers-reduced-motion:reduce) { .advisory-option > span { transition:none; } }
