/* ==========================================================
   NOVALIA GROUP — Landing VENDER (Método Novalia)
   Se carga solo en /vender. Reutiliza los tokens de styles.css.
   ========================================================== */

.page-venta [id]{ scroll-margin-top:84px; }
.page-venta em{ font-style:italic; }
.page-venta h2 em{ color:var(--gold); font-weight:inherit; }

/* ---------- Header sobre hero oscuro ---------- */
.page-venta .site-header:not(.is-scrolled) .logo,
.page-venta .site-header:not(.is-scrolled) .nav-links a{ color:var(--white); }
.page-venta .site-header:not(.is-scrolled) .header-cta{ color:var(--white); border-color:rgba(250,249,245,.55); }
.page-venta .site-header:not(.is-scrolled) .header-cta:hover{ background:var(--gold); border-color:var(--gold); color:var(--black); }
.page-venta .site-header:not(.is-scrolled) .nav-toggle span{ background:var(--white); }
@media (max-width:860px){
  .page-venta .site-header .nav-links a{ color:var(--gray-700) !important; }
}

/* ---------- Botones ---------- */
.v-btn-lg{ padding:19px 32px; font-size:14.5px; letter-spacing:.04em; text-transform:uppercase; }
.v-btn-ghost-light{ color:var(--white); border-color:rgba(250,249,245,.5); text-transform:uppercase; letter-spacing:.04em; padding:19px 28px; }
.v-btn-ghost-light:hover{ color:var(--gold-light); border-color:var(--gold-light); }
.v-btn-block{ width:100%; justify-content:center; text-transform:uppercase; letter-spacing:.04em; white-space:normal; text-align:center; }
.page-venta .btn{ white-space:normal; text-align:center; }
.page-venta .btn-primary,
.page-venta .btn-invert{ text-transform:uppercase; letter-spacing:.05em; font-size:13px; }
.page-venta .header-cta{ text-transform:none; letter-spacing:.03em; font-size:11.5px; white-space:nowrap; }
.v-link{ color:var(--gold); border-bottom:1px solid currentColor; }

/* ---------- Cabeceras de sección ---------- */
.v-head{ max-width:760px; margin-bottom:64px; }
.v-head h2{ margin:16px 0 18px; }
.v-head .lede{ max-width:60ch; }
.v-head-center{ margin-left:auto; margin-right:auto; text-align:center; }
.v-head-center .lede{ margin:0 auto; }
.v-head-center .eyebrow{ justify-content:center; }
.v-head-light .lede{ color:rgba(250,249,245,.72); }
.v-footnote{ margin-top:28px; font-size:13.5px; color:var(--gray-600); max-width:78ch; line-height:1.65; }
.v-inline-cta{ margin-top:56px; }
.v-inline-center{ text-align:center; }

/* ==========================================================
   1. HERO
   ========================================================== */
.v-hero{
  position:relative;
  min-height:100vh;
  min-height:100svh;
  display:flex;
  align-items:center;
  padding:140px 0 90px;
  color:var(--white);
  background:var(--black);
  overflow:hidden;
}
.v-hero-bg{ position:absolute; inset:0; }
.v-hero-bg img{ width:100%; height:100%; object-fit:cover; filter:grayscale(30%) contrast(1.05) brightness(.5); transform:scale(1.04); animation:vZoom 14s var(--ease) forwards; }
@keyframes vZoom{ to{ transform:scale(1); } }
.v-hero-bg::after{
  content:""; position:absolute; inset:0;
  background:
    linear-gradient(90deg, rgba(20,18,15,.92) 0%, rgba(20,18,15,.72) 45%, rgba(20,18,15,.35) 100%),
    radial-gradient(ellipse 700px 420px at 85% 85%, rgba(166,128,60,.22), transparent 70%);
}
.v-hero-grid{
  position:relative; z-index:1; width:100%;
  display:grid; grid-template-columns:1.25fr .75fr; gap:64px; align-items:center;
}
.v-hero .eyebrow{ color:var(--gold-soft); }
.v-hero .eyebrow::before{ background:var(--gold-soft); }
.v-hero h1{
  color:var(--white);
  font-size:clamp(34px,4.6vw,62px);
  line-height:1.06;
  font-weight:450;
  margin:22px 0 24px;
  max-width:17ch;
}
.v-hero h1 em{ color:var(--gold-light); }
.v-hero-lede{ font-size:clamp(16px,1.35vw,19px); line-height:1.7; color:rgba(250,249,245,.82); max-width:54ch; }
.v-hero-benefits{ display:flex; flex-wrap:wrap; gap:10px 12px; margin:34px 0 40px; }
.v-hero-benefits li{
  display:inline-flex; align-items:center; gap:10px;
  padding:10px 16px 10px 12px;
  border:1px solid rgba(201,169,97,.45);
  background:rgba(20,18,15,.35);
  backdrop-filter:blur(6px);
  font-size:13.5px; font-weight:500; color:var(--white);
}
.v-hero-benefits svg{ width:18px; height:18px; fill:none; stroke:var(--gold-light); stroke-width:1.8; flex-shrink:0; }
.v-hero-actions{ display:flex; flex-wrap:wrap; gap:14px; }
.v-hero .btn-primary{ background:var(--gold); border-color:var(--gold); color:var(--black); }
.v-hero .btn-primary:hover{ background:var(--white); border-color:var(--white); }

