/* Shared layout and typography for Vambrace's enterprise service pages. */
:root{--ink:#2c3558;--accent:#cd61ff;--paper:#f5f5fa;--rule:#d9dbe6;--gutter:max(5vw,calc((100vw - 1280px)/2))}
.site-header{border-bottom:1px solid var(--rule)}
main h1,main h2{letter-spacing:-.045em;text-wrap:balance}
main h3{letter-spacing:-.025em}
main [data-block] p{line-height:1.62}
main [data-block="generic-content"] p{max-width:72ch;margin-inline:auto}
main [data-block="key-services"] h3{text-wrap:balance}
.hero .hero-copy{text-align:left;width:min(90%,1280px);margin-inline:auto;padding-inline:0}
.hero .hero-copy h1,.hero .hero-copy .hero-lead{margin-left:0;max-width:740px;text-align:left}
.hero .hero-copy .hero-actions{justify-content:flex-start}
.hero .hero-shade{background:linear-gradient(90deg,rgba(22,30,58,.94),rgba(30,38,65,.74) 48%,rgba(30,38,65,.18))}
.buyer-routes{gap:0;border-block:1px solid var(--rule)}
.buyer-routes a{background:white;border:0;border-right:1px solid var(--rule);padding:clamp(20px,3vw,44px)}
.buyer-routes a:last-child{border-right:0}
.buyer-routes a span{color:var(--ink);text-decoration-color:#9748ba}
.page-guide{display:flex;align-items:baseline;flex-wrap:wrap;gap:10px 26px;padding:18px var(--gutter);border-block:1px solid var(--rule);background:var(--paper);font-size:.92rem}
.page-guide strong,.pt-label{font-family:VambraceGeistMono,monospace;font-size:.75rem;letter-spacing:.075em;text-transform:uppercase}
.page-guide a{text-decoration:underline;text-underline-offset:4px;color:var(--ink)}
.pt-hero{color:white;background:var(--ink);padding:clamp(48px,7vw,108px) var(--gutter);display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:clamp(35px,6vw,100px)}
.pt-hero h1{font-size:clamp(46px,6.1vw,92px);line-height:1.02;margin:20px 0;color:white;font-weight:500}
.pt-hero p{max-width:47ch;font-size:clamp(17px,1.55vw,22px);line-height:1.5}
.pt-label{color:inherit}.pt-hero .pt-label{color:#e5b1ff}
.pt-action{display:inline-flex;align-items:center;gap:24px;padding:15px 20px;margin-top:22px;background:var(--accent);color:#202744;text-decoration:none;font-weight:600}
.pt-report{color:var(--ink);background:white;border-top:5px solid var(--accent);padding:clamp(22px,3vw,44px);box-shadow:10px 10px 0 #ffffff12}
.pt-report h2{font-size:clamp(25px,2.5vw,36px);line-height:1.12;margin:18px 0}
.pt-report dl,.pt-report dd{margin:0}.pt-report dt{border-top:1px solid var(--rule);margin-top:16px;padding-top:12px;font-weight:600}.pt-report dd{margin-top:4px;line-height:1.45}
.pt-section{padding:clamp(52px,7vw,100px) var(--gutter);display:grid;grid-template-columns:1fr 1.6fr;gap:clamp(20px,5vw,80px);color:var(--ink)}
.pt-section h2{font-size:clamp(32px,4vw,56px);line-height:1.08;margin:0}
.pt-row{display:grid;grid-template-columns:1fr auto;gap:5px 22px;border-top:1px solid var(--rule);padding:18px 0;text-decoration:none;color:var(--ink)}
.pt-row b{font-size:clamp(20px,2vw,28px);font-weight:500}.pt-row small{font-size:1rem;grid-column:1;line-height:1.5}.pt-row span{grid-column:2;grid-row:1/3;align-self:center}
.pt-row:hover b{text-decoration:underline;text-underline-offset:4px}
.pt-process{background:var(--paper)}.pt-process h3{margin:0;font-size:1.35rem}.pt-process p{margin:6px 0 22px;line-height:1.55}
@media(max-width:760px){.pt-hero,.pt-section{grid-template-columns:1fr}.buyer-routes a{border:0;border-bottom:1px solid var(--rule)}.page-guide{gap:10px 18px}.hero .hero-copy h1{font-size:clamp(36px,9vw,58px)}}
