:root{padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);color-scheme:light}
body{margin:0}
img{max-width:100%}
[hidden]{display:none!important}

/* Layout: site em abas. Início com os dados essenciais e quem somos; cada assunto em sua própria página, com título grande e subtítulo menor. Cores do logo: azul e grafite. */
:root{
  --bg:#ffffff; --fg:#12232a; --muted:#56656b; --text:#2b3a40; --line:#e6ebed; --soft:#f1f4f5;
  --brand:#0a9de0; --brand-ink:#12232a; --on-brand:#ffffff; --brand-soft:#e6f5fc;
  --font:"Avenir Next","Avenir","Nunito Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --maxw:1120px; --ease:cubic-bezier(.2,.7,.1,1);
  --grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#0b1316;--fg:#edf2f3;--muted:#9aa8ad; --text:#cdd6d9;--line:#1c282c;--soft:#141e22;--brand:#3fb5ec;--brand-ink:#edf2f3;--on-brand:#0b1316;--brand-soft:#0f2a36;color-scheme:dark}}
:root[data-theme="dark"]{--bg:#0b1316;--fg:#edf2f3;--muted:#9aa8ad; --text:#cdd6d9;--line:#1c282c;--soft:#141e22;--brand:#3fb5ec;--brand-ink:#edf2f3;--on-brand:#0b1316;--brand-soft:#0f2a36;color-scheme:dark}

*{box-sizing:border-box}
body{transition:background-color .4s,color .4s;background:var(--bg);color:var(--fg);font-family:var(--font);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:20;background:var(--bg)}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit}
h1,h2,h3,p,figure{margin:0}
h1,h2{font-weight:400;letter-spacing:-.03em;line-height:1.04;text-wrap:balance}
.wrap{max-width:var(--maxw);margin-inline:auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.label{font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--brand)}
:focus-visible{outline:2px solid var(--brand);outline-offset:4px;border-radius:2px}

/* Cabeçalho */
header{position:sticky;top:env(safe-area-inset-top,0px);z-index:15;background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid transparent;transition:border-color .3s}
header.scrolled{border-bottom-color:var(--line)}
header .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;height:84px}
.logo{display:flex;align-items:center;color:var(--fg);flex:none}
.logo svg{height:46px;width:auto;display:block}
.hdr-actions{display:flex;align-items:center;gap:10px}
.pray-top{background:var(--brand);color:var(--on-brand);font-weight:600;font-size:.9rem;padding:9px 18px;border-radius:999px;white-space:nowrap}
.menu-btn{display:none;border:1px solid var(--line);background:none;border-radius:999px;padding:8px 18px;font-size:.9rem;font-weight:600;cursor:pointer}
/* Menu: no computador fica aberto numa segunda linha do cabeçalho; em telas menores vira o botão "Menu" */
header .wrap{flex-wrap:wrap;height:auto;padding-top:14px}
nav.tabs{order:3;flex-basis:100%;display:flex;justify-content:space-between;gap:4px;margin-top:10px;border-top:1px solid var(--line)}
nav.tabs a{position:relative;font-size:.88rem;color:var(--muted);padding:12px 0 13px;white-space:nowrap;transition:color .25s}
nav.tabs a:hover{color:var(--fg)}
nav.tabs a[aria-current="page"]{color:var(--fg)}
nav.tabs a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--brand)}
@media (max-width:1000px){
  header .wrap{flex-wrap:nowrap;height:80px;padding-top:0}
  .menu-btn{display:block}
  nav.tabs{position:fixed;left:0;right:0;top:calc(80px + env(safe-area-inset-top,0px));margin:0;background:var(--bg);display:grid;grid-template-columns:1fr 1fr;column-gap:40px;padding:8px max(20px,env(safe-area-inset-right,0px)) 32px max(20px,env(safe-area-inset-left,0px));border-top:0;border-bottom:1px solid var(--line);box-shadow:0 24px 40px -32px rgba(0,0,0,.35);transform:translateY(-8px);opacity:0;pointer-events:none;transition:opacity .25s,transform .3s var(--ease)}
  nav.tabs.open{opacity:1;transform:none;pointer-events:auto}
  nav.tabs a{font-size:1.15rem;color:var(--fg);padding:15px 0;border-bottom:1px solid var(--line)}
  nav.tabs a[aria-current="page"]{color:var(--brand)}
  nav.tabs a[aria-current="page"]::after{display:none}
}
@media (max-width:640px){
  header .wrap{height:72px}
  .logo svg{height:38px}
  nav.tabs{top:calc(72px + env(safe-area-inset-top,0px));grid-template-columns:1fr;padding-bottom:24px;max-height:calc(100dvh - 72px);overflow:auto}
  .pray-top{padding:8px 14px;font-size:.85rem}
  .menu-btn{padding:7px 14px;font-size:.85rem}
}