/* Tarjeta "hoja de ruta" */
.v-plan-card{
  background:rgba(250,249,245,.97);
  color:var(--black);
  padding:30px 30px 24px;
  box-shadow:0 40px 80px -30px rgba(0,0,0,.6);
  border-top:3px solid var(--gold);
  position:relative;
  animation:vFloat 1.2s var(--ease) .3s both;
}
@keyframes vFloat{ from{ opacity:0; transform:translateY(24px); } to{ opacity:1; transform:none; } }
.v-plan-head{ display:flex; justify-content:space-between; align-items:center; }
.v-plan-kicker{ font-family:var(--mono); font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--gold); }
.v-plan-badge{ font-family:var(--mono); font-size:11px; padding:4px 10px; background:var(--black); color:var(--gold-soft); letter-spacing:.06em; }
.v-plan-title{ font-family:var(--serif); font-size:24px; margin:12px 0 22px; }
.v-plan-steps{ list-style:none; margin:0; padding:0; position:relative; }
.v-plan-steps::before{ content:""; position:absolute; left:6px; top:8px; bottom:8px; width:1px; background:var(--gray-100); }
.v-plan-steps li{ display:flex; gap:16px; padding:10px 0; position:relative; }
.v-plan-steps strong{ display:block; font-size:14.5px; font-weight:600; }
.v-plan-steps small{ display:block; font-size:12.5px; color:var(--gray-600); }
.v-dot{ width:13px; height:13px; border-radius:50%; border:1.5px solid var(--gray-400); background:var(--white); flex-shrink:0; margin-top:4px; position:relative; z-index:1; }
.v-plan-steps .is-done .v-dot{ background:var(--gold); border-color:var(--gold); }
.v-plan-steps .is-now .v-dot{ border-color:var(--gold); box-shadow:0 0 0 5px rgba(166,128,60,.18); animation:vPulse 2.4s ease-in-out infinite; }
@keyframes vPulse{ 50%{ box-shadow:0 0 0 9px rgba(166,128,60,.06); } }
.v-plan-foot{ display:flex; align-items:center; gap:12px; margin-top:18px; padding-top:16px; border-top:1px solid var(--gray-100); font-family:var(--mono); font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:var(--gray-600); }
.v-plan-sep{ flex:1; height:1px; background:linear-gradient(90deg,var(--gold),transparent); }

/* ==========================================================
   2. PROBLEMA + COMPARATIVA
   ========================================================== */
.v-pains{
  display:grid; grid-template-columns:repeat(4,1fr); gap:1px;
  background:var(--gray-100); border:1px solid var(--gray-100);
  margin-bottom:72px;
}
.v-pains li{ background:var(--white); padding:28px 26px; font-size:15px; line-height:1.5; color:var(--gray-700); display:flex; flex-direction:column; gap:16px; transition:background .4s var(--ease); }
.v-pains li:hover{ background:var(--gray-050); }
.v-pains strong{ color:var(--black); font-weight:600; }
.v-pain-ico svg{ width:28px; height:28px; fill:none; stroke:var(--gold); stroke-width:1.4; stroke-linecap:round; stroke-linejoin:round; }
.v-pains li:last-child{ grid-column:span 1; }

.v-compare{ border:1px solid var(--gray-100); }
.v-compare-row{ display:grid; grid-template-columns:1fr 1fr; }
.v-compare-row + .v-compare-row{ border-top:1px solid var(--gray-100); }
.v-compare-row > span{ padding:20px 28px; font-size:15px; line-height:1.5; display:flex; align-items:center; gap:14px; }
.v-col-a{ color:var(--gray-600); background:var(--white); }
.v-col-b{ background:var(--black); color:var(--white); font-weight:500; }
.v-compare-row:not(.v-compare-headrow) .v-col-a::before{ content:"—"; color:var(--gray-400); flex-shrink:0; }
.v-compare-row:not(.v-compare-headrow) .v-col-b::before{
  content:""; width:18px; height:18px; flex-shrink:0;
  background:no-repeat center/18px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C9A961' stroke-width='2'%3E%3Cpath d='M5 12.5l4.2 4.2L19 7'/%3E%3C/svg%3E");
}
.v-compare-headrow > span{ font-family:var(--mono); font-size:12px; letter-spacing:.14em; text-transform:uppercase; padding-top:18px; padding-bottom:18px; }
.v-compare-headrow .v-col-a{ background:var(--gray-050); color:var(--gray-600); }
.v-compare-headrow .v-col-b{ color:var(--gold-light); border-left:3px solid var(--gold); }
.v-compare-row:not(.v-compare-headrow) .v-col-b{ border-left:3px solid var(--gold); }

/* ==========================================================
   3. SOLUCIÓN — tres caminos
   ========================================================== */
.v-paths{ display:grid; grid-template-columns:1fr 1fr 1.15fr; gap:20px; align-items:stretch; }
.v-path{ background:var(--white); border:1px solid var(--gray-100); padding:34px 30px; display:flex; flex-direction:column; }
.v-path-num{ font-family:var(--mono); font-size:11.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--gray-400); }
.v-path h3{ margin:14px 0 12px; font-size:22px; }
.v-path p{ color:var(--gray-600); font-size:14.5px; line-height:1.6; margin-bottom:22px; flex-grow:1; }
.v-path ul li{ font-size:13.5px; padding:9px 0; border-top:1px solid var(--gray-100); color:var(--gray-700); }
.v-path-featured{ background:var(--black); border-color:var(--black); color:var(--white); transform:translateY(-14px); box-shadow:0 30px 60px -30px rgba(20,18,15,.5); position:relative; }
.v-path-featured::before{ content:""; position:absolute; left:0; right:0; top:0; height:3px; background:var(--gold); }
.v-path-featured .v-path-num{ color:var(--gold-light); }
.v-path-featured h3{ color:var(--white); }
.v-path-featured p{ color:rgba(250,249,245,.72); }
.v-path-featured ul li{ border-color:rgba(250,249,245,.14); color:var(--white); }
.v-path-featured ul li::before{ content:"✓"; color:var(--gold-light); margin-right:10px; }

.v-traits{ display:grid; grid-template-columns:repeat(6,1fr); margin-top:56px; border-top:1px solid var(--gray-100); }
.v-traits li{ padding:22px 16px 0 0; font-family:var(--serif); font-size:17px; line-height:1.3; }
.v-traits span{ display:block; font-family:var(--mono); font-size:11.5px; color:var(--gold); margin-bottom:8px; }

/* ==========================================================
   4. PILARES
   ========================================================== */
