/* Approved company profile refinements. Card layout, captions and cohesion fixes are retained. */
:root{view-transition-name:none}
.refined-control-row{display:flex;align-items:center;gap:18px;margin-top:23px}
#companies .refined-control-row .company-controls{flex:1;min-width:0;margin-top:0}
#companies .refined-control-row .company-progress{min-width:16px}
.company-motion-control{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:0 2px;background:none;border:0;color:#d8e3f0;font:500 11px/1.3 var(--sans);white-space:nowrap;cursor:pointer}
.company-motion-control svg{height:13px;width:13px;fill:none;stroke:currentColor;stroke-width:1.6}
.company-motion-control:hover{color:#fff}
.company-motion-control:focus-visible{outline:2px solid #00c1f7;outline-offset:3px;border-radius:3px}
#companies.company-films-paused .film video{transform:none}
.refined-profile{width:min(1000px,calc(100vw - 48px));max-width:none;padding:0;border:0;border-radius:14px;margin:auto;max-height:calc(100dvh - 36px);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#a4b0bf #fff;background:#fff;color:#253a55;font:15px/1.65 'Segoe UI',Arial,sans-serif;box-shadow:0 24px 100px #07142766}
.refined-profile::backdrop{background:#07152ad6;backdrop-filter:blur(4px)}
.refined-profile:focus{outline:none}
.refined-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;position:sticky;top:0;z-index:5;height:54px;padding:0 20px;background:#fff;border-bottom:1px solid #e6eaf0}
.refined-toolbar button{font:500 12px/1.4 'Segoe UI',Arial,sans-serif;cursor:pointer;background:none;border:0;color:#00337f;min-height:44px}
.refined-back{display:inline-flex;align-items:center;gap:10px;padding:0 6px}
.refined-back span{font-size:20px;font-weight:400}
.refined-close{display:grid;place-items:center;width:44px;flex:none;border-radius:50%}
.refined-close:hover{background:#f0f3f7}
.refined-close svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.3}
.refined-profile button:focus-visible,.refined-profile a:focus-visible{outline:2px solid #00337f;outline-offset:3px}
.refined-hero{height:250px;position:relative;overflow:hidden;isolation:isolate;background:#10243c;color:#fff}


.refined-hero::after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,#06132766,transparent 30%,#061327c9)}
.refined-sector{position:absolute;left:42px;top:25px;right:150px;z-index:2;font:600 10px/1.5 'Segoe UI',Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase}
.refined-name{position:absolute;left:42px;right:42px;bottom:27px;z-index:2;margin:0;font:400 45px/1.12 var(--serif);letter-spacing:-.02em;color:#fff}
.refined-name:focus{outline:none}


.refined-body{padding:31px 42px 0;display:grid;grid-template-columns:170px minmax(0,1fr);gap:30px}
.refined-facts{margin:0;padding:0}
.refined-facts>div{border-bottom:1px solid #dce2e9;padding-bottom:15px;margin-bottom:15px}
.refined-facts>div:last-child{border:0;margin:0;padding:0}
.refined-facts dt{font-size:10px;line-height:1.4;letter-spacing:.08em;text-transform:uppercase;color:#64768c;margin-bottom:5px}
.refined-facts dd{font-size:15px;line-height:1.45;color:#00337f;margin:0}
.refined-context{border-left:1px solid #dce2e9;padding-left:30px}
.refined-description{font-size:16px;line-height:1.7;margin:0;color:#253a55}
.refined-person{display:flex;align-items:center;gap:12px;margin-top:20px}
.refined-person img{width:43px;height:49px;object-fit:cover;border-radius:2px;flex:none}
.refined-person .profile-portrait{position:relative;overflow:hidden;flex:none;width:48px;aspect-ratio:272/305;border-radius:2px}
.refined-person p{margin:0;color:#00337f;font-size:13px;line-height:1.4;font-weight:600}
.refined-person span{display:block;font-size:11px;font-weight:400;line-height:1.5;color:#64738a;margin-top:3px}
.refined-involvement{margin:14px 0 0;font-size:15px;line-height:1.75;color:#253a55}
.refined-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:27px 42px 0;padding:18px 0 23px;border-top:1px solid #dce2e9}
.refined-website{font-size:12px;font-weight:600;color:#00337f;line-height:1.6;text-decoration:none;border-bottom:1px solid #9aacbf;display:inline-flex;align-items:center;gap:10px;padding:3px 0}
.refined-website svg{height:12px;width:12px;fill:none;stroke:currentColor;stroke-width:1.4}
.refined-next{display:flex;align-items:center;gap:20px;background:none;border:0;padding:0;min-height:44px;color:#00337f;cursor:pointer;text-align:left}
.refined-next small{display:block;font:500 9px/1.4 'Segoe UI',Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#64768c;margin-bottom:4px}
.refined-next strong{font:400 22px/1.2 var(--serif)}
.refined-next>span{font-size:23px;transition:transform .2s}
.refined-next:hover>span{transform:translateX(3px)}
.refined-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
::view-transition-group(company-detail){animation-duration:.34s;animation-timing-function:cubic-bezier(.2,.75,.2,1)}
::view-transition-old(company-detail){display:none}
::view-transition-new(company-detail){animation:none;width:100%;height:100%;object-fit:cover}
::view-transition-image-pair(company-detail){isolation:auto}
@media(max-width:1100px){.refined-control-row{gap:12px}.company-motion-control{font-size:10px}}
@media(max-width:700px){
 .refined-profile{width:100%;max-height:100dvh;height:auto;border-radius:0;inset:0;margin:0 auto}
 .refined-toolbar{height:52px;padding:0 12px}.refined-toolbar button{font-size:11px}
 .refined-hero{height:190px}.refined-sector{left:24px;top:20px;font-size:9px;right:125px}
 .refined-name{left:24px;right:24px;bottom:22px;font-size:35px}
 
 .refined-body{display:block;padding:23px 24px 0}
 .refined-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;border-bottom:1px solid #dce2e9;padding-bottom:20px}
 .refined-facts>div{border:0;margin:0;padding:0}.refined-facts dt{font-size:9px;letter-spacing:.025em;min-height:25px;margin-bottom:6px}.refined-facts dd{font-size:13px;line-height:1.45}
 .refined-context{border:0;padding:20px 0 0}.refined-description{font-size:14px;line-height:1.7}
 .refined-person{margin-top:17px;gap:11px}.refined-person img{width:38px;height:43px}.refined-person p{font-size:12px}.refined-person span{font-size:11px}
 .refined-involvement{margin-top:13px;font-size:14px;line-height:1.7}
 .refined-footer{margin:22px 24px 0;padding:17px 0 22px;gap:20px}.refined-website{font-size:11px}
 .refined-next{gap:13px}.refined-next strong{font-size:19px}.refined-next small{font-size:8px}
}
@media(prefers-reduced-motion:reduce){.refined-profile *,.refined-profile *::before,.refined-profile *::after{animation:none!important;transition:none!important}::view-transition-group(company-detail){animation:none!important}}

/* Approved still headers and two-column involvement, October 12. */
.dlg.company-profile.refined-profile{width:min(1120px,calc(100vw - 48px));max-width:none}
.company-profile .refined-name{color:#fff;font:400 45px/1.12 var(--serif);letter-spacing:-.02em;margin:0}
.refined-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 58%;z-index:0}
#co-1 .refined-hero>img{object-position:50% 64%}
#co-2 .refined-hero>img{object-position:50% 43%}
#co-3 .refined-hero>img{object-position:50% 12%}
.profile-involvement-row{display:grid;grid-template-columns:minmax(180px,.9fr) minmax(0,1.35fr);gap:28px;align-items:start;margin-top:24px}
.profile-involvement-row .refined-person{margin:0;align-items:flex-start}
.profile-involvement-row .refined-person img{width:48px;height:55px}
.profile-involvement-row .refined-person p{padding-top:2px}
.profile-involvement-row .refined-person span{font-size:12px;line-height:1.55}
.profile-involvement-row .refined-involvement{margin:0;font-size:15px;line-height:1.75}
html:not(.js) .company-profile .refined-toolbar,html:not(.js) .company-profile .refined-next{display:none}
::view-transition-old(company-detail){display:block;animation:company-image-out .2s ease both;mix-blend-mode:normal}
::view-transition-new(company-detail){animation:company-image-in .28s ease both;mix-blend-mode:normal}
@keyframes company-image-out{to{opacity:0}}
@keyframes company-image-in{from{opacity:0}to{opacity:1}}
@media(max-width:700px){
 .dlg.company-profile.refined-profile{width:100%;max-width:100%;height:auto;max-height:100dvh;border-radius:0;margin:0 auto}
 .company-profile .refined-name{font-size:35px}
 .refined-hero{height:180px}
 #co-1 .refined-hero>img{object-position:50% 58%}
 #co-2 .refined-hero>img{object-position:50% 45%}
 #co-3 .refined-hero>img{object-position:50% 0%;transform:scale(1.05);transform-origin:center top}
 .profile-involvement-row{display:block;margin-top:20px}
 .profile-involvement-row .refined-person img{width:40px;height:46px}
 .profile-involvement-row .refined-person .profile-portrait{width:40px}
 .profile-involvement-row .refined-person p{padding-top:0}
 .profile-involvement-row .refined-person span{font-size:11px}
 .profile-involvement-row .refined-involvement{margin-top:14px;font-size:14px;line-height:1.7}
}
@media(prefers-reduced-motion:reduce){::view-transition-old(company-detail),::view-transition-new(company-detail){animation:none!important}}

/* Homepage v3 follow-up 04: paired company navigation, wrapping in both directions. */
.refined-company-nav{display:flex;align-items:center;gap:36px}
.refined-company-nav .refined-next{min-width:0}
.refined-company-nav .refined-next>span{flex:none}
.refined-previous:hover>span{transform:translateX(-3px)}
@media(max-width:700px){
 .refined-footer{flex-direction:column;align-items:stretch;gap:20px}
 .refined-footer>.refined-website{align-self:flex-start}
 .refined-company-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
 .refined-company-nav .refined-next{gap:10px}
 .refined-company-nav .refined-next:not(.refined-previous){justify-content:flex-end;text-align:right}
 .refined-company-nav .refined-next strong{font-size:18px}
 .refined-company-nav .refined-next>span{font-size:20px}
}
@media(max-width:360px){
 .refined-company-nav{gap:16px}
 .refined-company-nav .refined-next{gap:4px}
 .refined-company-nav .refined-next strong{font-size:16px}
 .refined-company-nav .refined-next>span{font-size:18px}
}

/* Homepage v3 follow-up 07: company website links sit below the involvement bio. */
.refined-involvement-block .refined-website{display:flex;width:fit-content;margin-top:12px}
.refined-footer{justify-content:flex-end}