/* Páginas */
.view{display:none}
.view.active{display:block;animation:viewIn .7s var(--ease) both}
@keyframes viewIn{from{opacity:.0;transform:translateY(18px)}to{opacity:1;transform:none}}
.page-head{padding-block:88px 56px;display:grid;gap:22px}
.page-head h1{font-size:clamp(2.8rem,6.5vw,5rem)}
.page-head .sub{font-size:clamp(1.25rem,2.2vw,1.6rem);font-weight:400;line-height:1.4;color:var(--muted);max-width:36ch;text-wrap:balance}
@media (max-width:640px){.page-head{padding-block:52px 36px}}
section.block{padding-block:96px}
@media (max-width:640px){section.block{padding-block:64px}}

/* Fotos P&B com granulado */
.photo{position:relative;overflow:hidden;background:var(--soft);max-width:100%}
.photo img{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(1) contrast(1.1) brightness(.97);transition:transform 1.4s var(--ease)}
.photo::after{content:"";position:absolute;inset:-60%;background-image:var(--grain);background-size:140px;opacity:.42;mix-blend-mode:overlay;pointer-events:none;animation:grain 1s steps(6) infinite}
.photo::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse at center,transparent 55%,rgba(0,0,0,.18) 100%)}
@keyframes grain{0%{transform:translate(0,0)}20%{transform:translate(-4%,3%)}40%{transform:translate(3%,-5%)}60%{transform:translate(-6%,-2%)}80%{transform:translate(5%,4%)}100%{transform:translate(0,0)}}
.photo.wide{aspect-ratio:2/1}
.photo.land{aspect-ratio:3/2}
.photo.port{aspect-ratio:4/5}
.photo.fill{height:100%}
@media (max-width:640px){.photo.wide{aspect-ratio:4/3}.photo.fill{height:auto;aspect-ratio:4/5}}

/* Movimento ao rolar: só deslocamento, o conteúdo nunca fica escondido */
.js [data-reveal]{transform:translateY(30px);transition:transform 1.1s var(--ease)}
.js [data-reveal].in{transform:none}
.js .photo[data-reveal] img{transform:scale(1.1)}
.js .photo[data-reveal].in img{transform:none}

/* Início · abertura */
.hero{padding-block:72px 48px}
.hero-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:56px;align-items:end}
.hero h1{font-size:clamp(1.9rem,3.4vw,2.9rem);line-height:1.15;max-width:20ch}
.hero h1 b{font-weight:600}
.hero h1 .w{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.06em}
.hero h1 .w > span{display:inline-block;animation:rise 1s var(--ease) both;animation-delay:calc(var(--i) * 40ms + 100ms)}
@keyframes rise{from{transform:translateY(105%)}to{transform:none}}
.sunday{display:grid;gap:20px;padding-left:32px;border-left:2px solid var(--brand);animation:fadeIn .9s ease both .7s}
@keyframes fadeIn{from{opacity:.0}to{opacity:1}}
.sunday .times{display:flex;gap:36px;font-variant-numeric:tabular-nums}
.sunday .times b{display:block;font-size:clamp(2rem,3.4vw,2.7rem);font-weight:400;letter-spacing:-.03em;line-height:1}
.sunday .times small{color:var(--muted);font-size:.85rem}
.sunday p{color:var(--muted);font-size:.95rem}
.sunday p strong{color:var(--fg);font-weight:600}
.go{display:inline-flex;align-items:center;gap:10px;font-weight:600;font-size:.95rem;color:var(--brand);justify-self:start;transition:gap .3s var(--ease)}
.go:hover{gap:16px}
.go svg{width:16px;height:16px}
.hero-photo{height:min(64vh,600px);min-height:300px}
.hero-photo img{transform:scale(1.12);transition:none;will-change:transform}
@media (max-width:860px){.hero-grid{grid-template-columns:1fr;gap:36px}.sunday{padding-left:20px}.hero-photo{height:auto;aspect-ratio:4/3;min-height:0}}

