/* Services and coverage adapted from the supplied section proposal. */
.pv-services,.pv-coverage{--gold-soft:#d3b889;--body:#625f54;--line-dark:rgba(212,197,164,.18);--on-dark:#c3c1b7;--on-dark-muted:#a9a798}
.pv-services h4,.pv-coverage h4{margin:0}
.pv-services h2,.pv-services h3,.pv-coverage h2{text-wrap:balance}
.pv-service-title{display:block}
.pv-wrap{padding-left:max(var(--gutter),env(safe-area-inset-left,0px));padding-right:max(var(--gutter),env(safe-area-inset-right,0px));max-width:1616px;margin:0 auto}
.pv-eyebrow{font-size:10px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;line-height:1.7}
.pv-rule{display:inline-block;width:30px;height:1px;background:var(--gold);margin-right:16px;vertical-align:middle}

/* ========== SERVICES ========== */
.pv-services{background:var(--cream)}
.pv-services>.pv-wrap{padding-block:88px 92px}
.pv-head{display:grid;grid-template-columns:1fr minmax(0,1.05fr);gap:6%;align-items:end;padding-bottom:44px}
.pv-head .pv-eyebrow{color:var(--gold-dark);margin-bottom:22px}
.pv-head h2{font-size:clamp(44px,4.6vw,70px);line-height:1.04;letter-spacing:-.03em}
.pv-head h2 em{color:var(--gold-dark)}
.pv-head p{font-size:14px;color:var(--body);line-height:1.85;max-width:470px}

.pv-audiences{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.pv-aud{padding:26px 28px 28px 0;min-width:0}
.pv-aud+.pv-aud{padding-left:28px;border-left:1px solid var(--line)}
.pv-aud .pv-eyebrow{color:var(--gold-dark);font-size:9px}
.pv-aud h3{font-size:28px;line-height:1.15;margin-top:8px}
.pv-aud p{font-size:13px;color:var(--body);margin-top:8px;line-height:1.75}

.pv-practice{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:64px}
.pv-pillar{min-width:0}
.pv-pillar-head{padding-bottom:20px;border-bottom:1px solid var(--ink)}
.pv-pillar-head h3{font-size:clamp(38px,3.4vw,52px);line-height:1;letter-spacing:-.02em}
.pv-pillar-head h3 em{color:var(--gold-dark)}
.pv-pillar-head p{font-size:12px;color:var(--muted);margin-top:10px}
.pv-svc{border-bottom:1px solid var(--line)}
.pv-svc summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:1fr 23px;gap:14px;align-items:start;padding:22px 0 20px}
.pv-svc summary::-webkit-details-marker{display:none}
.pv-svc .pv-service-title{font-family:var(--serif);font-weight:400;font-size:26px;line-height:1.15;letter-spacing:-.01em;transition:color .3s}
.pv-svc .pv-short{display:block;font-size:13px;color:var(--body);line-height:1.75;margin-top:8px}
.pv-toggle{width:23px;height:23px;position:relative;color:var(--gold-dark);margin-top:6px}
.pv-toggle::before,.pv-toggle::after{content:"";position:absolute;top:11px;left:5px;width:13px;height:1px;background:currentColor;transition:transform .3s}
.pv-toggle::after{transform:rotate(90deg)}
.pv-svc[open] .pv-toggle::after{transform:rotate(0)}
.pv-svc summary:hover .pv-service-title,.pv-svc[open] .pv-service-title{color:var(--gold-dark)}
.pv-svc ul{list-style:none;margin:0;padding:0 0 22px;font-size:12px;line-height:2;color:#5b5648}
.pv-svc li{position:relative;padding-left:20px}
.pv-svc li::before{content:"—";position:absolute;left:0;color:var(--gold-dark)}

.pv-method{margin-top:76px;background:var(--ink);color:var(--cream);display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,2fr);gap:0}
.pv-method-intro{padding:40px 36px;border-right:1px solid var(--line-dark)}
.pv-method-intro .pv-eyebrow{color:var(--gold)}
.pv-method-intro h3{font-size:36px;line-height:1.08;margin-top:16px;letter-spacing:-.02em}
.pv-method-intro h3 em{color:var(--gold-soft)}
.pv-method-intro p{font-size:13px;color:var(--on-dark);margin-top:16px;line-height:1.8}
.pv-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.pv-step{padding:40px 30px;min-width:0;position:relative}
.pv-step+.pv-step{border-left:1px solid var(--line-dark)}
.pv-step-n{font-size:11px;color:var(--gold);font-variant-numeric:tabular-nums;letter-spacing:.08em}
.pv-step h4{font-family:var(--serif);font-weight:400;font-size:30px;margin-top:14px;line-height:1.1}
.pv-step .pv-promise{font-size:12px;color:var(--gold-soft);margin-top:6px}
.pv-step p:last-child{font-size:13px;color:var(--on-dark);margin-top:14px;line-height:1.8}
.pv-step:not(:last-child)::after{content:"→";position:absolute;right:-9px;top:40px;color:var(--gold);font-size:15px;background:var(--ink);padding:2px 0;z-index:1}

/* ========== COVERAGE ========== */
.pv-coverage{background:radial-gradient(ellipse at 70% 40%,#2a2b24,var(--ink) 70%);color:var(--cream);position:relative;overflow:hidden}
.pv-coverage>.pv-wrap{padding-block:96px 96px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:7%;align-items:center}
.pv-coverage .pv-eyebrow{color:var(--gold);margin-bottom:24px}
.pv-coverage h2{font-size:clamp(42px,4.4vw,66px);line-height:1.05;letter-spacing:-.03em}
.pv-coverage h2 em{color:var(--gold-soft)}
.pv-cov-lead{font-size:14px;color:var(--on-dark);line-height:1.85;margin-top:24px;max-width:460px}
.pv-regions{margin-top:38px;border-top:1px solid var(--line-dark)}
.pv-region{display:grid;grid-template-columns:120px 1fr;gap:18px;padding:16px 0;border-bottom:1px solid var(--line-dark);align-items:baseline}
.pv-region .pv-eyebrow{margin:0;color:var(--on-dark-muted);font-size:9px}
.pv-region-list{display:flex;flex-wrap:wrap;gap:6px 26px}
.pv-region-list span{font-family:var(--serif);font-size:24px;line-height:1.2;display:inline-flex;align-items:center;gap:10px}
.pv-region-list i{display:inline-block;width:6px;height:6px;border-radius:50%;flex-shrink:0}
.pv-dot-team{background:var(--gold)}
.pv-dot-camp{border:1px solid var(--gold);background:transparent}
.pv-legend{display:flex;gap:26px;flex-wrap:wrap;font-size:10px;color:var(--on-dark-muted);letter-spacing:.04em;margin-top:18px}
.pv-legend span{display:inline-flex;align-items:center;gap:9px}
.pv-legend i{display:inline-block;width:6px;height:6px;border-radius:50%}
.pv-langs{font-size:11px;color:var(--on-dark-muted);margin-top:14px;letter-spacing:.03em}
.pv-langs b{color:var(--on-dark);font-weight:500}
.pv-map{position:relative;width:100%;max-width:100%;aspect-ratio:1.15/1;border:1px solid var(--line-dark)}
.pv-map svg{width:100%;height:100%;display:block}
.pv-map-cap{position:absolute;left:18px;right:18px;bottom:14px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--on-dark-muted)}
.pv-map-top{position:absolute;left:18px;right:18px;top:14px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}


/* A static world view, with a readable regional crop on small screens. */
.pv-coverage>.pv-wrap{display:block}
.pv-coverage-heading{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:end;margin-bottom:42px}
.pv-cov-lead{margin:0;max-width:500px}
.pv-map{margin:0;aspect-ratio:auto;border:0;border-block:1px solid var(--line-dark);padding:18px 0 20px}
.pv-map-top{position:static;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.16em;color:var(--gold)}
.pv-map picture,.pv-map img{display:block;width:100%}
.pv-map img{height:auto}
.pv-map figcaption{font-size:11px;letter-spacing:.04em;color:var(--on-dark-muted)}
.pv-regions{display:grid;grid-template-columns:1.2fr 1.2fr 1fr .9fr .9fr;margin-top:30px;border:0;gap:28px}
.pv-region{display:block;padding:0;border:0}
.pv-region .pv-eyebrow{margin-bottom:12px;font-size:10px}
.pv-region-list{display:grid;gap:9px}
.pv-region-list span{font-size:25px}
.pv-legend{margin-top:32px;font-size:12px}
.pv-langs{font-size:12px}
.pv-svc summary:focus-visible{outline:2px solid var(--gold-dark);outline-offset:5px}
.pv-svc ul{font-size:13px;line-height:1.8}
.pv-svc li+li{margin-top:6px}
.pv-method-intro{padding:34px 28px}
.pv-step{padding:34px 24px}
.pv-method-intro h3{font-size:34px}
@media(min-width:1600px){.pv-coverage-heading{gap:12%}}
@media(max-width:1100px){
  .pv-method{grid-template-columns:1fr}
  .pv-method-intro{border-right:0;border-bottom:1px solid var(--line-dark);display:grid;grid-template-columns:1fr 1fr;gap:12px 40px;align-items:center}
  .pv-method-intro .pv-eyebrow{grid-column:1/-1;margin:0}
  .pv-method-intro h3,.pv-method-intro p{margin:0}
  .pv-practice{gap:26px}
  .pv-regions{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
}
@media(max-width:760px){
  .pv-head,.pv-coverage-heading{grid-template-columns:1fr;gap:22px}
  .pv-audiences{grid-template-columns:1fr}
  .pv-aud,.pv-aud+.pv-aud{padding:20px 0;border-left:0}
  .pv-aud+.pv-aud{border-top:1px solid var(--line)}
  .pv-practice{grid-template-columns:1fr;gap:40px;margin-top:44px}
  .pv-pillar-head{display:flex;align-items:center;justify-content:space-between;gap:20px}
  .pv-pillar-head p{margin:0;max-width:155px;text-align:right}
  .pv-method{margin-top:48px}
  .pv-method-intro,.pv-steps{display:block}
  .pv-method-intro h3,.pv-method-intro p{margin-top:16px}
  .pv-step+.pv-step{border-left:0;border-top:1px solid var(--line-dark)}
  .pv-step:not(:last-child)::after{content:"↓";right:auto;left:24px;top:auto;bottom:-13px;padding:0 6px}
  .pv-method-intro,.pv-step{padding:28px 24px}
  .pv-services>.pv-wrap,.pv-coverage>.pv-wrap{padding-block:60px 64px}
  .pv-regions{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 22px}
  .pv-region-list span{font-size:23px}
  .pv-map{margin-top:30px}
  .pv-coverage-heading{margin-bottom:0}
  .pv-langs{margin-top:18px;line-height:1.8}
}
@media(prefers-reduced-motion:reduce){.pv-svc *,.pv-svc *::before,.pv-svc *::after{transition:none!important}}
