/* Company pages: About, Partners, Careers */
.co-hero{background:var(--paper);padding:clamp(52px,5.5vw,84px) 0 clamp(28px,3vw,44px)}
.co-hero h1{margin-top:26px;font-size:clamp(40px,5.6vw,78px);max-width:15ch}
.co-hero .r p{font-size:var(--text-md);line-height:1.6;color:var(--pe-neutral-800)}
.co-hero .btns{margin-top:32px}

/* numbered principle list */
.biglist{margin-top:clamp(44px,5vw,68px);border-top:1px solid var(--rule)}
.biglist .item{display:grid;grid-template-columns:64px 1fr;gap:clamp(16px,3vw,40px);padding:26px 0;border-bottom:1px solid var(--rule);align-items:baseline}
.biglist .bl-num{font-size:var(--text-xs);font-weight:600;letter-spacing:.12em;color:var(--pe-blue-600);font-variant-numeric:tabular-nums}
.biglist .bl-t{font-size:clamp(20px,2.1vw,28px);font-weight:600;letter-spacing:-.028em;line-height:1.15}
.biglist .bl-d{margin-top:10px;font-size:var(--text-sm);line-height:1.6;color:var(--pe-neutral-500);max-width:62ch}
@media(max-width:640px){.biglist .item{grid-template-columns:1fr;gap:8px}}

/* stat bar on ink */
.statbar{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule-d);border:1px solid var(--rule-d);border-radius:var(--radius-lg);overflow:hidden;margin-top:clamp(40px,4.5vw,60px)}
.statbar .stat{background:var(--ink);background-image:radial-gradient(150% 120% at 82% 0%,rgba(28,48,96,.55) 0%,rgba(20,32,62,.28) 34%,rgba(27,27,28,0) 70%);padding:32px 28px 34px}
.statbar .s-n{font-size:clamp(44px,5.2vw,76px);line-height:.9;letter-spacing:-.045em;font-weight:500;color:var(--pe-blue-200);font-variant-numeric:tabular-nums}
.statbar .s-n .u{color:rgba(255,255,255,.4);font-weight:400}
.statbar .s-l{margin-top:18px;font-size:var(--text-sm);line-height:1.5;color:rgba(255,255,255,.72);max-width:28ch}
.statbar .s-locs{margin-top:12px;font-size:var(--text-xs);line-height:1.7;color:rgba(255,255,255,.45)}
@media(max-width:860px){.statbar{grid-template-columns:1fr}}

/* leadership */
.team{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:clamp(44px,5vw,68px)}
.tmember image-slot{display:block;width:100%;height:auto;aspect-ratio:1/1;border-radius:var(--radius-lg);overflow:hidden;background:var(--paper-3);margin-bottom:16px}
.tmember .t-name{font-size:var(--text-md);font-weight:600;letter-spacing:-.02em;line-height:1.15}
.tmember .t-role{margin-top:6px;font-size:var(--text-xs);letter-spacing:.13em;text-transform:uppercase;font-weight:600;color:var(--pe-blue-600)}
@media(max-width:860px){.team{grid-template-columns:repeat(2,1fr);gap:20px}}
@media(max-width:440px){.team{grid-template-columns:1fr}}

/* culture */
.culture{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:clamp(44px,5vw,68px)}
.cult image-slot{display:block;width:100%;height:auto;aspect-ratio:4/3;border-radius:var(--radius-lg);overflow:hidden;background:var(--paper-3);margin-bottom:14px}
.cult .c-cap{font-size:var(--text-md);font-weight:600;letter-spacing:-.02em;display:flex;align-items:baseline;gap:10px}
.cult .c-cap s{text-decoration:none;color:var(--pe-blue-600);font-weight:400}
@media(max-width:860px){.culture{grid-template-columns:repeat(2,1fr);gap:20px}}
@media(max-width:480px){.culture{grid-template-columns:1fr}}