/* Início · quem somos */
.who-head{display:grid;margin-bottom:56px}
.who-head h2{font-size:clamp(2.2rem,4.6vw,3.6rem)}
.mission{font-size:clamp(1.6rem,3.6vw,2.8rem);font-weight:400;letter-spacing:-.02em;line-height:1.2;max-width:24ch;text-wrap:balance}
.mission b{font-weight:600;color:var(--brand)}
@media (max-width:640px){.who-head{margin-bottom:36px}}

.ticker{overflow:hidden;border-block:1px solid var(--line);padding-block:26px;margin-top:96px;user-select:none}
.ticker .track{display:flex;gap:56px;width:max-content;animation:slide 40s linear infinite}
.ticker span{font-size:clamp(2.4rem,6.5vw,5rem);font-weight:400;letter-spacing:-.03em;line-height:1;white-space:nowrap;color:transparent;-webkit-text-stroke:1px var(--fg)}
.ticker span:nth-child(odd){color:var(--fg);-webkit-text-stroke:0}
@keyframes slide{to{transform:translateX(-50%)}}
.fund-wrap{padding-top:120px}
@media (max-width:640px){.fund-wrap{padding-top:72px}}
.fund-title{display:grid;gap:28px}
.fund-title h2{font-size:clamp(2.2rem,4.6vw,3.6rem)}
.fund-title p{color:var(--text);font-size:clamp(1.08rem,1.6vw,1.22rem);line-height:1.75;max-width:64ch}
.fund{margin-top:56px;border-top:1px solid var(--line);counter-reset:f}
.fund div{display:grid;grid-template-columns:1fr 2fr;gap:40px;padding-block:36px;border-bottom:1px solid var(--line);counter-increment:f}
.fund h4{margin:0;font-size:clamp(1.3rem,2vw,1.6rem);font-weight:400;letter-spacing:-.02em;line-height:1.15}
.fund h4::before{content:"0" counter(f);display:block;margin-bottom:10px;font-size:.8rem;font-weight:700;letter-spacing:.14em;color:var(--brand)}
.fund p{color:var(--text);font-size:1.05rem;line-height:1.75;max-width:62ch}
.fund small{display:block;margin-top:10px;color:var(--muted);font-size:.75rem;font-weight:700;letter-spacing:.08em}
@media (max-width:640px){.fund div{grid-template-columns:1fr;gap:14px;padding-block:28px}}

.letter-grid{display:grid;grid-template-columns:5fr 7fr;gap:80px;align-items:start}
.letter-grid .photo{position:sticky;top:110px}
.letter p{font-size:1.1rem;line-height:1.8;color:var(--text);max-width:60ch}
.letter p + p{margin-top:1.1em}
.letter strong{font-weight:600}
.letter .open{font-size:clamp(1.5rem,2.4vw,2rem);line-height:1.25;letter-spacing:-.015em}
.sign{margin-top:40px;padding-top:24px;border-top:1px solid var(--line);display:grid;gap:4px}
.sign strong{font-weight:600;font-size:1.05rem}
.sign span{color:var(--muted);font-size:.92rem;max-width:52ch}
@media (max-width:860px){.letter-grid{grid-template-columns:1fr;gap:40px}.letter-grid .photo{position:static;max-width:380px}}

