/* PPS Nova v1.36 — DOM compatibility with Infopeso Pure 100 v84.10.20.
 * The entire original user-supplied CSS is loaded immediately before this file.
 * No palette, font, radius, shadow or button redesign happens here.
 */
.ipa-main.ipa-home{font-family:var(--ip-font-body);color:var(--ip-ink)}
.ipa-home-shell.ip-pure-home{width:min(1120px,calc(100% - 32px));margin-inline:auto}
.ip-pure-home>.ipa-section{padding:clamp(3.2rem,7vw,6.5rem) clamp(1rem,4vw,3.4rem)!important;margin-block:clamp(1rem,3vw,2.4rem)!important;border-radius:clamp(20px,3vw,34px)!important;background:linear-gradient(145deg,rgba(255,255,255,.97),rgba(252,247,255,.94));box-shadow:0 18px 54px rgba(69,16,82,.07)}
.ip-pure-home>.ipa-identity{background:radial-gradient(circle at 86% 14%,rgba(192,44,115,.13),transparent 30%),radial-gradient(circle at 72% 64%,rgba(109,31,116,.13),transparent 34%),linear-gradient(145deg,#fff 0,#f9f0fd 100%)!important}
/* Infopeso uses compact navigation and a white header with a clinical violet accent. */
.ppsn-original-header{background:rgba(255,255,255,.96);border-bottom:1px solid var(--ip-line);box-shadow:0 1px 0 var(--ip-line)}
.ppsn-original-header .ipa-topbar.infopeso-google-service{background:linear-gradient(100deg,var(--ip-red-dark),var(--ip-pink-dark) 38%,var(--ip-violet-dark) 72%,var(--ip-sky-strong))}
.ppsn-original-header .infopeso-google-header{width:min(1180px,calc(100% - 32px));max-width:1180px;padding:1.15rem 0;margin:auto;background:transparent;border:0;display:flex;align-items:center;justify-content:space-between}
.ppsn-original-header .infopeso-google-brand{display:flex;align-items:center;gap:.65rem;letter-spacing:-.035em;background:transparent}
.ppsn-original-header .infopeso-google-brand:after{display:none}
.ppsn-original-header .ipa-brand-wrap{min-width:0}
.ppsn-original-header .ipa-custom-logo{display:block;border:0;background:none;padding:0;box-shadow:none}
.ppsn-original-header .ipa-custom-logo img{display:block;width:auto;max-width:min(420px,78vw);max-height:103px;height:auto;object-fit:contain;box-shadow:none}
.ppsn-original-header .infopeso-google-nav{display:flex;align-items:center;gap:.35rem;min-width:0}
.ppsn-original-header .infopeso-google-nav a{color:var(--ip-ink);text-decoration:none;padding:.55rem .78rem;border-radius:999px;font-weight:700;min-height:44px}
.ppsn-original-header .infopeso-google-nav a:hover{background:var(--ip-rose);color:var(--ip-violet-dark)}
.ppsn-original-header .ipa-nav-cta{background:linear-gradient(135deg,var(--ip-violet-dark),var(--ip-pink-dark));color:#fff!important}
/* Existing cards keep click and WordPress logic; article wrapper activates original CSS. */
.ipa-services .ipa-service-layout{display:block}
.ipa-services .ip-service-stack.ipa-service-grid{display:grid;grid-template-columns:1fr;gap:1.2rem}
.ipa-services .ip-service-stack>article{position:relative;inset:auto;transform:none;overflow:visible;border:1px solid var(--ip-line);border-radius:var(--ip-radius);padding:1rem;background:linear-gradient(145deg,#fff,var(--ip-rose));box-shadow:var(--ip-shadow-soft)}
.ipa-services .ip-service-stack>article:nth-child(3n+2){background:linear-gradient(145deg,#fff,var(--ip-lilac))}
.ipa-services .ip-service-stack>article:nth-child(3n){background:linear-gradient(145deg,var(--ip-rose),#fff)}
.ipa-services .ipa-service-card{width:100%;height:100%;min-height:150px;background:transparent;box-shadow:none;border:0;text-align:left}
.ipa-services .ipa-service-card:focus-visible{outline:3px solid var(--ip-focus)!important}
/* Match the visual card cadence in original infographic/article sections. */
.ipa-section .ipa-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.ipa-section .ipa-content-card,.ipa-section .ipa-library-grid>article,.ipa-section .ipa-source-list>article{border:1px solid var(--ip-line);border-radius:28px;background:linear-gradient(145deg,#fff,var(--ip-rose));box-shadow:var(--ip-shadow-soft)}
.ipa-section .ipa-content-card:nth-child(even),.ipa-section .ipa-library-grid>article:nth-child(even){background:linear-gradient(145deg,#fff,var(--ip-lilac))}
.ipa-section .ipa-faq-item{border:1px solid var(--ip-line);border-radius:20px;background:linear-gradient(145deg,#fff,var(--ip-rose));box-shadow:var(--ip-shadow-soft)}
.ipa-section .ipa-faq-item:nth-child(even){background:linear-gradient(145deg,#fff,var(--ip-lilac))}
.ipa-section .ipa-faq-item summary{color:var(--ip-violet-dark);font-weight:850}
.ipa-section .ipa-actions a.ipa-primary,.ipa-section a.ppsn-map-phone{background:linear-gradient(135deg,var(--ip-violet-dark),var(--ip-violet) 55%,var(--ip-pink-dark))!important;color:#fff!important;border-color:var(--ip-violet-dark)!important}
/* Preserve the genuine map and published-post links; no hidden content or fake counts. */
.ppsn-regional-map{border-radius:var(--ip-radius);border:1px solid var(--ip-line)}
.ipa-section .ipa-territorial-editorial-links a{color:var(--ip-violet-dark);background:#fff;border:1px solid var(--ip-line);border-radius:var(--ip-radius-small)}
.ipa-section .ipa-territorial-editorial-links a:hover{background:var(--ip-rose)}
/* Mind map remains a real horizontal diagram on desktop, with visible branches. */
.ppsn-mindmap-horizontal{isolation:isolate}
.ppsn-mindmap-horizontal .ppsn-mindmap-center{color:#fff}
.ppsn-mindmap-horizontal .ppsn-mindmap-node span{color:var(--ip-ink)}
/* Header logo mobile, menu and grid align to the original breakpoints. */
@media(max-width:920px){.ppsn-original-header .infopeso-google-header{gap:.7rem;flex-wrap:wrap}.ppsn-original-header .ipa-custom-logo img{max-height:86px;max-width:min(330px,72vw)}}
@media(max-width:760px){.ppsn-original-header .infopeso-google-header{align-items:flex-start;flex-direction:column}.ppsn-original-header .infopeso-google-nav{width:100%;max-width:100%;overflow-x:auto}.ipa-services .ip-service-stack.ipa-service-grid,.ipa-section .ipa-card-grid{grid-template-columns:1fr}}
@media(max-width:560px){.ppsn-original-header .ipa-custom-logo img{max-width:min(285px,72vw);max-height:75px}}

/* Territory section must be full-width so the horizontal concept graph is never
 * squeezed into the original theme's narrow second column. */
.ipa-home .ipa-territories{display:block}
.ipa-home .ipa-territory-copy,.ipa-home .ppsn-mindmap-wrap{width:100%;max-width:100%;grid-column:1/-1}
.ipa-home .ppsn-mindmap-wrap{margin:1.25rem 0 2rem}
.ipa-home .ppsn-mindmap-horizontal{width:100%}
@media(min-width:1100px){.ipa-home .ppsn-mindmap-horizontal{grid-template-columns:repeat(3,minmax(0,1fr))}}
