/* Tres identidades dentro de la misma marca. La estructura permite comparar. */
.plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
.plan-card{
  --plan-bg:#f1e7dc;--plan-ink:#37291f;--plan-muted:#6b5140;
  --plan-line:#d9c6b5;--plan-accent:#8d4117;--plan-icon-bg:#e8d7c6;
  --plan-button:#fffaf5;--plan-button-ink:#733510;--plan-button-hover:#fff;
  min-width:0;padding:28px;border:1px solid var(--plan-line);border-radius:24px;
  background:var(--plan-bg);color:var(--plan-ink);display:flex;flex-direction:column;
}
.plan-card--pro{
  --plan-bg:#a4481b;--plan-ink:#fffaf5;--plan-muted:#fae2d2;
  --plan-line:#bd6b46;--plan-accent:#ffdcc2;--plan-icon-bg:#b35b31;
  --plan-button:#fffaf5;--plan-button-ink:#843b19;--plan-button-hover:#fff;
}
.plan-card--estudio{
  --plan-bg:#102f39;--plan-ink:#f7f5f1;--plan-muted:#c4d3d7;
  --plan-line:#3d5962;--plan-accent:#eec5a6;--plan-icon-bg:#24434e;
  --plan-button:#f7f5f1;--plan-button-ink:#102f39;--plan-button-hover:#fff;
}
.plan-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:28px}
.plan-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:var(--plan-icon-bg);color:var(--plan-accent);flex:none}
.plan-icon svg{width:22px;height:22px;stroke-width:1.7}
.plan-status{font-size:11px;font-weight:500;line-height:1.4;color:var(--plan-muted);border:1px solid var(--plan-line);border-radius:99px;padding:6px 10px}
.plan-card p{margin:0}
.plan-card .plan-audience{font:500 10px/1.5 'IBM Plex Mono',monospace;letter-spacing:.07em;text-transform:uppercase;color:var(--plan-accent);margin-bottom:9px}
.plan-card h3{font-size:34px;line-height:1.1;letter-spacing:-.04em;margin:0 0 16px;color:var(--plan-ink)}
.plan-description{font-size:14px;line-height:1.65;color:var(--plan-muted)}
.plan-proposal{border-top:1px solid var(--plan-line);padding-top:22px;margin-top:24px;flex:1}
.plan-caption{font-size:12px;font-weight:600;line-height:1.5;color:var(--plan-ink)}
.plan-proposal ul{list-style:none;padding:0;margin:16px 0 26px;display:grid;gap:12px}
.plan-proposal li{position:relative;padding-left:17px;font-size:13px;line-height:1.6;color:var(--plan-muted)}
.plan-proposal li::before{content:'';position:absolute;left:0;top:.65em;width:5px;height:5px;border-radius:50%;background:var(--plan-accent)}
.plan-card .plan-price{border-top:1px solid var(--plan-line);padding-top:20px;margin-bottom:22px}
.plan-price strong{display:block;font-size:17px;line-height:1.3;letter-spacing:-.02em;color:var(--plan-ink);margin-bottom:8px}
.plan-price span{display:block;font-size:12px;line-height:1.6;color:var(--plan-muted)}
.plan-card .plan-cta{width:100%;min-height:48px;display:flex;justify-content:space-between;gap:10px;padding:15px 18px;background:var(--plan-button);color:var(--plan-button-ink);border:1px solid transparent}
.plan-cta svg{width:18px;height:18px;flex:none}
.plan-cta:focus-visible{outline:3px solid var(--plan-accent);outline-offset:4px}
@media(hover:hover) and (pointer:fine){.plan-cta:hover{background:var(--plan-button-hover)}}
@media(min-width:901px){.plan-intro{min-height:160px}.plan-price{min-height:104px}}
@media(max-width:900px){.plan-grid{grid-template-columns:1fr;max-width:620px;margin-inline:auto}.plan-card{padding:28px}.plan-top{margin-bottom:22px}}
@media(max-width:380px){.plan-card{padding:22px}.plan-card h3{font-size:32px}.plan-card .plan-cta{font-size:13px;padding-inline:15px}}
@media(forced-colors:active){.plan-card,.plan-icon,.plan-status,.plan-proposal,.plan-price,.plan-card .plan-cta{border:1px solid CanvasText}.plan-proposal li::before{background:CanvasText}}