.gallery{display:grid;grid-template-columns:1.35fr 1fr;gap:14px}
.gallery .stack{display:grid;gap:14px}
.gallery .photo.fill img{position:absolute;inset:0}
@media (max-width:640px){.gallery{grid-template-columns:1fr}}

.shortcuts{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}
.shortcuts a{display:grid;gap:6px;padding:36px 28px 36px 0;border-bottom:1px solid var(--line);transition:padding .35s var(--ease)}
.shortcuts a + a{padding-left:28px;border-left:1px solid var(--line)}
.shortcuts a strong{font-size:clamp(1.3rem,2vw,1.6rem);font-weight:400;letter-spacing:-.02em;display:flex;align-items:center;justify-content:space-between;gap:12px}
.shortcuts a strong svg{width:22px;height:22px;color:var(--brand);transition:transform .35s var(--ease)}
.shortcuts a:hover strong svg{transform:translateX(6px)}
.shortcuts a span{color:var(--muted);font-size:.93rem}
@media (max-width:980px){.shortcuts{grid-template-columns:1fr 1fr}.shortcuts a:nth-child(3){padding-left:0;border-left:0}}
@media (max-width:560px){.shortcuts{grid-template-columns:1fr}.shortcuts a,.shortcuts a + a{padding:26px 0;border-left:0}}

/* Liderança */
.team{display:grid;grid-template-columns:repeat(5,1fr);gap:20px}
.person{display:grid;gap:12px;align-content:start;min-width:0}
.person .photo{aspect-ratio:4/5}
.person h2{font-size:1.15rem;font-weight:600;letter-spacing:-.01em;line-height:1.25}
.person .area{font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--brand)}
.person p{color:var(--muted);font-size:.88rem;line-height:1.5}
.person:hover .photo img{transform:scale(1.04)}
@media (max-width:1000px){.team{grid-template-columns:repeat(3,1fr);row-gap:44px}}
@media (max-width:640px){.team{grid-template-columns:repeat(2,1fr);gap:32px 14px}}
.more{margin-top:72px;border-top:1px solid var(--line)}
.more .row{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:24px;padding-block:24px;border-bottom:1px solid var(--line);align-items:baseline}
.more .row strong{font-weight:600}
.more .row .area{font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--brand)}
.more .row p{color:var(--muted);font-size:.93rem}
@media (max-width:700px){.more .row{grid-template-columns:1fr;gap:4px}}

/* Agenda */
.rows{border-top:1px solid var(--line)}
.row-a{display:grid;grid-template-columns:1fr 2fr;gap:32px;padding-block:26px;border-bottom:1px solid var(--line)}
.row-a .day{font-size:1.2rem;font-weight:400}
.row-a .what{display:grid;gap:8px}
.row-a .what div{display:flex;gap:22px;align-items:baseline}
.row-a time{font-variant-numeric:tabular-nums;font-weight:600;min-width:3.8em;color:var(--brand)}
.row-a small{display:block;color:var(--muted);font-size:.88rem}
.agenda-label{margin-bottom:18px}
#eventos{margin-top:72px}
@media (max-width:640px){.row-a{grid-template-columns:1fr;gap:8px}}

