/* Shared site rules. Page layout lives inline; this file holds focus states, the mobile menu and small-screen overrides. */
html{-webkit-text-size-adjust:100%}
img{max-width:100%}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid #ec3013;outline-offset:3px}
html.js [data-proof-slide]:not(.on){display:none!important}
.skip{position:absolute;left:-9999px;top:0;background:#ec3013;color:#fff;padding:12px 18px;font-weight:800;z-index:100}
.skip:focus{left:12px;top:12px}
.nav-toggle{display:none;align-items:center;justify-content:center;width:44px;height:44px;color:#000b3d;background:none;border:0;padding:0;cursor:pointer}
.nav-panel{display:none}
[data-ch-mbar]{display:none}
.nav-open .nav-panel{display:flex;flex-direction:column;position:absolute;left:0;right:0;top:100%;background:#fff;padding:8px 20px 24px;box-shadow:0 24px 48px rgba(0,11,61,.18);z-index:60}
.nav-panel a{padding:16px 0;border-bottom:1px solid #c5c8d6;color:#000b3d;font:700 19px Archivo,system-ui,sans-serif;text-decoration:none}
@media (max-width:760px){
#partner-h~div dl>div{grid-template-columns:minmax(0,1fr)!important;gap:4px!important}

/* How We Work success dimensions, phones: +/x sits on the number row so titles get the full width */
[data-dims] summary{display:block!important;position:relative}
[data-dims] summary [data-pm]{position:absolute;top:22px;right:0;width:44px;height:44px;display:flex;align-items:center;justify-content:flex-end;font-size:30px!important}

/* Home founder quote, phones: quote -> photo -> name -> line + links */
[data-fq]{display:flex!important;flex-direction:column!important;padding:72px 20px!important}
[data-fq]>[data-fq-col]{display:contents!important}
[data-fq-mark]{order:1;margin-top:24px!important}
[data-fq-quote]{order:2}
[data-fq-photo]{order:3;margin-top:40px;max-width:420px}
[data-fq-name]{order:4}
[data-fq-more]{order:5}
[data-fq-more]>p{margin-top:32px!important;font-size:19px!important}
img[src*="logo-modernist"]{filter:drop-shadow(0 1px 1px rgba(0,11,61,.55)) drop-shadow(0 0 2px rgba(0,11,61,.35))}

html,body{overflow-x:clip}
[data-dims]>details{min-width:0}
a[href*="files/PEC-"]{flex:1 1 100%!important;min-width:0}
a[href*="files/PEC-"] span{white-space:normal!important}
[data-proof-slide]>div{padding:28px 0 8px!important;gap:24px!important;border-left:0!important;border-right:0!important}
[data-proof-slide]>div+div{border-top:2px solid rgba(255,255,255,.35)!important}
[data-proof-slide] [style*="font-size:clamp(79px,10.31vw,172px)"]{font-size:64px!important}
[data-proof-slide] [style*="font-size:52px"]{font-size:21px!important;line-height:1.35!important;letter-spacing:0!important}
[data-ch-wrap]{margin:4px 0 20px!important}
[data-ch-wrap][hidden]{display:none!important}
[data-ch-mbar]{display:flex!important;justify-content:space-between;gap:16px;margin-top:20px;padding-top:16px;border-top:1px solid #c5c8d6}
[data-ch-mbar] button{font:800 16px Archivo,system-ui,sans-serif;color:#000b3d;background:none;border:0;padding:12px 0;min-height:44px;cursor:pointer;display:inline-flex;gap:8px;align-items:center}
[data-ch-mbar] button span{color:#ec3013}
[data-ch-mbar] button[hidden]{display:none}
[data-ch-wrap] [style*="padding:8px 0 8px 36px"]{padding:4px 0 4px 20px!important}
[data-stage-bar]{position:sticky;top:var(--navh,76px);z-index:5;background:#ffffff;flex-wrap:wrap!important;row-gap:8px!important;padding-top:8px!important}
[data-stage-bar]>div:first-child{gap:16px!important;flex-wrap:wrap}
[data-stage-tab]{font-size:14px!important;letter-spacing:0.04em!important;padding:10px 0!important}
[data-stage-bar] [data-stage]{width:44px!important;height:44px!important}
[style*="grid-template-columns:minmax(0,1fr) auto"]{grid-template-columns:minmax(0,1fr)!important;gap:28px!important}
[style*="font-size:clamp(31px,4.06vw,68px)"]{font-size:30px!important;text-wrap:pretty!important;line-height:1.12!important}
[style*="text-wrap:balance"]{text-wrap:pretty!important}
[style*="calc((100vw - 1680px) / 2)"]{padding-left:20px!important;padding-right:20px!important}
[style*="padding:128px max("],[style*="padding:136px max("],[style*="padding:144px max("],[style*="padding:144px 72px"],[style*="padding:96px max("]{padding-top:72px!important;padding-bottom:72px!important}
[style*="grid-template-columns:minmax(0,1fr) minmax(0,1fr)"],[style*="fr) minmax(0,"],[style*="grid-template-columns:repeat(2,"],[style*="grid-template-columns:repeat(3,"],[style*="grid-template-columns:repeat(4,"],[style*="grid-template-columns:repeat(5,"],[style*="minmax(0,1fr) minmax(280px,484px)"]{grid-template-columns:minmax(0,1fr)!important}
[style*="gap:96px"],[style*="gap:80px"],[style*="gap:88px"]{gap:40px!important}
[style*="min-height:1080px"]{min-height:0!important;height:auto!important;aspect-ratio:4/5}
[style*="min-height:760px"],[style*="min-height:680px"]{min-height:0!important}
[style*="padding-right:64px"]{padding-right:0!important}
img[src*="leaders-tell-us"]{display:none!important}
[style*="min-width:300px"],[style*="min-width:240px"],[style*="min-width:280px"]{min-width:0!important}
[style*="font-size:200px"],[style*="font-size:160px"],[style*="font-size:132px"]{font-size:96px!important}
[style*="font-size:96px"]{font-size:64px!important}
[style*="justify-content:space-between"]{flex-wrap:wrap!important;row-gap:24px}
}

/* Phone curtain: hero pins once its bottom meets the screen edge, next section slides over it */
@media (max-width:899px) and (prefers-reduced-motion:no-preference),(max-height:759px) and (prefers-reduced-motion:no-preference){
[data-curtain-hero]{position:sticky!important;top:var(--pec-mt,64px)!important;z-index:0}
[data-curtain-cover]{position:relative;z-index:1;box-shadow:0 -20px 40px rgba(0,11,61,0.25)}
}

@media (max-width:1060px){
.js .nav-page{display:none!important}
.js .nav-toggle{display:inline-flex!important}
}

/* Who We Are hero on phones: fit the whole question in one screen so the animation is seen and the curtain can pin */
@media (max-width:899px){
[data-curtain-hero]:has(h1[aria-label^="What becomes possible"]) > [data-curtain-fade] > div{padding:32px 20px 40px!important;min-height:calc(100svh - var(--pec-mt,64px))!important;justify-content:center!important}
[data-curtain-hero]:has(h1[aria-label^="What becomes possible"]) > [data-curtain-fade] > div > div:first-child{font-size:15px!important}
h1[aria-label^="What becomes possible"]{margin-top:18px!important;font-size:clamp(26px,7.2vw,34px)!important;line-height:1.14!important;letter-spacing:-0.015em!important}
h1[aria-label^="What becomes possible"] [data-wwa-next]{animation-delay:700ms!important;background-size:100% 4px;padding-bottom:3px}
}
@media (max-width:899px) and (max-height:600px){
h1[aria-label^="What becomes possible"]{font-size:24px!important}
}

/* Who We Are founder on phones: name, photo + socials, the "enough" list, bio, then credentials */
@media (max-width:899px){
section[aria-labelledby="founder-h"] > div{flex-direction:column!important;flex-wrap:nowrap!important;gap:0!important;align-items:stretch!important}
section[aria-labelledby="founder-h"] > div > div{display:contents!important}
section[aria-labelledby="founder-h"] > div > div:last-child > div:first-child{order:1;font-size:15px!important}
section[aria-labelledby="founder-h"] #founder-h{order:2;margin-top:12px!important}
section[aria-labelledby="founder-h"] > div > div:last-child > div:nth-child(3){order:3}
section[aria-labelledby="founder-h"] > div > div:first-child > img{order:4;margin-top:32px;max-width:420px}
section[aria-labelledby="founder-h"] > div > div:first-child > div{order:5}
section[aria-labelledby="founder-h"] > div > div:last-child > div:nth-child(4){order:7;margin-top:40px!important;border-top:0!important;padding-top:0!important}
section[aria-labelledby="founder-h"] > div > div:first-child > ul{order:6;margin-top:40px!important}
section[aria-labelledby="founder-h"] > div > div:last-child > div:nth-child(5){order:8}
}

/* Responsible AI principles accordion (phones, with script only) */
@media (max-width:899px){
.rai-acc div:has(> aside[aria-label="Contents"]){display:none!important}
.rai-acc main{gap:0!important;border-bottom:2px solid #000b3d}
.rai-acc main > section[id]{gap:0!important;border-top:2px solid #000b3d;scroll-margin-top:80px}
.rai-acc main > section[id] > h2{margin:0!important;font-size:inherit!important}
.rai-head{all:unset;box-sizing:border-box;width:100%;display:grid;grid-template-columns:44px minmax(0,1fr) 28px;gap:10px;align-items:center;padding:20px 0;min-height:64px;cursor:pointer;color:#000b3d;font-family:Archivo,system-ui,sans-serif}
.rai-head:focus-visible{outline:2px solid #ec3013;outline-offset:2px}
.rai-num{font-size:22px;font-weight:900;color:#ec3013;letter-spacing:-0.02em}
.rai-title{font-size:21px;font-weight:800;line-height:1.2;letter-spacing:-0.01em}
.rai-plus{font-size:28px;font-weight:700;color:#ec3013;text-align:right;transition:transform .25s ease}
.rai-open .rai-plus{transform:rotate(45deg)}
.rai-body{display:none;flex-direction:column;gap:18px;padding:0 0 32px}
.rai-open .rai-body{display:flex}
.rai-body ol li,.rai-body ul li{min-width:0}
}

/* Nav (desktop only, 1061px+): navy bar, inverse logo, white links. Scoped to the top bar (.site-nav, set in site.js). Phones/tablets keep the white bar. */
@media (min-width:1061px){
html.nav-navy nav.site-nav img{height:64px!important;width:auto!important}
html.nav-navy nav.site-nav{background:#000b3d!important;border-bottom:0!important;box-shadow:0 2px 0 #000b3d!important;position:sticky;z-index:50!important}
html.nav-navy [data-curtain-hero]{top:calc(var(--pec-ct,92px) - 2px)!important;margin-top:-2px}
html.nav-navy nav.site-nav a:not([style*="background:#ec3013"]){color:#ffffff!important}
html.nav-navy nav.site-nav a:not([style*="background:#ec3013"]):not(:has(img)){font-size:17px!important}
html.nav-navy nav.site-nav a[aria-current="page"]{border-bottom-color:#d8f107!important}
html.nav-navy nav.site-nav a:not([style*="background:#ec3013"]):hover{color:#d8f107!important}
html.nav-navy nav.site-nav .nav-toggle{color:#ffffff;border:0}
html.nav-navy nav.site-nav .nav-panel{background:#000b3d}
html.nav-navy nav.site-nav .nav-panel a{color:#ffffff!important;border-bottom-color:#3a4166}
html.nav-navy nav.site-nav + div:has(> #read-progress){height:0!important;overflow:visible}
}

/* Nav (phones/tablets, up to 1060px): navy bar, inverse logo, white Menu button, navy drop-down. Only the top bar changes; page colors untouched. */
@media (max-width:1060px){
html.nav-navy nav.site-nav{background:#000b3d!important;border-bottom:0!important;box-shadow:0 2px 0 #000b3d!important}
html.nav-navy nav.site-nav .nav-toggle{color:#ffffff;border:0}
html.nav-navy nav.site-nav .nav-panel{background:#000b3d}
html.nav-navy nav.site-nav .nav-panel a{color:#ffffff!important;border-bottom-color:#3a4166}
html.nav-navy nav.site-nav .nav-panel a[aria-current="page"]{color:#d8f107!important}
}

/* Arrow system (all screens). → = go, ↗ = leaves site / opens file, coral square = list item. */
[data-mk] .g-m{display:none}
[data-mk] .g-d{display:inline}
[data-mk="go"],[data-mk="ext"]{display:inline-block;transition:transform .2s ease}
a:hover [data-mk="go"]{transform:translateX(4px)}
a:hover [data-mk="ext"]{transform:translate(3px,-3px)}
[data-mk="list"]{display:inline-flex;align-items:flex-start;justify-content:flex-start;padding-top:.5em;line-height:0}
[data-mk="list"]::before{content:"";display:block;width:8px;height:8px;background:currentColor}

nav.site-nav .nav-toggle:hover{color:#d8f107}
@media (max-width:1060px){nav.site-nav a[style*="background:#ec3013"]{padding:10px 14px!important;font-size:15px!important}}

@media (max-width:1060px){nav.site-nav div:has(> .nav-toggle){flex-wrap:nowrap!important;gap:12px!important;flex:none}}

/* How We Think principles: once stacked (phones/tablets), the heading scrolls normally instead of pinning under the list */
@media (max-width:1060px){section[aria-labelledby="prin-h"] div[style*="position:sticky"]{position:static!important}}
