/* Layout concept: the registry as an official document. Engraved gold on black,
   guilloché security patterns, a seal stamped on the founder's photograph, serial numbers set in mono. */
:root{
  color-scheme: dark;
  --ink:#0c0b09;
  --ink-2:#13110d;
  --ink-3:#1b1812;
  --line:#3a3122;
  --line-soft:#272117;
  --gold:#d6b25e;
  --gold-hi:#f0d48a;
  --gold-lo:#9a7a36;
  --text:#efe7d4;
  --text-2:#bdb197;
  --text-3:#978b73;
  --ok:#93c99e;
  --warn:#e6b45c;
  --qr-dark:#0c0b09;
  --qr-light:#efe2c0;
  --f-display:'Cormorant Garamond','Cormorant',Georgia,'Times New Roman',serif;
  --f-body:'Archivo','Helvetica Neue',Arial,sans-serif;
  --f-mono:'IBM Plex Mono',ui-monospace,'SFMono-Regular',Menlo,Consolas,monospace;
  --maxw:1180px;
  --gutter:max(clamp(16px,4vw,40px), env(safe-area-inset-left,0px));
  --gutter-r:max(clamp(16px,4vw,40px), env(safe-area-inset-right,0px));
}
*{box-sizing:border-box}
html{background:var(--ink);scroll-behavior:smooth;scroll-padding-top:84px}
body{background:var(--ink);color:var(--text);font:400 16px/1.6 var(--f-body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--ink)}
img{max-width:100%;display:block}
a{color:var(--gold-hi);text-decoration-color:var(--gold-lo);text-underline-offset:3px}
button{font:inherit;color:inherit;cursor:pointer}
:focus-visible{outline:2px solid var(--gold-hi);outline-offset:3px}
::selection{background:var(--gold);color:var(--ink)}

.wrap{max-width:var(--maxw);margin-inline:auto;padding-left:var(--gutter);padding-right:var(--gutter-r)}
.eyebrow{font:600 11px/1.3 var(--f-body);font-stretch:125%;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin:0}
.h2{font:500 clamp(34px,4.4vw,56px)/1.02 var(--f-display);letter-spacing:-.01em;margin:0;text-wrap:balance}
.h2 em,.h1 em{font-style:italic;background:linear-gradient(100deg,var(--gold-hi),var(--gold) 50%,var(--gold-lo));-webkit-background-clip:text;background-clip:text;color:transparent}
.lead{color:var(--text-2);font-size:17px;max-width:62ch;margin:0}
.mono{font-family:var(--f-mono)}
.rule{height:1px;background:linear-gradient(90deg,transparent,var(--line) 15%,var(--line) 85%,transparent);border:0;margin:0}

.btn{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--gold-lo);background:transparent;color:var(--gold-hi);padding:11px 18px;font:600 11.5px/1 var(--f-body);font-stretch:125%;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;transition:background .2s,border-color .2s,color .2s}
.btn:hover{background:rgba(214,178,94,.09);border-color:var(--gold)}
.btn-solid{background:linear-gradient(180deg,var(--gold-hi),var(--gold));color:var(--ink);border-color:var(--gold)}
.btn-solid:hover{background:linear-gradient(180deg,#f6dea0,var(--gold-hi));color:var(--ink)}

/* ---------- header ---------- */
.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:rgba(12,11,9,.88);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line-soft)}
.top .wrap{display:flex;align-items:center;gap:24px;min-height:68px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--text);margin-right:auto;min-width:0}
.brand img{width:44px;height:44px;object-fit:contain}
.brand b{display:block;font:700 19px/1 var(--f-body);font-stretch:125%;letter-spacing:.14em;color:var(--gold-hi)}
.brand span{min-width:0}
.brand small{display:block;font:500 9px/1.35 var(--f-body);font-stretch:110%;letter-spacing:.16em;text-transform:uppercase;color:var(--text-3);margin-top:4px;max-width:210px}
@media (max-width:1180px){.brand small{display:none}}
.btn-access{white-space:nowrap}
.nav{display:flex;gap:20px;white-space:nowrap}
.nav a{color:var(--text-2);text-decoration:none;font:500 13px/1 var(--f-body);letter-spacing:.02em;padding:6px 0;border-bottom:1px solid transparent}
.nav a:hover{color:var(--gold-hi);border-bottom-color:var(--gold-lo)}
.menu-btn{display:none;background:none;border:1px solid var(--line);padding:9px 12px;font:600 11px/1 var(--f-body);font-stretch:125%;letter-spacing:.16em;text-transform:uppercase;color:var(--text-2)}
@media (max-width:980px){
  .nav{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;gap:0;background:var(--ink-2);border-bottom:1px solid var(--line);padding:8px var(--gutter-r) 16px var(--gutter)}
  .nav.open{display:flex}
  .nav a{padding:14px 0;border-bottom:1px solid var(--line-soft);font-size:15px}
  .menu-btn{display:inline-block}
  .top .btn-access{display:none}
}

/* ---------- hero ---------- */
.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line-soft)}
.hero-bg{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.hero-bg img{position:absolute;left:50%;top:50%;width:120%;height:120%;object-fit:cover;transform:translate(-50%,-50%) scale(1.04);filter:blur(34px) saturate(1.15) brightness(.42);opacity:0;transition:opacity 1.4s ease}
.hero-bg img.on{opacity:.55;animation:heroZoom 14s ease-in-out infinite alternate}
.hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,11,9,.92) 0%,rgba(12,11,9,.72) 46%,rgba(12,11,9,.35) 100%),linear-gradient(180deg,rgba(12,11,9,.3),rgba(12,11,9,.92))}
@keyframes heroZoom{from{transform:translate(-50%,-50%) scale(1.04)}to{transform:translate(-50%,-50%) scale(1.14)}}
@media (prefers-reduced-motion:reduce){.hero-bg img.on{animation:none}}
.slides{position:relative;width:100%;height:100%}
.slides img{position:absolute;inset:0;opacity:0;transition:opacity 1.1s ease;transform:scale(1.02)}
.slides img.on{opacity:1;transform:scale(1);transition:opacity 1.1s ease,transform 6s ease-out}
.dots{display:flex;gap:7px;padding-bottom:6px}
.dots button{width:22px;height:4px;padding:0;border:0;background:var(--line);cursor:pointer;transition:background .3s,width .3s}
.dots button[aria-selected="true"]{background:var(--gold);width:34px}
.dots button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.hero canvas.rosette{position:absolute;right:-240px;top:-160px;width:980px;height:980px;pointer-events:none;opacity:.9}
.hero .wrap{position:relative;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(32px,6vw,88px);align-items:center;padding-block:clamp(48px,8vw,104px) clamp(40px,6vw,72px)}
.h1{font:500 clamp(48px,7vw,96px)/.95 var(--f-display);letter-spacing:-.015em;margin:18px 0 22px;text-wrap:balance}
.search{margin-top:34px;display:flex;align-items:stretch;border:1px solid var(--line);background:var(--ink-2);box-shadow:0 0 0 1px rgba(0,0,0,.4),0 20px 50px -20px rgba(0,0,0,.8)}
.search:focus-within{border-color:var(--gold-lo)}
.search svg{flex:none;width:20px;margin-left:18px;color:var(--gold)}
.search input{flex:1;min-width:0;background:transparent;border:0;outline:0;color:var(--text);font:400 17px/1 var(--f-body);padding:20px 14px}
.search input::placeholder{color:var(--text-3)}
.search .btn{border:0;border-left:1px solid var(--line);padding-inline:24px}
.try{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:center;margin-top:14px;color:var(--text-3);font-size:13px}
.try button{background:none;border:1px solid var(--line-soft);color:var(--text-2);font:500 12px/1 var(--f-mono);padding:7px 10px}
.try button:hover{border-color:var(--gold-lo);color:var(--gold-hi)}
.proofs{display:flex;flex-wrap:wrap;gap:10px 26px;margin:34px 0 0;padding:0;list-style:none}
.proofs li{display:flex;align-items:center;gap:10px;font:500 12px/1.2 var(--f-body);font-stretch:112%;letter-spacing:.06em;color:var(--text-2)}
.proofs li::before{content:"";width:7px;height:7px;transform:rotate(45deg);background:var(--gold)}

.plate{position:relative;justify-self:end;width:min(100%,420px);margin:56px 0 0 40px}
@media (max-width:860px){.hero .wrap{grid-template-columns:minmax(0,1fr)}.plate{justify-self:center;width:min(100% - 24px,420px);margin:44px 0 0 24px}.plate .stamp{width:112px;left:-26px;top:-40px}.hero canvas.rosette{right:-420px;top:auto;bottom:-300px}}
.plate-frame{border:1px solid var(--gold-lo);padding:10px;background:linear-gradient(160deg,#1d1912,#0f0d0a)}
.plate-frame>div{border:1px solid var(--line);position:relative;aspect-ratio:4/5;overflow:hidden;max-width:100%}
.plate-frame img{width:100%;height:100%;object-fit:cover;filter:saturate(.92) contrast(1.04)}
.plate-frame>div::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(12,11,9,.75));pointer-events:none}
.plate-cap{display:flex;flex-direction:column;align-items:stretch;gap:12px;padding:16px 4px 0}
.plate-cap .no{white-space:nowrap}
.plate-cap .no{font:500 12px/1 var(--f-mono);color:var(--gold);letter-spacing:.08em}
.plate-cap .plate-name{font:600 24px/1.1 var(--f-display);margin:6px 0 0;letter-spacing:.04em;color:var(--text)}
.plate-cap p:not(.plate-name){margin:0;font-size:12.5px;color:var(--text-3);text-align:right;line-height:1.5}
.stamp{position:absolute;z-index:3;left:-58px;top:-62px;width:168px;transform:rotate(-14deg);filter:drop-shadow(0 10px 18px rgba(0,0,0,.75));animation:stamp .8s cubic-bezier(.2,.9,.25,1.15) .15s both}
@keyframes stamp{from{transform:rotate(-34deg) scale(1.45)}70%{transform:rotate(-11deg) scale(.96)}to{transform:rotate(-14deg) scale(1)}}

.latest{position:relative;border-top:1px solid var(--line-soft);background:rgba(19,17,13,.7)}
.latest .wrap{display:flex;align-items:center;gap:22px;padding-block:18px;overflow-x:auto;scrollbar-width:thin}
.latest .eyebrow{flex:none;color:var(--text-3)}
.latest-list{display:flex;flex:none;gap:10px;margin:0;padding:0;list-style:none}
.latest-list li{flex:none}
.latest-list button{display:flex;align-items:center;gap:10px;background:none;border:1px solid var(--line-soft);padding:6px 14px 6px 6px;text-align:left;white-space:nowrap}
.latest-list button:hover{border-color:var(--gold-lo)}
.latest-list img{width:36px;height:36px;object-fit:cover}
.latest-list b{display:block;font:600 15px/1.1 var(--f-display);letter-spacing:.04em}
.latest-list span{font:400 11px/1 var(--f-mono);color:var(--gold)}

/* ---------- sections ---------- */
.sec{padding-block:clamp(64px,9vw,120px)}
.sec-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 56px;align-items:end;margin-bottom:44px}
.sec-head .h2{margin-top:14px}
.sec-alt{background:linear-gradient(180deg,var(--ink-2),var(--ink));border-block:1px solid var(--line-soft)}

/* ---------- ledger ---------- */
.filters{display:flex;flex-wrap:wrap;gap:12px 18px;align-items:center;margin-bottom:18px}
.seg{display:inline-flex;border:1px solid var(--line)}
.seg button{background:none;border:0;border-right:1px solid var(--line);padding:10px 14px;font:600 11px/1 var(--f-body);font-stretch:118%;letter-spacing:.12em;text-transform:uppercase;color:var(--text-2)}
.seg button:last-child{border-right:0}
@media (max-width:480px){.seg{display:flex;width:100%}.seg button{flex:1 1 auto;padding:10px 4px;letter-spacing:.06em}}
.seg button[aria-pressed="true"]{background:rgba(214,178,94,.12);color:var(--gold-hi)}
.ledger-search{display:flex;align-items:center;gap:10px;border:1px solid var(--line);padding:0 12px;flex:1 1 240px;max-width:420px;background:var(--ink-2)}
.ledger-search svg{width:16px;flex:none;color:var(--text-3)}
.ledger-search input{flex:1;min-width:0;background:none;border:0;outline:0;color:var(--text);padding:11px 0;font:400 14px var(--f-body)}
.select{background:var(--ink-2);color:var(--text-2);border:1px solid var(--line);padding:10px 12px;font:500 13px var(--f-body)}
.count{margin-left:auto;font:500 12px/1 var(--f-mono);color:var(--text-3)}
.afijo-chip{display:none;align-items:center;gap:8px;border:1px solid var(--gold-lo);color:var(--gold-hi);background:none;padding:8px 10px;font:500 12px/1 var(--f-mono)}
.afijo-chip.on{display:inline-flex}