/* GCs */
.gc-band{background:var(--brand);color:var(--on-brand);margin-top:16px}
.gc-band .wrap{padding-block:80px;display:grid;grid-template-columns:1.4fr 1fr;gap:48px;align-items:center}
.gc-band h2{font-size:clamp(2rem,4.4vw,3.4rem);font-weight:400}
.gc-band p{opacity:.85;max-width:44ch;margin-top:14px}
.cta{display:inline-flex;align-items:center;gap:14px;padding:16px 28px;border-radius:999px;background:var(--on-brand);color:var(--brand-ink);font-weight:600;justify-self:start;transition:gap .35s var(--ease)}
.cta:hover{gap:22px}
.cta svg{width:18px;height:18px}
.cta.solid{background:var(--brand);color:var(--on-brand)}
.steps3{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.steps3 div{display:grid;gap:8px;padding-top:20px;border-top:1px solid var(--line)}
.steps3 h3{font-size:1.15rem;font-weight:600}
.steps3 p{color:var(--muted);font-size:.95rem}
@media (max-width:780px){.gc-band .wrap{grid-template-columns:1fr;padding-block:56px}.steps3{grid-template-columns:1fr;gap:24px}}

/* Ore por mim · Contribua */
.two{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start}
.give{display:grid;grid-template-columns:5fr 7fr;gap:64px;align-items:start}
.give-info{display:grid;gap:48px}
.give-info p:not(.label){color:var(--muted)}
@media (max-width:780px){.give{grid-template-columns:1fr;gap:40px}.give .photo{order:2;max-width:420px}}
.two p{color:var(--muted);max-width:44ch}
@media (max-width:780px){.two{grid-template-columns:1fr;gap:40px}}
.pix-card{display:grid;gap:16px;padding:32px;background:var(--brand-soft);border-radius:4px}
.pix-card code{font-family:inherit;font-size:clamp(1.5rem,3vw,2rem);font-weight:600;font-variant-numeric:tabular-nums;user-select:all;letter-spacing:-.01em;overflow-wrap:anywhere}
.copy{justify-self:start;background:var(--brand);color:var(--on-brand);border:0;border-radius:999px;padding:11px 22px;font-weight:600;font-size:.92rem;cursor:pointer}
.banks{border-top:1px solid var(--line)}
.banks div{display:grid;grid-template-columns:1fr auto auto;gap:24px;padding-block:18px;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}
.banks div span{color:var(--muted)}
@media (max-width:520px){.banks div{grid-template-columns:1fr;gap:2px}}

/* Documentos */
.doc{display:grid;grid-template-columns:1fr auto;gap:4px 24px;align-items:baseline;padding-block:28px;border-bottom:1px solid var(--line)}
.doc:first-child{border-top:1px solid var(--line)}
.doc strong{font-size:clamp(1.3rem,2.4vw,1.7rem);font-weight:400;letter-spacing:-.015em}
.doc small{grid-column:1;color:var(--muted);font-size:.92rem}
.doc .state{grid-row:1 / span 2;grid-column:2;align-self:center;font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:6px 14px;white-space:nowrap}

/* Rodapé */
footer{border-top:1px solid var(--line);margin-top:120px}
footer .wrap{padding-block:64px 40px;display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px}
footer p,footer li{color:var(--muted);font-size:.95rem}
footer ul{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:4px}
footer a:hover{color:var(--fg)}
footer .logo svg{height:40px}
footer .addr{margin-top:22px}
footer .map{display:inline-block;margin-top:12px;color:var(--brand);font-weight:600}
.legal{grid-column:1/-1;padding-top:28px;border-top:1px solid var(--line);font-size:.82rem;color:var(--muted)}
@media (max-width:780px){footer .wrap{grid-template-columns:1fr}}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .js [data-reveal],.js .photo[data-reveal] img,.hero-photo img{transform:none!important}
}
.letter-wrap{display:grid;gap:64px}
.photo.aerial{aspect-ratio:16/9}
.letter-wrap .letter{display:grid;grid-template-columns:5fr 7fr;gap:24px 80px;align-items:start}
.letter-wrap .letter .open{grid-column:1}
.letter-wrap .letter .letter-body{grid-column:2}
.letter-wrap .letter .sign{grid-column:2;margin-top:16px}
@media (max-width:860px){.letter-wrap{gap:40px}.photo.aerial{aspect-ratio:4/3}.letter-wrap .letter{grid-template-columns:1fr}.letter-wrap .letter .open,.letter-wrap .letter .letter-body,.letter-wrap .letter .sign{grid-column:1}}
.first-visit{padding-bottom:0}
.fv-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:64px;align-items:start}
.fv-grid h2{font-size:clamp(2rem,3.6vw,3rem)}
.fv-sub{margin-top:18px;font-size:clamp(1.2rem,2vw,1.5rem);line-height:1.4;color:var(--muted)}
.fv-list{display:grid;gap:0;border-top:1px solid var(--line)}
.fv-list div{display:grid;gap:4px;padding-block:22px;border-bottom:1px solid var(--line)}
.fv-list h3{font-size:1.1rem;font-weight:600}
.fv-list p{color:var(--text);font-size:1rem}
@media (max-width:860px){.fv-grid{grid-template-columns:1fr;gap:28px}}
.who-head{padding-top:120px}

