/* A pinned company index and a single changing portrait beside the desktop story. */
html:has(body.companies-page){scroll-padding-top:0}
.company-showcase{--company-index-height:70px;--company-stage-top:calc(var(--header-height) + var(--company-index-height) + 24px);padding-top:20px;background:#fff}
.company-index{position:sticky;top:var(--header-height);z-index:35;display:flex;gap:28px;flex-wrap:nowrap;overflow-x:auto;padding-block:18px;border-bottom:1px solid var(--line);margin-bottom:48px;background:#ffffffed;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);scrollbar-width:thin;scrollbar-color:#c5d0c8 transparent;transition:top .3s ease}
.company-index a{display:inline-flex;align-items:center;gap:9px;position:relative;padding-block:9px;font-size:14px;color:#344b40;transition:color .22s ease}
.company-index a{flex-shrink:0;white-space:nowrap}
.company-index-number{font-size:11px;color:#8b948e;font-variant-numeric:tabular-nums}
.company-index a:after{content:"";position:absolute;inset-inline:0;bottom:0;height:2px;background:var(--company-accent);transform:scaleX(0);transform-origin:center;transition:transform .22s ease}
.company-index a:hover,.company-index a:focus-visible{color:#082c21}
.company-index a:hover:after,.company-index a:focus-visible:after,.company-index a[aria-current=location]:after{transform:scaleX(1)}
.company-index a[aria-current=location]{color:#082c21}
.company-stage{display:none}
.company-story{direction:ltr}
.company-features{display:grid;gap:80px}
.company-feature{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(0,1.15fr);align-items:start;gap:clamp(34px,5vw,80px);padding-bottom:80px;border-bottom:1px solid #dce3de;scroll-margin-top:var(--company-stage-top)}
.company-feature:last-child{border-bottom:0;padding-bottom:0}
.company-feature-visual{position:relative;isolation:isolate;overflow:hidden;border-radius:var(--radius-card);background:#fafbf8;aspect-ratio:4/5;width:100%}
.company-feature-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#ffffff30,#ffffff50 45%,#ffffffb3);pointer-events:none}
.company-feature-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 44%;scale:-1 1}
.company-feature-brand{position:absolute;inset:28px 28px auto;z-index:1;display:flex;justify-content:space-between;align-items:start;gap:20px;color:#fff}
.company-feature-brand img{display:block;width:clamp(150px,16vw,220px);height:64px;object-fit:contain;object-position:left center}
[dir=rtl] .company-feature-brand img{object-position:right center}
.company-feature-brand>span{font-size:13px;font-variant-numeric:tabular-nums;border-top:1px solid #ffffff85;padding-top:10px}
.company-feature-content{padding-top:6px;min-width:0}
[dir=rtl] .company-feature-content{direction:rtl}
.company-feature-intro h2{font-size:clamp(31px,2.65vw,44px);line-height:1.12;letter-spacing:-.035em;margin:0 0 20px;color:var(--color-heading);max-width:600px}
.company-feature-intro>p{font-size:17px;line-height:1.7;color:#5a6b61;margin:0 0 24px;max-width:640px}
.company-feature .company-website{min-height:0;font-size:13px;padding:10px 16px;border-radius:var(--radius-button);gap:22px}
.company-feature .company-website-unavailable{display:inline-block;font-size:14px;color:#6e7d74;border-bottom:1px solid #c7d2cb;padding:10px 0}
.company-feature-services{margin-top:36px;border:0}
.company-feature-services>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;font-size:15px;font-weight:500;color:#007a42;cursor:default;padding:0 0 16px;border-bottom:1px solid #bdcdc3}
.company-feature-services>summary::-webkit-details-marker{display:none}
.company-service-toggle{display:none}
.company-feature-services .company-capabilities{margin:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 30px;counter-reset:capability;padding-top:24px}
.company-feature-services .company-capabilities li{position:relative;padding:0;padding-inline-start:28px;border:0;counter-increment:capability}
.company-feature-services .company-capabilities li:before{content:counter(capability,decimal-leading-zero);position:absolute;inset-inline-start:0;top:4px;font-size:10px;line-height:1.5;color:#a39264;font-variant-numeric:tabular-nums}
.company-feature-services .company-capabilities strong{font-size:16px;line-height:1.4;margin-bottom:8px;font-weight:500}
.company-feature-services .company-capabilities span{font-size:14px;line-height:1.65;color:#627169}
[dir=rtl] .company-feature-intro h2{letter-spacing:0;line-height:1.45}
[dir=rtl] .company-feature-services .company-capabilities strong{line-height:1.6}
@media(min-width:981px){
  .company-story.is-enhanced{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(0,1.15fr);gap:clamp(34px,5vw,80px);align-items:start}
  .company-story.is-enhanced .company-stage{display:block;position:sticky;top:var(--company-stage-top);align-self:start;height:min(660px,calc(100svh - var(--company-stage-top) - 26px));min-height:220px;overflow:hidden;border-radius:var(--radius-card);background:#fafbf8;transition:top .3s ease}
  .company-stage .company-stage-panel{position:absolute;inset:0;height:100%;max-height:none;aspect-ratio:auto;opacity:0;transform:none;border-radius:0;z-index:0;pointer-events:none;transition:opacity .65s ease}
  .company-stage .company-stage-panel.is-active{opacity:1;transform:none;z-index:1}
  .company-story.is-enhanced .company-features{min-width:0;gap:52px}
  .company-story.is-enhanced .company-feature{display:block;min-height:max(620px,calc(100svh - var(--company-stage-top) - 40px));padding-bottom:74px}
  .company-story.is-enhanced .company-feature:last-child{padding-bottom:0}
  .company-story.is-enhanced .company-feature>.company-feature-visual{display:none}
}
@media(min-width:1440px){.company-feature-visual{max-height:660px}}
@media(max-width:1100px) and (min-width:981px){.company-feature-services .company-capabilities{gap:22px 18px}.company-feature-services .company-capabilities li{padding-inline-start:22px}.company-feature-intro>p{font-size:16px}.company-feature-brand{inset:22px 22px auto}}
@media(max-width:980px){
  .company-showcase{padding-top:8px}
  .company-index{gap:22px;margin-bottom:36px;padding-block:10px}
  .company-index a{flex-shrink:0;font-size:13px}
  .company-features{gap:48px}
  .company-feature{grid-template-columns:1fr;gap:28px;padding-bottom:48px}
  .company-feature-visual{aspect-ratio:16/9;max-height:420px}
  .company-feature-brand img{width:210px}
  .company-feature-content{padding:0}
  .company-feature-intro h2{font-size:34px;margin-bottom:15px}
  .company-feature-intro>p{font-size:16px;line-height:1.65;margin-bottom:20px;max-width:680px}
  .company-feature-services{margin-top:26px}
  .company-feature-services>summary{cursor:pointer;min-height:54px;padding-block:15px;border-top:1px solid #d2ddd5;font-size:16px}
  .company-service-toggle{display:block;font-weight:300;font-size:26px;line-height:20px;transition:transform .22s ease}
  .company-feature-services[open] .company-service-toggle{transform:rotate(45deg)}
  .company-feature-services[open] .company-capabilities{animation:company-services-in .22s ease-out}
  .company-feature-services>summary:focus-visible{outline:2px solid #ad965e;outline-offset:4px}
}
@media(max-width:640px){
  .company-feature-visual{aspect-ratio:1/1;max-height:none;border-radius:var(--radius-image)}
  .company-feature-brand{inset:20px 20px auto}
  .company-feature-brand img{width:190px;height:58px}
  .company-feature-intro h2{font-size:30px;max-width:320px}
  .company-feature-services .company-capabilities{grid-template-columns:1fr;gap:var(--space-6);padding-top:24px}
  .company-feature-services .company-capabilities li{padding-inline-start:30px}
  .company-feature-services .company-capabilities strong{font-size:17px}
  .company-feature-services .company-capabilities span{font-size:15px}
}
@keyframes company-services-in{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}
.companies-page .company-feature-brand{inset:0;display:flex;align-items:center;justify-content:center;padding:28px;pointer-events:none}
.companies-page .company-feature-brand img{width:clamp(224.25px,23.92vw,328.9px);height:95.68px;max-width:100%;object-position:center;transform-origin:center}
.companies-page .company-feature-brand>span{position:absolute;top:28px;right:28px}
@media(max-width:980px){.companies-page .company-feature-brand img{width:313.95px}}
@media(max-width:640px){.companies-page .company-feature-brand img{width:284.05px;height:86.71px}.companies-page .company-feature-brand>span{top:20px;right:20px}}
.companies-page .company-feature-brand{color:var(--color-heading)}
.companies-page .company-feature-brand>span{border-color:#123d3166}
.companies-page .company-feature-intro>p{margin-bottom:12px}
.companies-page .company-feature-intro .company-website{margin-top:0;background:transparent;color:var(--color-action);border:.5px solid #016b3780;transition:background-color .25s ease,color .25s ease,border-color .25s ease}
.companies-page .company-feature-intro .company-website:hover,.companies-page .company-feature-intro .company-website:focus-visible{background:var(--color-action);border-color:var(--color-action);color:#fff}
.companies-page .company-website:before,.companies-page .company-website:after{display:none}
.companies-page .company-stage-panel.is-active{pointer-events:auto}
@media(max-width:640px){.companies-page .company-feature-visual{aspect-ratio:2/1}.companies-page .company-feature-brand>span{top:12px;right:14px}}
@media(max-width:380px){.companies-page .company-feature-brand img{width:234px;height:57.2px}}
@media(prefers-reduced-motion:reduce){.company-index,.company-index a,.company-index a:after,.company-service-toggle,.company-story.is-enhanced .company-stage,.company-stage .company-stage-panel{transition:none}.company-stage .company-stage-panel{transform:none}.company-feature-services[open] .company-capabilities{animation:none}}

/* Keep the pale artwork seamless during crossfades; clip only at the outer stage. */
.company-feature-visual:after{border-radius:inherit}
.company-story.is-enhanced .company-stage{isolation:isolate;clip-path:inset(0 round 12px)}
.companies-page .company-feature-heading{display:flex;direction:ltr;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:20px}
.companies-page .company-feature-heading h2{margin:0;min-width:0}
.companies-page .company-feature-heading .company-website,.companies-page .company-feature-heading .company-website-unavailable{flex-shrink:0;white-space:nowrap}
[dir=rtl] .company-feature-heading h2,[dir=rtl] .company-feature-heading .company-website{direction:rtl}
.companies-page[dir=rtl] .company-feature-heading{direction:rtl}
@media(max-width:640px){.companies-page .company-feature-heading{gap:12px;flex-wrap:wrap;margin-bottom:15px}.companies-page .company-feature-heading h2{max-width:none}.companies-page .company-feature-heading .company-website{margin-left:auto}}

/* Soften only the directory artwork; keep the centered brand marks fully opaque. */
.companies-page .company-feature-visual:after{background:rgba(255,255,255,.55)}
.companies-page .company-showcase{border-bottom:2px solid #a5b9ad}
@media(max-width:640px){.companies-page[dir=rtl] .company-feature-heading .company-website{margin-left:0;margin-right:auto}}