.v-pillars{
  background:
    radial-gradient(ellipse 900px 600px at 100% 0%, rgba(166,128,60,.14), transparent 60%),
    var(--black);
}
.v-pillar-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.v-pillar{
  border:1px solid rgba(250,249,245,.12);
  background:rgba(250,249,245,.025);
  padding:34px 30px;
  display:flex; flex-direction:column;
  transition:border-color .5s var(--ease), background .5s var(--ease), transform .5s var(--ease);
}
.v-pillar:hover{ border-color:rgba(201,169,97,.55); background:rgba(250,249,245,.045); transform:translateY(-4px); }
.v-pillar-top{ display:flex; justify-content:space-between; align-items:center; margin-bottom:30px; }
.v-pillar-num{ font-family:var(--serif); font-style:italic; font-size:40px; line-height:1; color:var(--gold-light); }
.v-pillar-ico svg{ width:30px; height:30px; fill:none; stroke:var(--gold-soft); stroke-width:1.3; stroke-linecap:round; stroke-linejoin:round; }
.v-pillar h3{ color:var(--white); font-size:22px; line-height:1.25; margin-bottom:14px; }
.v-pillar p{ color:rgba(250,249,245,.7); font-size:14.5px; line-height:1.7; }
.v-pillar-note{ margin-top:auto; padding-top:18px; font-size:12.5px !important; color:var(--gold-soft) !important; font-family:var(--mono); letter-spacing:.01em; line-height:1.55 !important; }
.v-ticks{ margin:16px 0 4px; }
.v-ticks li{ position:relative; padding:7px 0 7px 26px; font-size:14px; color:rgba(250,249,245,.85); border-top:1px solid rgba(250,249,245,.08); }
.v-ticks li::before{ content:""; position:absolute; left:2px; top:13px; width:12px; height:7px; border-left:1.5px solid var(--gold-light); border-bottom:1.5px solid var(--gold-light); transform:rotate(-45deg); }

.v-video-slots{ display:grid; grid-template-columns:1fr 1fr; gap:8px; margin:18px 0 4px; }
.v-video-slot{
  aspect-ratio:16/10; position:relative;
  border:1px dashed rgba(201,169,97,.4);
  background:linear-gradient(135deg, rgba(250,249,245,.05), rgba(250,249,245,.01));
  padding:10px 10px 10px 10px; font-size:11.5px; line-height:1.35; color:rgba(250,249,245,.8);
  display:flex; align-items:flex-end;
}
.v-video-slot::before{
  content:""; position:absolute; top:10px; left:10px; width:22px; height:22px; border-radius:50%;
  border:1px solid rgba(201,169,97,.6);
  background:no-repeat 55% 50%/8px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 12'%3E%3Cpath d='M0 0l10 6-10 6z' fill='%23C9A961'/%3E%3C/svg%3E");
}

.v-pillar-vip{ border-color:rgba(201,169,97,.6); background:linear-gradient(160deg, rgba(166,128,60,.22), rgba(166,128,60,.04) 55%); }
.v-vip-badge{ font-family:var(--mono); font-size:12px; letter-spacing:.2em; padding:6px 12px; background:var(--gold); color:var(--black); font-weight:500; }
.v-vip-months{ display:grid; grid-template-columns:repeat(3,1fr); gap:6px; margin-top:auto; padding-top:22px; }
.v-vip-months span{ text-align:center; font-family:var(--mono); font-size:11px; letter-spacing:.1em; text-transform:uppercase; padding:10px 0; border:1px solid rgba(201,169,97,.5); color:var(--gold-light); }

/* ==========================================================
   5. AHORRO — calculadora
   ========================================================== */
.v-savings-grid{ display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; }
.v-savings-copy h2{ margin:16px 0 20px; }
.v-savings-points{ margin-top:30px; counter-reset:sp; }
.v-savings-points li{ counter-increment:sp; display:flex; gap:16px; padding:14px 0; border-top:1px solid var(--gray-100); font-size:15px; color:var(--gray-700); }
.v-savings-points li::before{ content:"0" counter(sp); font-family:var(--mono); font-size:12px; color:var(--gold); padding-top:3px; }

.v-calc{
  background:var(--white);
  border:1px solid var(--gray-100);
  box-shadow:0 40px 80px -40px rgba(20,18,15,.25);
  padding:40px 38px;
  position:relative;
}
.v-calc::before{ content:""; position:absolute; top:0; left:0; right:0; height:3px; background:linear-gradient(90deg,var(--gold),var(--gold-soft)); }
.v-calc-field{ margin-bottom:26px; }
.v-calc-field > label{ display:block; font-family:var(--mono); font-size:11.5px; letter-spacing:.08em; text-transform:uppercase; color:var(--gray-600); margin-bottom:10px; }
.v-calc-input{ display:flex; align-items:baseline; gap:10px; border-bottom:1px solid var(--gray-400); padding-bottom:6px; transition:border-color .3s; }
.v-calc-input:focus-within{ border-color:var(--gold); }
.v-calc-input input{ border:none; background:transparent; font-family:var(--serif); font-size:clamp(28px,3vw,38px); color:var(--black); width:100%; min-width:0; padding:0; }
.v-calc-input input:focus{ outline:none; }
.v-calc-input span{ font-family:var(--serif); font-size:24px; color:var(--gray-600); }
.v-calc-input-sm{ max-width:180px; }
.v-calc-field small{ display:block; margin-top:8px; font-size:12px; color:var(--gray-600); }
.v-calc input[type=range]{ width:100%; margin-top:16px; accent-color:var(--gold); height:28px; }
.v-calc-check{ display:flex; gap:12px; align-items:flex-start; font-size:14px; color:var(--gray-700); margin-bottom:28px; cursor:pointer; }
.v-calc-check input{ width:20px; height:20px; accent-color:var(--gold); margin:1px 0 0; flex-shrink:0; }
.v-calc-result{ background:var(--black); color:var(--white); padding:26px 28px; display:flex; flex-direction:column; gap:4px; margin-bottom:16px; }
.v-calc-result-label{ font-family:var(--mono); font-size:11px; letter-spacing:.12em; text-transform:uppercase; color:var(--gold-soft); }
.v-calc-result output{ font-family:var(--serif); font-size:clamp(38px,4.4vw,56px); line-height:1.1; color:var(--white); }
.v-calc-result-sub{ font-size:13.5px; color:rgba(250,249,245,.7); }
.v-calc-disclaimer{ font-size:12px; line-height:1.6; color:var(--gray-600); margin-bottom:24px; padding-left:12px; border-left:2px solid var(--gold-soft); }

/* ==========================================================
   6. PARA QUIÉN
   ========================================================== */
