/* Doctor Promotion — visual experience 8.2. Public pages only. */
:root{--vx-ink:#173743;--vx-gold:#ad8a4c;--vx-line:#dce4df;--vx-shadow:0 22px 60px #17374312}
.vx-art{display:block;width:100%;height:auto;max-width:100%;object-fit:contain;border-radius:22px}
.vx-hub-art{grid-column:2;grid-row:1/5;align-self:center;min-width:0}.pf-hub:has(.vx-hub-art){display:grid;grid-template-columns:1fr 1fr;column-gap:5%;align-items:start;padding-block:64px}.pf-hub:has(.vx-hub-art)>h1{font-size:clamp(38px,4.5vw,66px);max-width:12ch}.pf-hub:has(.vx-hub-art)>.lead{font-size:17px;line-height:1.8}.pf-hub:has(.vx-hub-art)>:not(.vx-hub-art){grid-column:1}
.pf-page,.sp-page,.ap-page{color:var(--vx-ink)}.pf-hero-art,.sp-directory-image{border-radius:25px;box-shadow:var(--vx-shadow);overflow:hidden}.pf-hero-art>.vx-art{aspect-ratio:1200/850}.pf-hero-art{background:#e5ece6}.pf-service-body{gap:5%}.pf-service-body .prose{font-size:16px;line-height:1.9}.pf-scope{border-radius:20px;box-shadow:var(--vx-shadow);border:1px solid var(--vx-line)}
.vx-explainer{display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:center;padding-block:55px 70px}.vx-explainer h2,.vx-section-heading h2,.vx-approach-explorer h2{font:clamp(31px,3.5vw,48px)/1.12 Georgia,serif;letter-spacing:-.035em;margin:12px 0 20px}.vx-explainer p,.vx-section-heading>p,.vx-approach-explorer>p{font-size:16px;line-height:1.8;max-width:700px;color:#49616b}.vx-explainer-art{position:sticky;top:110px}.vx-details details{border-bottom:1px solid var(--vx-line)}.vx-details summary{display:flex;align-items:center;gap:16px;cursor:pointer;list-style:none;padding:20px 0;font-weight:600;font-size:16px}.vx-details summary::-webkit-details-marker{display:none}.vx-number{font-size:12px;color:var(--vx-gold);border:1px solid #d7cdb9;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;flex-shrink:0}.vx-plus{margin-left:auto;font-size:25px;font-weight:400}.vx-details details[open] .vx-plus{transform:rotate(45deg)}.vx-details details>div{padding:0 10px 24px 48px;line-height:1.8;font-size:15px;color:#49616b}
.vx-paths{padding-block:25px 65px}.vx-section-heading{max-width:780px;margin-bottom:34px}.vx-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.vx-path-card{min-width:0;border:1px solid var(--vx-line);border-radius:23px;background:#fff;box-shadow:0 8px 30px #17374308;overflow:hidden;transition:transform .2s,box-shadow .2s}.vx-path-card>a{display:flex;flex-direction:column;height:100%;text-decoration:none!important;color:var(--vx-ink)!important}.vx-path-card .vx-art{border-radius:0}.vx-card-copy{display:flex;flex-direction:column;align-items:start;flex:1;padding:27px}.vx-card-copy h3{font:29px/1.15 Georgia,serif;letter-spacing:-.025em;margin:10px 0 14px}.vx-card-copy p,.vx-card-copy li{font-size:15px;line-height:1.8;color:#49616b}.vx-card-copy ul{padding-left:18px;margin:5px 0 20px}.vx-action{display:flex;justify-content:space-between;gap:18px;align-items:center;width:100%;border-top:1px solid var(--vx-line);padding-top:20px;margin-top:auto;font-size:14px;font-weight:600}.vx-comparison{margin-top:50px;border-radius:22px;background:#edf1ec;padding:35px}.vx-comparison h3{font:30px Georgia,serif}.vx-table-scroll{overflow-x:auto}.vx-comparison table{width:100%;border-collapse:collapse;font-size:15px}.vx-comparison td,.vx-comparison th{text-align:left;vertical-align:top;padding:18px 14px;border-bottom:1px solid #cfd9d1;line-height:1.6}.vx-comparison thead th{background:#173743;color:white}.vx-comparison tbody th{width:28%;font-weight:600}.vx-specialty-intro{grid-column:1/-1;width:100%}.vx-specialty-intro>h3{font:36px/1.2 Georgia,serif}.vx-specialty-intro>p{font-size:16px;line-height:1.8;max-width:760px;margin-bottom:25px}
.vx-approach-explorer{padding-block:25px 60px}.vx-stage-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:32px}.vx-stage{border:1px solid var(--vx-line);border-radius:20px;overflow:hidden;background:white;box-shadow:0 8px 30px #17374308;align-self:start}.vx-stage summary{list-style:none;cursor:pointer}.vx-stage summary::-webkit-details-marker{display:none}.vx-stage .vx-art{border-radius:0}.vx-stage summary>span{display:flex;justify-content:space-between;gap:20px;padding:23px;font:24px/1.2 Georgia,serif}.vx-stage summary b{font:24px Arial,sans-serif;color:var(--vx-gold)}.vx-stage[open] summary b{transform:rotate(45deg)}.vx-stage>div{padding:0 23px 25px;font-size:15px;line-height:1.8}.vx-stage>div>a{display:inline-block;font-weight:600;padding-block:8px}
.pf-service-card{border-radius:22px!important;box-shadow:0 8px 25px #17374309}.pf-card-art{border-radius:21px 21px 0 0}.pf-card-copy{padding:27px!important}.pf-card-copy h3{font-size:28px!important}.pf-card-intro{font-size:15px!important;line-height:1.75!important}.pf-process>li{border-radius:18px;box-shadow:0 9px 20px #17374308;padding:25px!important}.pf-process>li>span{display:flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:16px;background:#ffffffa8;box-shadow:0 8px 18px #17374312}.pf-process>li>span svg{width:30px;height:30px}.pf-process h3{font-size:25px}.pf-process p{font-size:15px;line-height:1.75}
.ap-page .ap-copy,.ap-page .ap-note,.ap-page article p,.ap-page .ap-process-grid p,.ap-page .ap-budget-list p,.ap-page .ap-approval p,.ap-page .ap-responsibilities li,.ap-page .ap-faqs p{font-size:15px!important;line-height:1.8}.ap-page .ap-hero-intro>p{font-size:17px;line-height:1.8}.ap-discovery-map>article,.ap-plan-paper,.ap-measurement-layers article{border-radius:18px;box-shadow:var(--vx-shadow)}.ap-purpose-visual{border-radius:20px;box-shadow:inset 0 1px 0 #fff,0 15px 35px #17374312;transform:perspective(900px) rotateX(3deg)}.ap-plan-paper{box-shadow:10px 14px 0 #d5dfd0,22px 30px 45px #17374318}.ap-process-grid{gap:18px;border:0}.ap-process-grid>li{border:1px solid #a7c39b44;border-radius:20px;background:#ffffff07;box-shadow:0 10px 20px #0000000a}.ap-hero-photo{border-radius:25px;overflow:hidden}.ap-final{border-radius:24px}.ap-communication-cards article{padding:24px;border:1px solid #d4dfd1;border-radius:18px;background:#fff}.sp-card{border-radius:22px;box-shadow:var(--vx-shadow);overflow:hidden}.sp-card .vx-art{border-radius:0}.sp-card-copy p{font-size:15px;line-height:1.8}.sp-filters input,.pf-filters input,.sp-filters select,.pf-filters select{min-height:48px}.vx-path-card a:focus-visible,.vx-stage summary:focus-visible,.vx-details summary:focus-visible,.vx-stage a:focus-visible{outline:3px solid #9f7437;outline-offset:-4px}.vx-details summary:focus-visible{outline-offset:3px}
@media(hover:hover) and (pointer:fine){.vx-path-card:hover{transform:translateY(-6px);box-shadow:0 24px 50px #17374318}.vx-stage summary:hover>span{background:#f0f3ec}.vx-details summary:hover{color:#8b652b}}
@media(max-width:1000px){.vx-card-grid,.vx-stage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vx-card-grid>article:last-child{grid-column:1/-1;max-width:650px;justify-self:center;width:100%}.pf-hub:has(.vx-hub-art){column-gap:3%}.vx-card-copy{padding:23px}.vx-explainer{gap:30px}.ap-page .ap-discovery-map p{font-size:14px!important}}
@media(max-width:700px){.pf-hub:has(.vx-hub-art){display:block;padding-block:35px}.vx-hub-art{margin-top:30px}.pf-hub:has(.vx-hub-art)>h1{max-width:18ch}.vx-explainer{grid-template-columns:1fr;padding-block:25px 45px}.vx-explainer-art{position:static}.vx-card-grid,.vx-stage-grid{grid-template-columns:1fr}.vx-card-grid>article:last-child{grid-column:auto;max-width:none}.vx-card-copy h3{font-size:28px}.vx-comparison{padding:20px;margin-top:30px}.vx-comparison td,.vx-comparison th{padding:13px 9px;font-size:14px}.vx-comparison tbody th{width:34%}.vx-stage summary>span{font-size:25px}.vx-approach-explorer{padding-bottom:35px}.ap-plan-paper{box-shadow:6px 8px 0 #d5dfd0,12px 18px 25px #17374312}.vx-details details>div{padding-left:0}.pf-card-copy{padding:23px!important}}
@media(prefers-reduced-motion:reduce){.vx-path-card,.vx-stage *,.vx-details *{transition:none!important;animation:none!important;scroll-behavior:auto!important}.vx-path-card:hover{transform:none}}
.in-hub-hero:has(.vx-journal-art){display:grid;grid-template-columns:1fr 1fr;gap:18px 5%;align-items:center}.in-hub-hero>.eyebrow{grid-column:1}.in-hub-hero>div:not(.vx-journal-art){display:block}.vx-journal-art{grid-column:2;grid-row:1/4}.in-hub-hero:has(.vx-journal-art) h1{font-size:clamp(38px,4.4vw,65px)}.in-hub-hero:has(.vx-journal-art) p{font-size:16px;line-height:1.8}
@media(max-width:700px){.in-hub-hero:has(.vx-journal-art){display:block}.vx-journal-art{margin-top:28px}}
