/* Pérez & Burgos — biblioteca de modelos jurídicos, V164. */
:root{
  --model-navy:var(--ink,#102e3c);
  --model-ink:#334950;
  --model-gold:var(--accent,#b58c5c);
  --model-pale:#f3eee6;
  --model-paper:#fffdf9;
  --model-line:rgba(16,46,60,.16);
}
.model-library-page{color:var(--model-ink);background:var(--model-paper)}
.model-library-page .site-header{z-index:30}
.model-hero,.model-detail-hero{overflow:hidden;color:#fff;background:radial-gradient(circle at 83% 15%,rgba(223,180,127,.18),transparent 30%),linear-gradient(122deg,#0c2935 0%,#113744 59%,#1b4a56 100%)}
.model-hero-grid,.model-detail-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(245px,.58fr);gap:clamp(32px,5vw,70px);align-items:center;padding-block:clamp(48px,5.6vw,68px)}
.model-hero h1,.model-detail-hero h1{max-width:850px;margin:8px 0 14px;color:#fff;font:500 clamp(2.35rem,3.8vw,3.85rem)/1 var(--serif);letter-spacing:-.04em;text-wrap:balance}
.model-hero p,.model-detail-hero p{max-width:760px;margin:0;color:#cad7da;font-size:.94rem;line-height:1.58}
.model-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.model-hero .button-ghost,.model-detail-hero .button-ghost{border-color:rgba(255,255,255,.38);color:#fff;background:rgba(255,255,255,.03)}
.model-hero-grid>aside,.model-detail-grid>aside{padding:6px 0 6px 22px;border-left:1px solid rgba(223,180,127,.62)}
.model-hero-grid>aside strong{display:block;color:var(--accent-2);font:500 clamp(2.8rem,5vw,4.15rem)/.92 var(--serif)}
.model-hero-grid>aside span{display:block;margin-top:8px;color:#fff;font-size:.86rem;font-weight:700}
.model-hero-grid>aside small{display:block;margin-top:8px;color:#aebfc4;font-size:.72rem;line-height:1.45}
.model-detail-grid>aside span{color:var(--accent-2);font:600 .64rem/1.35 var(--brand);letter-spacing:.12em;text-transform:uppercase}
.model-detail-grid>aside strong{display:block;margin-top:7px;color:#fff;font:500 1.35rem/1.16 var(--serif)}
.model-detail-grid>aside p{margin-top:8px;font-size:.78rem}
.model-detail-hero small{display:block;margin-top:13px;color:#aebfc4;font-size:.7rem}
.model-intro{padding-block:27px;background:#f8f4ee;border-bottom:1px solid var(--model-line)}
.model-value-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;border:1px solid var(--model-line);background:var(--model-line)}
.model-value-grid article{position:relative;min-height:132px;padding:18px 18px 17px 52px;background:#fffdf9}
.model-value-grid article>span{position:absolute;top:18px;left:17px;color:#8a6239;font:600 .66rem var(--brand);letter-spacing:.08em}
.model-value-grid h2{margin:0 0 5px;color:var(--model-navy);font:500 1.14rem/1.12 var(--serif)}
.model-value-grid p{margin:0;color:#596b70;font-size:.78rem;line-height:1.48}
.model-catalog{padding-block:clamp(34px,4vw,50px);background:#fffdf9}
.model-catalog .section-heading{margin-bottom:18px}
.model-search{position:sticky;top:8px;z-index:8;margin-bottom:29px;padding:14px 15px;border:1px solid var(--model-line);border-radius:5px;background:rgba(255,253,249,.97);box-shadow:0 13px 32px rgba(16,46,60,.09);backdrop-filter:blur(12px)}
.model-search>label{display:block;margin-bottom:5px;color:var(--model-navy);font:600 .64rem var(--brand);letter-spacing:.1em;text-transform:uppercase}
.model-search input{width:100%;min-height:44px;padding:9px 12px;border:1px solid #bdc7c6;border-radius:3px;background:#fff;color:var(--model-ink);font:600 .82rem var(--sans)}
.model-search input:focus{outline:0;border-color:#557c86;box-shadow:0 0 0 3px rgba(85,124,134,.13)}
.model-filters{display:flex;gap:6px;overflow-x:auto;padding-top:9px;scrollbar-width:thin}
.model-filters button{flex:0 0 auto;padding:7px 10px;border:1px solid var(--model-line);border-radius:2px;background:#f5f0e8;color:#4e6268;font:700 .7rem/1.2 var(--sans);cursor:pointer}
.model-filters button:hover,.model-filters button.is-active{border-color:var(--model-navy);background:var(--model-navy);color:#fff}
.model-group{margin-top:34px;scroll-margin-top:170px}
.model-group-head{display:flex;justify-content:space-between;align-items:end;gap:18px;margin-bottom:11px;padding-bottom:9px;border-bottom:1px solid var(--model-line)}
.model-group-head p{margin:0}
.model-group-head h2{margin:0;color:#68787d;font:700 .73rem/1.2 var(--sans)}
.model-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.model-card{display:grid;grid-template-rows:auto minmax(2.65em,auto) minmax(5.6em,1fr) auto;min-height:205px;padding:18px;border:1px solid var(--model-line);border-radius:3px;background:linear-gradient(145deg,#fff 0%,#fcfaf6 100%);box-shadow:0 9px 24px rgba(16,46,60,.045);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.model-card:hover{transform:translateY(-2px);border-color:rgba(181,140,92,.54);box-shadow:0 15px 34px rgba(16,46,60,.10)}
.model-card>span{color:#8a6239;font:600 .59rem/1.4 var(--brand);letter-spacing:.09em;text-transform:uppercase}
.model-card h3{margin:8px 0 7px;font:500 clamp(1.05rem,1.45vw,1.23rem)/1.13 var(--serif)}
.model-card h3 a{color:var(--model-navy);text-decoration:none}
.model-card p{margin:0;color:#5a6d72;font-size:.76rem;line-height:1.48}
.model-card-actions{align-self:end;padding-top:13px;border-top:1px solid rgba(16,46,60,.09)}
.model-card-actions a{color:#704d2f;font-size:.73rem;font-weight:800;text-decoration:none}
.model-card-actions a span{transition:margin-left .18s ease}
.model-card:hover .model-card-actions a span{margin-left:4px}
.model-empty{padding:22px;border:1px solid var(--model-line);background:#f8f4ee;text-align:center}
.model-boundary,.model-review-cta{padding-block:32px;color:#fff;background:linear-gradient(118deg,#0c2935,#174452)}
.model-boundary .wrap,.model-review-cta .wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center}
.model-boundary h2,.model-review-cta h2{margin:3px 0 6px;color:#fff;font:500 clamp(1.55rem,2.3vw,2.15rem)/1.05 var(--serif)}
.model-boundary p,.model-review-cta p{max-width:800px;margin:0;color:#c2d0d4;font-size:.79rem;line-height:1.5}
.model-detail-content{display:grid;grid-template-columns:205px minmax(0,770px);justify-content:center;gap:clamp(28px,4.5vw,58px);align-items:start}
.model-detail-index{position:sticky;top:110px;display:grid;gap:1px;padding:8px;border:1px solid var(--model-line);border-radius:3px;background:#fff;box-shadow:0 10px 26px rgba(16,46,60,.06)}
.model-detail-index a{padding:8px 9px;color:#52676d;font-size:.71rem;font-weight:700;text-decoration:none}
.model-detail-index a:hover{background:var(--model-pale);color:#6e4a2d}
.model-detail-content article{min-width:0}
.model-lead{margin-top:0;padding:16px 18px;border-left:3px solid var(--model-gold);background:var(--model-pale);color:#425a60;font-size:.9rem;line-height:1.56}
.model-detail-content article h2{margin:25px 0 9px;color:var(--model-navy);font:500 clamp(1.38rem,2vw,1.8rem)/1.09 var(--serif)}
.model-detail-content article>p:not(.model-lead):not(.seo-reviewed),.model-detail-content article>ul{font-size:.83rem;line-height:1.58}
.model-detail-content .seo-checklist{margin-block:0}
.model-detail-content .seo-checklist li{margin-bottom:6px}
.model-warnings{padding:16px 18px 11px 39px;border:1px solid rgba(181,140,92,.27);background:#fbf6ed}
.model-inline-download{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;margin:23px 0;padding:17px 18px;border:1px solid rgba(181,140,92,.32);background:#f4eee5}
.model-inline-download p{margin:3px 0 0;color:#5a6c71;font-size:.75rem}
.model-basis{display:grid;gap:3px;margin:17px 0 3px;padding:13px 15px;border:1px solid rgba(181,140,92,.30);background:#f4eee5}
.model-basis span{color:#815a35;font:600 .59rem var(--brand);letter-spacing:.1em;text-transform:uppercase}
.model-basis strong{color:var(--model-navy);font-size:.87rem}
.model-field-list{columns:2;column-gap:25px}
.model-field-list li{break-inside:avoid}
.model-field-list code{padding:2px 5px;border-radius:2px;background:#eef1ef;color:#3f565d;font:600 .72rem var(--sans);overflow-wrap:anywhere}
.seo-reviewed{margin-top:22px;padding-top:12px;border-top:1px solid var(--model-line);color:#68797e;font-size:.7rem;line-height:1.48}
.model-seo-guide{padding-top:0}
.model-seo-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.model-seo-guide article{padding:18px;border:1px solid var(--model-line);background:#f8f4ee}
.model-seo-guide h2{margin:0 0 7px;color:var(--model-navy);font:500 1.18rem/1.15 var(--serif)}
.model-seo-guide p{margin:0;color:#586b70;font-size:.76rem;line-height:1.5}
@media(max-width:900px){.model-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.model-detail-content{grid-template-columns:1fr}.model-detail-index{position:static;grid-template-columns:repeat(5,max-content);overflow-x:auto}}
@media(max-width:680px){.model-hero-grid,.model-detail-grid{grid-template-columns:1fr;gap:23px;padding-block:35px}.model-hero h1,.model-detail-hero h1{font-size:clamp(2.08rem,10vw,2.65rem)}.model-hero-grid>aside,.model-detail-grid>aside{padding:2px 0 2px 16px}.model-value-grid,.model-seo-guide-grid{grid-template-columns:1fr}.model-value-grid article{min-height:0}.model-catalog{padding-block:30px}.model-search{position:relative;top:auto;margin-inline:-2px}.model-group{margin-top:28px}.model-group-head{align-items:start;flex-direction:column;gap:4px}.model-grid{grid-template-columns:1fr}.model-card{grid-template-rows:auto auto auto auto;min-height:0;padding:16px}.model-boundary .wrap,.model-review-cta .wrap{grid-template-columns:1fr;gap:18px}.model-inline-download{grid-template-columns:1fr}.model-inline-download .button{width:100%;text-align:center}.model-field-list{columns:1}.model-detail-index{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:max-content}}
@media(max-width:360px){.model-hero-actions .button{width:100%;text-align:center}}
