.org2-section{
    padding:90px 0;
    background:linear-gradient(180deg,#f8fafc 0%,#edf3f9 100%);
}

.org2-intro h2{
    font-size:42px;
    font-weight:800;
    color:#0f172a;
    margin-bottom:12px;
}

.org2-intro p{
    color:#334155;
    font-size:18px;
    margin-bottom:28px;
}

.org2-mermaid-wrap{
    background:#ffffff;
    border:1px solid #dbeafe;
    border-radius:20px;
    box-shadow:0 14px 30px rgba(15,23,42,.08);
    padding:22px;
    margin-bottom:26px;
}

.org2-mermaid-wrap h3{
    font-size:22px;
    margin:0 0 14px;
    font-weight:800;
    color:#0f172a;
}

.org2-click-hint{
    display:flex;
    align-items:center;
    gap:8px;
    margin-top:12px;
    background:#ecfeff;
    border:1px solid #a5f3fc;
    color:#0e7490;
    border-radius:12px;
    padding:10px 12px;
    font-weight:700;
}

.org2-mermaid-grid{
    display:grid;
    gap:16px;
}

.org2-mermaid-card{
    background:#f8fbff;
    border:1px solid #dbeafe;
    border-radius:14px;
    padding:14px;
}

.org2-mermaid-card h4{
    font-size:22px;
    margin:0 0 12px;
    font-weight:800;
    color:#0f172a;
}

.org2-mermaid-card-secretarias{
    min-height:300px;
}

.org2-manual-tree{
    position:relative;
    padding:6px 8px 12px;
}

.org2-manual-tree-strategic{
    margin-bottom:8px;
}

.org2-strategic-top{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
    margin-bottom:0;
}

.org2-strategic-top .org2-manual-node{
    font-size:16px;
    max-width:none;
    min-height:64px;
    display:flex;
    align-items:center;
    justify-content:center;
}

.org2-strategic-tree{
    position:relative;
    padding:0 0 8px;
}

.org2-strategic-spine{
    position:absolute;
    top:-10px;
    bottom:8px;
    left:62.5%;
    width:2px;
    transform:translateX(-50%);
    background:#64748b;
    opacity:.85;
    z-index:0;
    pointer-events:none;
}

.org2-strategic-row{
    position:relative;
    display:grid;
    grid-template-columns:62.5% 37.5%;
    margin-top:10px;
}

.org2-strategic-cell{
    position:relative;
    min-height:50px;
    display:flex;
    align-items:center;
}

.org2-strategic-cell.left{
    justify-content:flex-end;
    padding-right:56px;
}

.org2-strategic-cell.right{
    justify-content:flex-start;
    padding-left:56px;
}

.org2-strategic-arm{
    position:absolute;
    top:50%;
    width:56px;
    border-top:2px solid #64748b;
    opacity:.85;
}

.org2-strategic-cell.left .org2-strategic-arm{
    right:0;
}

.org2-strategic-cell.right .org2-strategic-arm{
    left:0;
}

.org2-strategic-cell .org2-manual-node{
    font-size:15px;
    max-width:520px;
    width:100%;
}

.org2-strategic-bottom{
    margin-top:14px;
    display:flex;
    justify-content:center;
}

.org2-strategic-bottom .org2-manual-node{
    font-size:16px;
    max-width:430px;
}

.org2-manual-root{
    max-width:380px;
    margin:0 auto;
    position:relative;
    z-index:2;
}

.org2-manual-spine{
    position:absolute;
    top:88px;
    bottom:44px;
    left:50%;
    width:2px;
    transform:translateX(-50%);
    background:#64748b;
    opacity:.85;
    z-index:0;
    pointer-events:none;
}

.org2-manual-row{
    position:relative;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:120px;
    margin-top:26px;
}

.org2-manual-cell{
    position:relative;
    min-height:56px;
    display:flex;
    align-items:center;
}

.org2-manual-cell.left{
    justify-content:flex-end;
}

.org2-manual-cell.right{
    justify-content:flex-start;
}

.org2-manual-arm{
    position:absolute;
    top:50%;
    width:60px;
    border-top:2px solid #64748b;
    opacity:.85;
}

.org2-manual-cell.left .org2-manual-arm{
    right:-60px;
}

.org2-manual-cell.right .org2-manual-arm{
    left:-60px;
}

.org2-manual-node{
    background:#f8fbff;
    border:1px solid #94a3b8;
    border-radius:0;
    color:#0f172a;
    font-size:20px;
    font-weight:600;
    line-height:1.25;
    padding:10px 14px;
    text-align:center;
    max-width:420px;
    position:relative;
    z-index:2;
}

.org2-manual-node-main{
    background:#00bcd4;
    border-color:#0284c7;
    color:#ffffff;
    font-size:24px;
    font-weight:700;
}

.org2-mermaid-scroll{
    overflow-x:auto;
    overflow-y:hidden;
    padding:6px;
}

.org2-mermaid-scroll .mermaid{
    min-width:720px;
    background:#f8fbff;
    border-radius:14px;
    padding:10px;
}

.org2-mermaid-scroll .mermaid svg{
    width:100% !important;
    max-width:100% !important;
    height:auto;
}

.org2-chart{
    background:#ffffff;
    border:1px solid #dbeafe;
    border-radius:20px;
    box-shadow:0 14px 30px rgba(15,23,42,.08);
    padding:24px;
}

.org2-row{
    display:grid;
    gap:14px;
}

.org2-row-top{
    grid-template-columns:repeat(4,1fr);
}

.org2-row-middle{
    grid-template-columns:1fr 1fr;
}

.org2-row-secretarias{
    grid-template-columns:repeat(3,1fr);
}

.org2-box{
    background:#ffffff;
    border:1px solid #cbd5e1;
    border-radius:12px;
    padding:10px 12px;
    text-align:center;
    font-weight:700;
    color:#0f172a;
}

.org2-box-soft{
    background:#f8fbff;
}

.org2-box-main{
    background:linear-gradient(135deg,#00bcd4 0%,#0284c7 100%);
    border-color:transparent;
    color:#ffffff;
}

.org2-line{
    height:2px;
    width:100%;
    background:linear-gradient(90deg,#cbd5e1,#94a3b8,#cbd5e1);
    margin:16px 0;
}

.org2-group{
    background:#f8fbff;
    border:1px solid #dbeafe;
    border-radius:14px;
    padding:16px;
}

.org2-group h3{
    margin:0 0 12px;
    font-size:21px;
    font-weight:800;
    color:#0f172a;
}

.org2-stack{
    display:grid;
    gap:10px;
}

.org2-center{
    max-width:620px;
    margin:0 auto;
}

.org2-secretaria{
    background:#f8fbff;
    border:1px solid #dbeafe;
    border-radius:14px;
    padding:16px;
}

.org2-secretaria h4{
    font-size:18px;
    font-weight:800;
    color:#0f172a;
    margin-bottom:12px;
}

.org2-mini{
    background:#ffffff;
    border:1px solid #d8e2ee;
    border-radius:10px;
    padding:8px 10px;
    font-size:14px;
    margin-bottom:8px;
    color:#1e293b;
}

.org2-clickable{
    cursor:pointer;
    transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}

.org2-clickable:hover,
.org2-clickable:focus{
    border-color:#00bcd4;
    box-shadow:0 10px 20px rgba(2,132,199,.18);
    outline:none;
}

.org2-chip-list{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

.org2-chip-item{
    display:inline-flex;
    align-items:center;
    border:1px solid #bae6fd;
    background:#f0f9ff;
    color:#0c4a6e;
    border-radius:999px;
    padding:6px 10px;
    font-size:13px;
    line-height:1.2;
    font-weight:600;
}

.org2-chip-button{
    cursor:pointer;
    outline:none;
}

.org2-chip-button:hover,
.org2-chip-button:focus{
    border-color:#38bdf8;
    background:#e0f2fe;
    color:#075985;
}

.org2-contact-card{
    border:1px solid #bae6fd;
    background:#f8fdff;
    border-radius:12px;
    padding:12px 14px;
}

.org2-contact-dep{
    color:#0369a1;
    font-weight:700;
    margin:0;
}

@media (max-width:1199px){
    .org2-row-top{
        grid-template-columns:repeat(2,1fr);
    }

    .org2-row-secretarias{
        grid-template-columns:repeat(2,1fr);
    }
}

@media (max-width:767px){
    .org2-section{
        padding:64px 0;
    }

    .org2-intro h2{
        font-size:32px;
    }

    .org2-intro p{
        font-size:16px;
    }

    .org2-row-top,
    .org2-row-middle,
    .org2-row-secretarias{
        grid-template-columns:1fr;
    }

    .org2-manual-spine{
        left:24px;
        top:84px;
    }

    .org2-strategic-top{
        grid-template-columns:1fr;
    }

    .org2-strategic-spine{
        left:24px;
        top:0;
        bottom:84px;
    }

    .org2-strategic-row{
        grid-template-columns:1fr;
        margin-top:8px;
    }

    .org2-strategic-cell.left,
    .org2-strategic-cell.right{
        justify-content:flex-start;
        padding-left:40px;
        padding-right:0;
    }

    .org2-strategic-cell.left .org2-strategic-arm,
    .org2-strategic-cell.right .org2-strategic-arm{
        left:0;
        right:auto;
        width:40px;
    }

    .org2-strategic-cell .org2-manual-node{
        font-size:14px;
        max-width:none;
    }

    .org2-strategic-bottom{
        justify-content:flex-start;
        padding-left:40px;
    }

    .org2-strategic-bottom .org2-manual-node{
        max-width:none;
    }

    .org2-manual-row{
        grid-template-columns:1fr;
        gap:12px;
        margin-top:20px;
        padding-left:40px;
    }

    .org2-manual-cell.left,
    .org2-manual-cell.right{
        justify-content:flex-start;
    }

    .org2-manual-cell.left .org2-manual-arm,
    .org2-manual-cell.right .org2-manual-arm{
        left:-40px;
        right:auto;
        width:40px;
    }

    .org2-manual-node{
        font-size:17px;
        max-width:none;
    }

    .org2-manual-node-main{
        font-size:20px;
        margin-left:40px;
    }
}

