/**
 * Smart Property Platform 1.3.73 — SHAMAR-JIREH institutional visual system.
 * Presentation only. Scoped to SPP screens; does not restyle other WordPress pages.
 * Navy / warm gold / ivory / sage. Preserve meaning of warnings and destructive actions.
 */
:root {
  --spp-brand-navy: #173652;
  --spp-brand-navy-dark: #102B43;
  --spp-brand-gold: #C5A45B;
  --spp-brand-ivory: #F7F5EF;
  --spp-brand-sage: #77958A;
  --spp-brand-paper: #FFFFFF;
  --spp-brand-text: #243746;
  --spp-brand-muted: #506473;
  --spp-brand-line: #D8E1DE;
  --spp-brand-ring: #39745F;
  --spp-brand-shadow: 0 5px 18px rgba(16,43,67,.065);
}

/* SPP private and institutional home: preserve existing responsive canvas widths. */
body .spp-home {
  --spp-ink: var(--spp-brand-text);
  --spp-muted: var(--spp-brand-muted);
  --spp-line: var(--spp-brand-line);
  --spp-soft: var(--spp-brand-ivory);
  --spp-deep: var(--spp-brand-navy);
  --spp-paper: var(--spp-brand-paper);
}
body .spp-home .spp-home-hero {
  border-color: var(--spp-brand-line);
  border-top: 4px solid var(--spp-brand-gold);
  background: linear-gradient(115deg, #FFFFFF 0%, #F7F5EF 78%, #EEF4F1 100%);
  box-shadow: 0 12px 34px rgba(16,43,67,.09);
}
body .spp-home .spp-home-brandmark {background:var(--spp-brand-navy);}
body .spp-home .spp-home-hero h1,
body .spp-home .spp-home-section-heading h2,
body .spp-home .spp-manual-heading h2,
body .spp-home .spp-home-feature h2,
body .spp-home .spp-home-stat strong {color:var(--spp-brand-navy);}
body .spp-home .spp-home-btn.primary {
  color:#fff!important;
  border:1px solid var(--spp-brand-navy);
  background:var(--spp-brand-navy);
  box-shadow:0 8px 19px rgba(23,54,82,.16);
}
body .spp-home .spp-home-btn.primary:hover,
body .spp-home .spp-home-btn.primary:focus-visible {background:#254C6D;border-color:#254C6D;}
body .spp-home .spp-home-btn.secondary {
  background:#fff;
  border:1px solid #9DAFA9;
  color:var(--spp-brand-navy)!important;
  box-shadow:0 3px 12px rgba(16,43,67,.05);
}
body .spp-home .spp-home-btn.secondary:hover,
body .spp-home .spp-home-btn.secondary:focus-visible {background:#EFF5F1;border-color:var(--spp-brand-sage);}
body .spp-home .spp-home-feature,
body .spp-home .spp-home-stat,
body .spp-home .spp-home-link,
body .spp-home .spp-manual-section {
  border-color:var(--spp-brand-line);
  box-shadow:var(--spp-brand-shadow);
}
body .spp-home .spp-home-feature:nth-child(3n+1),
body .spp-home .spp-home-stat:nth-child(3n+1),
body .spp-home .spp-home-link:nth-child(3n+1) {background:linear-gradient(135deg,#fff 0%,#F2F6F8 100%);}
body .spp-home .spp-home-feature:nth-child(3n+2),
body .spp-home .spp-home-stat:nth-child(3n+2),
body .spp-home .spp-home-link:nth-child(3n+2) {background:linear-gradient(135deg,#fff 0%,#F0F5F1 100%);}
body .spp-home .spp-home-feature:nth-child(3n),
body .spp-home .spp-home-stat:nth-child(3n),
body .spp-home .spp-home-link:nth-child(3n) {background:linear-gradient(135deg,#fff 0%,#FAF5EB 100%);}
body .spp-home .spp-home-feature>span {background:#EDF2EC;color:var(--spp-brand-navy);}
body .spp-home .spp-home-link {color:var(--spp-brand-navy)!important;}
body .spp-home .spp-home-link b {color:#486A61;}
body .spp-home .spp-home-link:hover,
body .spp-home .spp-home-link:focus-visible {border-color:var(--spp-brand-sage);}
body .spp-home .spp-manual-toc a,
body .spp-home .spp-manual-section>summary {color:var(--spp-brand-navy)!important;}
body .spp-home .spp-manual-section>summary {background:var(--spp-brand-ivory);}
body .spp-home .spp-manual-note {border-left-color:var(--spp-brand-navy);}
body .spp-home .spp-manual-tip {border-left-color:var(--spp-brand-sage);}

/* Student / guardian portals: a warm, high-contrast self-service experience. */
body .sj-portal {
  --sj-border:var(--spp-brand-line);
  --sj-bg:var(--spp-brand-ivory);
  --sj-text:var(--spp-brand-text);
  --sj-muted:var(--spp-brand-muted);
  --sj-dark:var(--spp-brand-navy);
}
body .sj-portal .sj-header {border-top:4px solid var(--spp-brand-gold);background:linear-gradient(120deg,#fff 0%,var(--spp-brand-ivory) 100%);}
body .sj-portal .sj-header h1,
body .sj-portal .sj-panel h2,
body .sj-portal .sj-card strong,
body .sj-portal .spp-identity-name {color:var(--spp-brand-navy)!important;}
body .sj-portal .sj-card,
body .sj-portal .sj-panel,
body .sj-portal .sj-login-card,
body .sj-portal .sj-student-switch {border-color:var(--spp-brand-line);box-shadow:var(--spp-brand-shadow);}
body .sj-portal .sj-button,
body .sj-portal .sj-logout,
body .sj-portal .sj-login-card .login-submit input {
  background:var(--spp-brand-navy);
  color:#fff!important;
  border-color:var(--spp-brand-navy);
  min-height:44px;
}
body .sj-portal .sj-nav a {border-color:var(--spp-brand-line);color:var(--spp-brand-navy);min-height:44px;display:inline-flex;align-items:center;}
body .sj-portal .sj-nav a.active {background:var(--spp-brand-navy);color:#fff;border-color:var(--spp-brand-navy);}
body .sj-portal .sj-nav a:hover:not(.active) {background:var(--spp-brand-ivory);border-color:var(--spp-brand-sage);}
body .sj-portal .sj-panel th {background:var(--spp-brand-ivory);color:var(--spp-brand-navy);}
body .sj-portal .sj-panel th,
body .sj-portal .sj-panel td {border-bottom-color:var(--spp-brand-line);}
body .sj-portal input:not([type=checkbox]):not([type=radio]),
body .sj-portal select,
body .sj-portal textarea {border-color:#ABBDB6;min-height:44px;color:var(--spp-brand-text);box-sizing:border-box;}
body .sj-portal input:focus-visible,
body .sj-portal select:focus-visible,
body .sj-portal textarea:focus-visible {outline:2px solid var(--spp-brand-ring);outline-offset:2px;}
body .sj-portal .sj-badge {color:#33485B;}
/* Existing semantic success / warning / error badges remain deliberately distinct. */

/* Access and contractual acceptance screens (not the whole WordPress theme). */
body .spp-access-page {color:var(--spp-brand-text);}
body .spp-access-page .spp-access-shell {border-color:var(--spp-brand-line);border-top:4px solid var(--spp-brand-gold);background:#fff;box-shadow:0 13px 38px rgba(16,43,67,.11);}
body .spp-access-page .spp-access-mark,
body .spp-access-page .spp-access-button {background:var(--spp-brand-navy);color:#fff;}
body .spp-access-page .spp-access-brand h1,
body .spp-access-page .spp-access-copy h2,
body .spp-access-page .spp-access-form legend {color:var(--spp-brand-navy);}
body .spp-access-page .spp-access-secondary {border-color:#AABFB4;background:var(--spp-brand-ivory);color:var(--spp-brand-navy);}
body .spp-access-page .spp-access-help,
body .spp-access-page .spp-access-form a {color:var(--spp-brand-navy);}
body .spp-access-page .spp-access-form input,
body .spp-access-page .spp-access-form select,
body .spp-access-page .spp-access-form textarea {border-color:#AABDB7;min-height:44px;}
body .hop-acceptance-body {background:var(--spp-brand-ivory);color:var(--spp-brand-text);}
body .hop-acceptance-body .hop-acceptance-header h1 {color:var(--spp-brand-navy);}
body .hop-acceptance-body .hop-public-card {border-color:var(--spp-brand-line);box-shadow:var(--spp-brand-shadow);}
body .hop-acceptance-body .hop-primary-button {background:var(--spp-brand-navy);color:#fff;min-height:44px;}
body .hop-acceptance-body .hop-secondary-button {background:#ECF2ED;color:var(--spp-brand-navy);min-height:44px;}
body .hop-acceptance-body .hop-public-contract {border-color:var(--spp-brand-line);background:#fff;}

/* WordPress administration: SPP screens only, no global wp-admin recoloring. */
body.wp-admin .hop-wrap,
body.wp-admin .hop-documents,
body.wp-admin .spp-admin-shell,
body.wp-admin .spp-global-identity {--spp-admin-accent:var(--spp-brand-navy);color:var(--spp-brand-text);}
body.wp-admin .hop-wrap h1,
body.wp-admin .hop-wrap h2,
body.wp-admin .hop-wrap h3,
body.wp-admin .hop-documents h1,
body.wp-admin .hop-documents h2,
body.wp-admin .hop-documents h3,
body.wp-admin .spp-admin-shell h1,
body.wp-admin .spp-admin-shell h2 {color:var(--spp-brand-navy);}
body.wp-admin .hop-wrap .hop-card,
body.wp-admin .hop-wrap .hop-form,
body.wp-admin .hop-wrap .spp-simple-details,
body.wp-admin .hop-wrap .spp-relations-group,
body.wp-admin .hop-wrap .spp-relations-metric,
body.wp-admin .hop-wrap .spp-relations-identity,
body.wp-admin .hop-wrap .spp-relations-note,
body.wp-admin .hop-wrap .spp-relations-search,
body.wp-admin .hop-documents .spp-doc-card,
body.wp-admin .spp-admin-shell .hop-card {
  border-color:var(--spp-brand-line);
  border-radius:12px;
  box-shadow:var(--spp-brand-shadow);
  background-color:#fff;
}
body.wp-admin .hop-wrap .hop-card-link:hover,
body.wp-admin .hop-wrap .hop-card-link:focus-visible {border-color:var(--spp-brand-sage);box-shadow:0 8px 20px rgba(16,43,67,.12);}
body.wp-admin .hop-wrap .hop-form {border-top:3px solid var(--spp-brand-gold);}
body.wp-admin .hop-wrap .hop-card h2,
body.wp-admin .hop-wrap .hop-card h3 {color:var(--spp-brand-navy);}
body.wp-admin .hop-wrap .hop-lead,
body.wp-admin .hop-wrap .description {color:var(--spp-brand-muted);}
body.wp-admin .hop-wrap .spp-simple-details>summary,
body.wp-admin .hop-wrap .spp-relations-group>summary {color:var(--spp-brand-navy);}
body.wp-admin .hop-wrap .spp-simple-details[open]>summary,
body.wp-admin .hop-wrap .spp-relations-group[open]>summary {background:var(--spp-brand-ivory);}
body.wp-admin .hop-wrap .spp-relations-identity {border-left-color:var(--spp-brand-gold);}
body.wp-admin .hop-wrap .spp-relations-advice {background:var(--spp-brand-ivory);border-left-color:var(--spp-brand-gold);}
body.wp-admin .hop-wrap .spp-relations-metric strong,
body.wp-admin .hop-wrap .spp-relations-name,
body.wp-admin .hop-wrap .spp-relations-group>summary:before {color:var(--spp-brand-navy);}
body.wp-admin .hop-wrap .spp-relations-count {color:var(--spp-brand-navy);background:#E7EEEA;}
body.wp-admin .hop-wrap .button.button-primary,
body.wp-admin .hop-documents .button.button-primary,
body.wp-admin .spp-admin-shell .button.button-primary {
  background:var(--spp-brand-navy);
  border-color:var(--spp-brand-navy);
  color:#fff;
  text-shadow:none;
}
body.wp-admin .hop-wrap .button.button-primary:hover:not(:disabled),
body.wp-admin .hop-wrap .button.button-primary:focus-visible,
body.wp-admin .hop-documents .button.button-primary:hover:not(:disabled),
body.wp-admin .spp-admin-shell .button.button-primary:hover:not(:disabled) {background:#254C6D;border-color:#254C6D;color:#fff;}
body.wp-admin .hop-wrap .button:not(.button-primary):not(.button-link-delete):not(.spp-delete-profile-button),
body.wp-admin .hop-documents .button:not(.button-primary):not(.button-link-delete) {
  color:var(--spp-brand-navy);
  border-color:#9FB4AD;
  background:#fff;
}
body.wp-admin .hop-wrap .button:not(.button-primary):not(.button-link-delete):not(.spp-delete-profile-button):hover,
body.wp-admin .hop-documents .button:not(.button-primary):not(.button-link-delete):hover {background:var(--spp-brand-ivory);border-color:var(--spp-brand-sage);}
/* Deliberately exclude deleting / dangerous buttons from the calm blue palette. */
body.wp-admin .hop-wrap .button:not(.button-small),
body.wp-admin .hop-documents .button:not(.button-small) {min-height:40px;}
body.wp-admin .hop-wrap input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]):not([type=button]):not([type=reset]):not([type=file]),
body.wp-admin .hop-wrap select,
body.wp-admin .hop-wrap textarea,
body.wp-admin .hop-documents input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]):not([type=button]),
body.wp-admin .hop-documents select,
body.wp-admin .hop-documents textarea {
  border-color:#A7B9B4;
  min-height:44px;
  box-sizing:border-box;
  background:#fff;
  color:var(--spp-brand-text);
}
body.wp-admin .hop-wrap input:focus-visible,
body.wp-admin .hop-wrap select:focus-visible,
body.wp-admin .hop-wrap textarea:focus-visible,
body.wp-admin .hop-wrap button:focus-visible,
body.wp-admin .hop-wrap a:focus-visible,
body.wp-admin .hop-documents a:focus-visible {outline:2px solid var(--spp-brand-ring);outline-offset:2px;}
body.wp-admin .hop-wrap .wp-list-table thead th,
body.wp-admin .hop-wrap .wp-list-table tfoot th,
body.wp-admin .hop-wrap .widefat thead th,
body.wp-admin .hop-wrap .widefat tfoot th,
body.wp-admin .hop-wrap .hop-table thead th,
body.wp-admin .hop-documents .widefat thead th {background:var(--spp-brand-ivory);color:var(--spp-brand-navy);}
body.wp-admin .hop-wrap table.widefat,
body.wp-admin .hop-wrap table.hop-table,
body.wp-admin .hop-documents table.widefat {border-color:var(--spp-brand-line);}
body.wp-admin .hop-wrap table :is(td,th),
body.wp-admin .hop-documents table :is(td,th) {border-bottom-color:#E3E9E5;}
body.wp-admin .hop-wrap a:not(.button):not(.button-link-delete),
body.wp-admin .hop-documents a:not(.button) {color:#205579;}
body.wp-admin .hop-wrap a:not(.button):hover,
body.wp-admin .hop-documents a:not(.button):hover {color:#173652;}
body.wp-admin .hop-documents .spp-doc-cover {background:linear-gradient(110deg,#fff 0%,var(--spp-brand-ivory) 100%);border-color:var(--spp-brand-line);}
body.wp-admin .hop-documents .spp-doc-cover-icon {background:#EAF1ED;border-color:#C9DAD1;}
body.wp-admin .hop-documents .spp-doc-cover-icon .dashicons,
body.wp-admin .hop-documents .spp-doc-product-badge .dashicons {color:var(--spp-brand-navy);}
body.wp-admin .hop-documents .spp-doc-toc {background:var(--spp-brand-ivory);border-color:var(--spp-brand-line);}
body.wp-admin .hop-documents .spp-doc-section-number {border-top-color:var(--spp-brand-gold);color:var(--spp-brand-navy);}
body.wp-admin .hop-documents .spp-doc-toc a:hover {color:var(--spp-brand-navy);background:#fff;}
body.wp-admin .spp-global-identity {border-color:var(--spp-brand-line);border-top:3px solid var(--spp-brand-gold);background:linear-gradient(110deg,#fff 0%,#F9F8F3 100%);color:var(--spp-brand-text);box-shadow:var(--spp-brand-shadow);}
body.wp-admin .spp-global-identity .spp-global-identity-name {color:var(--spp-brand-navy);}
body.wp-admin .spp-global-identity .spp-global-identity-email {color:var(--spp-brand-muted);}
body.wp-admin .spp-global-identity .button {background:#fff;border-color:#9FB4AD;color:var(--spp-brand-navy);min-height:40px;}

/* Assistant: balanced navy and ivory, preserving red error notices and confirm warnings. */
body .spp-ai-home-section {
  border-color:#B9CBC1!important;
  border-top-color:var(--spp-brand-gold)!important;
  background:linear-gradient(160deg,#F8F7F2 0%,#FFFFFF 70%)!important;
  box-shadow:0 11px 28px rgba(16,43,67,.11)!important;
}
body .spp-ai-home-section:before {background:rgba(119,149,138,.07);}
body .spp-ai-home-section .spp-ai-home-toggle,
body .spp-ai-home-section .spp-ai-quick button,
body .spp-ai-home-section .spp-ai-toolbar button {border-color:#A8BDB2!important;background:#fff!important;color:var(--spp-brand-navy)!important;}
body .spp-ai-home-section .spp-ai-home-toggle:hover,
body .spp-ai-home-section .spp-ai-quick button:hover,
body .spp-ai-home-section .spp-ai-toolbar button:hover {background:var(--spp-brand-ivory)!important;border-color:var(--spp-brand-sage)!important;}
body .spp-ai-home-section .spp-ai-form button,
body .spp-ai-home-section .spp-ai-toolbar button[aria-pressed=true],
body .spp-ai-home-section .spp-ai-confirm-actions button.confirm {
  background:var(--spp-brand-navy)!important;
  border-color:var(--spp-brand-navy)!important;
  color:#fff!important;
}
body .spp-ai-home-section .spp-ai-message.user .spp-ai-bubble {background:var(--spp-brand-navy);color:#fff;border-color:var(--spp-brand-navy);}
body .spp-ai-home-section .spp-ai-messages {background:#F4F7F4;border-color:var(--spp-brand-line);}
body .spp-ai-home-section .spp-ai-form textarea {border-color:#A8BDB2;}
body .spp-ai-home-section .spp-ai-form textarea:focus {border-color:var(--spp-brand-ring);box-shadow:0 0 0 3px rgba(57,116,95,.14);}

/* Improve touch targets while keeping the existing form typography and grids. */
@media (pointer:coarse) {
  body .spp-home button,body .spp-home .spp-home-link,body .spp-home .spp-manual-toc a,
  body .sj-portal button,body .sj-portal .sj-nav a,
  body.wp-admin .hop-wrap .button,body.wp-admin .hop-wrap summary,
  body .spp-access-page button,body .hop-acceptance-body button {min-height:44px;}
}
@media (max-width:600px) {
  body .spp-home .spp-home-hero {border-top-width:3px;}
  body.wp-admin .hop-wrap .hop-form {padding:16px;}
  body.wp-admin .hop-wrap .hop-card {padding:16px;}
}
@media (prefers-reduced-motion:reduce) {
  body .spp-home .spp-home-link,
  body .spp-home .spp-home-btn,
  body .spp-home .spp-home-feature {transition:none!important;transform:none!important;}
}
@media print {
  body .spp-home .spp-home-hero,
  body.wp-admin .hop-wrap .hop-card,
  body.wp-admin .hop-wrap .hop-form,
  body .sj-portal .sj-panel {background:#fff!important;box-shadow:none!important;}
}

/* Local SPP navigation tabs (WordPress navigation outside SPP is unchanged). */
body.wp-admin .hop-wrap .nav-tab-wrapper {border-bottom-color:#AFC2B6;}
body.wp-admin .hop-wrap .nav-tab {
  border-color:var(--spp-brand-line);
  background:var(--spp-brand-ivory);
  color:var(--spp-brand-navy);
}
body.wp-admin .hop-wrap .nav-tab:hover,
body.wp-admin .hop-wrap .nav-tab:focus-visible {background:#ECF2EB;border-color:var(--spp-brand-sage);}
body.wp-admin .hop-wrap .nav-tab.nav-tab-active {
  background:#fff;
  border-bottom-color:#fff;
  border-top:3px solid var(--spp-brand-gold);
  color:var(--spp-brand-navy);
}
/* Apply warm neutrals to informational badges only, never mask status colors. */
body.wp-admin .hop-wrap .hop-status,
body.wp-admin .hop-wrap .hop-priority {border:1px solid rgba(35,55,70,.10);}


/* 1.3.85 · Dashboard ilustrado. No se aplica al resto de WordPress. */
body .spp-home{--spp-brand-navy:#102C45;--spp-brand-gold:#B48A40;--spp-brand-ivory:#FBFAF7;--spp-brand-sage:#537D69;--spp-brand-line:#E4E9E5;}
body .spp-home .spp-home-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
body .spp-home .spp-home-stat.spp-home-stat--visual{padding:0!important;margin:0!important;display:flex;flex-direction:column;min-width:0;min-height:250px;background:#fff!important;border:1px solid #e0e7e4!important;border-radius:18px!important;overflow:hidden;box-shadow:0 8px 26px rgba(16,44,69,.08);text-decoration:none!important;color:#102C45!important;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;}
body .spp-home .spp-home-stat.spp-home-stat--visual::before{display:none!important;}
body .spp-home a.spp-home-stat--visual:hover{transform:translateY(-3px);box-shadow:0 15px 34px rgba(16,44,69,.14);border-color:#B48A40!important;}
body .spp-home a.spp-home-stat--visual:focus-visible{outline:3px solid #B48A40;outline-offset:3px;}
body .spp-home .spp-home-stat--visual .spp-home-stat-image{display:block;min-height:0;margin:0;overflow:hidden;aspect-ratio:600/255;position:relative;background:#ecf0ed;}
body .spp-home .spp-home-stat--visual .spp-home-stat-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease;}
body .spp-home a.spp-home-stat--visual:hover .spp-home-stat-image img{transform:scale(1.04);}
body .spp-home .spp-home-stat--visual .spp-home-stat-body{display:flex;flex-direction:column;align-items:flex-start;gap:5px;flex:1;padding:17px 19px 18px;min-height:105px;margin:0!important;}
body .spp-home .spp-home-stat--visual .spp-home-stat-label{display:block;min-height:0;margin:0;font-size:15px;line-height:1.4;color:#445e6c;font-weight:700;}
body .spp-home .spp-home-stat--visual strong{display:block;min-height:0;margin:0;font-size:34px;line-height:1.08;font-weight:800;letter-spacing:-.035em;color:#102C45!important;}
body .spp-home .spp-home-stat--visual .spp-home-stat-action{display:flex;align-items:center;gap:9px;min-height:0;margin:7px 0 0;font-size:12px;font-weight:800;letter-spacing:.03em;color:#537D69;}
body .spp-home .spp-home-stat--visual .spp-home-stat-action b{font-size:15px;}
body .spp-home .spp-home-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;}
body .spp-home .spp-home-links a.spp-home-link.spp-home-link--visual,
body .spp-home .spp-home-links a.spp-home-link.spp-home-link--visual:nth-child(n){display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:0!important;min-height:310px!important;padding:0!important;margin:0!important;background:#fff!important;background-image:none!important;border:1px solid #e0e7e4!important;border-radius:18px!important;overflow:hidden!important;color:#102C45!important;box-shadow:0 9px 23px rgba(16,44,69,.08)!important;text-decoration:none!important;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease!important;}
body .spp-home .spp-home-link--visual::before{display:none!important;}
body .spp-home .spp-home-links a.spp-home-link.spp-home-link--visual:hover,
body .spp-home .spp-home-links a.spp-home-link.spp-home-link--visual:focus-visible{background:#fff!important;border-color:#B48A40!important;color:#102C45!important;transform:translateY(-3px)!important;box-shadow:0 16px 32px rgba(16,44,69,.15)!important;}
body .spp-home .spp-home-link--visual:focus-visible{outline:3px solid #B48A40!important;outline-offset:3px;}
body .spp-home .spp-home-link--visual .spp-home-link-image{display:block;min-width:0;min-height:0;aspect-ratio:600/380;margin:0;overflow:hidden;background:#eaf1ed;position:relative;}
body .spp-home .spp-home-link--visual .spp-home-link-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease;}
body .spp-home .spp-home-link--visual:hover .spp-home-link-image img{transform:scale(1.05);}
body .spp-home .spp-home-link--visual .spp-home-link-body{display:flex;flex-direction:column;align-items:stretch;gap:9px;min-width:0;flex:1;padding:16px 17px 15px;color:#102C45;}
body .spp-home .spp-home-link--visual .spp-home-link-body>strong{font-size:18px;line-height:1.26;color:#102C45!important;letter-spacing:-.01em;}
body .spp-home .spp-home-link--visual .spp-home-link-description{font-size:13px;line-height:1.55;margin:0;min-height:0;color:#526B77!important;font-weight:400;flex:1;}
body .spp-home .spp-home-link--visual .spp-home-link-cta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:10px;border-top:1px solid #e8eeeb;color:#537D69!important;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;}
body .spp-home .spp-home-link--visual .spp-home-link-cta b{font-size:18px;color:#B48A40!important;transform:none!important;}
body .spp-home .spp-visual-imagery-note{margin:12px 2px 0;color:#586f7a;font-size:12px;line-height:1.45;}
@media(max-width:1050px){body .spp-home .spp-home-stats{grid-template-columns:repeat(2,minmax(0,1fr));}body .spp-home .spp-home-links{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:720px){body .spp-home .spp-home-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}body .spp-home .spp-home-stat.spp-home-stat--visual{min-height:205px;}body .spp-home .spp-home-stat--visual .spp-home-stat-body{padding:12px;min-height:100px;}body .spp-home .spp-home-stat--visual .spp-home-stat-label{font-size:13px;}body .spp-home .spp-home-stat--visual strong{font-size:27px;}body .spp-home .spp-home-links{grid-template-columns:1fr;gap:12px;}body .spp-home .spp-home-links a.spp-home-link.spp-home-link--visual{flex-direction:row!important;min-height:128px!important;}body .spp-home .spp-home-link--visual .spp-home-link-image{width:36%;flex:0 0 36%;aspect-ratio:auto;min-height:128px;}body .spp-home .spp-home-link--visual .spp-home-link-body{padding:14px 13px;min-width:0;}body .spp-home .spp-home-link--visual .spp-home-link-body>strong{font-size:16px;}body .spp-home .spp-home-link--visual .spp-home-link-description{font-size:12px;line-height:1.35;}body .spp-home .spp-home-link--visual .spp-home-link-cta{padding-top:5px;font-size:10px;}}
@media(max-width:380px){body .spp-home .spp-home-stats{gap:8px;}body .spp-home .spp-home-stat--visual .spp-home-stat-image{aspect-ratio:4/3;}body .spp-home .spp-home-stat--visual .spp-home-stat-action{font-size:11px;}}
@media(prefers-reduced-motion:reduce){body .spp-home .spp-home-stat--visual,body .spp-home .spp-home-link--visual,body .spp-home .spp-home-stat-image img,body .spp-home .spp-home-link-image img{transition:none!important;}}

/* Explicitly beat legacy nth-child button overrides on narrow screens. */
@media(max-width:720px){
  body .spp-home .spp-home-links a.spp-home-link.spp-home-link--visual:nth-child(n){
    flex-direction:row!important;
    align-items:stretch!important;
  }
  body .spp-home .spp-home-link--visual .spp-home-link-image{
    flex:0 0 36%;width:36%;align-self:stretch;min-height:128px;
  }
  body .spp-home .spp-home-link--visual .spp-home-link-image img{height:100%;object-fit:cover;}
}
@media(max-width:720px){
  body .spp-home .spp-home-links a.spp-home-link.spp-home-link--visual:nth-child(n){
    min-height:148px!important;
    max-height:none!important;
  }
  body .spp-home .spp-home-link--visual .spp-home-link-image{min-height:148px;}
  body .spp-home .spp-home-link--visual .spp-home-link-body{min-height:148px;}
}


/* 1.3.86 · Corrige hover legible en tarjetas visuales de accesos rápidos. */
body .spp-home .spp-home-links a.spp-home-link.spp-home-link--visual:hover,
body .spp-home .spp-home-links a.spp-home-link.spp-home-link--visual:focus,
body .spp-home .spp-home-links a.spp-home-link.spp-home-link--visual:focus-visible{
  background:#ffffff!important;
  background-image:none!important;
  color:#102C45!important;
}
body .spp-home .spp-home-links a.spp-home-link.spp-home-link--visual:hover .spp-home-link-body,
body .spp-home .spp-home-links a.spp-home-link.spp-home-link--visual:focus .spp-home-link-body,
body .spp-home .spp-home-links a.spp-home-link.spp-home-link--visual:focus-visible .spp-home-link-body{
  color:#102C45!important;
}
body .spp-home .spp-home-links a.spp-home-link.spp-home-link--visual:hover .spp-home-link-body>strong,
body .spp-home .spp-home-links a.spp-home-link.spp-home-link--visual:focus .spp-home-link-body>strong,
body .spp-home .spp-home-links a.spp-home-link.spp-home-link--visual:focus-visible .spp-home-link-body>strong{
  color:#102C45!important;
}
body .spp-home .spp-home-links a.spp-home-link.spp-home-link--visual:hover .spp-home-link-description,
body .spp-home .spp-home-links a.spp-home-link.spp-home-link--visual:focus .spp-home-link-description,
body .spp-home .spp-home-links a.spp-home-link.spp-home-link--visual:focus-visible .spp-home-link-description{
  color:#526B77!important;
}
body .spp-home .spp-home-links a.spp-home-link.spp-home-link--visual:hover .spp-home-link-cta,
body .spp-home .spp-home-links a.spp-home-link.spp-home-link--visual:focus .spp-home-link-cta,
body .spp-home .spp-home-links a.spp-home-link.spp-home-link--visual:focus-visible .spp-home-link-cta{
  color:#537D69!important;
  border-top-color:#e8eeeb!important;
}
body .spp-home .spp-home-links a.spp-home-link.spp-home-link--visual:hover .spp-home-link-cta b,
body .spp-home .spp-home-links a.spp-home-link.spp-home-link--visual:focus .spp-home-link-cta b,
body .spp-home .spp-home-links a.spp-home-link.spp-home-link--visual:focus-visible .spp-home-link-cta b{
  color:#B48A40!important;
  transform:translateX(4px)!important;
}
