.cert-page { --cert-ink:var(--site-text); --cert-blue:var(--site-link); --cert-muted:var(--site-muted); --cert-line:var(--site-line); color:var(--cert-ink); background:#fff; font-family:var(--site-font-body); line-height:1.7; }
.cert-page .container { max-width:1200px; }
.cert-page [hidden] { display:none!important; }
/* La ayuda junto al resumen abre el mismo modal sin tapar los controles de compra. */
.cert-page ~ .sf-call-widget { display:none; }
.cert-page h1,.cert-page h2,.cert-page h3 { font-family:var(--site-font-heading); color:var(--cert-ink); font-weight:700; margin:0; }
.cert-page h1 { font-size:var(--site-title-size); line-height:1.5; letter-spacing:2px; font-weight:700; }
.cert-page h2 { font-size:var(--site-title-size); letter-spacing:2px; line-height:1.5; font-weight:700; }
.cert-page h3 { font-size:var(--site-subtitle-size); line-height:1.5; letter-spacing:normal; font-weight:600; }
.cert-page p { margin:0; }
.cert-page a { color:var(--site-link); }
.cert-page a:hover { color:var(--site-text); text-decoration:underline; }
.cert-page a:focus-visible,.cert-page button:focus-visible,.cert-page input:focus-visible,.cert-page summary:focus-visible { outline:3px solid var(--site-link); outline-offset:5px; }
.cert-page [id] { scroll-margin-top:30px; }
.cert-hero { padding:62px 0 45px; }
.cert-page .cert-eyebrow { color:var(--cert-blue); font-size:11px; font-weight:700; letter-spacing:.15em; text-transform:uppercase; margin-bottom:22px; display:flex; align-items:center; gap:12px; }
.cert-eyebrow::before { content:""; width:8px; height:8px; background:var(--site-accent); border-radius:50%; flex-shrink:0; }
.cert-page .cert-lead { color:var(--cert-blue); font-size:var(--site-body-size); line-height:1.8; max-width:890px; margin:15px 0 23px; }
.cert-link { font-weight:600; font-size:14px; display:inline-flex; align-items:center; gap:10px; }
.cert-shop { display:grid; grid-template-columns:minmax(0,1fr) 350px; gap:48px; align-items:start; }
.cert-catalog-head { display:flex; align-items:center; justify-content:space-between; gap:16px; margin:0 0 18px; }
.cert-catalog-head h2 { font-size:var(--site-title-size); line-height:1.5; letter-spacing:2px; font-weight:700; }
.cert-catalog-head span { font-size:13px; white-space:nowrap; }
.cert-documents { border-top:1px solid var(--cert-line); }
.cert-choice { display:grid; grid-template-columns:22px minmax(0,1fr) auto; align-items:center; gap:21px; min-height:88px; padding:17px 20px; border-bottom:1px solid var(--cert-line); margin:0; cursor:pointer; transition:background .15s; font-weight:400; }
.cert-choice:hover { background:var(--site-surface); }
.cert-choice.is-selected { background:var(--site-soft-green); }
.cert-choice.is-unavailable { cursor:default; color:var(--cert-muted); }
.cert-choice input { width:20px; height:20px; accent-color:var(--site-link); margin:0; cursor:pointer; }
.cert-choice input:disabled { cursor:default; }
.cert-choice strong { display:block; font-size:19px; line-height:1.4; }
.cert-choice small { display:block; color:var(--cert-muted); font-size:15px; margin-top:3px; }
.cert-price { font-weight:700; font-size:18px; text-align:right; white-space:nowrap; }
.cert-summary { background:var(--cert-ink); color:#fff; border-radius:6px; padding:28px; }
.cert-summary h2 { color:#fff; font-size:var(--site-title-size); line-height:1.5; letter-spacing:2px; font-weight:700; }
.cert-page .cert-count { color:var(--site-on-dark); font-size:15px; margin:14px 0 24px; }
.cert-summary-list { list-style:none; margin:0; padding:0; border-top:1px solid var(--site-muted); }
.cert-summary-list li { display:flex; justify-content:space-between; gap:16px; padding:20px 0; font-size:15px; line-height:1.5; }
.cert-summary-list li strong { white-space:nowrap; }
.cert-page .cert-empty { font-size:14px; color:var(--site-on-dark); padding:18px 0; }
.cert-total { border-top:1px solid var(--site-muted); display:flex; align-items:baseline; justify-content:space-between; gap:12px; padding:23px 0; }
.cert-total>span { font-size:17px; }
.cert-total strong { font-family:var(--site-font-heading); font-size:32px; line-height:1.3; text-align:right; }
.cert-total small { font:13px Lato,sans-serif; white-space:nowrap; }
.cert-add { width:100%; border:0; border-radius:5px; padding:14px 12px; background:var(--site-accent); color:#102d1b; font-size:15px; font-weight:700; cursor:pointer; }
.cert-add:hover { background:#85d38b; }
.cert-add:disabled { background:var(--site-text); color:var(--site-on-dark); cursor:not-allowed; }
.cert-help { margin-top:29px; }
.cert-help h3 { font-size:var(--site-subtitle-size); line-height:1.5; letter-spacing:normal; font-weight:600; }
.cert-help p { color:var(--cert-muted); font-size:16px; margin:10px 0; }
.cert-call { display:block; padding:10px 14px; margin-top:18px; border:1px solid var(--site-line); border-radius:5px; background:white; color:var(--site-link); font-size:14px; cursor:pointer; }
.cert-call:hover { background:var(--site-surface); }
.cert-exempt { border:1px solid var(--cert-line); border-radius:5px; margin-top:24px; }
.cert-exempt summary { padding:17px 20px; cursor:pointer; font-size:15px; font-weight:700; }
.cert-exempt>div { padding:0 20px 20px; font-size:14px; color:var(--cert-muted); }
.cert-exempt p+p { margin-top:12px; }
.cert-note { display:flex; align-items:flex-start; gap:16px; padding:19px 22px; background:var(--site-surface); border-radius:5px; font-size:14px; color:var(--cert-muted); }
.cert-note>.mdi { color:var(--cert-blue); font-size:23px; line-height:1.25; flex-shrink:0; }
.cert-shop-note { margin-top:25px; }
.cert-note a { font-weight:600; }
.cert-route { padding-top:70px; padding-bottom:60px; border-bottom:1px solid var(--cert-line); }
.cert-section-intro { color:var(--cert-muted); font-size:var(--site-body-size); margin-top:13px!important; }
.cert-steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); list-style:none; padding:0; margin:39px 0 28px; }
.cert-steps li { position:relative; padding:0 20px; text-align:center; }
.cert-steps li::before { content:""; position:absolute; height:1px; background:var(--cert-line); top:22px; left:0; right:0; }
.cert-steps li:first-child::before { left:50%; }
.cert-steps li:last-child::before { right:50%; }
.cert-step-number { position:relative; display:inline-flex; align-items:center; justify-content:center; width:45px; height:45px; background:#fff; border:1px solid var(--cert-line); border-radius:50%; font-weight:700; color:var(--site-link); }
.cert-steps .mdi { display:block; font-size:32px; color:var(--site-link); margin:13px 0 11px; }
.cert-steps h3 { font-size:var(--site-subtitle-size); line-height:1.5; letter-spacing:normal; font-weight:600; }
.cert-steps p { color:var(--cert-muted); font-size:16px; line-height:1.8; margin-top:13px; }
.cert-note-success { background:var(--site-soft-green); color:var(--site-link); }
.cert-note-success>.mdi { color:var(--site-link); }
.cert-preparation { padding-top:55px; padding-bottom:55px; }
.cert-prep-columns { display:grid; grid-template-columns:1fr 1fr; gap:50px; margin:30px 0; }
.cert-prep-item { display:flex; align-items:flex-start; gap:20px; }
.cert-prep-item+.cert-prep-item { border-left:1px solid var(--cert-line); padding-left:40px; }
.cert-prep-item>.mdi { font-size:28px; color:var(--cert-blue); flex-shrink:0; line-height:1.4; }
.cert-prep-item p { color:var(--cert-muted); font-size:15px; margin-top:13px; }
.cert-terms { font-size:13px; color:var(--cert-muted); margin-top:15px!important; }
.cert-software { border-top:1px solid var(--cert-line); padding:30px 0 60px; display:flex; align-items:flex-start; gap:20px; }
.cert-software>.mdi { font-size:27px; color:var(--cert-blue); }
.cert-software h3 { font-size:var(--site-subtitle-size); line-height:1.5; letter-spacing:normal; font-weight:600; }
.cert-software p { color:var(--cert-muted); font-size:14px; margin:9px 0 14px; }
.cert-software-links { display:flex; flex-wrap:wrap; gap:12px 28px; font-size:14px; }
.cert-software-links small { display:block; color:var(--cert-muted); margin-top:3px; }
@media (max-width:991px) { .cert-shop { grid-template-columns:minmax(0,1fr) 280px; gap:25px; } .cert-summary { padding:22px; } .cert-choice { padding:17px 12px; gap:13px; } .cert-steps li { padding:0 12px; } }
@media (max-width:767px) { .cert-page .container { padding-left:22px; padding-right:22px; } .cert-hero { padding:38px 0 30px; } .cert-page h2 { font-size:var(--site-title-size); line-height:1.5; letter-spacing:2px; font-weight:700; } .cert-shop { grid-template-columns:1fr; gap:28px; } .cert-catalog-head h2 { font-size:var(--site-title-size); line-height:1.5; letter-spacing:2px; font-weight:700; } .cert-catalog-head span { font-size:12px; } .cert-choice { gap:12px; padding:16px 9px; } .cert-choice strong { font-size:15px; } .cert-choice small { font-size:12px; } .cert-price { font-size:14px; } .cert-summary h2 { font-size:var(--site-title-size); line-height:1.5; letter-spacing:2px; font-weight:700; } .cert-help { margin-top:23px; } .cert-route { padding-top:46px; padding-bottom:36px; } .cert-steps { grid-template-columns:1fr; gap:25px; margin-top:30px; } .cert-steps li { padding:0 0 0 65px; text-align:left; min-height:115px; } .cert-steps li::before,.cert-steps li:first-child::before { left:22px; right:auto; top:44px; bottom:-26px; height:auto; width:1px; } .cert-steps li:last-child::before { display:none; } .cert-step-number { position:absolute; left:0; top:0; } .cert-steps .mdi { display:inline-block; margin:0 0 8px; font-size:26px; line-height:1; } .cert-steps p { margin-top:9px; } .cert-preparation { padding-top:35px; padding-bottom:30px; } .cert-prep-columns { grid-template-columns:1fr; gap:27px; } .cert-prep-item+.cert-prep-item { padding-left:0; border-left:0; border-top:1px solid var(--cert-line); padding-top:27px; } .cert-note { padding:17px; font-size:13px; gap:12px; } .cert-software { padding-bottom:45px; } }
@media (prefers-reduced-motion:reduce) { .cert-choice { transition:none; } }