/* Fotos */
.albums{display:grid;grid-template-columns:repeat(3,1fr);gap:28px 20px}
.album{display:grid;gap:12px;align-content:start;min-width:0}
.album .photo{aspect-ratio:4/3}
.album h2{font-size:1.15rem;font-weight:600;letter-spacing:-.01em}
.album span{color:var(--muted);font-size:.88rem}
.album .open-link{color:var(--brand);font-weight:600;font-size:.9rem;display:inline-flex;align-items:center;gap:8px}
.album .open-link svg{width:15px;height:15px;transition:transform .3s var(--ease)}
.album:hover .open-link svg{transform:translateX(4px)}
.album:hover .photo img{transform:scale(1.04)}
.album.featured{grid-column:span 2}
.album.featured .photo{aspect-ratio:16/9}
@media (max-width:860px){.albums{grid-template-columns:repeat(2,1fr)}.album.featured{grid-column:1/-1}}
@media (max-width:520px){.albums{grid-template-columns:1fr}}
/* Mosaico em colunas: cada foto no seu formato, sem cortar */
.mosaic{columns:3;column-gap:12px}
.mosaic .photo{break-inside:avoid;margin-bottom:12px}
.mosaic .photo img{height:auto}
@media (max-width:860px){.mosaic{columns:2}}
.photos-note{margin-top:56px;padding:28px 32px;background:var(--brand-soft);border-radius:4px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.photos-note p{max-width:52ch}
.why{background:var(--soft);margin-top:96px}
.why-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:72px;align-items:start}
.why h2{font-size:clamp(2.4rem,5.6vw,4.4rem);margin-top:14px}
.why-lead{margin-top:24px;font-size:1.08rem;line-height:1.7;font-weight:400;max-width:52ch}
.why blockquote{margin:32px 0 0;padding-left:20px;border-left:2px solid var(--brand);font-size:clamp(1.2rem,2vw,1.45rem);font-weight:400;line-height:1.4}
.why cite{display:block;margin-top:8px;font-style:normal;font-size:.8rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--brand)}
.plan ol{list-style:none;margin:16px 0 0;padding:0;border-top:1px solid var(--line)}
.plan li{display:grid;grid-template-columns:3.6em 6.4em 1fr;gap:12px;padding-block:14px;border-bottom:1px solid var(--line);align-items:baseline;font-size:.95rem}
.plan .d{color:var(--muted);font-size:.8rem;font-variant-numeric:tabular-nums}
.plan .ref{font-weight:600;font-variant-numeric:tabular-nums}
.plan .t{color:var(--muted)}
@media (max-width:860px){.why-grid{grid-template-columns:1fr;gap:44px}}
@media (max-width:440px){.plan li{grid-template-columns:3.2em 1fr}.plan .t{grid-column:2}}
.cr-grid{display:grid;grid-template-columns:1fr 1.6fr;gap:72px;align-items:start}
.cr-when{display:grid;gap:12px;padding-left:28px;border-left:2px solid var(--brand)}
.cr-when b{font-size:clamp(3.4rem,7vw,5.4rem);font-weight:400;letter-spacing:-.04em;line-height:1;font-variant-numeric:tabular-nums}
.cr-when p:not(.label){color:var(--muted);font-size:.95rem}
.cr-when .cta{margin-top:12px}
.cr-lead{font-size:clamp(1.3rem,2.3vw,1.7rem);font-weight:400;line-height:1.4;letter-spacing:-.01em;max-width:34ch}
.cr-list{margin-top:36px;border-top:1px solid var(--line)}
.cr-list div{display:grid;grid-template-columns:1fr 2fr;gap:24px;padding-block:22px;border-bottom:1px solid var(--line)}
.cr-list h3{font-size:1.05rem;font-weight:600}
.cr-list p{color:var(--muted);font-size:.95rem}
@media (max-width:860px){.cr-grid{grid-template-columns:1fr;gap:48px}.cr-list div{grid-template-columns:1fr;gap:4px}}
.cr-home{padding-bottom:96px}
.cr-home-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:64px;align-items:end;padding-block:56px;border-top:1px solid var(--line)}
.cr-home h2{font-size:clamp(1.8rem,3.4vw,2.7rem);margin-top:14px}
.cr-home p:not(.label){color:var(--muted);max-width:46ch}
.cr-home .go{display:inline-flex}
@media (max-width:860px){.cr-home-grid{grid-template-columns:1fr;gap:20px}}
.lead-head{margin-bottom:32px;padding-top:8px}
.lead-head h2{font-size:clamp(1.8rem,3.4vw,2.6rem)}
.lead-head.small{margin-top:96px}
.lead-head.small h2{font-size:clamp(1.4rem,2.4vw,1.8rem)}
.team-sm{grid-template-columns:repeat(5,1fr)}
@media (max-width:1000px){.team-sm{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.team-sm{grid-template-columns:repeat(2,1fr)}}
.board{margin-top:120px;padding-top:48px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 2.2fr;gap:56px;align-items:start}
.board h2{font-size:clamp(1.6rem,2.8vw,2.2rem)}
.b-note{color:var(--muted);font-size:.93rem;margin-top:10px}
.b-cols{display:grid;grid-template-columns:1fr 1fr;gap:40px 48px}
.b-group{display:grid;align-content:start}
.b-group .label{margin-bottom:6px}
.b-row{display:grid;gap:2px;padding-block:14px;border-bottom:1px solid var(--line)}
.b-row:first-of-type{border-top:1px solid var(--line)}
.b-row span{font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.b-row strong{font-weight:600}
@media (max-width:860px){.board{grid-template-columns:1fr;gap:28px}}
.org-text p,.areas p{color:var(--text);font-size:1.05rem;line-height:1.75;max-width:62ch}
.org-top{margin-top:0;padding-top:0;border-top:0}
.team-head{margin-top:120px}
.areas h3{font-size:1.3rem;font-weight:600;letter-spacing:-.01em}
.org-text p + p{margin-top:1em}
.areas{display:grid}
.areas div{display:grid;gap:8px;padding-block:24px;border-top:1px solid var(--line)}
.areas div:first-child{border-top:0;padding-top:0}

@media (max-width:520px){.b-cols{grid-template-columns:1fr;gap:28px}}

/* Textos longos justificados, com hifenização para não abrir buracos */
.letter-body p,.fund p,.fund-title p,.org-text p,.areas p,.cr-lead,.cr-list p{text-align:justify;hyphens:auto;-webkit-hyphens:auto;hyphenate-limit-chars:8 4 4}
.soon-note{display:grid;gap:16px;justify-items:start;padding:40px;background:var(--brand-soft);border-radius:4px}
.soon-note p{font-size:clamp(1.1rem,1.8vw,1.3rem);line-height:1.6;color:var(--text);max-width:52ch}
.state{font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:6px 14px;white-space:nowrap}
.soon-note .state{color:var(--brand);border-color:currentColor}
.req-intro{font-size:clamp(1.1rem,1.8vw,1.3rem);line-height:1.6;color:var(--text);max-width:52ch}
.req-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.req-list span{font-size:.92rem;padding:8px 16px;border:1px solid var(--line);border-radius:999px}
.req-contact{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;margin-top:32px}
.board .doc:first-child{padding-top:0;border-top:0}
@media (max-width:640px){.letter-body p,.fund p,.fund-title p,.org-text p,.areas p,.cr-lead,.cr-list p{text-align:left;hyphens:manual;-webkit-hyphens:manual}}