.v-fit-grid{ display:grid; grid-template-columns:1fr 1fr; gap:24px; max-width:1040px; margin:0 auto; }
.v-fit-card{ padding:40px 38px; background:var(--white); border:1px solid var(--gray-100); }
.v-fit-card h3{ display:flex; align-items:center; gap:14px; font-size:24px; margin-bottom:22px; }
.v-fit-ico{ width:38px; height:38px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; }
.v-fit-ico svg{ width:18px; height:18px; fill:none; stroke-width:2; }
.v-fit-yes{ border-top:3px solid var(--gold); }
.v-fit-yes .v-fit-ico{ background:var(--black); } .v-fit-yes .v-fit-ico svg{ stroke:var(--gold-light); }
.v-fit-no .v-fit-ico{ background:var(--gray-050); border:1px solid var(--gray-100); } .v-fit-no .v-fit-ico svg{ stroke:var(--gray-600); }
.v-fit-no{ background:transparent; }
.v-fit-card li{ padding:13px 0; border-top:1px solid var(--gray-100); font-size:15px; line-height:1.55; color:var(--gray-700); }
.v-fit-no li{ color:var(--gray-600); }

/* ==========================================================
   7. CÓMO FUNCIONA
   ========================================================== */
.v-steps{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(7,1fr); gap:0; position:relative; }
.v-steps::before{ content:""; position:absolute; left:20px; right:20px; top:20px; height:1px; background:linear-gradient(90deg,var(--gold),var(--gray-100)); }
.v-steps li{ position:relative; padding-right:18px; }
.v-step-n{ width:41px; height:41px; border-radius:50%; background:var(--white); border:1px solid var(--gold); display:flex; align-items:center; justify-content:center; font-family:var(--serif); font-size:17px; color:var(--gold); position:relative; z-index:1; margin-bottom:20px; transition:background .4s, color .4s; }
.v-steps li:hover .v-step-n, .v-steps li:nth-child(4) .v-step-n{ background:var(--black); color:var(--gold-light); border-color:var(--black); }
.v-steps h3{ font-size:17px; line-height:1.3; margin-bottom:8px; }
.v-steps p{ font-size:13.5px; line-height:1.55; color:var(--gray-600); }

/* ==========================================================
   8. FAQ
   ========================================================== */
.v-faq-grid{ display:grid; grid-template-columns:.8fr 1.2fr; gap:80px; align-items:start; }
.v-faq-grid .v-head{ position:sticky; top:110px; margin-bottom:0; }
.v-faq-grid .v-head .btn{ margin-top:30px; }
.v-faq .faq-item.is-open .faq-a{ max-height:420px; }

/* ==========================================================
   9. FORMULARIO DE CUALIFICACIÓN
   ========================================================== */
