/*
Theme Name: Prime Vista Health
Theme URI: https://example.com/
Author: Ehyperlink
Description: Clinical Atlas editorial theme for health, medical and wellness publishing.
Version: 1.0.0
Text Domain: prime-vista-health
Requires at least: 6.0
Requires PHP: 7.4
*/
:root{
 --pvh-bg:#f8f9f7;--pvh-paper:#fff;--pvh-ink:#171d24;--pvh-mid:#1a2a3d;
 --pvh-teal:#21918b;--pvh-red:#cf4b43;--pvh-lav:#dddaeF;--pvh-sand:#eee2cd;
 --pvh-muted:#666c71;--pvh-line:#d6dadb;--pvh-int:#246b8f;--pvh-ext:#b13f37
}
.pvh-site,.pvh-site *{box-sizing:border-box}
.pvh-site{background:var(--pvh-bg);color:var(--pvh-ink);font-family:Arial,Helvetica,sans-serif;overflow-x:hidden;min-height:100vh}
.pvh-site a{text-decoration:none;color:inherit}.pvh-site img{max-width:100%;height:auto}.pvh-wrap{width:min(1260px,calc(100% - 34px));margin:auto}

/* Header */
.pvh-header{position:sticky;top:0;z-index:999;background:rgba(255,255,255,.98);border-bottom:1px solid var(--pvh-line)}
.admin-bar .pvh-header{top:32px}.pvh-head{min-height:88px;display:grid;grid-template-columns:330px 1fr 210px;gap:18px;align-items:center}
.pvh-logo img{width:305px;display:block}.pvh-nav ul{display:flex;justify-content:center;gap:4px;list-style:none;margin:0;padding:0;flex-wrap:wrap}
.pvh-nav a{display:block;padding:10px;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.pvh-nav a:hover,.pvh-nav .current-menu-item>a{color:var(--pvh-teal)}

/* Fixed primary menu box — always shows required items */
.pvh-fixed-menu{
 justify-self:center;
 background:#f7faf9;
 border:1px solid var(--pvh-line);
 padding:5px;
 border-radius:14px;
 box-shadow:0 8px 24px rgba(26,42,61,.06)
}
.pvh-fixed-menu .pvh-menu-list{
 display:flex;
 align-items:center;
 justify-content:center;
 gap:4px;
 list-style:none;
 margin:0;
 padding:0
}
.pvh-fixed-menu .pvh-menu-list li{margin:0;padding:0}
.pvh-fixed-menu .pvh-menu-list a{
 display:flex;
 align-items:center;
 justify-content:center;
 min-height:36px;
 padding:0 14px;
 border-radius:10px;
 color:var(--pvh-ink);
 font-size:9px;
 font-weight:900;
 letter-spacing:.07em;
 text-transform:uppercase;
 white-space:nowrap
}
.pvh-fixed-menu .pvh-menu-list a:hover{
 background:var(--pvh-teal);
 color:#fff
}

.pvh-search{height:40px;display:grid;grid-template-columns:1fr 44px;border:1px solid var(--pvh-line);background:#fff}.pvh-search input{border:0;outline:0;padding:0 11px}.pvh-search button{border:0;background:var(--pvh-mid);color:#fff;font-weight:900}
.pvh-trustbar{background:var(--pvh-mid);color:#fff;padding:8px 0;font-size:8px;letter-spacing:.12em;text-transform:uppercase}

/* Hero */
.pvh-hero{padding:46px 0 60px;background:#f1f5f4}.pvh-hero-grid{display:grid;grid-template-columns:74px 1.05fr .95fr;gap:26px;align-items:stretch}
.pvh-vital{background:var(--pvh-mid);padding:24px 0;display:flex;flex-direction:column;align-items:center;gap:34px}.pvh-vital span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--pvh-teal);font-size:8px;font-weight:900}.pvh-vital span:nth-child(2){background:var(--pvh-lav)}.pvh-vital span:nth-child(3){background:var(--pvh-red);color:#fff}.pvh-vital span:nth-child(4){background:var(--pvh-sand)}.pvh-vital span:nth-child(5){background:var(--pvh-teal)}
.pvh-main{background:#fff;border:1px solid var(--pvh-line);padding:48px;display:flex;flex-direction:column;justify-content:space-between}.pvh-kicker{color:var(--pvh-teal);font-size:9px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.pvh-hero h1{margin:16px 0 20px;font:700 clamp(3.5rem,5.5vw,6rem)/.92 Georgia,"Times New Roman",serif;letter-spacing:-.04em}.pvh-hero p{max-width:620px;color:var(--pvh-muted);font-size:14px;line-height:1.7}
.pvh-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.pvh-btn{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border:1px solid var(--pvh-mid);font-size:9px;font-weight:900;text-transform:uppercase}.pvh-btn.primary{background:var(--pvh-mid);color:#fff}.pvh-btn.secondary{background:#fff}
.pvh-atlas{background:#fff;border:1px solid var(--pvh-line);padding:34px;display:flex;flex-direction:column}.pvh-atlas-head{background:var(--pvh-lav);padding:22px}.pvh-atlas-head strong{display:block;font-size:1rem}.pvh-atlas-head span{font-size:10px;color:var(--pvh-muted)}.pvh-bodymap{position:relative;flex:1;min-height:360px;margin-top:20px}.pvh-headnode{position:absolute;left:50%;top:12%;width:120px;height:120px;border:3px solid var(--pvh-teal);border-radius:50%;transform:translateX(-50%)}.pvh-torso{position:absolute;left:50%;top:42%;width:64px;height:160px;border:3px solid var(--pvh-teal);transform:translateX(-50%)}.pvh-pulse{position:absolute;width:22px;height:22px;border-radius:50%;background:var(--pvh-red)}.pvh-pulse.p1{left:48%;top:29%}.pvh-pulse.p2{left:35%;top:55%;background:var(--pvh-lav)}.pvh-pulse.p3{right:34%;top:58%;background:var(--pvh-sand)}

/* sections */
.pvh-section{padding:52px 0}.pvh-section.alt{background:#eef1ef;border-top:1px solid var(--pvh-line);border-bottom:1px solid var(--pvh-line)}
.pvh-section-head{display:flex;justify-content:space-between;align-items:end;gap:18px;margin-bottom:20px}.pvh-section-head h2{margin:0;font-size:1.8rem;text-transform:uppercase;letter-spacing:.04em}.pvh-section-head p{margin:5px 0 0;color:var(--pvh-muted);font-size:11px}

/* topic lanes */
.pvh-topic-list{display:flex;flex-direction:column;gap:9px}.pvh-topic{display:grid;grid-template-columns:190px 42px 1fr 55px;align-items:center;min-height:94px;background:#fff;border:1px solid var(--pvh-line)}.pvh-topic-img{height:92px;overflow:hidden}.pvh-topic-img img{width:100%;height:100%;object-fit:cover}.pvh-topic-dot{width:26px;height:26px;border-radius:50%;background:var(--pvh-teal)}.pvh-topic:nth-child(4n+2) .pvh-topic-dot{background:var(--pvh-lav)}.pvh-topic:nth-child(4n+3) .pvh-topic-dot{background:var(--pvh-red)}.pvh-topic:nth-child(4n) .pvh-topic-dot{background:var(--pvh-sand)}.pvh-topic strong{font-size:11px;text-transform:uppercase}.pvh-topic b{font-size:9px;color:var(--pvh-teal)}.pvh-topic:hover{border-color:var(--pvh-teal)}

/* Feature */
.pvh-feature{display:grid;grid-template-columns:1.05fr .95fr;background:var(--pvh-mid);color:#fff}.pvh-feature-image{min-height:390px;overflow:hidden}.pvh-feature-image img{width:100%;height:100%;object-fit:cover}.pvh-feature-copy{padding:42px;display:flex;flex-direction:column;justify-content:center}.pvh-feature-copy h2{margin:12px 0;font:700 2.4rem/1 Georgia,serif}.pvh-feature-copy p{font-size:11px;line-height:1.65;color:#d8e0e5}.pvh-feature-copy a{margin-top:14px;color:#fff;font-size:9px;font-weight:900;text-transform:uppercase}

/* Editorial trust */
.pvh-trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.pvh-trust-card{background:#fff;border:1px solid var(--pvh-line);padding:22px}.pvh-trust-card small{display:block;color:var(--pvh-teal);font-size:8px;font-weight:900;text-transform:uppercase}.pvh-trust-card strong{display:block;margin:10px 0;font-size:1rem}.pvh-trust-card p{margin:0;color:var(--pvh-muted);font-size:10.5px;line-height:1.55}

/* notes */
.pvh-note-list{display:flex;flex-direction:column;border-top:1px solid var(--pvh-line)}.pvh-note{display:grid;grid-template-columns:52px 150px 1fr 120px;align-items:center;min-height:128px;background:#fff;border-bottom:1px solid var(--pvh-line)}.pvh-note-mark{height:100%;background:var(--pvh-teal)}.pvh-note:nth-child(4n+2) .pvh-note-mark{background:var(--pvh-lav)}.pvh-note:nth-child(4n+3) .pvh-note-mark{background:var(--pvh-red)}.pvh-note:nth-child(4n) .pvh-note-mark{background:var(--pvh-sand)}
.pvh-note-img{height:102px;margin:12px;overflow:hidden}.pvh-note-img img{width:100%;height:100%;object-fit:cover}.pvh-note-body{padding:14px 18px}.pvh-note-body small{color:var(--pvh-teal);font-size:8px;font-weight:900;text-transform:uppercase}.pvh-note-body h3{margin:8px 0 6px;font-size:1.08rem}.pvh-note-body p{margin:0;color:var(--pvh-muted);font-size:10.5px;line-height:1.5}.pvh-note-open{font-size:9px;font-weight:900;color:var(--pvh-teal);text-transform:uppercase}

/* Single post */
.pvh-post-hero{background:#f0f4f3;padding:42px 0 28px;border-bottom:1px solid var(--pvh-line)}.pvh-post-hero h1{max-width:930px;margin:8px 0 10px;font:700 clamp(2.7rem,5vw,4.5rem)/.98 Georgia,serif}.pvh-post-meta{display:flex;gap:8px;flex-wrap:wrap;color:#747b80;font-size:10px}
.pvh-review-note{margin-top:16px;padding:12px 14px;background:#fff;border-left:4px solid var(--pvh-teal);font-size:10px;color:var(--pvh-muted)}
.pvh-post-wrap{width:min(1020px,calc(100% - 32px));margin:auto;padding:38px 0 60px}.pvh-article{background:#fff;border:1px solid var(--pvh-line);padding:36px 40px;overflow:hidden}.pvh-featured img{display:block;width:100%;height:500px;object-fit:cover;border:1px solid var(--pvh-line);box-shadow:10px 10px 0 var(--pvh-lav);margin-bottom:32px}.pvh-entry{font:16px/1.8 Georgia,"Times New Roman",serif;color:#3f4448}.pvh-entry>*{max-width:100%;box-sizing:border-box}.pvh-entry h2,.pvh-entry h3{color:var(--pvh-ink)}.pvh-entry img{display:block;width:100%;height:auto;border:1px solid var(--pvh-line);box-shadow:7px 7px 0 #dde5e4}.pvh-entry a{color:var(--pvh-int);text-decoration:underline;text-underline-offset:3px}.pvh-entry a.pvh-external-link,.pvh-entry a[target="_blank"]{color:var(--pvh-ext)!important}.pvh-entry p,.pvh-entry li,.pvh-entry a,.pvh-entry span,.pvh-entry strong{overflow-wrap:anywhere;white-space:normal}
.pvh-context{margin:28px 0;padding:15px 16px;background:#eef7f6;border:1px solid var(--pvh-teal);box-shadow:7px 7px 0 var(--pvh-sand)}.pvh-context small{display:block;margin-bottom:6px;color:var(--pvh-teal);font-size:8px;font-weight:900;text-transform:uppercase}.pvh-context a{display:flex;justify-content:space-between;gap:12px;color:var(--pvh-ink)!important;text-decoration:none!important;font-weight:700}.pvh-context b{color:var(--pvh-red)}
.pvh-disclaimer{margin-top:30px;padding:18px;background:#f7f4ee;border:1px solid var(--pvh-line);font-size:10px;line-height:1.55;color:var(--pvh-muted)}
.pvh-related{margin-top:38px;padding-top:24px;border-top:1px solid var(--pvh-line)}.pvh-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.pvh-related-card{background:#fff;border:1px solid var(--pvh-line);overflow:hidden}.pvh-related-card img{width:100%;height:170px;object-fit:cover}.pvh-related-card div{padding:12px}.pvh-related-card h3{margin:0;font-size:1rem;line-height:1.15}

/* footer */
.pvh-footer{
 background:
   radial-gradient(circle at 12% 0%,rgba(33,145,139,.16),transparent 30%),
   radial-gradient(circle at 88% 10%,rgba(221,218,240,.12),transparent 32%),
   var(--pvh-mid);
 color:#e8eef1;
 margin-top:18px
}
.pvh-footer-top{
 height:14px;
 display:grid;
 grid-template-columns:1.15fr .95fr .8fr 1.1fr;
 overflow:hidden
}
.pvh-footer-top span:nth-child(1){background:var(--pvh-teal)}
.pvh-footer-top span:nth-child(2){background:var(--pvh-lav)}
.pvh-footer-top span:nth-child(3){background:var(--pvh-red)}
.pvh-footer-top span:nth-child(4){background:var(--pvh-sand)}

.pvh-footer-cta{
 position:relative;
 display:grid;
 grid-template-columns:1.2fr .8fr;
 gap:24px;
 align-items:center;
 margin-top:34px;
 padding:30px;
 border:1px solid rgba(255,255,255,.12);
 background:rgba(255,255,255,.055);
 box-shadow:0 20px 60px rgba(0,0,0,.16);
 overflow:hidden
}
.pvh-footer-cta:after{
 content:"";
 position:absolute;
 right:-80px;
 top:-80px;
 width:240px;
 height:240px;
 border:1px solid rgba(255,255,255,.14);
 border-radius:50%;
 box-shadow:0 0 0 38px rgba(255,255,255,.025),0 0 0 76px rgba(255,255,255,.018)
}
.pvh-footer-cta-copy{position:relative;z-index:2}
.pvh-footer-cta small{
 display:block;
 color:#8fe0da;
 font-size:8px;
 font-weight:900;
 letter-spacing:.16em;
 text-transform:uppercase;
 margin-bottom:10px
}
.pvh-footer-cta h2{
 margin:0 0 10px;
 max-width:620px;
 color:#fff;
 font:700 clamp(1.7rem,3vw,2.6rem)/1.05 Georgia,"Times New Roman",serif
}
.pvh-footer-cta p{
 margin:0;
 max-width:680px;
 color:#b8c5cc;
 font-size:11px;
 line-height:1.65
}
.pvh-footer-cta-actions{
 position:relative;
 z-index:2;
 display:flex;
 justify-content:flex-end;
 gap:10px;
 flex-wrap:wrap
}
.pvh-footer-cta-btn{
 display:inline-flex;
 align-items:center;
 justify-content:center;
 min-height:44px;
 padding:0 18px;
 border:1px solid rgba(255,255,255,.2);
 font-size:9px;
 font-weight:900;
 letter-spacing:.07em;
 text-transform:uppercase
}
.pvh-footer-cta-btn.primary{background:var(--pvh-teal);color:#fff;border-color:var(--pvh-teal)}
.pvh-footer-cta-btn.secondary{background:transparent;color:#fff}

.pvh-footer-main{
 display:grid;
 grid-template-columns:1.65fr repeat(4,1fr);
 gap:34px;
 padding:38px 0 30px
}
.pvh-footer-brand{
 padding-right:18px
}
.pvh-footer-brand-lockup{
 display:flex;
 align-items:center;
 gap:13px;
 margin-bottom:16px
}
.pvh-footer-brand-mark{
 width:46px;
 height:46px;
 border:1px solid rgba(255,255,255,.14);
 display:grid;
 place-items:center;
 position:relative;
 background:rgba(255,255,255,.04)
}
.pvh-footer-brand-mark:before,
.pvh-footer-brand-mark:after{
 content:"";
 position:absolute;
 background:var(--pvh-teal)
}
.pvh-footer-brand-mark:before{width:22px;height:6px}
.pvh-footer-brand-mark:after{width:6px;height:22px}
.pvh-footer-brand strong{
 display:block;
 font-size:1.22rem;
 color:#fff;
 letter-spacing:.01em
}
.pvh-footer-brand em{
 display:block;
 margin-top:4px;
 color:#8fe0da;
 font-style:normal;
 font-size:8px;
 letter-spacing:.12em;
 text-transform:uppercase
}
.pvh-footer-brand p{
 max-width:390px;
 color:#aab6bd;
 font-size:11px;
 line-height:1.7;
 margin:0
}
.pvh-footer-badges{
 display:flex;
 gap:8px;
 flex-wrap:wrap;
 margin-top:18px
}
.pvh-footer-badge{
 padding:7px 9px;
 border:1px solid rgba(255,255,255,.12);
 color:#dbe5ea;
 font-size:8px;
 text-transform:uppercase;
 letter-spacing:.06em
}

.pvh-footer-col{
 display:flex;
 flex-direction:column;
 gap:9px;
 min-width:0
}
.pvh-footer-col h3{
 margin:0 0 9px;
 color:#fff;
 font-size:.82rem;
 text-transform:uppercase;
 letter-spacing:.08em
}
.pvh-footer-col a{
 position:relative;
 display:inline-flex;
 width:max-content;
 max-width:100%;
 color:#c7d1d6;
 font-size:10px;
 transition:.2s ease
}
.pvh-footer-col a:after{
 content:"";
 position:absolute;
 left:0;
 bottom:-3px;
 width:0;
 height:1px;
 background:var(--pvh-teal);
 transition:.2s ease
}
.pvh-footer-col a:hover{color:#fff}
.pvh-footer-col a:hover:after{width:100%}

.pvh-footer-bottom{
 display:grid;
 grid-template-columns:1fr auto 1fr;
 align-items:center;
 gap:18px;
 border-top:1px solid rgba(255,255,255,.1);
 padding:16px 0 22px;
 color:#91a0aa;
 font-size:9px
}
.pvh-footer-bottom .pvh-footer-center{
 justify-self:center;
 display:flex;
 align-items:center;
 gap:8px;
 color:#d9e1e5
}
.pvh-footer-bottom .pvh-footer-center i{
 width:7px;
 height:7px;
 border-radius:50%;
 background:var(--pvh-teal);
 box-shadow:0 0 0 4px rgba(33,145,139,.14)
}
.pvh-footer-bottom .pvh-footer-right{
 justify-self:end;
 text-align:right
}

@media(max-width:1100px){.pvh-head{grid-template-columns:250px 1fr}.pvh-search{grid-column:1/-1}.pvh-footer-main{grid-template-columns:1.4fr 1fr 1fr}.pvh-footer-cta{grid-template-columns:1fr}.pvh-footer-cta-actions{justify-content:flex-start}}
@media(max-width:820px){.admin-bar .pvh-header{top:46px}.pvh-header{position:relative}.pvh-head{grid-template-columns:1fr;gap:10px;padding:12px 0}.pvh-nav ul{justify-content:flex-start}.pvh-hero-grid{grid-template-columns:1fr}.pvh-vital{flex-direction:row;justify-content:center}.pvh-feature{grid-template-columns:1fr}.pvh-trust-grid{grid-template-columns:1fr}.pvh-note{grid-template-columns:44px 115px 1fr}.pvh-note-open{display:none}.pvh-footer-main{grid-template-columns:1fr 1fr}.pvh-footer-bottom{grid-template-columns:1fr}.pvh-footer-bottom .pvh-footer-center,.pvh-footer-bottom .pvh-footer-right{justify-self:start;text-align:left}.pvh-featured img{height:340px}}
@media(max-width:560px){.pvh-topic{grid-template-columns:110px 34px 1fr 40px}.pvh-note{grid-template-columns:34px 90px 1fr}.pvh-note-body{padding:10px}.pvh-note-body p{display:none}.pvh-related-grid,.pvh-footer-main{grid-template-columns:1fr}.pvh-hero h1{font-size:3rem}.pvh-main{padding:28px 22px}.pvh-article{padding:20px 16px}.pvh-featured img{height:250px}.pvh-footer-cta{padding:22px}.pvh-footer-cta-actions{flex-direction:column;align-items:stretch}.pvh-footer-cta-btn{width:100%}}

@media(max-width:820px){
 .pvh-fixed-menu{width:100%;overflow-x:auto;justify-self:stretch}
 .pvh-fixed-menu .pvh-menu-list{justify-content:flex-start;min-width:max-content}
}
