/* Encabezado compartido · Amor Canino (prefijo sh- para no chocar con estilos de cada página) */
.sh-util{background:#1A2E4A;color:#C9D5E4;font:13px/1.4 'Figtree','Segoe UI',system-ui,sans-serif}
.sh-wrap{max-width:1240px;margin:0 auto;padding-inline:24px}
@media (max-width:640px){.sh-wrap{padding-inline:16px}}
.sh-util .sh-wrap{display:flex;align-items:center;gap:22px;height:38px}
.sh-util span{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}
.sh-util b{color:#fff;font-weight:600}
.sh-util svg{width:15px;height:15px;color:#F4A76A}
.sh-util .sh-sp{flex:1}
.sh-soc{display:flex;gap:4px}
.sh-soc a{width:28px;height:28px;display:grid;place-items:center;border-radius:6px;color:#C9D5E4}
.sh-soc a:hover{background:#2D4668;color:#fff}
.sh-soc svg{color:inherit}
@media (max-width:900px){.sh-util .sh-hide{display:none}}

.sh-header{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:rgba(251,250,248,.94);backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid transparent;transition:box-shadow .3s,border-color .3s;font-family:'Figtree','Segoe UI',system-ui,sans-serif}
.sh-header.sh-scrolled{border-color:#E6E1DA;box-shadow:0 10px 30px -22px rgba(19,35,58,.35)}
.sh-bar{display:flex;align-items:center;gap:28px;height:84px;transition:height .3s cubic-bezier(.23,1,.32,1);position:relative}
.sh-header.sh-scrolled .sh-bar{height:66px}

.sh-lockup{display:flex;align-items:center;gap:12px;flex:none;text-decoration:none}
.sh-lockup img{height:52px;width:auto;display:block;transition:height .3s cubic-bezier(.23,1,.32,1)}
.sh-header.sh-scrolled .sh-lockup img{height:42px}
.sh-wm{display:flex;flex-direction:column;line-height:1}
.sh-name{font:800 25px/.95 'Bricolage Grotesque','Segoe UI',system-ui,sans-serif;letter-spacing:-.035em;color:#13233A;white-space:nowrap}
.sh-name b{color:#E2701C;font-weight:800}
.sh-by{font:600 9.5px/1 'IBM Plex Mono',ui-monospace,monospace;letter-spacing:.16em;text-transform:uppercase;color:#5D6674;margin-top:6px;display:flex;align-items:center;gap:6px;white-space:nowrap}
.sh-by::before{content:"";width:14px;height:1.5px;background:#F4C9D1}

.sh-menu{display:flex;align-items:center;gap:2px;margin:0 auto;list-style:none;padding:4px;background:#fff;border:1px solid #E6E1DA;border-radius:12px}
.sh-menu > li > a,.sh-menu > li > button{display:flex;align-items:center;gap:6px;border:0;background:transparent;font:600 14.5px/1 'Figtree','Segoe UI',system-ui,sans-serif;color:#39424F;padding:11px 14px;border-radius:9px;white-space:nowrap;text-decoration:none;cursor:pointer;transition:background .2s,color .2s}
.sh-menu > li > a:hover,.sh-menu > li > button:hover,.sh-menu > li.sh-open > button{background:#F3EEE8;color:#13233A}
.sh-menu > li > .sh-on{background:#13233A!important;color:#fff!important}
.sh-chev{width:12px;height:12px;transition:transform .25s cubic-bezier(.23,1,.32,1)}
.sh-open .sh-chev{transform:rotate(180deg)}
.sh-count{font:600 10px/1 'IBM Plex Mono',ui-monospace,monospace;background:#E2701C;color:#fff;padding:3px 5px;border-radius:4px}
.sh-on .sh-count{background:#fff;color:#13233A}

.sh-actions{display:flex;align-items:center;gap:8px;flex:none}
.sh-ibtn{position:relative;width:44px;height:44px;display:grid;place-items:center;border:1px solid #E6E1DA;background:#fff;border-radius:10px;color:#13233A;cursor:pointer;text-decoration:none}
.sh-ibtn:hover{border-color:#13233A}
.sh-ibtn svg{width:19px;height:19px}
.sh-badge{position:absolute;top:-6px;right:-6px;min-width:19px;height:19px;border-radius:10px;background:#E2701C;color:#fff;font:700 11px/19px 'Figtree',sans-serif;text-align:center;padding-inline:5px;border:2px solid #FBFAF8}
.sh-wa{display:flex;align-items:center;gap:10px;background:#13233A;color:#fff;border-radius:10px;padding:8px 14px 8px 8px;font-weight:600;font-size:14px;text-decoration:none;transition:background .2s}
.sh-wa:hover{background:#0B1729}
.sh-wa-ic{width:30px;height:30px;border-radius:8px;background:#1FAF5A;display:grid;place-items:center}
.sh-wa-ic svg{width:17px;height:17px}
.sh-wa-txt{display:flex;flex-direction:column;line-height:1.15}
.sh-wa small{font:500 11px/1 'Figtree',sans-serif;color:#9FDDB6;display:flex;align-items:center;gap:5px;margin-top:3px}
.sh-wa small i{width:6px;height:6px;border-radius:50%;background:#3EDC7E;box-shadow:0 0 0 3px rgba(62,220,126,.25)}
.sh-burger{display:none}
/* En los portátiles de 1280 y 1366 el logotipo, el menú y los botones no caben
   en una fila: primero se deja el botón de WhatsApp como icono y, si aún así no
   entra, el menú pasa al botón de tres rayas. */
@media (max-width:1460px){.sh-wa-txt{display:none}.sh-wa{padding:8px}.sh-bar{gap:20px}}
@media (max-width:1240px){.sh-menu{display:none}.sh-burger{display:grid}.sh-actions{margin-left:auto}}
/* En el móvil el logotipo y los tres botones no caben con la separación de
   escritorio: se recorta la separación y el logotipo cede espacio. */
@media (max-width:560px){.sh-wa-txt{display:none}.sh-wa{padding:7px}.sh-by{display:none}.sh-name{font-size:20px}.sh-lockup img{height:42px}.sh-fav{display:none!important}.sh-bar{gap:10px}.sh-lockup{min-width:0;gap:8px}.sh-actions{gap:6px}}

.sh-mega{position:absolute;left:0;right:0;top:100%;background:#fff;border:1px solid #E6E1DA;border-radius:0 0 16px 16px;box-shadow:0 30px 60px -30px rgba(19,35,58,.35);opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .22s,transform .22s,visibility .22s;text-align:left}
.sh-open .sh-mega{opacity:1;visibility:visible;transform:none}
.sh-inner{display:grid;grid-template-columns:230px 1fr 300px;gap:36px;padding:28px 28px 26px}
.sh-mega h5{margin:0 0 14px;font:600 10.5px/1 'IBM Plex Mono',ui-monospace,monospace;letter-spacing:.12em;text-transform:uppercase;color:#5D6674}
.sh-quick{display:flex;flex-direction:column;gap:2px}
.sh-quick a{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:11px 12px;border-radius:9px;font-weight:600;font-size:15px;color:#13233A;text-decoration:none}
.sh-quick a:hover{background:#F3EEE8}
.sh-quick a span{font:600 11px/1 'IBM Plex Mono',ui-monospace,monospace;color:#5D6674}
.sh-quick a.sh-hl{background:#FCEBDC;color:#C45C12}
.sh-quick a.sh-hl span{color:#C45C12}
.sh-breeds{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.sh-breeds a{display:grid;grid-template-columns:52px 1fr;gap:12px;align-items:center;padding:8px;border-radius:12px;border:1px solid transparent;color:#13233A;text-decoration:none}
.sh-breeds a:hover{border-color:#E6E1DA;background:#FBFAF8}
.sh-breeds img{width:52px;height:52px;border-radius:10px;object-fit:cover;display:block}
.sh-breeds b{display:block;font:700 15.5px/1.2 'Bricolage Grotesque',sans-serif;letter-spacing:-.01em}
.sh-breeds small{font-size:12.5px;color:#1E7B52;font-weight:600}
.sh-feat{border-radius:16px;overflow:hidden;position:relative;background:#F3EEE8;min-height:250px;display:flex;text-decoration:none}
.sh-feat img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 30%}
.sh-feat .sh-ov{position:relative;margin-top:auto;width:100%;padding:60px 16px 16px;background:linear-gradient(transparent,rgba(12,22,38,.88));color:#fff}
.sh-feat .sh-lbl{font:600 11px/1 'IBM Plex Mono',monospace;letter-spacing:.1em;text-transform:uppercase;color:#F4A76A}
.sh-feat b{display:block;font:700 20px/1.15 'Bricolage Grotesque',sans-serif;margin-top:6px}
.sh-feat span.sh-s{font-size:13px;color:#C9D5E4}
.sh-mfoot{grid-column:1/-1;display:flex;justify-content:space-between;gap:16px;border-top:1px dashed #E6E1DA;padding-top:16px;font-size:14px;color:#5D6674}
.sh-mfoot a{font-weight:700;color:#13233A;text-decoration:none}
.sh-inner.sh-g{grid-template-columns:230px 1fr 1fr}
.sh-gpost{display:grid;grid-template-columns:120px 1fr;gap:14px;align-items:center;padding:8px;border-radius:12px;color:#13233A;text-decoration:none}
.sh-gpost:hover{background:#FBFAF8}
.sh-gpost img{width:120px;height:84px;border-radius:10px;object-fit:cover;display:block}
.sh-gpost b{font:700 16px/1.25 'Bricolage Grotesque',sans-serif;display:block}
.sh-gpost small{font:600 10.5px/1 'IBM Plex Mono',monospace;letter-spacing:.08em;text-transform:uppercase;color:#C45C12}

.sh-search{position:absolute;right:0;top:calc(100% + 8px);width:min(420px,calc(100vw - 32px));background:#fff;border:1px solid #E6E1DA;border-radius:16px;box-shadow:0 30px 60px -30px rgba(19,35,58,.45);padding:14px;display:none}
.sh-search.sh-show{display:block}
.sh-search label{display:flex;align-items:center;gap:10px;border:1.5px solid #13233A;border-radius:10px;padding:0 12px;height:48px}
.sh-search input{border:0;outline:0;font:16px 'Figtree',sans-serif;width:100%;background:transparent;color:#13233A}
.sh-sug{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.sh-sug a{font-size:13.5px;padding:7px 10px;border-radius:8px;background:#F3EEE8;font-weight:500;color:#13233A;text-decoration:none}

.sh-drawer-bg{position:fixed;inset:0;background:rgba(12,22,38,.45);z-index:80;opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s}
.sh-drawer{position:fixed;top:0;right:0;bottom:0;width:min(400px,100%);background:#FBFAF8;z-index:90;transform:translateX(100%);transition:transform .35s cubic-bezier(.23,1,.32,1);display:flex;flex-direction:column;font-family:'Figtree',sans-serif}
body.sh-drawer-open .sh-drawer{transform:none}
body.sh-drawer-open .sh-drawer-bg{opacity:1;visibility:visible}
.sh-dtop{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid #E6E1DA}
.sh-dtop .sh-lockup img{height:38px}.sh-dtop .sh-name{font-size:19px}
.sh-dbody{flex:1;overflow:auto;padding:14px 16px;display:flex;flex-direction:column;gap:18px}
.sh-dlinks a{display:flex;justify-content:space-between;align-items:center;padding:14px 4px;border-bottom:1px solid #E6E1DA;font:700 21px/1 'Bricolage Grotesque',sans-serif;letter-spacing:-.02em;color:#13233A;text-decoration:none}
.sh-dfoot{padding:14px 16px 18px;border-top:1px solid #E6E1DA;background:#fff}
.sh-dfoot a{display:flex;justify-content:center;align-items:center;gap:8px;background:#1FAF5A;color:#fff;font-weight:700;border-radius:10px;padding:14px;text-decoration:none}
.sh-header a:focus-visible,.sh-header button:focus-visible,.sh-drawer a:focus-visible,.sh-drawer button:focus-visible{outline:3px solid #E2701C;outline-offset:2px}
@media (prefers-reduced-motion:reduce){.sh-header *,.sh-drawer{transition:none!important}}

/* ---------- cuenta de usuario en el menú ---------- */
.sh-user{position:relative}
.sh-user > button{display:flex;align-items:center;gap:8px;height:44px;padding:0 10px 0 4px;border:1px solid #E6E1DA;background:#fff;border-radius:10px;cursor:pointer;color:#13233A;font:600 14px 'Figtree',sans-serif}
.sh-user > button:hover{border-color:#13233A}
.sh-user img{width:34px;height:34px;border-radius:8px;object-fit:cover;display:block}
.sh-user .sh-av{width:34px;height:34px;border-radius:8px;background:#FCEBDC;color:#C45C12;display:grid;place-items:center;font:700 14px 'Bricolage Grotesque',sans-serif}
.sh-umenu{position:absolute;right:0;top:calc(100% + 8px);width:240px;background:#fff;border:1px solid #E6E1DA;border-radius:14px;box-shadow:0 30px 60px -30px rgba(19,35,58,.45);padding:6px;display:none;z-index:60}
.sh-user.sh-open .sh-umenu{display:block}
.sh-umenu .sh-uhead{padding:10px 12px;border-bottom:1px solid #EFEBE5;margin-bottom:4px}
.sh-umenu .sh-uhead b{display:block;font-size:14px;color:#13233A}
.sh-umenu .sh-uhead small{font-size:12px;color:#5D6674;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sh-umenu a,.sh-umenu button{display:flex;width:100%;align-items:center;gap:10px;padding:10px 12px;border-radius:9px;border:0;background:transparent;font:500 14px 'Figtree',sans-serif;color:#13233A;text-decoration:none;cursor:pointer;text-align:left}
.sh-umenu a:hover,.sh-umenu button:hover{background:#F3EEE8}
.sh-umenu .sh-admin{color:#C45C12;font-weight:600}
.sh-umenu .sh-out{color:#B4372B}
.sh-login{display:inline-flex;align-items:center;height:44px;padding:0 14px;border:1px solid #E6E1DA;background:#fff;border-radius:10px;font:600 14px 'Figtree',sans-serif;color:#13233A;text-decoration:none}
.sh-login:hover{border-color:#13233A}
@media (max-width:760px){.sh-login,.sh-user{display:none}}

/* ---------- pie de página ---------- */
.ft{background:#13233A;color:#C5D0DE;padding:72px 0 32px;font:15px/1.6 'Figtree','Segoe UI',system-ui,sans-serif}
.ft a{color:inherit;text-decoration:none}
.ft a:hover{color:#fff}
.ft-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px}
@media (max-width:900px){.ft-grid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.ft-grid{grid-template-columns:1fr}}
.ft h4{font:600 11px/1 'IBM Plex Mono',monospace;letter-spacing:.1em;text-transform:uppercase;color:#7F93AD;margin:0 0 18px}
.ft ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.ft-brand{display:flex;align-items:center;gap:12px}
.ft-brand .sh-tile{background:#fff;border-radius:14px;padding:6px 8px}
.ft-brand .sh-tile img{height:44px;width:auto;display:block}
.ft-brand .sh-name{color:#fff}
.ft-brand .sh-by{color:#8FA2BB}
.ft-about p{margin:16px 0 0;max-width:320px;color:#9EAEC3}
.ft-nap{display:grid;gap:12px}
.ft-nap div{display:flex;gap:10px;align-items:flex-start}
.ft-nap svg{width:18px;height:18px;color:#F4A76A;flex:none;margin-top:3px}
.ft-legal{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:56px;padding-top:24px;border-top:1px solid #243752;font-size:13px;color:#7F93AD}
.ft-legal nav{display:flex;gap:20px;flex-wrap:wrap}

/* ---------- botón flotante de WhatsApp ---------- */
.wa-float{position:fixed;right:20px;bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:45;display:flex;align-items:center;gap:10px;background:#1FAF5A;color:#fff;font:700 15px 'Figtree',sans-serif;padding:14px 18px;border-radius:14px;box-shadow:0 14px 30px -12px rgba(0,0,0,.4);text-decoration:none}
.wa-float svg{width:22px;height:22px}
@media (max-width:560px){.wa-float span{display:none}.wa-float{padding:14px}}

/* ---------- aviso de cookies ---------- */
.ck{position:fixed;left:16px;right:16px;bottom:16px;z-index:70;max-width:440px;background:#fff;border:1px solid #E6E1DA;border-radius:16px;box-shadow:0 30px 60px -30px rgba(19,35,58,.5);padding:18px;font:14px/1.5 'Figtree',sans-serif;color:#13233A}
@media (min-width:700px){.ck{left:auto;right:24px}}
.ck b{font:700 16px 'Bricolage Grotesque',sans-serif;display:block;margin-bottom:4px}
.ck p{margin:0 0 14px;color:#5D6674;font-size:13px}
.ck p a{color:#C45C12;font-weight:600}
.ck-actions{display:flex;gap:8px}
.ck-actions button{flex:1;border:1px solid #E6E1DA;background:#fff;border-radius:10px;padding:10px;font:600 13px 'Figtree',sans-serif;cursor:pointer;color:#13233A}
.ck-actions button.ck-yes{background:#13233A;border-color:#13233A;color:#fff}