/* perks */
.perks{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--rule-d);border:1px solid var(--rule-d);border-radius:var(--radius-lg);overflow:hidden;margin-top:clamp(44px,5vw,68px)}
.perk{background:var(--ink);background-image:radial-gradient(150% 120% at 82% 0%,rgba(28,48,96,.5) 0%,rgba(20,32,62,.24) 34%,rgba(27,27,28,0) 70%);padding:26px 24px 28px;position:relative}
.perk .pk-n{font-size:var(--text-xs);font-weight:600;letter-spacing:.12em;color:var(--pe-blue-200);font-variant-numeric:tabular-nums}
.perk h4{margin-top:16px;font-size:var(--text-md);font-weight:600;letter-spacing:-.02em;color:#fff;line-height:1.2}
.perk p{margin-top:10px;font-size:var(--text-sm);line-height:1.5;color:rgba(255,255,255,.62)}
@media(max-width:1100px){.perks{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.perks{grid-template-columns:1fr}}

/* offices */
.offices{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:clamp(44px,5vw,68px)}
.office .of-k{font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:rgba(255,255,255,.45)}
.office .of-k b{color:var(--pe-blue-200)}
.office h4{margin-top:12px;font-size:clamp(19px,1.9vw,24px);font-weight:600;letter-spacing:-.025em;color:#fff;line-height:1.1}
.office image-slot{display:block;margin-top:16px;width:100%;height:auto;aspect-ratio:4/5;border-radius:var(--radius-lg);overflow:hidden;background:#232325}
@media(max-width:860px){.offices{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.offices{grid-template-columns:1fr}}

/* employee voices */
.voices{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:clamp(44px,5vw,68px)}
.voice{margin:0;border:1px solid var(--rule-d);border-radius:var(--radius-xl);padding:30px;background:rgba(255,255,255,.03);display:flex;flex-direction:column;gap:24px}
.voice blockquote{margin:0;font-family:var(--font-editorial);font-style:italic;font-size:clamp(19px,1.9vw,23px);line-height:1.35;color:#fff;letter-spacing:-.01em;flex:1;text-wrap:pretty}
.voice figcaption{display:flex;align-items:center;gap:14px}
.voice image-slot{display:block;width:48px;height:48px;border-radius:50%;overflow:hidden;background:#232325;flex:none}
.voice figcaption>span{display:flex;flex-direction:column;gap:3px}
.voice .v-name{font-size:var(--text-sm);font-weight:600;color:#fff;letter-spacing:-.01em}
.voice .v-role{font-size:var(--text-xs);letter-spacing:.13em;text-transform:uppercase;font-weight:600;color:var(--pe-blue-200)}
@media(max-width:920px){.voices{grid-template-columns:1fr}}

/* safety notice */
.safety{margin-top:clamp(40px,4.5vw,60px);border:1px solid var(--rule);border-left:2px solid var(--pe-blue-600);border-radius:var(--radius-lg);padding:28px 32px;background:var(--paper-2)}
.safety .sf-k{font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--pe-blue-600)}
.safety p{margin-top:12px;font-size:var(--text-sm);line-height:1.6;color:var(--pe-neutral-500);max-width:88ch}
.safety strong{color:var(--pe-neutral-900);font-weight:600}

/* join band */
.join-band{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,56px);align-items:center;margin-top:clamp(44px,5vw,68px)}
.join-band image-slot{display:block;width:100%;height:auto;aspect-ratio:4/3;border-radius:var(--radius-xl);overflow:hidden;background:var(--paper-3)}
.join-copy h3{margin-top:16px;font-size:clamp(26px,3vw,40px)}
.join-copy p{margin-top:16px;font-size:var(--text-base);line-height:1.6;color:var(--pe-neutral-500);max-width:44ch}
.join-copy .btn{margin-top:26px}
@media(max-width:860px){.join-band{grid-template-columns:1fr}}

/* partner cards */
.pgroup{margin-top:clamp(44px,5vw,64px)}
.pg-label{display:flex;align-items:center;gap:12px;font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--pe-neutral-800);padding-bottom:16px;border-bottom:1px solid var(--rule)}
.pg-label i{display:block;width:24px;height:2px;background:var(--pe-blue-600);flex:none}
.pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);border-top:none;border-radius:0 0 var(--radius-lg) var(--radius-lg);overflow:hidden}
.pcard{background:#fff;padding:26px 24px 28px;display:flex;flex-direction:column}
.pcard image-slot{display:block;width:132px;height:36px;margin-bottom:18px;flex:none}
.pcard .p-name{font-size:var(--text-md);font-weight:600;letter-spacing:-.02em;line-height:1.15}
.pcard .p-desc{margin-top:10px;font-size:var(--text-sm);line-height:1.55;color:var(--pe-neutral-500);text-wrap:pretty}
@media(max-width:920px){.pgrid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.pgrid{grid-template-columns:1fr}}

/* spotlight */
.spotlight{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule-d);border:1px solid var(--rule-d);border-radius:var(--radius-lg);overflow:hidden;margin-top:clamp(44px,5vw,68px)}
.spot{background:var(--ink);background-image:radial-gradient(150% 120% at 82% 0%,rgba(28,48,96,.5) 0%,rgba(20,32,62,.24) 34%,rgba(27,27,28,0) 70%);padding:30px 28px 32px;display:flex;flex-direction:column;text-decoration:none;transition:background var(--dur-2)}
.spot:hover{background:#232325}
.spot .sp-k{font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--pe-blue-200)}
.spot h4{margin-top:16px;font-size:clamp(19px,1.9vw,24px);font-weight:600;letter-spacing:-.025em;color:#fff;line-height:1.15}
.spot p{margin-top:14px;font-size:var(--text-sm);line-height:1.55;color:rgba(255,255,255,.62);flex:1}
.spot .more{margin-top:24px;display:flex;align-items:center;gap:7px;font-size:var(--text-sm);font-weight:600;color:#fff}
.spot .more svg{width:15px;height:15px;transition:transform var(--dur-1)}
.spot:hover .more svg{transform:translateX(3px)}
@media(max-width:920px){.spotlight{grid-template-columns:1fr}}

/* closing CTA band */
.ctaband{background:var(--paper-2);border-top:1px solid var(--rule);padding:clamp(56px,6vw,88px) 0}
.ctaband-in{display:flex;flex-wrap:wrap;gap:28px;align-items:end;justify-content:space-between}
.ctaband h3{margin-top:20px;font-size:clamp(28px,3.4vw,48px);max-width:18ch}
.ctaband p{margin-top:16px;font-size:var(--text-base);line-height:1.6;color:var(--pe-neutral-500);max-width:52ch}

/* Company sub-nav uses PE blue, not Boost purple */
.subnav.pe .brand{color:var(--pe-blue-700)}
.subnav.pe .brand i{background:var(--pe-blue-600)}
.subnav.pe a:not(.brand):hover,.subnav.pe a[aria-current]{color:var(--pe-blue-700)}

/* Contact */
.contact-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(36px,5vw,72px);align-items:start;margin-top:clamp(40px,4.5vw,60px)}
.ca-h{margin-top:22px;font-size:clamp(30px,3.4vw,48px);max-width:14ch}
.ca-lede{margin-top:18px;font-size:var(--text-base);line-height:1.6;color:var(--pe-neutral-500);max-width:40ch}
.ca-detail{margin-top:26px;padding-top:20px;border-top:1px solid var(--rule)}
.ca-detail .cad-k{font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--pe-neutral-500)}
.ca-detail .cad-v{display:inline-block;margin-top:9px;font-size:var(--text-md);font-weight:600;letter-spacing:-.02em;color:var(--pe-neutral-900);font-variant-numeric:tabular-nums;text-decoration:none}
.ca-detail a.cad-v:hover{color:var(--pe-blue-600)}
.ca-detail .cad-v.plain{font-weight:500;font-size:var(--text-sm);line-height:1.55;color:var(--pe-neutral-800)}
.contact-form-wrap{background:var(--paper-2);border:1px solid var(--rule);border-radius:var(--radius-xl);padding:clamp(26px,3.4vw,40px);box-shadow:var(--shadow-sm)}
.contact-form{display:flex;flex-direction:column;gap:20px}
.cf-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.cf-field{display:flex;flex-direction:column;gap:9px}
.cf-field label{font-size:var(--text-xs);letter-spacing:.13em;text-transform:uppercase;font-weight:600;color:var(--pe-neutral-800)}
.cf-field label .req{color:var(--pe-blue-600)}
.cf-field input,.cf-field textarea{font-family:inherit;font-size:var(--text-sm);color:var(--pe-neutral-900);background:#fff;border:1px solid var(--pe-neutral-300);border-radius:var(--radius-md);padding:13px 15px;width:100%;box-sizing:border-box;resize:vertical;line-height:1.5;transition:border-color var(--dur-2),box-shadow var(--dur-2)}
.cf-field input::placeholder,.cf-field textarea::placeholder{color:var(--pe-neutral-400)}
.cf-field input:focus,.cf-field textarea:focus{outline:none;border-color:var(--pe-blue-600);box-shadow:var(--shadow-focus)}
.cf-submit{align-self:flex-start;margin-top:4px}
@media(max-width:980px){.contact-grid{grid-template-columns:1fr}}
@media(max-width:560px){.cf-row{grid-template-columns:1fr}}
/* HubSpot embed, matched to the form styling above */
.hs-form-field{margin-bottom:20px}
.hs-form-field>label{display:block;font-size:var(--text-xs);letter-spacing:.13em;text-transform:uppercase;font-weight:600;color:var(--pe-neutral-800);margin-bottom:9px}
.hs-form-field>label .hs-form-required{color:var(--pe-blue-600);margin-left:2px}
.hs-input:not([type=checkbox]):not([type=radio]){font-family:inherit;font-size:var(--text-sm);color:var(--pe-neutral-900);background:#fff;border:1px solid var(--pe-neutral-300);border-radius:var(--radius-md);padding:13px 15px;width:100%!important;box-sizing:border-box;line-height:1.5;transition:border-color var(--dur-2),box-shadow var(--dur-2)}
textarea.hs-input{resize:vertical;min-height:120px}
.hs-input::placeholder{color:var(--pe-neutral-400)}
.hs-input:focus{outline:none;border-color:var(--pe-blue-600);box-shadow:var(--shadow-focus)}
.hs-form-field .input{margin-right:0!important}
.hs-button{font-family:inherit;font-size:var(--text-sm);font-weight:600;letter-spacing:-.01em;background:var(--pe-blue-600);color:#fff;border:none;border-radius:var(--radius-md);padding:15px 26px;min-height:48px;cursor:pointer;transition:background var(--dur-2)}
.hs-button:hover{background:var(--pe-blue-700)}
.hs-button:active{transform:translateY(1px)}
.hs-error-msg,.hs-error-msgs label{color:var(--pe-danger,#D9480F);font-size:var(--text-xs);margin-top:6px}
.submitted-message{font-size:var(--text-base);line-height:1.6;color:var(--pe-neutral-800)}

/* office address cards (contact page) */
.locs{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule-d);border:1px solid var(--rule-d);border-radius:var(--radius-lg);overflow:hidden;margin-top:clamp(40px,4.5vw,60px)}
.loc{background:var(--ink);background-image:radial-gradient(150% 120% at 82% 0%,rgba(28,48,96,.5) 0%,rgba(20,32,62,.24) 34%,rgba(27,27,28,0) 70%);padding:30px 28px 32px;display:flex;flex-direction:column}
.loc.hq{background-image:radial-gradient(150% 120% at 82% 0%,rgba(38,66,132,.7) 0%,rgba(24,40,78,.4) 40%,rgba(27,27,28,0) 76%)}
.loc .of-k{font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:rgba(255,255,255,.45)}
.loc .of-k b{color:var(--pe-blue-200)}
.loc h4{margin-top:14px;font-size:clamp(21px,2.2vw,28px);font-weight:600;letter-spacing:-.025em;color:#fff;line-height:1.05}
.loc .of-addr{margin-top:14px;font-size:var(--text-sm);line-height:1.55;color:rgba(255,255,255,.62)}
.loc .of-meta{margin-top:auto;padding-top:20px;font-size:var(--text-xs);line-height:1.9;color:rgba(255,255,255,.5);font-variant-numeric:tabular-nums}
.loc .of-meta a{color:rgba(255,255,255,.5);text-decoration:none}
.loc .of-meta a:hover{color:#fff}
@media(max-width:860px){.locs{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.locs{grid-template-columns:1fr}}
