/* =====================================================================
   requisitos.html — estilos propios (usa las variables de site.css)
   ===================================================================== */

.req-top{padding-top:clamp(28px,5vw,64px)}

/* cabecera: H1 + sello estático */
.req-hero{display:grid;grid-template-columns:minmax(0,1fr) 72px;grid-template-areas:"t t" "l s";gap:20px 16px;align-items:center}
.req-hero__title{grid-area:t;max-width:15ch}
.req-hero .lead{grid-area:l}
.req-hero .sello.sello--static{grid-area:s;position:static;width:72px;height:72px;justify-self:end}
.req-hero .sello text{font-size:9.5px;letter-spacing:.06em}
@media (min-width:768px){
  .req-hero{grid-template-columns:auto 72px;grid-template-areas:"t s" "l l";justify-content:start;column-gap:32px;align-items:start}
  .req-hero .sello.sello--static{align-self:start;justify-self:start;margin-top:8px}
}

/* conmutador de pestañas */
.req-sentinel{height:1px;margin-top:27px}
.req-tabs{display:flex;align-items:center;gap:20px}
.req-tabs .seg{flex:1 1 auto}
.req-tabs__hint{display:none}
@media (min-width:768px){
  .req-tabs .seg{flex:0 1 520px}
  .req-tabs__hint{display:inline}
}
@media (max-width:767px){
  .req-tabs{position:sticky;top:var(--header-h);z-index:30;margin-inline:calc(var(--gutter) * -1);padding:10px var(--gutter);background:#fff;border-bottom:1px solid transparent;transition:border-color .2s}
  .req-tabs.is-stuck{border-bottom-color:var(--line)}
  .req-tabs .seg{max-width:none}
  .req-tabs .seg button{font-size:.875rem;line-height:1.2;padding:0 8px}
}

/* paneles */
.req-panels{margin-top:20px}
.req-panel[hidden]{display:none}
.req-panel:focus-visible{outline-offset:4px;border-radius:var(--r-lg)}
body:has(.seg[data-active]) .req-panel{transition:opacity .18s var(--ease-out),transform .18s var(--ease-out)}
body:has(.seg[data-active]) .req-panel:not(.is-in){opacity:0;transform:translateY(4px)}
.req-panel__title{font:600 clamp(1.375rem,2.2vw,1.75rem)/1.2 var(--font-display);letter-spacing:-.01em}

/* checklist con hairlines */
.req-list{gap:0;margin-top:4px;border-top:var(--hair)}
.req-list li{padding:16px 0;border-bottom:var(--hair)}
.req-list b{line-height:1.35}
.req-list span{margin-top:2px}
.checklist .req-air{margin-top:16px;padding:16px;border:1px dashed var(--line-strong);border-radius:var(--r-md);background:#fff}
.checklist .req-air .ico path{stroke-dasharray:none;stroke-dashoffset:0}
.checklist .req-air .tag{font-size:.6875rem;color:var(--primary);margin:0 0 6px}

/* tarjeta «Tu lista» */
.req-pass{align-self:start;width:100%}
@media (min-width:640px) and (max-width:1023px){.req-pass{max-width:460px}}
.req-pass .pass__head{flex-wrap:wrap;row-gap:4px}
.req-pass .pass__head .tag{white-space:nowrap}
.req-pass__end{text-align:right}
.req-pass__list{list-style:none;margin:0;padding:6px 20px 4px;font:500 .8125rem/1.4 var(--font-mono)}
.req-pass__list li{display:grid;grid-template-columns:28px minmax(0,1fr) 14px;gap:10px;align-items:center;padding:11px 0;border-bottom:1px dashed var(--line)}
.req-pass__list li:last-child{border-bottom:0}
.req-pass__n{color:var(--primary)}
.req-box{width:14px;height:14px;border:1px solid var(--line-strong);border-radius:3px}
.req-pass .btn{white-space:normal;line-height:1.25;padding-block:12px}
.req-pass__note{display:grid;grid-template-columns:20px 1fr;gap:10px;align-items:start;font-size:.875rem;line-height:1.5;color:var(--muted)}
.req-pass__note .ico{width:20px;height:20px;color:var(--primary);margin-top:1px}

/* FAQ */
.faq summary{min-height:44px}
.faq details[open] .faq__a{animation:req-open .26s var(--ease-out)}
@keyframes req-open{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}

@media (prefers-reduced-motion:reduce){
  body:has(.seg[data-active]) .req-panel:not(.is-in){opacity:1;transform:none}
  .faq details[open] .faq__a{animation:none}
}