.ledger{border-top:1px solid var(--line)}
.lrow,.lhead{display:grid;grid-template-columns:52px 118px minmax(0,1.6fr) 70px minmax(0,1fr) 100px minmax(0,1.3fr) 72px;gap:16px;align-items:center;padding:12px 6px}
.lhead{font:600 10px/1 var(--f-body);font-stretch:118%;letter-spacing:.16em;text-transform:uppercase;color:var(--text-3);border-bottom:1px solid var(--line)}
.lrow{width:100%;background:none;border:0;border-bottom:1px solid var(--line-soft);text-align:left;transition:background .15s}
.lrow:hover{background:rgba(214,178,94,.05)}
.lrow:hover .r-go{color:var(--gold-hi)}
.r-img{width:52px;height:52px;object-fit:cover;background:var(--ink-3)}
.r-seal{width:52px;height:52px;display:grid;place-items:center;background:var(--ink-3);border:1px solid var(--line-soft)}
.r-seal img{width:38px;opacity:.85}
.r-no{font:500 13px/1 var(--f-mono);color:var(--gold);letter-spacing:.02em}
.r-name{min-width:0}
.r-name small{display:block;font:600 10px/1.2 var(--f-body);font-stretch:118%;letter-spacing:.14em;color:var(--text-3);text-transform:uppercase}
.r-name b{display:block;font:600 21px/1.1 var(--f-display);letter-spacing:.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.r-tag{display:inline-block;margin-left:8px;vertical-align:middle;font:600 9.5px/1 var(--f-body);font-stretch:118%;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);border:1px solid var(--gold-lo);padding:3px 6px}
.r-cell{font-size:13.5px;color:var(--text-2);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.r-date{font:400 12.5px/1 var(--f-mono);color:var(--text-2)}
.r-go{white-space:nowrap;font:600 10.5px/1 var(--f-body);font-stretch:118%;letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);text-align:right}
.empty{padding:40px 6px;color:var(--text-2);border-bottom:1px solid var(--line-soft)}
@media (max-width:900px){
  .lhead{display:none}
  .lrow{grid-template-columns:64px minmax(0,1fr) auto;grid-template-areas:"img name no" "img meta meta";gap:4px 14px;padding:14px 2px}
  .lrow .r-img,.lrow .r-seal{grid-area:img;width:64px;height:64px;align-self:start}
  .lrow .r-no{grid-area:no;align-self:start;padding-top:4px}
  .lrow .r-name{grid-area:name}
  .lrow .r-sex,.lrow .r-color,.lrow .r-date,.lrow .r-par,.lrow .r-go{display:none}
  .lrow .r-meta{grid-area:meta;display:block}
}
.r-meta{display:none;font-size:12.5px;color:var(--text-3);white-space:normal}

