/* Estilos exclusivos da página Perfil (escopo .profile-page) */

.profile-page{--pf-navy:#0b294e;--pf-deep:#06162f;--pf-blue:#399ec4;--pf-sky:#5fc2ec;--pf-line:#ded4c4;--pf-ink:#0d1f3c}

/* ---------- 1. HERO ---------- */
.profile-page .pf-hero{min-height:720px}
.profile-page .pf-hero .cr-hero__media{min-height:720px}
.profile-page .pf-hero .cr-hero__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 14%}
.profile-page .pf-hero .cr-hero__text h1{margin-top:22px}
.profile-page .pf-reg{margin:26px 0 0 !important;font-size:13px !important;letter-spacing:.14em;font-weight:700;color:var(--pf-ink) !important;text-transform:uppercase}
.profile-page .pf-reg i{font-style:normal;color:var(--pf-blue);margin:0 8px}
.profile-page .pf-degree{margin:10px 0 0 !important;font-size:17px !important;font-weight:500;color:#243a55 !important}
.profile-page .pf-tagline{margin:30px 0 0 !important;padding:6px 0 6px 20px;border-left:3px solid var(--pf-blue);font-size:16px !important;line-height:1.6 !important;color:#2f3f52 !important;max-width:400px !important}
.profile-page .pf-actions{margin-top:38px}

/* ---------- containers ---------- */
.profile-page .pf-wrap{width:min(1240px,calc(100% - 96px));margin:0 auto}

/* ---------- 2. TRAJETÓRIA ---------- */
.profile-page .pf-story-section{padding:110px 0 96px}
.profile-page .pf-story{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;align-items:start}
.profile-page .pf-story__title .eyebrow{margin:0 0 16px}
.profile-page .pf-story__title h2{color:var(--pf-ink);margin:0}
.profile-page .pf-story__copy p{margin:0;font-size:17px;line-height:1.95;color:#3d4a5a}

.profile-page .pf-timeline{list-style:none;margin:84px 0 0;padding:0;position:relative;display:grid;grid-template-columns:repeat(5,1fr)}
.profile-page .pf-timeline::before,.profile-page .pf-timeline::after{content:"";position:absolute;left:0;right:0;top:7px;height:1px}
.profile-page .pf-timeline::before{background:#c9d6df}
.profile-page .pf-timeline::after{background:linear-gradient(90deg,var(--pf-blue),var(--pf-sky));height:2px;top:6px;transform-origin:left;transform:scaleX(1)}
.pf-js .profile-page .pf-timeline::after{transform:scaleX(0);transition:transform 2.2s cubic-bezier(.22,.8,.25,1) .3s}
.pf-js .profile-page .pf-timeline.visible::after{transform:scaleX(1)}
.profile-page .pf-step{position:relative;padding-right:26px}
.profile-page .pf-dot{display:block;position:relative;z-index:2;width:15px;height:15px;border-radius:50%;background:#f7f3ed;border:2px solid var(--pf-blue);margin-bottom:26px;transition:transform .3s ease,background .3s ease}
.profile-page .pf-step:hover .pf-dot{transform:scale(1.3);background:var(--pf-blue)}
.profile-page .pf-step--now .pf-dot{background:var(--pf-blue);box-shadow:0 0 0 7px rgba(57,158,196,.22)}
.profile-page .pf-step small{display:block;font-size:11px;letter-spacing:.2em;font-weight:700;color:var(--pf-blue);margin-bottom:10px}
.profile-page .pf-step strong{display:block;font-size:18px;line-height:1.35;font-weight:600;color:var(--pf-ink)}
.profile-page .pf-step--now strong{color:#1d6f9c}

/* ---------- 3. NÚMEROS ---------- */
.profile-page .pf-numbers{position:relative;overflow:hidden;background:linear-gradient(160deg,#071c38 0%,#0b294e 55%,#08203f 100%);color:#f7f3ed;padding:120px 0 128px}
.profile-page .pf-numbers::before{content:"";position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(rgba(95,194,236,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(95,194,236,.09) 1px,transparent 1px);
  background-size:58px 58px;
  -webkit-mask-image:radial-gradient(ellipse 75% 85% at 78% 30%,#000 0%,transparent 72%);mask-image:radial-gradient(ellipse 75% 85% at 78% 30%,#000 0%,transparent 72%)}
.profile-page .pf-numbers::after{content:"";position:absolute;width:640px;height:640px;right:-160px;top:-220px;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,rgba(57,158,196,.28) 0%,rgba(57,158,196,0) 68%)}
.profile-page .pf-numbers__inner{position:relative;z-index:2;width:min(1240px,calc(100% - 96px));margin:0 auto}
.profile-page .pf-numbers .eyebrow{color:var(--pf-blue);margin:0 0 16px}
.profile-page .pf-numbers h2{color:#fff;margin:0}
.profile-page .pf-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:60px}
.profile-page .pf-stat{position:relative;padding:40px 34px 38px;border:1px solid rgba(123,187,224,.28);background:linear-gradient(165deg,rgba(20,64,114,.55),rgba(7,28,56,.35));backdrop-filter:blur(2px);transition:transform .35s ease,border-color .35s ease}
.profile-page .pf-stat:hover{transform:translateY(-6px);border-color:rgba(95,194,236,.7)}
.profile-page .pf-stat::before{content:"";position:absolute;left:-1px;top:-1px;width:46px;height:3px;background:var(--pf-sky)}
.profile-page .pf-stat__pre{display:block;min-height:16px;font-size:11px;letter-spacing:.22em;text-transform:uppercase;font-weight:700;color:#7bbbe0}
.profile-page .pf-stat__line{display:flex;align-items:baseline;gap:14px;margin-top:16px;flex-wrap:wrap}
html body.profile-page .pf-stat__num:not(#_){font-family:"Exo",sans-serif !important;font-weight:700;font-size:clamp(60px,6.4vw,92px);line-height:1;color:#fff;position:relative;display:inline-block;letter-spacing:-.02em;text-shadow:0 0 38px rgba(95,194,236,.35)}
html body.profile-page .pf-stat__num *:not(#_){font-family:"Exo",sans-serif !important}
.profile-page .pf-stat__ghost{visibility:hidden}
.profile-page .pf-stat__live{position:absolute;left:0;top:0;white-space:nowrap}
html body.profile-page .pf-stat__unit:not(#_){font-family:"Exo",sans-serif !important;font-size:clamp(20px,2vw,28px);font-weight:600;color:var(--pf-sky)}
.profile-page .pf-stat__bar{display:block;height:2px;margin:30px 0 22px;background:rgba(123,187,224,.2);overflow:hidden}
.profile-page .pf-stat__bar i{display:block;height:100%;background:linear-gradient(90deg,var(--pf-blue),#9fe3ff);transform-origin:left}
.pf-js .profile-page .pf-stat__bar i{transform:scaleX(0);transition:transform 2.4s cubic-bezier(.16,1,.3,1)}
.pf-js .profile-page .pf-stat.is-counting .pf-stat__bar i{transform:scaleX(1)}
.profile-page .pf-stat p{margin:0;font-size:15.5px;line-height:1.65;color:#c8d2de;max-width:300px}

/* ---------- 4. TÉCNICAS ---------- */
.profile-page .pf-tech-band{min-height:680px;grid-template-columns:1fr 1fr}
.profile-page .pf-tech-band img{min-height:680px;object-position:center 30%}
.profile-page .pf-tech-band .photo-band__copy{padding:96px max(40px,6vw)}
.profile-page .pf-tech-band .photo-band__copy .eyebrow{margin:0 0 16px}
.profile-page .pf-tech-band .photo-band__copy h2{color:#fff}
.profile-page .pf-tech-band .photo-band__copy > p:not(.eyebrow){margin:24px 0 0;font-size:16px;color:#9fb4c8;letter-spacing:.02em}
.profile-page .pf-tech{list-style:none;margin:22px 0 0;padding:0;max-width:560px}
.profile-page .pf-tech li{display:flex;gap:20px;align-items:center;padding:19px 0;border-top:1px solid rgba(255,255,255,.14);font-size:17px;font-weight:500;color:#fff;line-height:1.4;transition:padding-left .3s ease}
.profile-page .pf-tech li:last-child{border-bottom:1px solid rgba(255,255,255,.14)}
.profile-page .pf-tech li:hover{padding-left:10px}
.profile-page .pf-tech li span{flex:0 0 44px;height:44px;border:1px solid var(--pf-blue);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;letter-spacing:.06em;color:var(--pf-blue);transition:background .3s ease,color .3s ease}
.profile-page .pf-tech li:hover span{background:var(--pf-blue);color:#041731}

/* ---------- 5. ATUAÇÃO INSTITUCIONAL ---------- */
.profile-page .pf-inst-section{padding:116px 0 112px}
.profile-page .pf-inst{display:grid;grid-template-columns:340px 1fr;gap:clamp(48px,7vw,104px);align-items:center}
.profile-page .pf-inst__photo{margin:0;position:relative;justify-self:center}
.profile-page .pf-inst__photo::before{content:"";position:absolute;inset:22px -22px -22px 22px;border:1px solid var(--pf-blue);z-index:0}
.profile-page .pf-inst__photo img{position:relative;z-index:1;display:block;width:100%;max-width:335px;height:auto;box-shadow:0 30px 60px rgba(11,41,78,.2)}
.profile-page .pf-inst__body .eyebrow{margin:0 0 16px}
.profile-page .pf-inst__body h2{color:var(--pf-ink);margin:0 0 40px}
.profile-page .pf-inst__list{list-style:none;margin:0;padding:0;border-top:1px solid #d9d0c3}
.profile-page .pf-inst__list li{display:grid;grid-template-columns:150px 1fr;gap:24px;align-items:baseline;padding:26px 0;border-bottom:1px solid #d9d0c3;transition:padding-left .3s ease}
.profile-page .pf-inst__list li:hover{padding-left:12px}
.profile-page .pf-inst__list small{font-size:11px;letter-spacing:.2em;font-weight:700;color:var(--pf-blue)}
.profile-page .pf-inst__list p{margin:0;font-size:17px;line-height:1.6;font-weight:500;color:#142b47}

/* ---------- 6. ENCERRAMENTO ---------- */
.profile-page .pf-closure{display:grid;grid-template-columns:1fr 300px;gap:clamp(36px,6vw,90px);align-items:center;margin-top:0}
.profile-page .pf-closure .eyebrow{margin:0 0 16px}
.profile-page .pf-closure__photo{margin:0;justify-self:end}
.profile-page .pf-closure__photo img{display:block;width:100%;max-width:300px;height:auto;border:1px solid rgba(123,187,224,.4);box-shadow:0 26px 60px rgba(0,0,0,.35)}

/* ---------- responsivo ---------- */
@media(max-width:1100px){
  .profile-page .pf-timeline{grid-template-columns:repeat(3,1fr);row-gap:44px}
  .profile-page .pf-timeline::before,.profile-page .pf-timeline::after{display:none}
  .profile-page .pf-step{border-top:1px solid #c9d6df;padding-top:20px}
  .profile-page .pf-step .pf-dot{position:absolute;top:-8px;left:0;margin:0}
  .profile-page .pf-step small{margin-top:10px}
}
@media(max-width:960px){
  .profile-page .pf-hero,.profile-page .pf-hero .cr-hero__media{min-height:0}
  .profile-page .pf-hero .cr-hero__media{height:460px}
  .profile-page .pf-story{grid-template-columns:1fr;gap:30px}
  .profile-page .pf-stats{grid-template-columns:1fr}
  .profile-page .pf-stat__pre--empty{display:none}
  .profile-page .pf-stat p{max-width:none}
  .profile-page .pf-tech-band{grid-template-columns:1fr;min-height:0}
  .profile-page .pf-tech-band img{min-height:360px;max-height:520px;height:auto;object-position:center 25%}
  .profile-page .pf-tech-band .photo-band__copy{padding:60px 24px}
  .profile-page .pf-inst{grid-template-columns:1fr;gap:56px}
  .profile-page .pf-closure{grid-template-columns:1fr}
  .profile-page .pf-closure__photo{justify-self:start}
}
@media(max-width:780px){
  .profile-page .pf-wrap,.profile-page .pf-numbers__inner{width:calc(100% - 40px)}
  .profile-page .pf-story-section{padding:68px 0 64px}
  .profile-page .pf-numbers{padding:76px 0 84px}
  .profile-page .pf-inst-section{padding:72px 0}
  .profile-page .pf-timeline{grid-template-columns:1fr;row-gap:0;margin-top:48px;padding-left:34px}
  .profile-page .pf-timeline::before,.profile-page .pf-timeline::after{display:block;left:7px;right:auto;top:0;bottom:0;width:1px;height:auto}
  .profile-page .pf-timeline::after{width:2px;left:6.5px;transform-origin:top;transform:scaleY(1)}
  .pf-js .profile-page .pf-timeline::after{transform:scaleY(0)}
  .pf-js .profile-page .pf-timeline.visible::after{transform:scaleY(1)}
  .profile-page .pf-step{border-top:0;padding:0 0 34px}
  .profile-page .pf-step:last-child{padding-bottom:0}
  .profile-page .pf-step .pf-dot{left:-34px;top:2px}
  .profile-page .pf-step small{margin-top:0}
  .profile-page .pf-stat{padding:32px 26px 30px}
  .profile-page .pf-inst__list li{grid-template-columns:1fr;gap:8px;padding:22px 0}
  .profile-page .pf-inst__list li:hover{padding-left:0}
  .profile-page .pf-tagline{max-width:none !important}
  .profile-page .pf-actions .btn{width:100%;justify-content:space-between}
  .profile-page .pf-closure__photo img{max-width:240px}
}
@media(prefers-reduced-motion:reduce){
  .pf-js .profile-page .pf-timeline::after,.pf-js .profile-page .pf-stat__bar i{transition:none;transform:none}
}
