/* PharmD Live Publication-Ready Copy Rollout — Phase 8 v10.20.1 */
.pdl-pr-phase8-active {
    --pdl-pr8-blue:#3180C2;
    --pdl-pr8-blue-deep:#1479BD;
    --pdl-pr8-teal:#3DAFBE;
    --pdl-pr8-orange:#F7941D;
    --pdl-pr8-navy:#123B5A;
    --pdl-pr8-navy-deep:#0C2F48;
    --pdl-pr8-text:#526E80;
    --pdl-pr8-soft:#F5FAFC;
    --pdl-pr8-pale:#ECF8FA;
    --pdl-pr8-border:rgba(49,128,194,.16);
    --pdl-pr8-shadow:0 22px 58px rgba(16,47,71,.10);
}

.pdl-pr8-shell,
.pdl-pr8-paper-shell { width:min(1180px,90vw); margin-inline:auto; }
.pdl-pr8-btn { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:52px; padding:14px 22px; border-radius:13px; background:var(--pdl-pr8-orange); color:#fff!important; font-weight:800; text-decoration:none!important; box-shadow:0 12px 28px rgba(247,148,29,.20); transition:transform .24s ease,box-shadow .24s ease,background-color .24s ease; }
.pdl-pr8-btn span { transition:transform .24s ease; }
.pdl-pr8-btn:hover { transform:translateY(-2px); background:#EA8614; box-shadow:0 17px 34px rgba(247,148,29,.26); }
.pdl-pr8-btn:hover span { transform:translateX(4px); }

/* 8A — Solutions addition. Existing Solutions design remains the surrounding page. */
.pdl-pr8-solutions { position:relative; overflow:hidden; padding:clamp(84px,7.5vw,116px) 0; background:linear-gradient(180deg,#F8FCFD 0%,#FFFFFF 100%); border-bottom:1px solid rgba(49,128,194,.08); }
.pdl-pr8-solutions::before { content:""; position:absolute; left:0; top:0; width:100%; height:4px; background:linear-gradient(90deg,var(--pdl-pr8-orange),var(--pdl-pr8-teal),transparent 78%); }
.pdl-pr8-solutions__grid { display:grid; grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr); gap:clamp(46px,6vw,88px); align-items:center; }
.pdl-pr8-solutions__copy h2 { max-width:760px; margin:0 0 28px; color:var(--pdl-pr8-navy); font-family:"Open Sans",Arial,sans-serif; font-size:clamp(2.2rem,3.6vw,3.45rem); line-height:1.07; letter-spacing:-.035em; }
.pdl-pr8-solutions__copy p { margin:0 0 18px; color:#4F697C; font-size:clamp(1rem,1.08vw,1.1rem); line-height:1.75; }
.pdl-pr8-solutions__copy .pdl-pr8-btn { margin-top:12px; }
.pdl-pr8-solutions__capabilities { position:relative; padding:34px 34px 30px; border-radius:30px; background:#fff; border:1px solid rgba(49,128,194,.13); box-shadow:var(--pdl-pr8-shadow); }
.pdl-pr8-solutions__capabilities h3 { margin:0 0 14px; color:var(--pdl-pr8-navy); font-family:"Open Sans",Arial,sans-serif; font-size:clamp(1.55rem,2.2vw,2rem); line-height:1.2; }
.pdl-pr8-solutions__capabilities article { position:relative; padding:22px 0 22px 20px; border-bottom:1px solid rgba(49,128,194,.12); transition:transform .24s ease; }
.pdl-pr8-solutions__capabilities article:last-child { border-bottom:0; }
.pdl-pr8-solutions__capabilities article::before { content:""; position:absolute; left:0; top:26px; width:3px; height:24px; border-radius:999px; background:var(--pdl-pr8-orange); transition:height .28s ease,background-color .28s ease; }
.pdl-pr8-solutions__capabilities article:hover { transform:translateX(4px); }
.pdl-pr8-solutions__capabilities article:hover::before { height:68px; background:var(--pdl-pr8-teal); }
.pdl-pr8-solutions__capabilities strong { display:block; margin-bottom:6px; color:var(--pdl-pr8-navy); font-size:1.03rem; }
.pdl-pr8-solutions__capabilities p { margin:0; color:#5A7384; font-size:.96rem; line-height:1.62; }

/* 8B — Who We Serve addition. Current Elementor organization sections remain below. */
.pdl-pr8-who { position:relative; z-index:2; overflow:hidden; padding:clamp(86px,7.5vw,116px) 0; background:linear-gradient(145deg,#F7FCFD 0%,#EDF8FA 58%,#FFF9F2 100%); border-top:1px solid rgba(49,128,194,.07); border-bottom:1px solid rgba(49,128,194,.07); }
.pdl-pr8-who::after { content:""; position:absolute; right:-8%; top:16%; width:36%; height:58%; background:radial-gradient(circle,rgba(61,175,190,.12),transparent 68%); pointer-events:none; }
.pdl-pr8-who__intro { position:relative; z-index:2; max-width:900px; margin:0 auto 48px; text-align:center; }
.pdl-pr8-who__intro h2 { margin:0 0 24px; color:var(--pdl-pr8-navy); font-family:"Open Sans",Arial,sans-serif; font-size:clamp(2.15rem,3.6vw,3.4rem); line-height:1.08; letter-spacing:-.035em; }
.pdl-pr8-who__intro p { max-width:820px; margin:0 auto 16px; color:#4F697C; font-size:clamp(1rem,1.08vw,1.1rem); line-height:1.74; }
.pdl-pr8-who__rail { position:relative; z-index:2; display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:18px; }
.pdl-pr8-who__rail article { position:relative; grid-column:span 2; min-height:210px; padding:28px 24px 26px; border:1px solid rgba(49,128,194,.13); border-radius:24px; background:rgba(255,255,255,.88); box-shadow:0 16px 38px rgba(16,47,71,.07); transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease; }
.pdl-pr8-who__rail article:nth-child(4),.pdl-pr8-who__rail article:nth-child(5) { grid-column:span 3; }
.pdl-pr8-who__rail article::before { content:""; display:block; width:34px; height:3px; margin-bottom:20px; border-radius:999px; background:var(--pdl-pr8-orange); transition:width .28s ease,background-color .28s ease; }
.pdl-pr8-who__rail article:hover { transform:translateY(-4px); border-color:rgba(61,175,190,.32); box-shadow:0 22px 48px rgba(16,47,71,.11); }
.pdl-pr8-who__rail article:hover::before { width:86px; background:var(--pdl-pr8-teal); }
.pdl-pr8-who__rail h3 { margin:0 0 11px; color:var(--pdl-pr8-navy); font-family:"Open Sans",Arial,sans-serif; font-size:1.15rem; line-height:1.3; }
.pdl-pr8-who__rail p { margin:0; color:#536E80; font-size:.97rem; line-height:1.64; }
.pdl-pr8-who__footer { position:relative; z-index:2; display:flex; align-items:center; justify-content:space-between; gap:34px; margin-top:34px; padding:30px 32px; border-radius:24px; background:linear-gradient(135deg,var(--pdl-pr8-navy-deep),var(--pdl-pr8-navy)); box-shadow:0 20px 48px rgba(16,47,71,.15); }
.pdl-pr8-who__footer p { max-width:760px; margin:0; color:rgba(255,255,255,.86); line-height:1.68; }
.pdl-pr8-who__footer .pdl-pr8-btn { flex:0 0 auto; }

/* 8C — Whitepapers special editorial treatment. */
.pdl-pr8-whitepapers { background:#fff; color:#172033; font-family:Inter,"Helvetica Neue",Helvetica,Arial,sans-serif; overflow:hidden; }
.pdl-pr8-whitepapers * { box-sizing:border-box; }
.pdl-pr8-whitepapers a { text-decoration:none; }
.pdl-pr8-paper-hero { display:grid; grid-template-columns:1fr 1fr; min-height:min(760px,calc(100svh - 72px)); background:linear-gradient(135deg,#F8FCFD 0%,#EEF9FB 72%,#FFF9F1 100%); }
.pdl-pr8-paper-hero__copy { display:flex; flex-direction:column; justify-content:center; padding:clamp(70px,7vw,108px) clamp(30px,5.8vw,86px); }
.pdl-pr8-paper-hero h1 { max-width:690px; margin:0; color:var(--pdl-pr8-navy-deep); font-size:clamp(2.55rem,4.7vw,4.9rem); font-weight:790; line-height:1.02; letter-spacing:-.045em; text-wrap:balance; }
.pdl-pr8-paper-hero__copy>p { max-width:640px; margin:28px 0 0; color:#526E80; font-size:clamp(1rem,1.12vw,1.12rem); line-height:1.78; }
.pdl-pr8-paper-hero__copy .pdl-pr8-btn { align-self:flex-start; margin-top:30px; }
.pdl-pr8-paper-hero__media { position:relative; margin:0; min-height:100%; overflow:hidden; }
.pdl-pr8-paper-hero__media::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(12,47,72,.08),transparent 24%); pointer-events:none; }
.pdl-pr8-paper-hero__media img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; display:block; transition:transform 1.1s cubic-bezier(.22,.8,.3,1); }
.pdl-pr8-paper-hero__media:hover img { transform:scale(1.025); }

.pdl-pr8-paper-story { position:relative; padding:clamp(92px,8.5vw,132px) 0; }
.pdl-pr8-paper-story--dark { background:linear-gradient(135deg,#0C2F48 0%,#123E5C 100%); color:#fff; }
.pdl-pr8-paper-story--light { background:linear-gradient(180deg,#FFFFFF 0%,#F5FAFC 100%); }
.pdl-pr8-paper-story__grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr); gap:clamp(52px,7vw,96px); align-items:center; }
.pdl-pr8-paper-story__grid--reverse { grid-template-columns:minmax(420px,1.05fr) minmax(0,.95fr); }
.pdl-pr8-paper-story__copy { position:relative; }
.pdl-pr8-paper-story__copy::before { content:""; display:block; width:62px; height:4px; margin-bottom:30px; border-radius:999px; background:linear-gradient(90deg,var(--pdl-pr8-orange),var(--pdl-pr8-teal)); transform-origin:left center; transform:scaleX(.55); transition:transform .55s cubic-bezier(.22,.8,.3,1); }
.pdl-pr8-paper-story.pdl-pr8-story-active .pdl-pr8-paper-story__copy::before { transform:scaleX(1); }
.pdl-pr8-paper-story__copy p { margin:0 0 22px; font-size:clamp(1.08rem,1.45vw,1.3rem); line-height:1.82; }
.pdl-pr8-paper-story--dark .pdl-pr8-paper-story__copy p { color:rgba(255,255,255,.90); }
.pdl-pr8-paper-story--light .pdl-pr8-paper-story__copy p { color:#49677A; }
.pdl-pr8-paper-story__copy p:last-child { margin-bottom:0; }
.pdl-pr8-paper-story__media { position:relative; min-height:500px; margin:0; overflow:hidden; border-radius:30px; box-shadow:0 28px 70px rgba(9,41,62,.18); }
.pdl-pr8-paper-story__media::after { content:""; position:absolute; left:22px; right:22px; bottom:20px; height:4px; border-radius:999px; background:linear-gradient(90deg,var(--pdl-pr8-orange),var(--pdl-pr8-teal)); transform:scaleX(.18); transform-origin:left center; transition:transform .65s cubic-bezier(.22,.8,.3,1); }
.pdl-pr8-paper-story.pdl-pr8-story-active .pdl-pr8-paper-story__media::after { transform:scaleX(1); }
.pdl-pr8-paper-story__media img { position:absolute; inset:-3%; width:106%; height:106%; object-fit:cover; display:block; transition:transform .5s ease; will-change:transform; }
.pdl-pr8-paper-story__media:hover img { filter:saturate(1.03); }
.pdl-pr8-paper-story--dark .pdl-pr8-paper-story__media { border:1px solid rgba(255,255,255,.12); }
.pdl-pr8-whitepapers .pdl-whitepaper-library { position:relative; background:#fff; }
.pdl-pr8-empty { margin:70px 0; padding:38px; border:1px dashed rgba(20,121,189,.27); border-radius:22px; background:#F8FCFD; text-align:center; color:#5F7282; }

/* Shared motion */
.pdl-pr8-js .pdl-pr8-reveal { opacity:0; transform:translateY(24px); transition:opacity .72s ease,transform .72s cubic-bezier(.22,.8,.3,1); }
.pdl-pr8-js .pdl-pr8-reveal.pdl-pr8-is-visible { opacity:1; transform:none; }

@media (max-width:1080px) {
    .pdl-pr8-solutions__grid { grid-template-columns:1fr; }
    .pdl-pr8-solutions__capabilities { max-width:780px; }
    .pdl-pr8-who__rail { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .pdl-pr8-who__rail article,.pdl-pr8-who__rail article:nth-child(4),.pdl-pr8-who__rail article:nth-child(5) { grid-column:auto; }
    .pdl-pr8-who__rail article:last-child { grid-column:1 / -1; }
    .pdl-pr8-paper-hero { grid-template-columns:1fr; min-height:0; }
    .pdl-pr8-paper-hero__media { min-height:480px; }
    .pdl-pr8-paper-story__grid,.pdl-pr8-paper-story__grid--reverse { grid-template-columns:1fr; }
    .pdl-pr8-paper-story__grid--reverse .pdl-pr8-paper-story__media { order:2; }
}

@media (max-width:760px) {
    .pdl-pr8-shell,.pdl-pr8-paper-shell { width:min(92vw,680px); }
    .pdl-pr8-solutions,.pdl-pr8-who,.pdl-pr8-paper-story { padding:68px 0; }
    .pdl-pr8-solutions__capabilities { padding:28px 24px; border-radius:24px; }
    .pdl-pr8-who__rail { grid-template-columns:1fr; }
    .pdl-pr8-who__rail article:last-child { grid-column:auto; }
    .pdl-pr8-who__footer { flex-direction:column; align-items:flex-start; padding:26px 22px; }
    .pdl-pr8-who__footer .pdl-pr8-btn { width:100%; }
    .pdl-pr8-paper-hero__copy { padding:64px 24px 48px; }
    .pdl-pr8-paper-hero h1 { font-size:clamp(2.45rem,12vw,3.65rem); }
    .pdl-pr8-paper-hero__copy .pdl-pr8-btn { width:100%; }
    .pdl-pr8-paper-hero__media { min-height:330px; }
    .pdl-pr8-paper-story__media { min-height:340px; border-radius:22px; }
}

@media (prefers-reduced-motion:reduce) {
    .pdl-pr8-js .pdl-pr8-reveal { opacity:1!important; transform:none!important; transition:none!important; }
    .pdl-pr-phase8-active *, .pdl-pr-phase8-active *::before, .pdl-pr-phase8-active *::after { animation-duration:.001ms!important; animation-iteration-count:1!important; transition-duration:.001ms!important; scroll-behavior:auto!important; }
}


/* v10.20.1 placement safeguard: prevent an above-hero flash on 8B while the
   final Elementor DOM position is resolved. Without JS the server-side
   insertion remains visible as a graceful fallback. */
.pdl-pr8-js body.pdl-pr-phase8-active .pdl-pr8-who:not(.pdl-pr8-who--placed) {
    visibility:hidden;
}