/* ---------- certificate ---------- */
.cert{position:relative;background:linear-gradient(170deg,#17140f,#0f0d0a 60%);border:1px solid var(--gold-lo);padding:clamp(14px,2.4vw,26px);isolation:isolate}
.cert::before{content:"";position:absolute;inset:7px;border:1px solid var(--line);pointer-events:none;z-index:-1}
.cert .corner{position:absolute;width:22px;height:22px;border-color:var(--gold);border-style:solid;border-width:0}
.cert .c1{top:-1px;left:-1px;border-top-width:2px;border-left-width:2px}
.cert .c2{top:-1px;right:-1px;border-top-width:2px;border-right-width:2px}
.cert .c3{bottom:-1px;left:-1px;border-bottom-width:2px;border-left-width:2px}
.cert .c4{bottom:-1px;right:-1px;border-bottom-width:2px;border-right-width:2px}
.band{display:block;width:100%;height:46px;opacity:.85}
.cert-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:22px;align-items:center;padding:18px 6px 20px;border-bottom:1px solid var(--line)}
.cert-seal{width:84px}
.cert-title h3{font:500 clamp(28px,3.2vw,40px)/1 var(--f-display);margin:8px 0 8px;letter-spacing:.01em}
.cert-no{margin:0;font:400 13px/1 var(--f-mono);color:var(--text-2);letter-spacing:.04em}
.cert-no b{color:var(--gold-hi);font-weight:500}
.cert-qr{margin:0;text-align:center}
.qr{width:112px;height:112px;padding:8px;background:var(--qr-light);display:grid;place-items:center}
.qr img,.qr canvas{width:96px!important;height:96px!important}
.cert-qr figcaption{margin-top:8px;font:400 10.5px/1.2 var(--f-mono);color:var(--text-3)}
.cert-body{display:grid;grid-template-columns:minmax(0,240px) minmax(0,1fr);gap:clamp(18px,3vw,36px);padding:24px 6px}
.cert-photo{margin:0}
.cert-photo .ph{border:1px solid var(--gold-lo);padding:6px;background:var(--ink)}
.cert-photo img{width:100%;aspect-ratio:1/1;object-fit:cover}
.ph-empty{aspect-ratio:1/1;display:grid;place-items:center;align-content:center;gap:10px;background:radial-gradient(circle at 50% 40%,#211c13,#0f0d0a);color:var(--text-3);font-size:12px;text-align:center}
.ph-empty img{width:46%;aspect-ratio:auto;opacity:.5}
.pill{display:inline-flex;align-items:center;gap:7px;margin-top:12px;font:600 10.5px/1 var(--f-body);font-stretch:118%;letter-spacing:.14em;text-transform:uppercase;padding:7px 10px;border:1px solid}
.pill::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.pill.ok{color:var(--ok);border-color:rgba(147,201,158,.45);background:rgba(147,201,158,.07)}
.pill.warn{color:var(--warn);border-color:rgba(230,180,92,.45);background:rgba(230,180,92,.07)}
.cert-afijo{margin:0;font:600 12px/1.2 var(--f-body);font-stretch:125%;letter-spacing:.22em;text-transform:uppercase;color:var(--gold)}
.cert-name{font:600 clamp(36px,4.6vw,58px)/.95 var(--f-display);letter-spacing:.04em;margin:8px 0 22px;text-wrap:balance}
.cert-name sup{font:600 13px/1 var(--f-body);font-stretch:125%;letter-spacing:.1em;color:var(--ink);background:var(--gold);padding:4px 6px;vertical-align:super;margin-right:10px;position:relative;top:-8px}
.cert-data{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;border-top:1px solid var(--line-soft)}
.cert-data div{padding:12px 14px 12px 0;border-bottom:1px solid var(--line-soft);min-width:0}
.cert-data dt{font:600 9.5px/1.2 var(--f-body);font-stretch:118%;letter-spacing:.16em;text-transform:uppercase;color:var(--text-3)}
.cert-data dd{margin:5px 0 0;font-size:14.5px;color:var(--text);overflow-wrap:anywhere}
.cert-data dd.mono{font:400 13px/1.3 var(--f-mono)}
.cert-sub{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:4px 6px 14px;flex-wrap:wrap}
.cert-sub h5{margin:0;font:600 11px/1 var(--f-body);font-stretch:125%;letter-spacing:.22em;text-transform:uppercase;color:var(--gold)}
.cert-sub p{margin:0;font-size:12px;color:var(--text-3)}

.tree-scroll{overflow-x:auto;padding:0 6px 6px;scrollbar-width:thin}
.tree{display:grid;grid-template-columns:minmax(192px,1.1fr) 26px minmax(176px,1fr) 26px minmax(164px,.92fr) 26px minmax(150px,.85fr);grid-template-rows:repeat(16,38px);min-width:960px}
.conn{position:relative}
.conn svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.conn path{fill:none;stroke:var(--gold-lo);stroke-width:1;vector-effect:non-scaling-stroke}
.node{align-self:center;display:flex;align-items:center;gap:10px;min-width:0;text-align:left;background:var(--ink-2);border:1px solid var(--line);padding:7px 10px;position:relative}
button.node{transition:border-color .15s,background .15s}
button.node:hover{border-color:var(--gold);background:#1a1610}
.node img{width:46px;height:46px;object-fit:cover;flex:none}
.node.g1 img{width:68px;height:68px}
.n-txt{display:flex;flex-direction:column;min-width:0}
.n-role{font:600 9px/1 var(--f-body);font-stretch:118%;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:5px}
.n-afijo{font:600 9.5px/1.2 var(--f-body);font-stretch:112%;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.n-name{font:600 17px/1.1 var(--f-display);letter-spacing:.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.node.g1 .n-name{font-size:22px}
.n-meta{font:400 10.5px/1.3 var(--f-mono);color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}
.n-meta b{color:var(--gold);font-weight:500}
.node.g3{padding:4px 9px}
.node.g3 .n-name{font-size:14px}
.node.g3 .n-afijo{display:none}
.node.g3 img{width:36px;height:36px}
.node.g4{padding:2px 8px;gap:7px}
.node.g4 .n-name{font-size:12.5px}
.node.g4 .n-afijo{display:none}
.node.g4 .n-meta{font-size:9.5px;margin-top:0}
.node.g4 img{width:26px;height:26px}
.node.unk{background:transparent;border-style:dashed;border-color:var(--line-soft)}
.node.unk .n-name{color:var(--text-3);font:italic 500 14px/1.1 var(--f-display)}
.node.is-rep{border-color:var(--gold);box-shadow:inset 0 0 0 1px rgba(214,178,94,.25)}
.rep{position:absolute;top:-8px;right:-8px;font:600 10px/1 var(--f-mono);background:var(--gold);color:var(--ink);padding:3px 5px}

.gen{display:grid;grid-template-columns:minmax(0,240px) minmax(0,1fr);gap:clamp(18px,3vw,36px);margin:22px 6px 0;padding-top:22px;border-top:1px solid var(--line)}
.gen-val{font:500 clamp(46px,5vw,64px)/1 var(--f-display);color:var(--gold-hi)}
.gen-val small{font-size:.5em;color:var(--gold);margin-left:4px}
.gen-lab{margin:8px 0 0;font:600 10px/1.4 var(--f-body);font-stretch:118%;letter-spacing:.16em;text-transform:uppercase;color:var(--text-3)}
.scale{position:relative;height:8px;margin:6px 0 30px;background:linear-gradient(90deg,#2b261a,#3a2f1c 50%,#4a3218);border:1px solid var(--line)}
.scale .mark{position:absolute;top:-6px;width:2px;height:18px;background:var(--gold-hi);box-shadow:0 0 0 3px rgba(240,212,138,.18)}
.scale .tick{position:absolute;top:12px;transform:translateX(-50%);font:400 10px/1.25 var(--f-mono);color:var(--text-3);text-align:center;white-space:nowrap}
.scale .tick:first-of-type{transform:none;text-align:left}.scale .tick:first-of-type::before{left:0}
.scale .tick:last-child{transform:translateX(-100%);text-align:right}.scale .tick:last-child::before{left:auto;right:0}
.scale .tick::before{content:"";position:absolute;left:50%;top:-14px;width:1px;height:8px;background:var(--line)}
.gen p{margin:0 0 8px;font-size:14px;color:var(--text-2);max-width:68ch}
.gen ul{margin:0 0 10px;padding:0;list-style:none}
.gen li{display:flex;justify-content:space-between;gap:16px;padding:8px 0;border-bottom:1px solid var(--line-soft);font-size:14px}
.gen li span{color:var(--text-2)}
.gen li b{font:500 13px var(--f-mono);color:var(--gold-hi);white-space:nowrap}
.gen .note{font-size:12.5px;color:var(--text-3)}

.verif{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}
.vf{padding:11px 13px;border:1px solid var(--line-soft);display:flex;flex-direction:column;gap:4px;min-width:0}
.vf.done{border-color:rgba(214,178,94,.4);background:rgba(214,178,94,.05)}
.vf .eyebrow{margin:0}.vf b{font:600 15px/1.2 var(--f-display);color:var(--text)}.vf b.pend{color:var(--text-3);font-style:italic}
.vf span{font-size:12px;color:var(--text-3)}
@media(max-width:520px){.verif{grid-template-columns:1fr}}
.cert-foot{margin-top:24px;padding:16px 6px 4px;border-top:1px solid var(--line)}
.micro{font:400 7.5px/1 var(--f-mono);letter-spacing:.18em;color:var(--text-3);white-space:nowrap;overflow:hidden;opacity:.7;margin-bottom:16px}
.foot-row{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;align-items:end;font-size:12px;color:var(--text-3)}
.foot-row .sig{text-align:center;border-top:1px solid var(--gold-lo);padding-top:8px;min-width:230px}
.foot-row .sig b{display:block;font:600 16px/1.2 var(--f-display);color:var(--text);letter-spacing:.03em}
.foot-row .sig span{font-size:10.5px;letter-spacing:.04em}
.foot-row .r{text-align:right}
.foot-row .mono{color:var(--text-2)}
@media (max-width:760px){
  .cert-head{grid-template-columns:auto minmax(0,1fr);}
  .cert-qr{grid-column:1/-1;display:flex;align-items:center;gap:14px;text-align:left}
  .cert-seal{width:64px}
  .cert-body,.gen{grid-template-columns:minmax(0,1fr)}
  .cert-photo{max-width:260px}
  .cert-data{grid-template-columns:repeat(2,minmax(0,1fr))}
  .foot-row{grid-template-columns:1fr}
  .foot-row .r{text-align:left}
  .foot-row .sig{min-width:0;text-align:left}
}
.swipe{display:none;font-size:12px;color:var(--text-3);margin:0 6px 8px}
@media (max-width:760px){.swipe{display:block}}

/* ---------- pedigree feature ---------- */
.feat{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:0 0 44px;padding:0;list-style:none}
.feat li{border-top:1px solid var(--gold-lo);padding-top:16px}
.feat h3{margin:0 0 6px;font:600 23px/1.15 var(--f-display);letter-spacing:.01em}
.feat p{margin:0;color:var(--text-2);font-size:14.5px}

/* ---------- service credential ---------- */
.svc{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(28px,5vw,64px);align-items:start}
.svc-copy p{color:var(--text-2);margin:0 0 16px}
.svc-list{margin:22px 0 0;padding:0;list-style:none;border-top:1px solid var(--line-soft)}
.svc-list li{display:flex;gap:14px;padding:12px 0;border-bottom:1px solid var(--line-soft);font-size:14.5px;color:var(--text-2)}
.svc-list li b{flex:none;width:150px;font:600 10px/1.6 var(--f-body);font-stretch:118%;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.cred-body{display:grid;grid-template-columns:118px minmax(0,1fr) auto;gap:20px 22px;padding:22px 6px;align-items:center}
.cred-body .cred-data{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr))}
.cred-id .pill{margin-top:0}
.cred-body .cert-photo .ph-empty{font-size:11px}
.cred-name{font:600 clamp(36px,4vw,50px)/.95 var(--f-display);letter-spacing:.05em;margin:6px 0 16px}

.validity{margin:2px 6px 0;padding-top:18px;border-top:1px solid var(--line)}
.vbar{position:relative;height:6px;background:var(--ink-3);border:1px solid var(--line);margin:14px 0 8px}
.vbar i{position:absolute;inset:0 auto 0 0;background:linear-gradient(90deg,var(--gold-lo),var(--gold-hi))}
.vrow{display:flex;justify-content:space-between;gap:12px;font:400 11.5px/1.3 var(--f-mono);color:var(--text-3)}
.vtext{font-size:14px;color:var(--text-2);margin:0}
@media (max-width:900px){.svc{grid-template-columns:minmax(0,1fr)}}
@media (max-width:640px){.cred-body{grid-template-columns:88px minmax(0,1fr)}.cred-body .cert-qr{grid-column:1/-1}.cred-body .cred-data{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* ---------- assistance dogs ---------- */
.ad{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(24px,4vw,44px);align-items:start}
.lookup{border:1px solid var(--line);background:linear-gradient(165deg,#18150f,#0f0d0a);padding:clamp(22px,3vw,34px);display:flex;flex-direction:column;gap:12px;min-width:0}
.lookup .h3{margin:0}
.lookup p{margin:0;color:var(--text-2);max-width:62ch}
.lk-form{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}
.lk-form input{flex:1;min-width:0;min-width:200px;background:#0c0b09;border:1px solid var(--gold-lo);color:var(--text);font:500 16px/1 var(--f-mono);letter-spacing:.06em;padding:14px 16px;text-transform:uppercase}
.lk-form input:focus{outline:2px solid var(--gold);outline-offset:1px}
.lk-msg{min-height:1.2em;color:var(--warn)!important;font-size:14px}
.lk-notes{margin:6px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px;font-size:13.5px;color:var(--text-3)}
.lk-notes li::before{content:"· ";color:var(--gold)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.ad-list{list-style:none;margin:0 0 26px;padding:0;border-top:1px solid var(--line)}
.ad-list button{width:100%;display:grid;grid-template-columns:52px minmax(0,1fr);gap:12px;align-items:center;background:none;border:0;border-bottom:1px solid var(--line-soft);padding:12px 6px;text-align:left}
.ad-list button:hover{background:rgba(214,178,94,.05)}
.ad-list button[aria-current="true"]{background:rgba(214,178,94,.09);box-shadow:inset 2px 0 0 var(--gold)}
.ad-list img{width:52px;height:52px;object-fit:cover}
.ad-list b{display:block;font:600 20px/1.1 var(--f-display);letter-spacing:.04em}
.ad-list span{display:block;font-size:12px;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.trainer{border:1px solid var(--line);background:var(--ink-2);padding:20px}
.trainer>img{width:92px;height:92px;object-fit:cover;border:1px solid var(--gold-lo);padding:4px;background:var(--ink);margin-bottom:14px}
.trainer h3{font:600 25px/1.05 var(--f-display);margin:8px 0 10px}
.trainer ul{list-style:none;margin:0 0 14px;padding:0;border-top:1px solid var(--line-soft)}
.trainer li{font-size:13.5px;color:var(--text-2);padding:7px 0;border-bottom:1px solid var(--line-soft)}
.trainer .rnd{font-size:12.5px;color:var(--text-2);margin:0 0 10px}
.trainer .t-note{margin:0;font-size:12px;color:var(--text-3)}
.prov{font:600 9.5px/1 var(--f-body);font-stretch:118%;letter-spacing:.14em;text-transform:uppercase;color:var(--warn);border:1px solid rgba(230,180,92,.5);padding:3px 6px;margin-left:8px;vertical-align:middle}
.pair{display:grid;grid-template-columns:148px 148px minmax(0,1fr);gap:18px;padding:22px 6px 4px;align-items:center}
.pp{margin:0;min-width:0}
.pp>img,.pp>.ph-empty{width:100%;aspect-ratio:1/1;object-fit:cover;border:1px solid var(--gold-lo);padding:5px;background:var(--ink)}
.pp>.ph-empty{padding:0;border-color:var(--line)}
.pp figcaption{margin-top:8px;font:600 9.5px/1 var(--f-body);font-stretch:118%;letter-spacing:.18em;text-transform:uppercase;color:var(--text-3);text-align:center}
.pair-id{min-width:0}
.pair-guia{margin:-8px 0 12px;color:var(--text-2);font-size:14px}
.pair-guia b{color:var(--text);font-weight:500}
.cred .cred-data{margin:18px 6px 0;grid-template-columns:repeat(3,minmax(0,1fr))}
.cred .validity{margin-top:16px}
.issuer{display:flex;gap:16px;align-items:center;margin:18px 6px 0;padding:14px 16px;border:1px solid var(--line);background:rgba(214,178,94,.04)}
.issuer img{width:62px;height:62px;object-fit:cover;border:1px solid var(--gold-lo);flex:none}
.issuer b{display:block;font:600 20px/1.1 var(--f-display);margin:5px 0 3px}
.issuer span{display:block;font-size:12.5px;color:var(--text-2)}
.issuer .rnd{color:var(--ok);margin-top:3px}
.cred-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:18px 6px 0}
.act-note{flex-basis:100%;margin:2px 0 0;font-size:12.5px;color:var(--text-3)}
.act-note:empty{display:none}
.med{margin:14px 6px 0;padding:18px;border:1px dashed var(--gold-lo);background:var(--ink-2)}
.med-head{display:flex;justify-content:space-between;align-items:center;gap:12px}
.lock{font:600 10px/1 var(--f-body);font-stretch:118%;letter-spacing:.14em;text-transform:uppercase;color:var(--warn)}
.med-txt{font-size:13.5px;color:var(--text-2);margin:8px 0 12px}
.med-txt em{color:var(--text-3)}
.med-list{list-style:none;margin:0 0 14px;padding:0;border-top:1px solid var(--line-soft)}
.med-list li{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line-soft);font-size:14px;min-width:0}
.med-list li span{min-width:0;overflow-wrap:anywhere}
.med-list small{font:400 11px/1.4 var(--f-mono);color:var(--text-3);text-align:right;flex:none}
.med-list .none{color:var(--text-3)}
.med-up{position:relative;cursor:pointer}
.med-up input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}
.med-up:focus-within{outline:2px solid var(--gold-hi);outline-offset:3px}
.med-note{font-size:12px;color:var(--text-3);margin:10px 0 0}
.scope-mini{margin:16px 6px 0;font-size:12px;color:var(--text-3)}
.legal{margin-top:60px;border-top:1px solid var(--gold-lo);padding-top:28px}
.h3{font:500 clamp(26px,3vw,36px)/1.1 var(--f-display);margin:10px 0 26px;text-wrap:balance}
.legal-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,4vw,56px)}
.legal h4{margin:0 0 12px;font:600 11px/1 var(--f-body);font-stretch:125%;letter-spacing:.22em;text-transform:uppercase;color:var(--gold)}
.laws{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.laws li{padding:14px 0;border-bottom:1px solid var(--line-soft);overflow:hidden}
.laws b{display:block;font:600 19px/1.2 var(--f-display);color:var(--text)}
.laws p{margin:5px 0 0;font-size:13.5px;color:var(--text-2)}
.law-st{float:right;margin:2px 0 6px 12px;font:600 9.5px/1 var(--f-body);font-stretch:118%;letter-spacing:.12em;text-transform:uppercase;padding:4px 7px;border:1px solid}
.law-st.ok{color:var(--ok);border-color:rgba(147,201,158,.4)}
.law-st.warn{color:var(--warn);border-color:rgba(230,180,92,.45)}
.law-st.ref{color:var(--text-2);border-color:var(--line)}
.scope{margin:26px 0 0;padding:18px 20px;border:1px solid var(--line);background:var(--ink-2);font-size:14px;color:var(--text-2)}
.scope b{color:var(--text)}
@media (max-width:1020px){.ad{grid-template-columns:minmax(0,1fr)}}
@media (max-width:760px){.legal-cols{grid-template-columns:minmax(0,1fr)}.pair{grid-template-columns:repeat(2,minmax(0,1fr))}.pair-id{grid-column:1/-1}.cred .cred-data{grid-template-columns:repeat(2,minmax(0,1fr))}.issuer{align-items:flex-start}}


.duo{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;min-width:0}
.duo-emb{position:absolute;left:50%;top:calc(50% - 12px);width:66px;transform:translate(-50%,-50%);filter:drop-shadow(0 6px 10px rgba(0,0,0,.6));z-index:2}
.pair{grid-template-columns:minmax(0,314px) minmax(0,1fr)!important}
.cat-def{margin:14px 0 0;font-size:12.5px;color:var(--text-2);max-width:52ch}
.cat-def b{color:var(--text);font-weight:600}
.med-sub{margin:0 0 6px;font:600 10px/1 var(--f-body);font-stretch:118%;letter-spacing:.16em;text-transform:uppercase;color:var(--text-3)}
.cats{margin-top:60px}
.cat-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:1px solid var(--gold-lo)}
.cat-grid li{padding:18px 20px 20px 0}
.cat-grid li+li{padding-left:20px;border-left:1px solid var(--line-soft)}
.cat-grid b{display:block;font:600 22px/1.1 var(--f-display);margin-bottom:8px}
.cat-grid p{margin:0;font-size:13.5px;color:var(--text-2)}
.layers{margin-top:56px;border:1px solid var(--line);background:var(--ink-2);padding:clamp(18px,3vw,32px)}
.layers-head{display:grid;grid-template-columns:96px minmax(0,1fr);gap:24px;align-items:center;margin-bottom:8px}
.layers-head img{width:96px}
.layers-head .h3{margin-bottom:8px}
.layer-list{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px}
.layer-list li{padding:14px 0;border-top:1px solid var(--line-soft);overflow:hidden}
.layer-list b{display:block;font:600 19px/1.2 var(--f-display)}
.layer-list p{margin:5px 0 0;font-size:13.5px;color:var(--text-2)}
.print-note{max-width:794px;margin:0 auto 14px;font-size:13px;color:var(--text-2)}
.print-note b{color:var(--text)}
@media (max-width:900px){.cat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cat-grid li:nth-child(3){padding-left:0;border-left:0}.cat-grid li:nth-child(n+3){border-top:1px solid var(--line-soft)}.layer-list{grid-template-columns:minmax(0,1fr)}}
@media (max-width:760px){.pair{grid-template-columns:minmax(0,1fr)!important}.duo-emb{width:56px}}
@media (max-width:520px){.cat-grid{grid-template-columns:minmax(0,1fr)}.cat-grid li,.cat-grid li+li{padding-left:0;border-left:0}.cat-grid li+li{border-top:1px solid var(--line-soft)}.layers-head{grid-template-columns:64px minmax(0,1fr);gap:16px}.layers-head img{width:64px}}

.wm-wrap{position:relative}
.wm-wrap>img:first-child{display:block;width:100%;aspect-ratio:1/1;object-fit:cover}
.pp>.wm-wrap{border:1px solid var(--gold-lo);padding:5px;background:var(--ink)}
.wm-wrap{overflow:hidden}
.wm-emb{position:absolute;right:8%;bottom:8%;width:28%;opacity:.45;pointer-events:none}
.docs{margin:16px 6px 0;padding-top:14px;border-top:1px solid var(--line)}
.docs ul{list-style:none;margin:8px 0 6px;padding:0}
.docs li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:10px 12px;border:1px solid var(--line);background:var(--ink-2)}
.docs li .mono{font-size:11.5px;color:var(--gold)}
.docs li b{font-weight:500;font-size:14.5px}
@media(max-width:560px){.docs li{grid-template-columns:1fr;gap:8px}.docs li .btn{justify-self:start}}
.docs li .btn{padding:7px 12px}
.docs>p:last-child{margin:6px 0 0;font-size:12.5px;color:var(--text-3)}
/* ---------- printed certificate (A4, scales with its container) ---------- */

.sheet{--f-body:'Archivo Print','Helvetica Neue',Arial,sans-serif;--f-display:'Cormorant Print','Cormorant Garamond','Cormorant',Georgia,serif;--f-mono:'Plex Print','IBM Plex Mono',ui-monospace,Menlo,Consolas,monospace;font-family:var(--f-body);font-stretch:normal}
.sheet *{font-stretch:normal!important}
.sh-nofirma{display:block;margin:.6cqi 0 .2cqi;font:600 .9cqi/1.2 var(--f-body);letter-spacing:.16em;text-transform:uppercase;color:#9b1c1c}

/* ---------- afijo · A4 horizontal ---------- */
.sheet{-webkit-print-color-adjust:exact;print-color-adjust:exact}
.sheet-wrap.afl{max-width:1123px}
.sheet.afl{aspect-ratio:297/210;padding:4.6cqi 6cqi 3.2cqi;gap:.9cqi;font-size:1cqi;background:#fffdf8}
.sheet.afl::before{inset:1.3cqi;border:.32cqi double var(--pg)}
.sheet.afl::after{inset:2.35cqi;border:.07cqi solid var(--pg2)}
.afl-guil{position:absolute!important;inset:0;width:100%;height:100%;z-index:0!important;pointer-events:none}
.sheet.afl>img.sb-wm{width:36cqi;top:50%;opacity:.07}
.afl-frame{position:absolute!important;inset:0;z-index:1;pointer-events:none;color:var(--pg)}
.afl-frame .c{position:absolute;width:5.2cqi;height:5.2cqi}.afl-frame .c svg{width:100%;height:100%;display:block}
.afl-frame .tl{left:1.7cqi;top:1.7cqi}.afl-frame .tr{right:1.7cqi;top:1.7cqi;transform:scaleX(-1)}
.afl-frame .bl{left:1.7cqi;bottom:1.7cqi;transform:scaleY(-1)}.afl-frame .br{right:1.7cqi;bottom:1.7cqi;transform:scale(-1)}
.afl-frame .mt{position:absolute;margin:0;font:500 .42cqi/1 var(--f-mono);letter-spacing:.12em;color:var(--pg);white-space:nowrap;overflow:hidden;opacity:.85}
.afl-frame .mt.t{top:1.72cqi;left:7.4cqi;right:7.4cqi}.afl-frame .mt.b{bottom:1.72cqi;left:7.4cqi;right:7.4cqi}
.afl-frame .mt.l,.afl-frame .mt.r{top:50%;width:56cqi;transform-origin:center}
.afl-frame .mt.l{left:1.75cqi;transform:translate(-50%,-50%) rotate(-90deg) translateY(.3cqi);margin-left:.2cqi}
.afl-frame .mt.r{right:1.75cqi;transform:translate(50%,-50%) rotate(90deg) translateY(.3cqi);margin-right:.2cqi}
.afl-head{display:grid;grid-template-columns:8cqi minmax(0,1fr) 15cqi;gap:2cqi;align-items:center}
.afl-head>img{width:100%}
.afl-tt{text-align:center}
.sheet.afl .eb{font-size:.7cqi;letter-spacing:.24em}
.afl-tt h1{margin:.5cqi 0 0;font:italic 600 3.9cqi/1 var(--f-display);color:var(--pi);letter-spacing:.01em}
.afl-en{margin:.45cqi 0 0;font:500 .82cqi/1 var(--f-body);font-stretch:118%;letter-spacing:.3em;text-transform:uppercase;color:var(--pi2)}
.afl-no{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:.25cqi}
.afl-no b{font:600 2.3cqi/1 var(--f-display);color:var(--pi);letter-spacing:.04em}
.afl-ser{font:500 1cqi/1 var(--f-mono);color:#9b1c1c;letter-spacing:.08em}
.afl-body{flex:1;justify-content:center;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.7cqi;margin-top:.4cqi}
.afl-lead{margin:0;font:500 1.15cqi/1.3 var(--f-display);font-style:italic;color:var(--pi2)}
.afl-name{margin:.2cqi 0;font:700 5.6cqi/1 var(--f-display);letter-spacing:.07em;text-transform:uppercase;text-wrap:balance;border:0!important;padding:0 1cqi!important;box-shadow:none!important;
  color:#9a7322;text-shadow:0 .1cqi 0 rgba(255,255,255,.9),0 .16cqi .3cqi rgba(122,90,26,.18)}
.afl-tit{margin:0;font:600 2.3cqi/1.1 var(--f-display);color:var(--pi);letter-spacing:.03em;border-bottom:.08cqi solid var(--pg);padding:0 3cqi .3cqi}
.afl-stmt{margin:.3cqi 0 0;max-width:72cqi;font-size:1.02cqi;line-height:1.5;color:var(--pi2)}
.afl-data{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:.5cqi 4cqi 0;border-top:.1cqi solid var(--pl);border-bottom:.1cqi solid var(--pl)}
.afl-data>div{padding:.6cqi .8cqi;text-align:center;border-left:.07cqi solid var(--pl)}.afl-data>div:first-child{border-left:0}
.afl-data dt{font:600 .62cqi/1.2 var(--f-body);font-stretch:118%;letter-spacing:.18em;text-transform:uppercase;color:var(--pg)}
.afl-data dd{margin:.3cqi 0 0;font:600 1.15cqi/1.2 var(--f-display);color:var(--pi)}
.afl-data dd.mono{font:500 .95cqi/1.2 var(--f-mono);color:#7a4a0e}
.afl-cond{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.6cqi;margin:.2cqi 4cqi 0;padding:0;list-style:none;counter-reset:c}
.afl-cond li{font-size:.72cqi;line-height:1.45;color:var(--pi2);counter-increment:c;display:flex;gap:.6cqi}
.afl-cond li::before{content:counter(c,upper-roman);font:600 .9cqi/1 var(--f-display);color:var(--pg);flex:none;width:1.4cqi}
.afl-foot{display:grid;grid-template-columns:minmax(0,1fr) 13cqi minmax(0,1fr);gap:2cqi;align-items:end;margin-top:1cqi}
.sheet.afl .sh-sig{font-size:.72cqi}
.sheet.afl .sh-place{font-size:.72cqi;margin-bottom:.3cqi}
.sheet.afl .sh-firma{width:13cqi;margin:-.2cqi 0 -.8cqi 2.6cqi}
.sheet.afl .sh-sig i{width:22cqi;border-top-width:.08cqi;margin-bottom:.35cqi}
.sheet.afl .sh-sig b{font-size:1.25cqi}
.sheet.afl .sh-sig>.sh-stamp{left:15cqi;bottom:1.4cqi;width:6.4cqi}
.afl-seal{position:relative;width:13cqi;aspect-ratio:1;margin-bottom:-.6cqi}
.afl-seal svg{position:absolute;inset:0;width:100%;height:100%}
.afl-seal img{position:absolute;left:50%;top:50%;width:62%;transform:translate(-50%,-50%)}
.afl-ver{display:flex;gap:1.2cqi;align-items:flex-end;justify-content:flex-end;text-align:left}
.afl-ver .sh-qr{margin:0;flex:none}.afl-ver .sh-qr .qr{width:8.6cqi;height:8.6cqi;padding:.6cqi}.afl-ver .sh-qr .qr img,.afl-ver .sh-qr .qr canvas{width:7.4cqi!important;height:7.4cqi!important}
.afl-ver p{margin:0;font-size:.74cqi;line-height:1.45;color:var(--pi2);max-width:22cqi}
.afl-ver p.eb{font-size:.6cqi;margin-bottom:.3cqi}
.afl-ver b{color:var(--pi)}
.afl-legal{margin:.2cqi 0 0;text-align:center;font-size:.62cqi;line-height:1.35;color:var(--pi2);opacity:.9}
.afj-list li.afj-cert button{border-color:var(--gold-lo)}
.afj-list li.afj-cert b{color:var(--gold-hi)}
/* ---------- certificado impreso A4 · fondo blanco, detalles dorados ---------- */
.sheet-wrap{container-type:inline-size;max-width:794px;margin:0 auto}
.sheet{--pi:#1b1812;--pi2:#57503f;--pg:#a8812c;--pg2:#c9a24a;--pl:rgba(168,129,44,.38);
  position:relative;width:100%;aspect-ratio:210/297;overflow:hidden;color:var(--pi);font:400 1.42cqi/1.42 var(--f-body);
  background:#fff;padding:4.8cqi 6.2cqi 4cqi;display:flex;flex-direction:column;gap:.95cqi;box-shadow:0 22px 60px rgba(0,0,0,.55)}
.sheet::before,.sheet::after{content:"";position:absolute;pointer-events:none}
.sheet::before{inset:2.2cqi;border:.26cqi solid var(--pg)}
.sheet::after{inset:2.9cqi;border:.09cqi solid var(--pg2)}
.sheet>*{position:relative;z-index:1}
.sheet canvas.band{height:2.4cqi;opacity:.9;flex:none}
.sheet .eb{margin:0;font:600 1.02cqi/1.2 var(--f-body);font-stretch:122%;letter-spacing:.2em;text-transform:uppercase;color:var(--pg)}
/* cabecera */
.sh-head{display:grid;grid-template-columns:10.5cqi minmax(0,1fr) 19cqi;gap:2.2cqi;align-items:center}
.sh-head>img{width:100%}
.sh-title{text-align:center}
.sh-title h1{margin:.8cqi 0 0;text-transform:uppercase;letter-spacing:.05em;font:600 2.2cqi/1.2 var(--f-display);color:var(--pi);text-wrap:balance}
.sh-title h2{margin:0;font:600 1.25cqi/1.2 var(--f-body);font-stretch:118%;letter-spacing:.24em;text-transform:uppercase;color:var(--pi2)}
.sh-no .eb{letter-spacing:.14em;font-size:.92cqi}
.sh-no{border:.12cqi solid var(--pg);padding:1cqi .8cqi;text-align:center;display:flex;flex-direction:column;gap:.45cqi}
.sh-no b{font:500 1.45cqi/1.15 var(--f-mono);color:var(--pi);overflow-wrap:anywhere}
.sh-no small{font:600 .95cqi/1 var(--f-body);font-stretch:118%;letter-spacing:.16em;text-transform:uppercase;color:#9a5b12}
/* identidad */
.sh-id{display:grid;grid-template-columns:27cqi minmax(0,1fr);gap:3cqi;align-items:center}
.sh-id .duo{display:grid;grid-template-columns:1fr 1fr;gap:1.8cqi}
.sh-id .pp{margin:0}
.sh-id .pp img,.sh-id .wm-wrap,.sh-id .ph-empty{display:block;width:100%;aspect-ratio:1;object-fit:cover}
.sh-id .pp>img,.sh-id .wm-wrap,.sh-id .pp>.ph-empty{border:.13cqi solid var(--pg);padding:.5cqi;background:#fff;position:relative}
.sh-id .wm-wrap>img:first-child{width:100%;height:100%;object-fit:cover}
.sh-id .wm-emb{position:absolute;right:7%;bottom:7%;width:26%;opacity:.5}
.sh-id .ph-empty{display:grid;place-items:center;background:#faf6ec;color:var(--pi2);font-size:1.1cqi;text-align:center}
.sh-id .ph-empty img{width:40%;opacity:.5}
.sh-id figcaption{margin-top:.6cqi;text-align:center;font:600 .95cqi/1.2 var(--f-body);font-stretch:118%;letter-spacing:.16em;text-transform:uppercase;color:var(--pi2)}
.sh-name h3{margin:.4cqi 0 .9cqi;font:600 5.4cqi/1 var(--f-display);letter-spacing:.06em;color:var(--pi)}
.sh-cat{margin:0 0 .8cqi;font-size:1.42cqi;line-height:1.42}
.sh-cat b{display:block;font:600 1.02cqi/1.3 var(--f-body);font-stretch:118%;letter-spacing:.14em;text-transform:uppercase;color:var(--pi2);margin-bottom:.25cqi}
.sh-cat span{font:600 1.75cqi/1.2 var(--f-display);color:var(--pi)}
.sh-stmt{margin:0;font-size:1.36cqi;line-height:1.45;text-align:justify;hyphens:auto}
/* bloques de datos */
.sh-blk h4{margin:0 0 .5cqi;display:flex;align-items:center;gap:1.2cqi;font:600 1.05cqi/1 var(--f-body);font-stretch:122%;letter-spacing:.2em;text-transform:uppercase;color:var(--pg)}
.sh-blk h4::after{content:"";flex:1;border-top:.1cqi solid var(--pl)}
.sh-data{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;column-gap:1.6cqi}
.sh-data div{padding:.55cqi 0;border-bottom:.08cqi solid var(--pl);min-width:0}
.sh-data div.w2{grid-column:span 2}.sh-data div.w4{grid-column:1/-1}
.sh-data dt{font:600 .92cqi/1.2 var(--f-body);font-stretch:118%;letter-spacing:.13em;text-transform:uppercase;color:var(--pi2)}
.sh-data dd{margin:.35cqi 0 0;font-size:1.38cqi;line-height:1.3;overflow-wrap:anywhere;min-height:1.8cqi}
.sh-data dd.mono{font:500 1.25cqi/1.3 var(--f-mono)}
.sh-data dd.fill{border-bottom:.08cqi dotted var(--pi2);min-height:2cqi}
/* firma y QR */
.sh-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4cqi;align-items:end;margin-top:auto}
.sh-sig{position:relative;display:flex;flex-direction:column;gap:.3cqi;font-size:1.18cqi;color:var(--pi2)}
.sh-sig>*{position:relative;z-index:1}
.sh-sig>.sh-seal{position:absolute;z-index:0;left:26cqi;bottom:.6cqi;width:20cqi;opacity:.3;transform:rotate(-8deg);pointer-events:none}
.sh-place{font:400 1.22cqi/1 var(--f-mono);margin-bottom:1.8cqi}
.sh-firma{display:block;width:22cqi;margin:-.4cqi 0 -1.4cqi 4cqi;position:relative;z-index:3;pointer-events:none}
.sh-sig i{display:block;width:38cqi;border-top:.13cqi solid var(--pi);margin-bottom:.7cqi}
.sh-sig b{font:600 2.15cqi/1.1 var(--f-display);color:var(--pi)}
.sh-sig em{font-style:normal;color:var(--pg);font-weight:600;margin-top:.25cqi}
.sh-qr{margin:0;text-align:center}
.sh-qr .qr{width:12.5cqi;height:12.5cqi;padding:1cqi;background:#fff;border:.12cqi solid var(--pg)}
.sh-qr .qr img,.sh-qr .qr canvas{width:10.5cqi!important;height:10.5cqi!important}
.sh-qr figcaption{margin-top:.6cqi;font:400 .92cqi/1.3 var(--f-mono);color:var(--pi2)}
/* naturaleza jurídica */
.af-hero{text-align:center;padding:2.4cqi 0 1cqi;display:flex;flex-direction:column;align-items:center;gap:.8cqi}
.af-hero h3{margin:0;font:600 6.2cqi/1.05 var(--f-display);letter-spacing:.06em;color:var(--pi);text-transform:uppercase;text-wrap:balance}
.af-tit{margin:0;font-size:1.6cqi;color:var(--pi2)}.af-tit b{color:var(--pi)}
.af-list{margin:.4cqi 0 0;font-size:1.25cqi;line-height:1.6}
.af-cond{margin:.4cqi 0 0;padding-left:2.4cqi;display:flex;flex-direction:column;gap:.5cqi;font-size:1.28cqi;line-height:1.45}
.af-cond li::marker{color:var(--pg);font-weight:600}
.sheet-wrap.land{max-width:1123px}
.sheet.land{aspect-ratio:297/210;padding:3.2cqi 3.6cqi 2.4cqi;gap:.8cqi;font-size:.95cqi}
.sheet.land::before{inset:1.4cqi}.sheet.land::after{inset:1.9cqi}
.sheet.land>img.sb-wm{width:46cqi;top:50%}
.sheet.land canvas.band{height:1.4cqi}
.pl-head{display:grid;grid-template-columns:6.5cqi minmax(0,1fr) auto;gap:1.6cqi;align-items:center}
.pl-head>img{width:100%}
.pl-title h1{margin:.3cqi 0 0;font:600 2.4cqi/1.05 var(--f-display);text-transform:uppercase;letter-spacing:.08em;color:var(--pi)}
.pl-title .eb{font-size:.68cqi}
.pl-no{display:flex;gap:1cqi}
.pl-no>div{border:.08cqi solid var(--pg);padding:.5cqi .9cqi;display:flex;flex-direction:column;gap:.25cqi;text-align:center}
.pl-no .eb{font-size:.58cqi}.pl-no b{font:500 1.05cqi/1.1 var(--f-mono);color:var(--pi)}.pl-no b.code{color:#7a4a0e}
.pl-body{flex:1;display:grid;grid-template-columns:22cqi minmax(0,1fr);gap:1.8cqi;min-height:0}
.pl-side{display:flex;flex-direction:column;gap:.45cqi;min-width:0;border-right:.08cqi solid var(--pl);padding-right:1.6cqi}
.pl-photo{margin:0;border:.1cqi solid var(--pg);padding:.35cqi;background:#fff;width:13cqi}
.pl-photo img,.pl-photo .ph-empty{display:block;width:100%;aspect-ratio:1;object-fit:cover}
.pl-photo .ph-empty{display:grid;place-items:center;background:#faf6ec;font-size:.7cqi;color:var(--pi2)}.pl-photo .ph-empty img{width:40%;opacity:.5}
.pl-af{margin:.3cqi 0 0!important;font-size:.7cqi}
.pl-name{margin:0;font:600 2.6cqi/1 var(--f-display);letter-spacing:.04em;color:var(--pi)}
.pl-name sup{font-size:.45em;color:var(--pg)}
.sheet.land .pd-st{align-self:flex-start;margin:.2cqi 0 .2cqi;font-size:.6cqi;padding:.35cqi .6cqi}
.pl-dl{margin:0;display:grid;grid-template-columns:1fr 1fr;column-gap:1cqi}
.pl-dl div{padding:.28cqi 0;border-bottom:.06cqi solid var(--pl);min-width:0}
.pl-dl dt{font:600 .55cqi/1.2 var(--f-body);font-stretch:118%;letter-spacing:.12em;text-transform:uppercase;color:var(--pi2)}
.pl-dl dd{margin:.1cqi 0 0;font-size:.82cqi;line-height:1.25;overflow-wrap:anywhere}
.pl-dl dd.mono{font:500 .76cqi/1.25 var(--f-mono)}
.pl-dl i.fill{display:block;height:.9cqi;border-bottom:.06cqi dotted var(--pi2)}
.pl-cert{grid-template-columns:1fr;margin-top:.3cqi}.pl-cert>.eb{font-size:.6cqi;margin:0 0 .1cqi}
.pl-tree{display:flex;flex-direction:column;min-width:0;min-height:0}
.pl-th{margin:0 0 .3cqi;font:600 .72cqi/1 var(--f-body);font-stretch:122%;letter-spacing:.2em;text-transform:uppercase;color:var(--pg)}
.sheet.land .pt-tree{flex:1;display:grid;grid-template-columns:repeat(var(--G),minmax(0,1fr));grid-template-rows:auto 1fr;column-gap:1.4cqi}
.sheet.land .pt-tree>.eb{margin:0 0 .3cqi;font-size:.58cqi}
.sheet.land .pt-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(var(--G),minmax(0,1fr));grid-template-rows:repeat(var(--R),calc((43cqi - (var(--R) - 1) * .22cqi) / var(--R)));gap:.22cqi 1.4cqi;height:43cqi}
.sheet.land .pt-grid>.c{overflow:visible;min-height:0}
.sheet.land .pt-tree{grid-template-rows:auto auto!important;flex:none!important}
.sheet.land .pt-grid>.c{display:flex;align-items:center;min-width:0;position:relative}
.sheet.land .pt-grid>.c:not(.g1)::before{content:"";position:absolute;left:-1.4cqi;width:1.4cqi;top:50%;border-top:.06cqi solid var(--pg2)}
.sheet.land .pt-n{width:100%;padding:.3cqi .6cqi;gap:0;background:rgba(255,255,255,.75)}
.sheet.land .pt-n .r{font-size:.5cqi}.sheet.land .pt-n .a{font-size:.52cqi}
.sheet.land .pt-n b{font-size:1cqi}
.sheet.land .pt-n .m{font-size:.55cqi}
.sheet.land .pt-n.g3,.sheet.land .pt-n.g4{padding:.15cqi .5cqi}
.sheet.land .pt-n.g3 b,.sheet.land .pt-n.g4 b{font-size:.74cqi;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sheet.land .pt-n.g3 b .a,.sheet.land .pt-n.g4 b .a{font-size:.48cqi}
.sheet.land .pt-n.g4 .m{font-size:.48cqi}
.sheet.land .pt-coi{margin:.35cqi 0 0;font-size:.72cqi}
.pl-foot{display:grid;grid-template-columns:26cqi minmax(0,1fr) auto;gap:1.8cqi;align-items:end;border-top:.08cqi solid var(--pl);padding-top:.6cqi}
.sheet.land .sh-sig{font-size:.72cqi}
.sheet.land .sh-place{font-size:.7cqi;margin-bottom:.6cqi}
.sheet.land .sh-firma{width:12cqi;margin:-1.4cqi 0 -.8cqi 2cqi}
.sheet.land .sh-sig i{width:20cqi;border-top-width:.08cqi;margin-bottom:.35cqi}
.sheet.land .sh-sig b{font-size:1.15cqi}
.sheet.land .sh-sig>.sh-stamp{left:14cqi;bottom:1.6cqi;width:6.2cqi}
.pl-legal{margin:0;font-size:.62cqi;line-height:1.4;color:var(--pi2);text-align:justify;hyphens:auto}.pl-legal b{color:var(--pi)}
.pl-qr .qr{width:7.2cqi!important;height:7.2cqi!important;padding:.5cqi!important}
.pl-qr .qr img,.pl-qr .qr canvas{width:6.2cqi!important;height:6.2cqi!important}
.pl-qr figcaption{font-size:.52cqi!important}
.pl-micro{font-size:.45cqi;line-height:1;color:var(--pg);opacity:.7;white-space:nowrap;overflow:hidden}
.sheet-wrap.lgx{max-width:1344px}
.sheet.lgx{aspect-ratio:356/216;padding:2.6cqi 3cqi 1.8cqi;gap:.7cqi;font-size:.8cqi}
.sheet.lgx::before{inset:1.1cqi;border-width:.18cqi}.sheet.lgx::after{inset:1.5cqi}
.sheet.lgx>img.sb-wm{width:40cqi;top:52%;opacity:.07}
.sheet.lgx canvas.band{height:1.1cqi}
.sheet.lgx .eb{font-size:.52cqi;letter-spacing:.18em}
.lg-head{display:grid;grid-template-columns:5.6cqi minmax(0,1fr) auto;gap:1.4cqi;align-items:center}
.lg-head>img{width:100%}
.lg-title h1{margin:.15cqi 0 .1cqi;font:600 2.3cqi/1 var(--f-display);text-transform:uppercase;letter-spacing:.1em;color:var(--pi)}
.lg-org{margin:0;font:600 .72cqi/1.2 var(--f-display);letter-spacing:.14em;text-transform:uppercase;color:var(--pi2)}
.lg-no{display:flex;gap:.8cqi}
.lg-no>div{border:.07cqi solid var(--pg);padding:.4cqi .8cqi;display:flex;flex-direction:column;gap:.2cqi;text-align:center}
.lg-no b{font:500 .95cqi/1.1 var(--f-mono);color:var(--pi)}.lg-no b.code{color:#7a4a0e}
.lg-body{flex:1;display:grid;grid-template-columns:23cqi minmax(0,1fr);gap:1.6cqi;min-height:0}
.lg-side{display:flex;flex-direction:column;gap:.55cqi;border-right:.06cqi solid var(--pl);padding-right:1.4cqi;min-width:0}
.lg-who{display:grid;grid-template-columns:8.4cqi minmax(0,1fr);gap:1cqi;align-items:center}
.lg-photo{margin:0;border:.08cqi solid var(--pg);padding:.3cqi;background:#fff}
.lg-photo img,.lg-photo .ph-empty{display:block;width:100%;aspect-ratio:1;object-fit:cover}
.lg-photo .ph-empty{display:grid;place-items:center;background:#faf6ec;font-size:.55cqi;color:var(--pi2)}.lg-photo .ph-empty img{width:40%;opacity:.5}
.lg-name{margin:.1cqi 0 .3cqi;font:600 2cqi/1 var(--f-display);letter-spacing:.04em;color:var(--pi)}
.lg-name sup{font-size:.45em;color:var(--pg)}
.sheet.lgx .pd-st{font-size:.48cqi;padding:.3cqi .5cqi;margin:0}
.lg-dl{margin:0;display:grid;grid-template-columns:1fr 1fr;column-gap:.9cqi}
.lg-dl>div{padding:.22cqi 0;border-bottom:.05cqi solid var(--pl);min-width:0}
.lg-dl>div.w2{grid-column:span 2}
.lg-dl dt{font:600 .46cqi/1.2 var(--f-body);font-stretch:118%;letter-spacing:.1em;text-transform:uppercase;color:var(--pi2)}
.lg-dl dt i{font-style:italic;font-weight:500;letter-spacing:.04em;text-transform:none;color:var(--pg);margin-left:.4em}
.lg-dl dd{margin:.08cqi 0 0;font-size:.7cqi;line-height:1.25;overflow-wrap:anywhere;color:var(--pi)}
.lg-dl dd.mono{font:500 .66cqi/1.25 var(--f-mono)}
.lg-dl i.fill{display:block;height:.75cqi;border-bottom:.05cqi dotted var(--pi2)}
.lg-right{display:flex;flex-direction:column;min-width:0}
.lg-th{margin:0 0 .3cqi;font:600 .58cqi/1 var(--f-body);font-stretch:122%;letter-spacing:.2em;text-transform:uppercase;color:var(--pg)}
.lg-tree{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:1.2cqi}
.lg-tree>.eb{margin:0 0 .25cqi;font-size:.46cqi}
.lg-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(16,calc((35.4cqi - 15 * .16cqi) / 16));gap:.16cqi 1.2cqi;height:35.4cqi}
.lg-grid>.c{display:flex;align-items:center;min-width:0;position:relative}
.lg-grid>.c:not(.g1)::before{content:"";position:absolute;left:-1.2cqi;width:1.2cqi;top:50%;border-top:.05cqi solid var(--pg2)}
.lg-n{width:100%;border:.07cqi solid var(--pl);background:rgba(255,255,255,.78);padding:.22cqi .5cqi;display:flex;flex-direction:column;gap:.04cqi;min-width:0}
.lg-n.reg{border-color:var(--pg)}
.lg-n.g1{box-shadow:inset .25cqi 0 0 var(--pg);padding:.4cqi .6cqi}
.lg-n .r{font:600 .4cqi/1.1 var(--f-body);font-stretch:118%;letter-spacing:.12em;text-transform:uppercase;color:var(--pg)}
.lg-n b{font:600 .72cqi/1.12 var(--f-display);color:var(--pi);overflow-wrap:anywhere}
.lg-n.g1 b,.lg-n.g2 b{font-size:.92cqi}
.lg-n b .a{font:600 .42cqi/1 var(--f-body);letter-spacing:.06em;color:var(--pi2)}
.lg-n .m{font:400 .42cqi/1.2 var(--f-mono);color:var(--pi2)}
.lg-n .m em{font-style:normal;color:var(--pg);margin:0 .25em 0 0}.lg-n .m em+*,.lg-n .m em:nth-of-type(2){margin-left:.6em}
.lg-n.unk{border-style:dashed}.lg-n.unk b{color:var(--pi2);font-style:italic;font-size:.6cqi}
.lg-coi{margin:.35cqi 0 0;font-size:.6cqi;color:var(--pi2)}.lg-coi b{color:var(--pi)}
.lg-foot{display:grid;grid-template-columns:24cqi minmax(0,1fr) auto;gap:1.6cqi;align-items:end;border-top:.06cqi solid var(--pl);padding-top:.5cqi}
.sheet.lgx .sh-sig{font-size:.58cqi}
.sheet.lgx .sh-place{font-size:.56cqi;margin-bottom:.4cqi}
.sheet.lgx .sh-firma{width:10cqi;margin:-.2cqi 0 -.7cqi 1.8cqi}
.sheet.lgx .sh-sig i{width:17cqi;border-top-width:.07cqi;margin-bottom:.3cqi}
.sheet.lgx .sh-sig b{font-size:.95cqi}
.sheet.lgx .sh-sig>.sh-stamp{left:12cqi;bottom:1.2cqi;width:5cqi}
.lg-cert{margin:0;font-size:.56cqi;line-height:1.45;color:var(--pi2);text-align:justify;hyphens:auto}.lg-cert i{color:var(--pg)}.lg-cert b{color:var(--pi)}
.lg-contact{font:500 .55cqi/1.6 var(--f-mono);color:var(--pg);letter-spacing:.04em}
.lg-qr .qr{width:6cqi!important;height:6cqi!important;padding:.4cqi!important}
.lg-qr .qr img,.lg-qr .qr canvas{width:5.2cqi!important;height:5.2cqi!important}
.lg-qr figcaption{font-size:.44cqi!important}
.lg-micro{font-size:.38cqi;line-height:1;color:var(--pg);opacity:.7;white-space:nowrap;overflow:hidden}
.lg-body2{flex:1;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:2.4cqi;min-height:0}
.lg-transfer{display:flex;flex-direction:column;gap:.7cqi;border-right:.06cqi solid var(--pl);padding-right:2cqi}
.lg-help{margin:0;font-size:.62cqi;line-height:1.5;color:var(--pi2);text-align:justify}.lg-help b{color:var(--pi)}
.lg-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1cqi 1.2cqi}
.lg-f{display:flex;flex-direction:column;gap:.25cqi;min-width:0}.lg-f.w2{grid-column:span 2}.lg-f.w3{grid-column:1/-1}
.lg-f i{display:block;height:1.6cqi;border-bottom:.07cqi solid var(--pi)}
.lg-f span,.lg-firmas span{font:600 .46cqi/1.2 var(--f-body);font-stretch:118%;letter-spacing:.1em;text-transform:uppercase;color:var(--pi2)}
.lg-f em,.lg-firmas em{font-style:italic;font-weight:500;text-transform:none;letter-spacing:.03em;color:var(--pg)}
.lg-firmas{display:grid;grid-template-columns:1fr 1fr;gap:3cqi;margin-top:1.2cqi}
.lg-firmas>div{display:flex;flex-direction:column;gap:.3cqi;text-align:center}.lg-firmas i{display:block;height:3.4cqi;border-bottom:.07cqi solid var(--pi)}
.lg-office{margin-top:auto;border:.07cqi dashed var(--pg);padding:.7cqi 1cqi;background:rgba(253,251,246,.6)}
.lg-office .eb{margin:0 0 .4cqi}.lg-office .lg-f i{height:1.3cqi}
.lg-sum{position:relative;display:flex;flex-direction:column;gap:.3cqi;min-width:0}
.lg-seal{position:absolute;right:-.6cqi;top:-1cqi;width:9cqi;filter:drop-shadow(0 .2cqi .4cqi rgba(0,0,0,.25))}
.lg-sealbox{margin:auto 0 0;display:flex;align-items:center;justify-content:center;gap:1.4cqi;padding-top:.6cqi}
.lg-sealbox img{width:11cqi;filter:drop-shadow(0 .25cqi .5cqi rgba(0,0,0,.28))}
.lg-sealbox p{margin:0;font:600 1.05cqi/1.3 var(--f-display);letter-spacing:.08em;text-transform:uppercase;color:var(--pi)}
.lg-sealbox i{font:italic 500 .8cqi/1.4 var(--f-display);letter-spacing:.04em;text-transform:none;color:var(--pg)}
.lg-sum .lg-dl{margin-right:0}
.lg-sum .lg-dl dd{font-size:.76cqi}
.pd-id{grid-template-columns:17cqi minmax(0,1fr)!important}
.sheet.ped .sh-name h3{font-size:4.6cqi}
.sheet.ped .sh-id .ph-empty{font-size:1cqi}
.pd-st{display:inline-block;margin-top:.6cqi;padding:.5cqi .9cqi;font:600 .95cqi/1 var(--f-body);font-stretch:118%;letter-spacing:.14em;text-transform:uppercase;border:.1cqi solid var(--pl);color:var(--pi2)}
.pd-st.ok{background:var(--pg);border-color:var(--pg);color:#fff}
.sheet.ped .sh-name h3 sup{font-size:.4em;vertical-align:super;color:var(--pg)}
.pt-tree{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:1.2cqi}
.pt-tree>.eb{margin:.2cqi 0 .4cqi;font-size:.85cqi}
.pt-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(8,auto);gap:.3cqi 1.2cqi}
.pt-grid>div{display:flex;align-items:center;min-width:0}
.pt-n{width:100%;border:.1cqi solid var(--pl);background:rgba(255,255,255,.6);padding:.4cqi .8cqi;display:flex;flex-direction:column;gap:.1cqi;min-width:0}
.pt-n.g1{border-color:var(--pg);box-shadow:inset .3cqi 0 0 var(--pg)}
.pt-n .r{font:600 .78cqi/1.1 var(--f-body);font-stretch:118%;letter-spacing:.12em;text-transform:uppercase;color:var(--pg)}
.pt-n .a{font:600 .8cqi/1.1 var(--f-body);letter-spacing:.06em;text-transform:uppercase;color:var(--pi2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pt-n b{font:600 1.35cqi/1.1 var(--f-display);color:var(--pi)}
.pt-n.g3{padding:.25cqi .7cqi;gap:0}
.pt-n.g3 b{font-size:1.1cqi;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pt-n.g3 b .a{font-size:.72cqi;display:inline}
.pt-n.g3 .m{font-size:.75cqi}
.pt-n .m{font:400 .85cqi/1.2 var(--f-mono);color:var(--pi2)}
.pt-n.unk{border-style:dashed}.pt-n.unk b{color:var(--pi2);font-style:italic}
.pt-coi{margin:.7cqi 0 0;font-size:1.05cqi;line-height:1.4;color:var(--pi2)}
.pt-coi b{color:var(--pi)}
.sh-iss{display:grid;grid-template-columns:1fr 1fr;gap:1.6cqi}
.sh-iss>div{border:.1cqi solid var(--pl);padding:.7cqi 1.3cqi;display:flex;flex-direction:column;gap:.2cqi;min-width:0}
.sh-iss>div:first-child{border-color:var(--pg);box-shadow:inset .35cqi 0 0 var(--pg)}
.sh-iss .eb{font-size:.88cqi;margin-bottom:.15cqi}
.sh-iss b{font:600 1.75cqi/1.15 var(--f-display);color:var(--pi)}
.sh-iss span{font-size:1.05cqi;line-height:1.35;color:var(--pi2)}
.sh-no b.code{font-size:1.25cqi;letter-spacing:.04em;color:#7a4a0e}
.sh-icrb{position:relative;display:flex;align-items:flex-end;gap:1.4cqi}
.sh-sig>.sh-stamp{position:absolute;left:29cqi;bottom:4.2cqi;width:11cqi;opacity:.72;transform:rotate(-7deg);z-index:2;pointer-events:none}
.sh-legal{border:.1cqi solid var(--pl);background:rgba(253,251,246,.55);padding:.9cqi 1.4cqi}
.sh-legal .eb{margin-bottom:.55cqi}
.sh-legal .cols{display:grid;grid-template-columns:1fr 1fr;column-gap:2.2cqi}
.sh-legal .cols p{break-inside:avoid}
.sh-legal p b{color:var(--pi)}
.sh-legal p:not(.eb){margin:0 0 .45cqi;font-size:1cqi;line-height:1.38;line-height:1.42;color:var(--pi2);text-align:justify;hyphens:auto}
.sh-legal p:last-child{margin-bottom:0}
.sh-foot{margin-top:-.2cqi}
.sh-foot .micro{font-size:.68cqi;line-height:1;color:var(--pg);opacity:.75;margin:0;white-space:nowrap;overflow:hidden}
/* reverso */
.sheet.back{gap:1.15cqi;padding-top:4.8cqi}
.sheet>img.sb-wm{position:absolute;z-index:0;left:50%;top:52%;width:74cqi;transform:translate(-50%,-50%);opacity:.09;pointer-events:none}
.sb-head{display:grid;grid-template-columns:7.5cqi minmax(0,1fr) 7.5cqi;gap:2cqi;align-items:center;text-align:center}
.sb-head img{width:100%}
.sb-head span{display:block;margin-top:.6cqi;font:500 1.15cqi/1.2 var(--f-mono);color:var(--pi2)}
.sb-title{margin:.2cqi auto 0;text-align:center;text-transform:uppercase;letter-spacing:.07em;font:600 2.2cqi/1.15 var(--f-display);color:var(--pi);text-wrap:balance}
.sb-intro{margin:0;font-size:1.4cqi;line-height:1.5;text-align:justify}
.sb-cols{display:grid;grid-template-columns:1fr 1fr;gap:1.8cqi}
.sb-stage{border:.12cqi solid var(--pl);padding:1.3cqi 1.5cqi;background:rgba(255,255,255,.18)}
.sb-stage.on{border-color:var(--pg);box-shadow:inset 0 0 0 .1cqi var(--pg)}
.sb-stage.off{opacity:.82}
.sb-tag{display:inline-block;margin-bottom:.7cqi;padding:.45cqi .8cqi;font:600 .9cqi/1 var(--f-body);font-stretch:118%;letter-spacing:.15em;text-transform:uppercase;border:.1cqi solid var(--pl);color:var(--pi2)}
.sb-stage.on .sb-tag{background:var(--pg);border-color:var(--pg);color:#fff}
.sb-stage h4{margin:0 0 .25cqi;font:600 1.95cqi/1.15 var(--f-display);color:var(--pi)}
.sb-stage .ref{margin:0 0 .8cqi;font:500 1cqi/1.2 var(--f-mono);color:var(--pg)}
.sb-stage ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.5cqi}
.sb-stage li{position:relative;padding-left:1.9cqi;font-size:1.34cqi;line-height:1.45}
.sb-stage li::before{content:"";position:absolute;left:.2cqi;top:.55cqi;width:.65cqi;height:.65cqi;transform:rotate(45deg);background:var(--pg2)}
.sb-stage li b{color:var(--pi)}
.sb-imp{margin:0;padding:1.1cqi 1.5cqi;border-left:.42cqi solid #9a5b12;background:rgba(246,236,212,.28);font-size:1.32cqi;line-height:1.45;color:var(--pi)}
.sb-imp b{color:#7a4a0e}
.sb-scope{width:100%;border-collapse:collapse;font-size:1.24cqi;line-height:1.4}
.sb-scope caption{text-align:left;margin-bottom:.5cqi}
.sb-scope th,.sb-scope td{text-align:left;vertical-align:top;padding:.55cqi .8cqi;border-bottom:.08cqi solid var(--pl)}
.sb-scope thead th{font:600 .9cqi/1.2 var(--f-body);font-stretch:118%;letter-spacing:.14em;text-transform:uppercase;color:var(--pi2);border-bottom:.12cqi solid var(--pg)}
.sb-scope tbody th{font-weight:700;color:var(--pi);width:23%}
.sb-scope td:last-child{width:27%;color:var(--pi2)}
.sb-ack{margin-top:auto;border-top:.12cqi solid var(--pg);padding-top:1.2cqi}
.sb-ack>p{margin:0 0 1cqi;font:italic 500 1.55cqi/1.35 var(--f-display);color:var(--pi)}
.sb-fields{display:grid;grid-template-columns:1.6fr 1fr .8fr 1.2fr;gap:2cqi}
.sb-fields div{display:flex;flex-direction:column;gap:.5cqi}
.sb-fields i{display:flex;align-items:flex-end;height:3.4cqi;border-bottom:.12cqi solid var(--pi);font-style:normal;position:relative}
.sb-fields em{font:500 1.25cqi/1.1 var(--f-body);font-style:normal;color:var(--pi);padding-bottom:.35cqi;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sb-fields em.mono{font-family:var(--f-mono)}
.sb-fields .sb-sig{position:absolute;left:0;bottom:-.6cqi;height:5.2cqi;width:auto}
.sb-em{position:relative;padding-top:6.2cqi}
.sb-em .sb-sig{position:absolute;left:0;top:-.2cqi;height:5.6cqi;width:auto;z-index:2}
.sb-em .sb-stamp{position:absolute;left:11cqi;top:-.4cqi;width:5.4cqi;opacity:.85;z-index:1}
.sb-fields span{font:600 .9cqi/1 var(--f-body);font-stretch:118%;letter-spacing:.14em;text-transform:uppercase;color:var(--pi2)}
.sb-issuer{margin-top:1cqi;display:flex;justify-content:space-between;gap:2cqi;align-items:flex-end;font-size:1.05cqi;color:var(--pi2)}
.sb-issuer b{display:block;font:600 1.6cqi/1.1 var(--f-display);color:var(--pi)}
.sb-refs b{color:var(--pi)}
.sb-refs{margin:0;text-align:justify!important;hyphens:auto;text-align-last:left;font-size:.98cqi;line-height:1.4;color:var(--pi2);text-align:center}

/* ---------- credencial · tarjeta 85,6 × 54 mm ---------- */
.sheet-wrap.cdx{max-width:560px}
.sheet.cd{aspect-ratio:85.6/54;padding:0;gap:0;font-size:1cqi;background:#fffdf8;border-radius:3.6cqi;overflow:hidden;display:grid;grid-template-rows:auto 1fr auto;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.sheet.cd::before,.sheet.cd::after{display:none}
.sheet.cd .cd-wm{position:absolute;right:-6cqi;bottom:-8cqi;width:48cqi;opacity:.06;z-index:0}
.cd-top{position:relative;z-index:1;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:2.4cqi;padding:2.6cqi 4cqi 2cqi;background:linear-gradient(90deg,#14120e,#2a2416);color:#e9cf8f;border-bottom:.5cqi solid var(--pg)}
.cd-top>img{width:8cqi;height:8cqi}
.cd-org{margin:0;font:600 1.8cqi/1.2 var(--f-body);font-stretch:118%;letter-spacing:.2em;text-transform:uppercase;color:#c9a24a}
.cd-top h1{margin:.5cqi 0 0;font:600 4.6cqi/1 var(--f-display);white-space:nowrap;color:#f3e6c4;letter-spacing:.03em;text-transform:uppercase}
.cd-status{font:700 1.9cqi/1 var(--f-body);font-stretch:118%;letter-spacing:.12em;text-transform:uppercase;color:#14120e;background:#c9a24a;padding:1.2cqi 1.8cqi;border-radius:.6cqi;white-space:nowrap}
.cd-status.tr{background:#e9cf8f}
.cd-body{position:relative;z-index:1;display:grid;grid-template-columns:22cqi 1fr 20cqi;gap:2.6cqi;padding:2.4cqi 4cqi 1.6cqi;align-items:start;align-content:center}
.cd-photo{margin:0;aspect-ratio:4/5;border:.5cqi solid var(--pg);padding:.6cqi;background:#fff;overflow:hidden}
.cd-photo img{width:100%;height:100%;object-fit:cover;display:block}
.cd-photo.sm{width:15cqi}
.cd-noimg{width:100%;height:100%;display:grid;place-items:center;background:#f3ecd9}.cd-noimg img{width:55%;opacity:.5}
.cd-name{margin:0 0 1.4cqi;font:700 6.6cqi/1 var(--f-display);color:var(--pi);text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cd-data dl{display:grid;grid-template-columns:1fr 1fr;gap:1.5cqi 2cqi;margin:0}
.cd-data .w2{grid-column:1/-1}
.cd-data dt{font:700 1.8cqi/1.1 var(--f-body);white-space:nowrap;font-stretch:118%;letter-spacing:.14em;text-transform:uppercase;color:var(--pg)}
.cd-data dd{margin:.3cqi 0 0;font:500 2.9cqi/1.15 var(--f-body);color:var(--pi);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cd-data dd.mono{font-family:var(--f-mono);font-size:2.5cqi}
.cd-qr{display:flex;flex-direction:column;align-items:center;gap:1cqi}
.cd-qr .qr{width:18cqi;height:18cqi;padding:.9cqi;background:#fff;border:.4cqi solid var(--pg)}
.cd-qr .qr img,.cd-qr .qr canvas{width:100%!important;height:100%!important}
.cd-qr>span{font:600 1.9cqi/1 var(--f-mono);color:var(--pi);letter-spacing:.02em;white-space:nowrap}
.cd-qr.big .qr{width:23cqi;height:23cqi}
.cd-foot{position:relative;z-index:1;display:flex;justify-content:space-between;gap:2cqi;padding:1.5cqi 4cqi;background:#14120e;color:#c9a24a;font:600 1.7cqi/1.2 var(--f-body);font-stretch:118%;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.cd-mt{position:absolute;left:4cqi;right:4cqi;margin:0;font:500 1.5cqi/1 var(--f-mono);letter-spacing:.1em;color:#c9a24a;white-space:nowrap;overflow:hidden;opacity:.7;z-index:2}
.cd-mt.t{top:.5cqi}.cd-mt.b{display:none}
.cd-back .cd-bk{position:relative;z-index:1;display:grid;grid-template-columns:26cqi 1fr;gap:2.6cqi;padding:2.6cqi 4cqi 1.4cqi;grid-row:1/3;align-content:center}
.cd-lbl{margin:1.2cqi 0 .1cqi;font:700 1.7cqi/1.1 var(--f-body);font-stretch:118%;letter-spacing:.14em;text-transform:uppercase;color:var(--pg)}
.cd-bk-name{margin:0;font:600 3cqi/1.1 var(--f-display);color:var(--pi)}
.cd-bk-txt{margin:0;font-size:2.35cqi;line-height:1.3;color:var(--pi)}
.cd-alert{margin:0 0 1.2cqi;padding:1cqi 1.6cqi;border:.4cqi solid #9b1c1c;color:#9b1c1c;font:700 2.1cqi/1.25 var(--f-body);text-transform:uppercase;letter-spacing:.04em}
.cd-bk-r{display:grid;grid-template-columns:1fr auto;gap:1cqi 3cqi;align-items:start}
.cd-bk-r .cd-alert{grid-column:1/-1}
.cd-bk-r .cd-qr{grid-row:2/4}
.cd-issuer{position:relative;align-self:end;padding-top:4cqi;margin-top:.6cqi}
.cd-issuer .cd-firma{position:absolute;left:0;top:-2.4cqi;height:7cqi}
.cd-issuer b{display:block;font:600 2.6cqi/1.1 var(--f-display);color:var(--pi);border-top:.3cqi solid var(--pi);padding-top:.6cqi}
.cd-issuer span{display:block;font:500 1.5cqi/1.2 var(--f-body);color:var(--pi2);letter-spacing:.04em;text-transform:uppercase;margin-top:.4cqi}
/* ---------- afijos ---------- */
.afj{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,48px)}
.afj-card{position:relative;border:1px solid var(--gold-lo);padding:28px;background:linear-gradient(165deg,#18150f,#0f0d0a);overflow:hidden}
.afj-card .wm{position:absolute;right:-60px;bottom:-60px;width:260px;opacity:.07;pointer-events:none}
.afj-card h3{font:600 clamp(32px,3.6vw,44px)/1 var(--f-display);letter-spacing:.05em;margin:12px 0 18px}
.afj-card dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 16px;margin:0 0 20px;border-top:1px solid var(--line-soft)}
.afj-card dl div{padding:12px 0;border-bottom:1px solid var(--line-soft)}
.afj-card dt{font:600 9.5px/1.2 var(--f-body);font-stretch:118%;letter-spacing:.16em;text-transform:uppercase;color:var(--text-3)}
.afj-card dd{margin:5px 0 0;font-size:14.5px}
.afj-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}
.afj-list button{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:18px;align-items:center;background:none;border:0;border-bottom:1px solid var(--line-soft);padding:16px 2px;text-align:left}
.afj-list button:hover b{color:var(--gold-hi)}
.afj-list b{font:600 22px/1.1 var(--f-display);letter-spacing:.05em;transition:color .15s}
.afj-list span{font:400 12.5px/1 var(--f-mono);color:var(--text-3)}
.afj-list em{font:normal 600 10px/1 var(--f-body);font-stretch:118%;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
@media (max-width:820px){.afj{grid-template-columns:minmax(0,1fr)}}

/* ---------- process ---------- */
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0;padding:0;list-style:none;counter-reset:s;border-top:1px solid var(--line)}
.steps li{position:relative;padding:28px 26px 30px 0;counter-increment:s}
.steps li+li{padding-left:26px;border-left:1px solid var(--line-soft)}
.steps li::before{content:counter(s,decimal-leading-zero);display:block;font:500 13px/1 var(--f-mono);color:var(--gold);margin-bottom:22px}
.steps h3{font:600 24px/1.1 var(--f-display);margin:0 0 10px}
.steps p{margin:0;color:var(--text-2);font-size:14.5px}
.razas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.raza{display:grid;grid-template-rows:auto 1fr;border:1px solid var(--line);background:var(--ink-2)}
.raza-ph{display:block;aspect-ratio:4/3;overflow:hidden;background:linear-gradient(160deg,#1d1912,#0f0d0a);border-bottom:1px solid var(--line)}
.raza-ph img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.raza-ph img.raza-seal{object-fit:contain;padding:16%;opacity:.55}
.raza:hover .raza-ph img:not(.raza-seal){transform:scale(1.04)}
.raza>div{padding:18px 20px 20px;display:flex;flex-direction:column;gap:8px}
.raza h3{margin:0;font:600 24px/1.1 var(--f-display)}
.raza p:not(.eyebrow){margin:0;font-size:14px;color:var(--text-2);flex:1}
.raza .more{font:600 12px/1 var(--f-body);font-stretch:118%;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);text-decoration:none;margin-top:6px}
@media (max-width:900px){.razas{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.razas{grid-template-columns:minmax(0,1fr)}}
.posts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.post-card{border:1px solid var(--line);background:var(--ink-2);display:flex;flex-direction:column}
.post-card .ph{aspect-ratio:16/10;overflow:hidden;border-bottom:1px solid var(--line)}.post-card .ph img{width:100%;height:100%;object-fit:cover}
.post-card>div{padding:18px 20px 20px;display:flex;flex-direction:column;gap:8px;flex:1}
.post-card time{font:500 11.5px/1 var(--f-mono);color:var(--gold);letter-spacing:.08em}
.post-card h3{margin:0;font:600 22px/1.15 var(--f-display)}.post-card h3 a{color:inherit;text-decoration:none}
.post-card p{margin:0;font-size:14px;color:var(--text-2);flex:1}
@media (max-width:900px){.posts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.posts{grid-template-columns:minmax(0,1fr)}}
/* páginas interiores (privacidad, razas, noticias) */
.page-main{padding-block:clamp(40px,6vw,80px)}
.page-main .wrap{max-width:860px}
.page-head{margin-bottom:34px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.page-head h1{font:500 clamp(32px,4.5vw,52px)/1.05 var(--f-display);margin:12px 0 0;text-wrap:balance}
.page-head .meta{margin:14px 0 0;font:400 12.5px/1 var(--f-mono);color:var(--text-3)}
.prose{font-size:16.5px;line-height:1.7;color:var(--text-2)}
.prose h2{font:600 clamp(24px,3vw,32px)/1.15 var(--f-display);color:var(--text);margin:40px 0 12px}
.prose h3{font:600 20px/1.2 var(--f-display);color:var(--text);margin:28px 0 8px}
.prose p{margin:0 0 16px}.prose ul,.prose ol{margin:0 0 16px;padding-left:22px}.prose li{margin:4px 0}
.prose a{color:var(--gold-hi)}.prose strong{color:var(--text)}
.prose img{max-width:100%;height:auto;border:1px solid var(--line)}
.prose table{width:100%;border-collapse:collapse;font-size:14px;margin:0 0 18px}.prose th,.prose td{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}.prose th{color:var(--gold);font-weight:600}
.prose blockquote{margin:0 0 16px;padding:12px 18px;border-left:2px solid var(--gold);color:var(--text-2);font-style:italic}
.page-photo{aspect-ratio:16/9;overflow:hidden;border:1px solid var(--gold-lo);padding:8px;background:linear-gradient(160deg,#1d1912,#0f0d0a);margin-bottom:28px}.page-photo img{width:100%;height:100%;object-fit:cover}
.page-nav{margin-top:40px;padding-top:18px;border-top:1px solid var(--line);display:flex;gap:16px;flex-wrap:wrap}
.cta-row{display:flex;flex-wrap:wrap;gap:10px;max-width:100%}.cta-row .btn{white-space:normal;text-align:center}
.restrict{display:flex;flex-wrap:wrap;gap:16px 28px;align-items:center;justify-content:space-between;margin-top:34px;padding:22px 24px;border:1px solid var(--line);background:var(--ink-2)}
.restrict p{margin:0;color:var(--text-2);max-width:70ch;font-size:14.5px}
.restrict b{color:var(--text)}
@media (max-width:900px){.steps{grid-template-columns:repeat(2,minmax(0,1fr))}.steps li:nth-child(3){padding-left:0;border-left:0}.steps li:nth-child(n+3){border-top:1px solid var(--line-soft)}}
@media (max-width:560px){.steps{grid-template-columns:minmax(0,1fr)}.steps li,.steps li+li{padding-left:0;border-left:0}.steps li+li{border-top:1px solid var(--line-soft)}}

/* ---------- institution ---------- */
.inst{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(28px,5vw,72px);align-items:start}
.inst-copy>p{color:var(--text-2);margin:18px 0 0;max-width:62ch}
.inst-copy>p b{color:var(--text);font-weight:600}
.inst-motto{margin-top:34px!important;padding:16px 0 0 18px;border-left:2px solid var(--gold);font:italic 500 clamp(19px,2.2vw,23px)/1.3 var(--f-display);color:var(--gold-hi)!important}
.pillars{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 32px;margin:34px 0 0;padding:0;list-style:none}
.pillars li{border-left:1px solid var(--gold-lo);padding-left:16px}
.pillars h3{margin:0 0 6px;font:600 21px/1.15 var(--f-display)}
.pillars p{margin:0;font-size:14px;color:var(--text-2)}
.director{position:relative;border:1px solid var(--line);background:var(--ink-2);padding:28px;overflow:hidden}
.director .wm{position:absolute;right:-70px;bottom:-80px;width:250px;opacity:.06;pointer-events:none}
.director h3{font:600 30px/1.05 var(--f-display);margin:12px 0 6px;letter-spacing:.02em}
.director .creds{margin:0 0 18px;padding:0;list-style:none}
.director .creds li{padding:9px 0;border-bottom:1px solid var(--line-soft);font-size:14px;color:var(--text-2)}
.director p{margin:0;font-size:13.5px;color:var(--text-3)}
.breeds{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:56px}
.breed{display:grid;grid-template-columns:132px minmax(0,1fr);gap:20px;align-items:start;border-top:1px solid var(--gold-lo);padding-top:20px}
.breed>img,.breed>.ph-empty{width:132px;height:132px;object-fit:cover;border:1px solid var(--line)}
.breed .ph-empty img{width:62%}
.breed h3{margin:0 0 4px;font:600 26px/1.05 var(--f-display);letter-spacing:.03em}
.breed .eyebrow{color:var(--text-3)}
.breed p{margin:10px 0 0;font-size:14px;color:var(--text-2)}
@media (max-width:900px){.inst{grid-template-columns:minmax(0,1fr)}}
@media (max-width:720px){.breeds,.pillars{grid-template-columns:minmax(0,1fr)}.sec-head{grid-template-columns:minmax(0,1fr)}.feat{grid-template-columns:minmax(0,1fr)}}
@media (max-width:440px){.breed{grid-template-columns:minmax(0,1fr)}}

/* ---------- footer ---------- */
.foot{border-top:1px solid var(--line);background:var(--ink-2)}
.foot .wrap{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:28px;align-items:center;padding-block:40px}
.foot img{width:76px}
.foot b{display:block;font:700 15px/1.2 var(--f-body);font-stretch:125%;letter-spacing:.14em;color:var(--gold-hi)}
.foot p{margin:4px 0 0;font-size:13px;color:var(--text-3)}
.foot nav{display:flex;flex-wrap:wrap;gap:8px 20px}
.foot nav a{color:var(--text-2);font-size:13px;text-decoration:none}
.foot nav a:hover{color:var(--gold-hi)}
.proto{border-top:1px solid var(--line-soft);font:400 11px/1.4 var(--f-mono);color:var(--text-3)}
.proto .wrap{padding-block:14px}
@media (max-width:760px){.foot .wrap{grid-template-columns:auto minmax(0,1fr)}.foot nav{grid-column:1/-1}}

.foot .wrap.foot-contact{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;padding-block:8px 40px;border-top:1px solid var(--line-soft);align-items:start}
.fc-col .eyebrow{margin-bottom:12px}
.fc-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:14px}
.fc-list a{color:var(--text-2);text-decoration:none;border-bottom:1px solid transparent}.fc-list a:hover{color:var(--gold-hi);border-color:var(--gold-lo)}
.fc-list .none{color:var(--text-3)}
.fc-social li a{display:inline-flex;align-items:center;gap:8px}.fc-social svg{width:16px;height:16px;fill:currentColor;flex:none}
.fc-cta p{margin:0 0 12px;font-size:14px;color:var(--text-2)}
@media (max-width:900px){.foot .wrap.foot-contact{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.foot .wrap.foot-contact{grid-template-columns:minmax(0,1fr)}}
/* ---------- viewer dialog ---------- */
dialog.viewer{width:min(1080px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:0;border:1px solid var(--line);background:var(--ink);color:var(--text);overflow:hidden}
dialog.viewer::backdrop{background:rgba(5,4,3,.82);backdrop-filter:blur(3px)}
.v-bar{display:flex;align-items:center;gap:12px;padding:10px 14px;border-bottom:1px solid var(--line);background:var(--ink-2)}
.v-bar .v-title{margin-right:auto;font:500 12px/1.2 var(--f-mono);color:var(--text-3);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.v-bar button{background:none;border:1px solid var(--line);padding:8px 12px;font:600 10.5px/1 var(--f-body);font-stretch:118%;letter-spacing:.14em;text-transform:uppercase;color:var(--text-2)}
.v-bar button:hover{border-color:var(--gold-lo);color:var(--gold-hi)}
.v-body{overflow:auto;max-height:calc(100dvh - 84px);padding:clamp(10px,2.4vw,24px)}
.access{padding:clamp(20px,4vw,40px);max-width:640px}
.access h3{font:600 34px/1.05 var(--f-display);margin:12px 0 14px}
.access p{color:var(--text-2);margin:0 0 12px}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .stamp{animation:none}
  *{transition:none!important}
}

/* Impresión A4 desde /v/{N°}/imprimir */
@page{size:A4;margin:0}
body.printmode>*:not(.pw){display:none!important}
body.printmode{background:#fff!important;margin:0}
body.printmode::before{display:none}
body.printmode .pw{width:210mm;margin:0 auto}
body.printmode .pw2{break-before:page}
body.printmode .sheet{box-shadow:none!important}
body.printmode .sheet-wrap{max-width:none;width:210mm}
.print-act{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin-left:8px;vertical-align:middle}.print-act small{font-size:12px;color:var(--text-3)}
.print-bar{position:fixed;right:16px;bottom:16px;z-index:50;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;max-width:calc(100vw - 32px)}
.print-bar .pdf-msg{font-size:13px;color:#333;background:#fff;padding:4px 8px;border-radius:4px}.print-bar .pdf-msg:empty{display:none}
.print-bar .btn{background:#14120e;color:#e9cf8f;border-color:#a8812c}.print-bar .btn-solid{background:#c9a24a;color:#14120e}
@media print{.print-bar{display:none!important}:root{padding:0!important}}
.admin-bar .top{top:32px}@media(max-width:782px){.admin-bar .top{top:46px}}
