/* xGAIA — linguagem editorial e arquitetura de responsabilidades */
.hero{padding-top:92px}
.hero .lead{max-width:60ch}
.hero .kicker{color:var(--ink);font-size:clamp(23px,3vw,31px)}
section[id],main[id]{scroll-margin-top:92px}
.atlas{scroll-margin-top:96px;margin-top:64px;position:relative;isolation:isolate;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--paper-2)}
.atlas-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:36px 38px 0}
.atlas-label{margin:0 0 10px;font:10px/1.5 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--terra-d)}
.atlas-heading h2{margin:0;font:400 clamp(27px,3.5vw,38px)/1.12 var(--serif);letter-spacing:-.02em}
.atlas-heading em{color:var(--terra-d);font-weight:400}
.atlas-instruction{margin:0;font:11px/1.7 var(--mono);color:var(--ink-3);text-align:right}
.atlas-map{display:grid;grid-template-columns:minmax(0,1fr) 218px minmax(0,1fr);grid-template-rows:1fr 1fr;gap:42px 72px;padding:38px 44px 42px;position:relative;min-height:400px}
.atlas-connections{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.atlas-connections path{fill:none;stroke:var(--terra);stroke-width:1;transition:stroke-width .25s,opacity .25s;opacity:.24}
.atlas-connections path.is-active{stroke-width:1.8;opacity:1}
.atlas-connections circle{fill:var(--terra-d);opacity:.35}
.atlas-node{position:relative;z-index:2;min-width:0;text-align:left;padding:20px 22px;background:var(--card);border:1px solid #444037;border-radius:5px;color:var(--ink);font-family:var(--sans);cursor:pointer;transition:border-color .2s,background-color .2s}
.atlas-node:hover{border-color:#a2735b}
.atlas-node.is-active{border-color:var(--terra);background:#332820}
.atlas-node:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
.atlas-node-index{display:block;font:9.5px/1.3 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-bottom:10px}
.atlas-node.is-active .atlas-node-index{color:var(--terra-d)}
.atlas-node strong{display:block;font:400 clamp(18px,2.1vw,23px)/1.13 var(--serif);letter-spacing:-.01em;margin-right:8px}
.atlas-faces{display:flex;align-items:center;margin-top:18px;gap:0}
.atlas-faces img{object-fit:cover;object-position:50% 20%;border-radius:50%;border:2px solid #25221e;width:36px;height:36px;filter:saturate(.55)}
.atlas-faces img+img{margin-left:-11px}
.atlas-faces>span{margin-left:11px;font:11px/1.5 var(--mono);color:var(--ink-2)}
.atlas-node-arrow{position:absolute;right:16px;top:16px;color:var(--ink-3);font-size:15px}
.atlas-node.is-active .atlas-node-arrow{color:var(--terra)}
.atlas-n0{grid-column:1;grid-row:1}.atlas-n1{grid-column:3;grid-row:1}.atlas-n2{grid-column:1;grid-row:2}.atlas-n3{grid-column:3;grid-row:2}
.atlas-core{grid-column:2;grid-row:1/3;align-self:center;justify-self:center;position:relative;display:flex;align-items:center;justify-content:center;width:194px;height:194px;border-radius:50%;background:var(--paper-2);border:1px solid var(--terra);text-align:center}
.atlas-core-mark{font:500 48px/1 var(--serif);letter-spacing:-.04em;color:#f0e9df}
.atlas-detail{position:relative;z-index:2;display:grid;grid-template-columns:43px 1fr;gap:18px;margin:0 38px;padding:24px 0 25px;border-top:1px solid #514234;min-height:122px}
.atlas-detail>span{font:12px/1.5 var(--mono);color:var(--terra);padding-top:3px}
.atlas-detail h3{font:400 24px/1.12 var(--serif);margin:0 0 8px}
.atlas-detail p{margin:0;max-width:78ch;color:var(--ink-2);font-size:14px;line-height:1.6}
.atlas-foundation{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;border-top:1px solid var(--line);padding:17px 38px;background:var(--paper);font:11.5px/1.5 var(--mono);color:var(--ink-2)}
.atlas-foundation b{font-weight:400;color:var(--ink-2)}
.atlas-foundation i{display:inline-block;width:5px;height:5px;background:var(--terra);border-radius:50%;margin-right:9px;vertical-align:2px}
.process-path{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border-top:1px solid var(--line);padding-top:28px;gap:20px}
.process-path>div{position:relative;min-width:0}
.process-path>div+div::before{content:"→";position:absolute;left:-20px;top:0;color:var(--ink-3);font:13px/1.5 var(--mono)}
.process-path span{display:block;font:11px/1.5 var(--mono);color:var(--terra);margin-bottom:12px}
.process-path h3{font:400 23px/1.1 var(--serif);margin:0 0 8px}
.process-path p{color:var(--ink-3);font-size:12px;line-height:1.5;margin:0;max-width:16ch}
.gab-note{max-width:78ch}
.agent .person{font:10px/1.5 var(--mono);margin:9px 0 13px;color:var(--ink-3)}
.agent[data-kind="control"]{border-style:dashed}
#agentModal .modal-panel{width:min(1040px,100%);height:min(680px,88vh);height:min(680px,88dvh);max-height:none;overflow:hidden;grid-template-rows:minmax(0,1fr)}
#agentModal .modal-photo{min-height:0;overflow:hidden}
#agentModal .modal-photo img{display:block}
#agentModal .modal-body{display:flex;flex-direction:column;min-height:0;overflow:hidden}
#agentModal .modal-body>*{flex-shrink:0}
#agentModal .am-tabs{align-self:flex-start}
#agentModal .am-panes{flex:1 1 0;min-height:0;display:block;overflow:hidden}
#agentModal .am-pane{height:100%;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:transparent transparent;padding-right:12px}
#agentModal .am-pane::-webkit-scrollbar{width:6px}
#agentModal .am-pane::-webkit-scrollbar-track{background:transparent}
#agentModal .am-pane::-webkit-scrollbar-thumb{background:transparent;border-radius:6px}
#agentModal .am-pane.is-scrolling{scrollbar-color:#9c8d7d transparent}
#agentModal .am-pane.is-scrolling::-webkit-scrollbar-thumb{background:#9c8d7d}
#agentModal .am-pane:focus-visible{outline:1px solid var(--terra);outline-offset:-1px}
#agentModal .am-pane .lead{margin-top:0}
.am-pane.off{display:none}
.agent-method p{font-size:15.5px;line-height:1.7;color:var(--ink);margin:0 0 17px}
.agent-method p:last-child{margin-bottom:0}
@media(min-width:681px) and (max-width:900px){
 #agentModal .modal-panel{grid-template-columns:240px minmax(0,1fr)}
 #agentModal .modal-body{padding:30px}
}
@media(min-width:681px) and (max-height:650px){
 #agentModal .modal-body{padding:22px 30px}
 #agentModal .modal-body .ph{margin-bottom:8px}
 #agentModal .modal-body .role{margin-top:10px}
 #agentModal .am-tabs{margin-top:12px}
 #agentModal .am-panes{margin-top:14px}
 #agentModal .modal-rel{margin-top:16px}
 #agentModal .modal-rel .r{padding:12px 14px}
}
@media(max-width:680px){
 #agentModal{padding:12px}
 #agentModal .modal-panel{height:min(760px,calc(100vh - 24px));height:min(760px,calc(100dvh - 24px));grid-template-columns:minmax(0,1fr);grid-template-rows:clamp(76px,14vh,112px) minmax(0,1fr);grid-template-rows:clamp(76px,14dvh,112px) minmax(0,1fr)}
 #agentModal .modal-photo{aspect-ratio:auto}
 #agentModal .modal-photo img{object-position:center 32%}
 #agentModal .modal-body{padding:20px 22px}
 #agentModal .modal-body .ph{font-size:9px;margin-bottom:8px}
 #agentModal .modal-body h3{font-size:30px}
 #agentModal .modal-body .person{font-size:13px;line-height:1.4}
 #agentModal .modal-body .role{font-size:9px;margin-top:12px}
 #agentModal .am-tabs{margin-top:12px}
 #agentModal .am-tab{font-size:10px;padding:8px 10px}
 #agentModal .am-panes{margin-top:16px}
 #agentModal .am-pane{padding-right:10px}
 #agentModal .modal-rel{grid-template-columns:1fr 1fr;margin-top:16px}
 #agentModal .modal-rel .r{padding:12px}
 #agentModal .modal-rel .r .t{font-size:9px;margin-bottom:6px}
 #agentModal .modal-rel .r p{font-size:12px;line-height:1.45}
}
@media(max-width:680px) and (max-height:650px){
 #agentModal .modal-panel{grid-template-rows:54px minmax(0,1fr)}
 #agentModal .modal-body{padding:14px 18px}
 #agentModal .modal-body .ph{display:none}
 #agentModal .modal-body h3{font-size:27px}
 #agentModal .modal-body .person{font-size:12px;line-height:1.3}
 #agentModal .modal-body .role{font-size:8.5px;margin-top:8px}
 #agentModal .am-tabs{margin-top:8px}
 #agentModal .am-panes{margin-top:12px}
 #agentModal .modal-rel{margin-top:12px}
 #agentModal .modal-rel .r{padding:10px}
}
@media(max-width:1050px){
 .atlas-map{grid-template-columns:minmax(0,1fr) 164px minmax(0,1fr);gap:36px 38px;padding:36px 28px;min-height:385px}
 .atlas-core{width:155px;height:155px}.atlas-core-mark{font-size:39px}
 .atlas-node{padding:19px 17px}.atlas-heading{padding:30px 28px 0}.atlas-node strong{font-size:21px}
 .atlas-detail{margin:0 28px}.atlas-foundation{padding-left:28px;padding-right:28px}
 .atlas-instruction{font-size:10px}.process-path{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:30px}.process-path>div:nth-child(4)::before{display:none}
}
@media(max-width:720px){
 .hero{padding-top:66px}.hero h1{font-size:clamp(44px,9vw,66px);max-width:14ch}.hero .lead{font-size:18px;margin-top:24px}
 .atlas{margin-top:42px}.atlas-heading{display:block;padding:26px 23px 0}.atlas-heading h2{font-size:30px;max-width:20ch}.atlas-instruction{text-align:left;margin-top:12px;font-size:10px}.atlas-instruction br{display:none}
 .atlas-map{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:150px auto auto;gap:12px;padding:18px 22px 26px;min-height:0}
 .atlas-core{grid-row:1;grid-column:1/3;width:130px;height:130px}.atlas-core-mark{font-size:34px}
 .atlas-connections{display:none}.atlas-n0{grid-row:2;grid-column:1}.atlas-n1{grid-row:2;grid-column:2}.atlas-n2{grid-row:3;grid-column:1}.atlas-n3{grid-row:3;grid-column:2}
 .atlas-node{padding:17px 14px 15px;min-height:157px}.atlas-node-index{font-size:8px;letter-spacing:.05em;margin-bottom:10px}.atlas-node strong{font-size:21px;margin:0;max-width:12ch}.atlas-node-arrow{font-size:12px;top:12px;right:9px}
 .atlas-faces{margin-top:14px;flex-wrap:wrap}.atlas-faces img{width:29px;height:29px}.atlas-faces>span{font-size:8px;line-height:1.5;margin-left:7px}
 .atlas-detail{margin:0 23px;padding:22px 0;grid-template-columns:23px 1fr;gap:12px;min-height:173px}.atlas-detail h3{font-size:23px}.atlas-detail p{font-size:13px;line-height:1.6}
 .atlas-foundation{padding:15px 23px;gap:8px;font-size:9px;display:grid}.atlas-foundation i{width:4px;height:4px;margin-right:7px}
 .process-path{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.process-path>div:nth-child(4)::before{display:block}.process-path>div:nth-child(2n+1)::before{display:none}
 .head{margin-bottom:38px}.head p{font-size:17px}
}
@media(max-width:380px){.atlas-map{padding-left:14px;padding-right:14px}.atlas-node{padding:15px 11px}.atlas-node strong{font-size:20px}.atlas-faces>span{flex-basis:100%;margin:7px 0 0}.atlas-detail{margin:0 18px}.atlas-heading{padding-left:18px;padding-right:18px}.atlas-heading h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){.atlas-node,.atlas-connections path{transition:none}.atlas-node:hover{transform:none}}