.v-qualify{
  background:
    radial-gradient(ellipse 900px 500px at 10% 0%, rgba(166,128,60,.18), transparent 60%),
    linear-gradient(180deg,#201C17 0%,#17140F 100%);
  color:var(--white);
  border-top:1px solid rgba(166,128,60,.35);
}
.v-qualify-grid{ display:grid; grid-template-columns:.8fr 1.2fr; gap:72px; align-items:start; }
.v-qualify-intro{ position:sticky; top:110px; }
.v-qualify-intro h2{ color:var(--white); margin:16px 0 20px; }
.v-qualify-intro .lede{ color:rgba(250,249,245,.72); }
.v-qualify-promises{ display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:rgba(250,249,245,.12); margin:36px 0; border:1px solid rgba(250,249,245,.12); }
.v-qualify-promises li{ background:#1B1813; padding:18px 16px; }
.v-qualify-promises strong{ display:block; font-family:var(--serif); font-weight:500; font-size:17px; color:var(--gold-light); }
.v-qualify-promises span{ font-size:12.5px; color:rgba(250,249,245,.6); }
.v-qualify-contact{ display:flex; flex-direction:column; gap:6px; font-family:var(--serif); font-size:18px; }
.v-qualify-contact a:hover{ color:var(--gold-light); }

.v-wizard{
  background:rgba(250,249,245,.035);
  border:1px solid rgba(250,249,245,.14);
  padding:38px 40px 36px;
  min-height:520px;
}
.v-wizard-progress{ margin-bottom:34px; }
.v-wizard-progress-meta{ display:flex; justify-content:space-between; font-family:var(--mono); font-size:11.5px; letter-spacing:.1em; text-transform:uppercase; color:rgba(250,249,245,.55); margin-bottom:12px; }
.v-wizard-progress-meta #v-step-label{ color:var(--gold-light); }
.v-wizard-track{ height:3px; background:rgba(250,249,245,.12); overflow:hidden; }
.v-wizard-fill{ height:100%; width:11%; background:linear-gradient(90deg,var(--gold),var(--gold-light)); transition:width .6s var(--ease); }

.v-form fieldset, .v-video-form{ border:0; margin:0; padding:0; min-width:0; }
.v-step{ display:none; }
.v-step.is-active{ display:block; animation:fadeUp .5s var(--ease); }
.v-step legend{ font-family:var(--serif); font-size:clamp(23px,2.5vw,30px); line-height:1.2; color:var(--white); padding:0; margin-bottom:12px; max-width:26ch; }
.v-hint{ font-size:14px; color:rgba(250,249,245,.62); line-height:1.6; margin:0 0 8px; max-width:56ch; }
.v-step .v-options{ margin-top:26px; }

.v-options{ display:grid; gap:10px; }
.v-options-1{ grid-template-columns:1fr; }
.v-options-2{ grid-template-columns:1fr 1fr; }
.v-options-3{ grid-template-columns:repeat(3,1fr); }
.v-opt-wide{ grid-column:1/-1; }
.v-opt{ position:relative; display:block; cursor:pointer; }
.v-opt input{ position:absolute; opacity:0; width:1px; height:1px; pointer-events:none; }
.v-opt-box{
  display:flex; flex-direction:column; align-items:flex-start; gap:12px;
  min-height:100%;
  padding:20px 18px;
  border:1px solid rgba(250,249,245,.22);
  color:var(--white); font-size:15px; font-weight:500; line-height:1.35;
  transition:border-color .25s, background .25s, color .25s, transform .2s;
  -webkit-tap-highlight-color:transparent;
}
.v-opt-box svg{ width:30px; height:30px; fill:none; stroke:var(--gold-light); stroke-width:1.3; stroke-linecap:round; stroke-linejoin:round; }
.v-opt-row .v-opt-box{ flex-direction:row; align-items:center; min-height:58px; padding:16px 18px 16px 50px; position:relative; }
.v-opt-row .v-opt-box::before{
  content:""; position:absolute; left:18px; top:50%; width:18px; height:18px; margin-top:-9px;
  border:1.5px solid rgba(250,249,245,.45); border-radius:50%; transition:all .25s;
}
.v-opt-multi .v-opt-box::before{ border-radius:3px; }
.v-opt:hover .v-opt-box{ border-color:rgba(201,169,97,.8); background:rgba(250,249,245,.03); }
.v-opt input:focus-visible + .v-opt-box{ outline:2px solid var(--gold-light); outline-offset:2px; }
.v-opt input:checked + .v-opt-box{ border-color:var(--gold); background:rgba(166,128,60,.18); color:var(--gold-light); }
.v-opt-row input:checked + .v-opt-box::before{ border-color:var(--gold-light); background:var(--gold-light); box-shadow:inset 0 0 0 3px #201C17; }
.v-opt-multi input:checked + .v-opt-box::before{
  box-shadow:none;
  background:var(--gold-light) no-repeat center/12px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2314120F' stroke-width='3.5'%3E%3Cpath d='M5 12.5l4.2 4.2L19 7'/%3E%3C/svg%3E");
}
.v-opt:active .v-opt-box{ transform:scale(.985); }
.v-options-compact .v-opt-box{ min-height:50px; }

.v-sub{ margin-top:22px; padding:22px; border:1px solid rgba(201,169,97,.35); background:rgba(166,128,60,.07); animation:fadeUp .4s var(--ease); }
.v-sub-q{ font-family:var(--serif); font-size:18px; margin-bottom:14px; }
.v-sub .v-options{ margin-top:0; }

.v-fields{ display:grid; grid-template-columns:1fr 1fr; gap:22px 24px; margin-top:26px; }
.v-field-full{ grid-column:1/-1; }
.v-field label{ display:block; font-family:var(--mono); font-size:11.5px; letter-spacing:.06em; text-transform:uppercase; color:rgba(250,249,245,.6); margin-bottom:10px; }
.v-optional{ text-transform:none; letter-spacing:0; color:rgba(250,249,245,.4); }
.v-field input, .v-field select, .v-field textarea{
  width:100%; background:rgba(250,249,245,.04); border:1px solid rgba(250,249,245,.22);
  color:var(--white); font-family:var(--sans); font-size:16px; /* 16px evita zoom en iOS */
  padding:14px 14px; border-radius:0; min-height:52px;
  transition:border-color .3s;
}
.v-field select{ appearance:none; -webkit-appearance:none; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C9A961' stroke-width='1.6'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 14px center; background-size:18px; padding-right:44px; }
.v-field select option, .v-field select optgroup{ background:#1B1813; color:var(--white); }
.v-field input::placeholder, .v-field textarea::placeholder{ color:rgba(250,249,245,.32); }
.v-field input:focus, .v-field select:focus, .v-field textarea:focus{ outline:none; border-color:var(--gold); }
.v-field [aria-invalid="true"]{ border-color:#D98C6A; }

.v-consents{ margin-top:26px; display:flex; flex-direction:column; gap:14px; }
.v-check{ display:flex; gap:14px; align-items:flex-start; font-size:14px; line-height:1.55; color:rgba(250,249,245,.82); cursor:pointer; }
.v-check input{ width:22px; height:22px; flex-shrink:0; margin:0; accent-color:var(--gold); }
.v-check a, .v-legal a{ color:var(--gold-light); border-bottom:1px solid currentColor; }
.v-check em{ color:rgba(250,249,245,.45); font-style:normal; font-size:12.5px; }
.v-legal{ font-size:11.5px; line-height:1.6; color:rgba(250,249,245,.48); }
.v-legal strong{ color:rgba(250,249,245,.65); font-weight:600; }

.v-error{ margin-top:18px; padding:12px 14px; border-left:3px solid #D98C6A; background:rgba(217,140,106,.1); font-size:14px; color:#F1C4AE; }
.v-nav{ display:flex; justify-content:space-between; align-items:center; gap:16px; margin-top:34px; }
.v-back{ background:none; border:none; color:rgba(250,249,245,.6); font-size:14px; padding:12px 4px; display:inline-flex; align-items:center; gap:8px; }
.v-back::before{ content:"←"; }
.v-back:hover{ color:var(--white); }
.v-step[data-step="1"] .v-back{ visibility:hidden; }
.v-next, .v-submit{ min-height:52px; }
.v-submit[disabled]{ opacity:.6; pointer-events:none; }
.v-hp{ position:absolute !important; left:-9999px !important; width:1px; height:1px; overflow:hidden; }

/* Resultado */
.v-result{ animation:fadeUp .6s var(--ease); outline:none; }
.v-result-panel{ text-align:left; }
.v-result-ico{ width:58px; height:58px; border-radius:50%; border:1px solid var(--gold); display:flex; align-items:center; justify-content:center; margin-bottom:26px; }
.v-result-ico svg{ width:26px; height:26px; fill:none; stroke:var(--gold-light); stroke-width:1.8; }
.v-result-panel h3{ color:var(--white); font-size:clamp(25px,2.8vw,34px); line-height:1.2; margin-bottom:16px; }
.v-result-panel p{ color:rgba(250,249,245,.75); font-size:15.5px; line-height:1.7; max-width:52ch; margin-bottom:16px; }
.v-result-panel p a{ color:var(--gold-light); border-bottom:1px solid currentColor; }
.v-result-panel .btn{ margin-top:12px; }
.v-result-small{ margin-top:10px; font-size:13.5px !important; color:rgba(250,249,245,.55) !important; }
.v-video-form, .v-video-done{ margin-top:34px; padding-top:30px; border-top:1px solid rgba(250,249,245,.14); animation:fadeUp .5s var(--ease); }
.v-video-form h4, .v-video-done h4{ font-family:var(--serif); font-size:22px; color:var(--white); margin:0 0 8px; font-weight:500; }
.v-video-form .v-options{ margin:20px 0 22px; }
.v-video-form .btn{ margin-top:24px; }
.v-video-done p{ color:rgba(250,249,245,.72); font-size:15px; line-height:1.65; }

/* ---------- CTA fija móvil ---------- */
.v-sticky{ display:none; }
@media (max-width:860px){
  .v-sticky{
    display:block; position:fixed; left:0; right:0; bottom:0; z-index:90;
    padding:10px 16px calc(10px + env(safe-area-inset-bottom));
    background:rgba(250,249,245,.96); backdrop-filter:blur(8px);
    border-top:1px solid var(--gray-100);
    transform:translateY(110%); transition:transform .45s var(--ease);
  }
  .v-sticky.is-visible{ transform:none; }
  .v-sticky .btn{ width:100%; justify-content:center; min-height:50px; }
}

/* ==========================================================
   RESPONSIVE
   ========================================================== */
@media (max-width:1100px){
  .v-pains{ grid-template-columns:repeat(2,1fr); }
  .v-pains li:last-child{ grid-column:1/-1; }
  .v-steps{ grid-template-columns:repeat(4,1fr); row-gap:40px; }
  .v-steps::before{ display:none; }
  .v-traits{ grid-template-columns:repeat(3,1fr); row-gap:10px; }
}
@media (max-width:980px){
  .v-hero-grid{ grid-template-columns:1fr; gap:48px; }
  .v-plan-card{ max-width:440px; }
  .v-pillar-grid{ grid-template-columns:1fr 1fr; }
  .v-paths{ grid-template-columns:1fr; }
  .v-path-featured{ transform:none; }
  .v-savings-grid, .v-faq-grid, .v-qualify-grid{ grid-template-columns:1fr; gap:48px; }
  .v-faq-grid .v-head, .v-qualify-intro{ position:static; }
}
@media (max-width:700px){
  .v-hero{ padding:112px 0 64px; min-height:auto; }
  .v-hero h1{ font-size:clamp(31px,8.4vw,40px); }
  .v-hero-benefits{ flex-direction:column; align-items:stretch; margin:26px 0 30px; }
  .v-hero-actions{ flex-direction:column; }
  .v-hero-actions .btn{ width:100%; justify-content:center; }
  .v-plan-card{ padding:24px 22px 20px; }
  .v-head{ margin-bottom:40px; }
  .v-pains{ grid-template-columns:1fr; margin-bottom:48px; }
  .v-pains li{ flex-direction:row; align-items:center; padding:18px 18px; }
  .v-pain-ico svg{ width:24px; height:24px; }
  .v-compare-row{ grid-template-columns:1fr; }
  .v-compare-headrow{ display:none; }
  .v-compare-row > span{ padding:14px 18px; font-size:14.5px; }
  .v-compare-row .v-col-a{ font-size:13.5px; }
  .v-compare-row .v-col-a::after{ content:"Tradicional"; margin-left:auto; font-family:var(--mono); font-size:9.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--gray-400); }
  .v-traits{ grid-template-columns:1fr 1fr; }
  .v-pillar-grid{ grid-template-columns:1fr; }
  .v-pillar{ padding:28px 22px; }
  .v-calc{ padding:30px 22px; }
  .v-fit-grid{ grid-template-columns:1fr; }
  .v-fit-card{ padding:30px 22px; }
  .v-steps{ grid-template-columns:1fr; row-gap:0; }
  .v-steps li{ display:grid; grid-template-columns:41px 1fr; column-gap:18px; padding:0 0 22px; }
  .v-steps li::after{ content:""; position:absolute; left:20px; top:41px; bottom:0; width:1px; background:var(--gray-100); }
  .v-steps li:last-child::after{ display:none; }
  .v-step-n{ grid-row:span 2; margin-bottom:0; }
  .v-steps h3{ margin:8px 0 4px; }
  .v-qualify-promises{ grid-template-columns:1fr; }
  .v-wizard{ padding:26px 18px 24px; margin:0 calc(var(--gutter) * -1 + 8px); min-height:0; }
  .v-options-2, .v-options-3{ grid-template-columns:1fr; }
  .v-step[data-step="1"] .v-options-3{ grid-template-columns:1fr 1fr; }
  .v-options-compact.v-options-3{ grid-template-columns:repeat(3,1fr); }
  .v-opt-box{ padding:16px 14px; }
  .v-fields{ grid-template-columns:1fr; }
  .v-nav{ position:sticky; bottom:0; background:linear-gradient(180deg, rgba(27,24,19,0), #1B1813 30%); padding:18px 0 6px; margin-top:22px; }
  .v-nav .btn{ flex:1; justify-content:center; }
  .v-inline-cta .btn{ width:100%; justify-content:center; }
  .page-venta .site-footer{ padding-bottom:90px; }
}

/* Botón «Continuar» en pasos de avance automático: solo visible si ya hay respuesta (p. ej. al volver atrás) */
.v-next-auto{ display:none; }
.v-step.has-answer .v-next-auto{ display:inline-flex; }
@media (max-width:700px){
  .v-pains{ grid-template-columns:minmax(0,1fr); }
  .v-pains li{ display:grid; grid-template-columns:24px minmax(0,1fr); gap:14px; align-items:center; }
}
.v-hero, .v-pillars, .v-qualify{ overflow-x:clip; }
.v-pains li.v-pain-answer{ background:var(--black); padding:0; }
.v-pains li.v-pain-answer:hover{ background:#24201a; }
.v-pain-answer a{ display:flex; flex-direction:column; justify-content:space-between; gap:16px; height:100%; padding:28px 26px; color:rgba(250,249,245,.8); font-size:15px; }
.v-pain-answer strong{ color:var(--gold-light) !important; }
.v-pain-answer svg{ width:22px; height:22px; color:var(--gold-light); transition:transform .4s var(--ease); }
.v-pain-answer a:hover svg{ transform:translateX(5px); }
@media (max-width:1100px){ .v-pains li:last-child{ grid-column:auto; } }
@media (max-width:700px){ .v-pains li.v-pain-answer{ display:block; } .v-pain-answer a{ flex-direction:row; align-items:center; padding:18px; } }
@media (max-width:700px){
  .v-hero-benefits{ gap:4px; }
  .v-hero-benefits li{ padding:6px 0; border:none; background:none; backdrop-filter:none; font-size:14.5px; }
}

/* Ajustes tras pruebas en móvil */
.v-opt{ -webkit-tap-highlight-color:transparent; }
.v-options-1{ grid-template-columns:minmax(0,1fr); }
.v-options-2{ grid-template-columns:repeat(2,minmax(0,1fr)); }
.v-options-3{ grid-template-columns:repeat(3,minmax(0,1fr)); }
.v-options-compact .v-opt-row .v-opt-box{ padding-left:42px; }
.v-options-compact .v-opt-row .v-opt-box::before{ left:14px; }
.v-qualify .btn-primary{ background:var(--gold); border-color:var(--gold); color:var(--black); }
.v-qualify .btn-primary:hover{ background:var(--white); border-color:var(--white); }
.v-result, .v-wizard{ min-width:0; overflow-wrap:break-word; }
@media (max-width:700px){
  .v-options-2, .v-options-3{ grid-template-columns:minmax(0,1fr); }
  .v-step[data-step="1"] .v-options-3{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .v-step .v-options-compact.v-options-3{ grid-template-columns:repeat(3,minmax(0,1fr)); }
  .v-video-form .v-options-compact.v-options-3{ grid-template-columns:minmax(0,1fr); }
  .v-options-compact .v-opt-row .v-opt-box{ padding-left:38px; padding-right:8px; }
  .v-options-compact .v-opt-row .v-opt-box::before{ left:12px; }
}

/* Variante de proceso con 6 pasos (Comprar / Invertir) */
.v-steps-6{ grid-template-columns:repeat(6,1fr); }
@media (max-width:1100px){ .v-steps-6{ grid-template-columns:repeat(3,1fr); } }
@media (max-width:700px){ .v-steps-6{ grid-template-columns:1fr; } }
/* Notas en pilares claros */
.v-pillar .v-ticks + .v-pillar-note, .v-pillar p + .v-pillar-note{ margin-top:auto; }

/* ---------- Home: compromisos y guías ---------- */
.trust-commitments .tstat-num{ font-size:clamp(24px,2.4vw,32px) !important; }
.guide-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.guide-card{ display:flex; flex-direction:column; background:var(--white); border:1px solid var(--gray-100); padding:30px 28px; transition:border-color .4s var(--ease), transform .4s var(--ease); min-height:100%; }
.guide-card:hover{ border-color:var(--gold); transform:translateY(-3px); }
.guide-card .guide-cat{ font-family:var(--mono); font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--gold); }
.guide-card h3{ font-size:21px; line-height:1.3; margin:14px 0 12px; }
.guide-card p{ color:var(--gray-600); font-size:14.5px; line-height:1.65; flex-grow:1; }
.guide-card .guide-more{ margin-top:20px; font-size:13px; font-weight:600; color:var(--black); }
.contact-info .lede a{ color:var(--gold-light); border-bottom:1px solid currentColor; }
@media (max-width:860px){ .guide-grid{ grid-template-columns:1fr; } }
.page-home .site-header:not(.is-scrolled) .logo, .page-home .site-header:not(.is-scrolled) .nav-links a{ color:var(--white); }
.page-home .site-header:not(.is-scrolled) .header-cta{ color:var(--white); border-color:rgba(250,249,245,.55); }
.page-home .site-header:not(.is-scrolled) .nav-toggle span{ background:var(--white); }
@media (max-width:860px){ .page-home .site-header .nav-links a{ color:var(--gray-700) !important; } }

/* ==========================================================
   BLOG / GUÍAS
   ========================================================== */
.page-blog .site-header{ background:rgba(250,249,245,.95); border-color:var(--gray-100); }
.article-main{ padding:130px 0 100px; }
.article-wrap{ max-width:1160px; }
.article-crumb{ font-family:var(--mono); font-size:11.5px; letter-spacing:.05em; text-transform:uppercase; color:var(--gray-600); margin-bottom:28px; }
.article-crumb a:hover{ color:var(--gold); }
.article-head{ max-width:820px; margin-bottom:40px; }
.article-head h1{ font-size:clamp(32px,4.2vw,52px); line-height:1.1; margin:18px 0 20px; font-weight:450; }
.article-excerpt{ font-size:clamp(17px,1.5vw,20px); line-height:1.6; color:var(--gray-700); }
.article-meta{ margin-top:18px; font-size:13px; color:var(--gray-600); }
.blog-head{ margin-bottom:56px; }
.article-figure{ margin:0 0 56px; aspect-ratio:16/9; overflow:hidden; background:var(--gray-100); }
.article-figure img{ width:100%; height:100%; object-fit:cover; }
.article-grid{ display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:72px; align-items:start; }
.article-body{ font-size:17px; line-height:1.8; color:#2b2721; max-width:70ch; }
.article-body h2{ font-size:clamp(25px,2.4vw,31px); line-height:1.25; margin:52px 0 18px; scroll-margin-top:96px; }
.article-body h3{ font-size:21px; margin:34px 0 12px; }
.article-body p{ margin:0 0 20px; }
.article-body ul, .article-body ol{ margin:0 0 24px; padding-left:22px; }
.article-body ul{ list-style:disc; }
.article-body ol{ list-style:decimal; }
.article-body li{ margin-bottom:8px; padding-left:4px; }
.article-body li::marker{ color:var(--gold); }
.article-body a{ color:var(--black); border-bottom:1px solid var(--gold); }
.article-body a:hover{ color:var(--gold); }
.article-body strong{ color:var(--black); }
.article-body em{ color:var(--gray-600); }
.article-table{ overflow-x:auto; margin:0 0 28px; }
.article-body table{ border-collapse:collapse; width:100%; font-size:14.5px; line-height:1.5; }
.article-body th, .article-body td{ border:1px solid var(--gray-100); padding:12px 14px; text-align:left; vertical-align:top; }
.article-body th{ background:var(--gray-050); font-weight:600; }
.article-aside{ position:sticky; top:110px; display:flex; flex-direction:column; gap:24px; }
.article-aside-t{ font-family:var(--serif); font-size:19px; margin-bottom:12px; color:var(--black); }
.article-toc{ border-left:2px solid var(--gold); padding-left:18px; }
.article-toc ol{ list-style:none; padding:0; margin:0; }
.article-toc li{ margin:0 0 8px; font-size:13.5px; line-height:1.4; }
.article-toc a{ color:var(--gray-600); }
.article-toc a:hover{ color:var(--gold); }
.article-cta{ background:var(--black); color:var(--white); padding:28px 26px; border-top:3px solid var(--gold); }
.article-cta .article-aside-t{ color:var(--white); }
.article-cta p{ font-size:14px; line-height:1.6; color:rgba(250,249,245,.75); margin-bottom:20px; }
.article-cta .btn{ background:var(--gold); border-color:var(--gold); color:var(--black); width:100%; justify-content:center; text-align:center; white-space:normal; }
.article-endcta{ margin:72px 0; padding:48px 44px; background:var(--gray-050); border:1px solid var(--gray-100); text-align:center; }
.article-endcta h2{ margin-bottom:14px; }
.article-endcta p{ color:var(--gray-700); max-width:56ch; margin:0 auto 26px; }
.article-related h2{ font-size:clamp(24px,2.4vw,30px); margin-bottom:28px; }
@media (max-width:980px){
  .article-grid{ grid-template-columns:1fr; gap:40px; }
  .article-aside{ position:static; }
  .article-toc{ display:none; }
}
@media (max-width:700px){
  .article-main{ padding:104px 0 70px; }
  .article-body{ font-size:16.5px; }
  .article-figure{ margin-bottom:36px; }
  .article-endcta{ padding:32px 20px; }
}

/* ==========================================================
   SOBRE NOVALIA / AUTOR
   ========================================================== */
.about-hero{ display:grid; grid-template-columns:1.3fr .7fr; gap:64px; align-items:center; margin-bottom:56px; }
.about-hero h1{ font-size:clamp(34px,4.4vw,56px); line-height:1.08; margin:18px 0 22px; font-weight:450; }
.about-hero h1 em{ color:var(--gold); }
.about-solo{ margin-top:22px; padding:18px 20px; border-left:3px solid var(--gold); background:var(--gray-050); font-size:16px; line-height:1.65; color:var(--gray-700); }
.about-portrait{ margin:0; }
.about-portrait img{ width:100%; aspect-ratio:4/5; object-fit:cover; }
.about-portrait figcaption{ margin-top:12px; font-family:var(--mono); font-size:11.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--gray-600); }
.about-monogram{ aspect-ratio:4/5; background:radial-gradient(ellipse at 30% 20%, rgba(166,128,60,.35), transparent 60%), var(--black); display:flex; align-items:center; justify-content:center; border-top:3px solid var(--gold); }
.about-monogram span{ font-family:var(--serif); font-style:italic; font-size:clamp(64px,8vw,110px); color:var(--gold-light); letter-spacing:.04em; }
.about-facts{ display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--gray-100); border-bottom:1px solid var(--gray-100); margin-bottom:64px; }
.about-facts div{ padding:26px 20px 24px 0; }
.about-facts div + div{ padding-left:24px; border-left:1px solid var(--gray-100); }
.about-facts strong{ display:block; font-family:var(--serif); font-weight:500; font-size:clamp(22px,2.4vw,30px); color:var(--black); }
.about-facts span{ font-size:13.5px; color:var(--gray-600); }
.about-grid{ display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:72px; align-items:start; }
.about-grid .article-body h2:first-child{ margin-top:0; }
.about-contact{ border:1px solid var(--gray-100); padding:22px 24px; }
.about-contact a{ color:var(--black); border-bottom:1px solid var(--gold); }
.author-box{ display:flex; gap:22px; align-items:flex-start; margin:56px 0 0; padding:28px; border:1px solid var(--gray-100); background:var(--white); max-width:820px; }
.author-avatar{ width:64px; height:64px; flex-shrink:0; border-radius:50%; background:var(--black); color:var(--gold-light); display:flex; align-items:center; justify-content:center; font-family:var(--serif); font-style:italic; font-size:22px; }
.author-name{ font-family:var(--serif); font-size:20px; }
.author-role{ font-family:var(--mono); font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:var(--gold); margin:4px 0 10px; }
.author-box p:last-child{ font-size:14.5px; line-height:1.65; color:var(--gray-700); }
.author-box a, .article-meta a{ color:var(--black); border-bottom:1px solid var(--gold); }
@media (max-width:980px){
  .about-hero, .about-grid{ grid-template-columns:1fr; gap:40px; }
  .about-portrait{ max-width:320px; }
  .about-facts{ grid-template-columns:1fr 1fr; }
  .about-facts div:nth-child(3){ border-left:none; padding-left:0; }
}
@media (max-width:560px){
  .about-facts{ grid-template-columns:1fr; }
  .about-facts div + div{ border-left:none; padding-left:0; border-top:1px solid var(--gray-100); }
  .author-box{ flex-direction:column; padding:22px; }
}
img.author-avatar{ object-fit:cover; display:block; }
/* Foto de Sobre Novalia: algo más pequeña y sin ampliar */
.about-portrait{ max-width:340px; justify-self:end; width:100%; }
@media (max-width:980px){ .about-portrait{ justify-self:start; max-width:300px; } }
/* Foto completa (como la original) y sin huecos en la cabecera */
.about-hero{ grid-template-columns:1.1fr .9fr; align-items:start; gap:56px; margin-top:8px; }
.about-portrait{ max-width:none; justify-self:stretch; }
.about-portrait img{ aspect-ratio:auto; height:auto; object-fit:contain; }
.about-hero h1{ margin-top:14px; }
@media (max-width:980px){ .about-portrait{ max-width:520px; justify-self:start; } }
@media (max-width:980px){ .about-hero{ grid-template-columns:1fr; gap:32px; } .about-portrait{ order:-1; max-width:none; } }
/* Avatar de autor: foto original completa, un poco más grande */
img.author-avatar{ width:96px; height:96px; border-radius:50%; object-fit:cover; }
