/* Extensiones del sistema PHP al mockup consolidado P4; sin CSS/JS externo. */
.internal-page{padding-top:28px;padding-bottom:68px;min-height:55vh}
.breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:10px;row-gap:6px;color:#536d88;font-size:13px;margin-bottom:18px}
.breadcrumb a{color:#00407b;text-decoration:underline;text-underline-offset:3px}
.internal-hero{background:#00407b;border-radius:12px;color:white;padding:40px 48px;margin-bottom:30px}
.internal-hero h1{color:white;font-size:clamp(27px,4vw,44px);letter-spacing:-.6px;line-height:1.2;margin:9px 0 14px}
.internal-hero p{font-size:16px;line-height:1.6;max-width:720px;color:#eef7ff}
.internal-hero .button{margin-top:16px}
.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;align-items:stretch}
.catalog-card{border:1px solid #d5e6f5;background:#fff;border-radius:12px;padding:25px;display:flex;flex-direction:column;gap:12px;min-height:195px}
.catalog-card h2,.catalog-card h3{margin:0;color:#00407b;font-size:20px;line-height:1.3}
.catalog-card p{margin:0;flex:1;color:#47617d;font-size:14px;line-height:1.6}
.catalog-card .icon-disc{height:52px;width:52px;display:flex;align-items:center;justify-content:center;background:#eaf4fc;border-radius:50%}
.catalog-card .icon-disc img{width:31px;height:31px}
.small-page-icon{width:42px;height:42px}
.catalog-card .text-link{margin-top:12px}
.muted-note{font-size:12px;color:#5c7185;line-height:1.5}
.empty-state,.notice-panel{padding:28px 30px;background:#eef6fd;border-radius:12px;border:1px solid #d5e6f5}
.empty-state h2,.notice-panel h2{color:#00407b;font-size:20px;margin-bottom:8px}
.empty-state p,.notice-panel p{margin:0;color:#405b75;line-height:1.6}
.faq-block{margin-top:44px;max-width:900px}
.faq-block h2,.prose-block h2,.split-content h2{font-size:25px;color:#00407b;margin-bottom:16px}
.faq-item{background:#f6faff;border:1px solid #d4e3f0;border-radius:9px;margin-bottom:10px;padding:18px 21px}
.faq-item summary{font-size:16px;font-weight:700;color:#00407b;cursor:pointer}
.faq-item p{padding-top:12px;color:#405b75;line-height:1.6}
.search-page-form{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin-bottom:30px}
.search-page-form label{font-weight:700;width:100%;color:#00407b}
.search-page-form input{width:min(430px,100%);height:46px;padding:10px 14px;border:1px solid #aacbe2;border-radius:8px}
.result-title{font-size:21px;color:#00407b;margin-bottom:18px}
.split-content{display:grid;grid-template-columns:1.05fr 1fr;gap:28px;align-items:center}
.split-content p,.prose-block p{color:#405b75;font-size:15px;line-height:1.75;margin-bottom:15px}
.split-content img{width:100%;border-radius:12px;aspect-ratio:16/10;object-fit:cover}
.split-content img.is-full-frame{aspect-ratio:auto;height:auto;object-fit:contain;object-position:center;background:#f4f8fb}
.split-content.has-group-gallery{align-items:start}
.split-content.has-group-gallery > div > h2{margin-top:0}
.split-content.has-group-gallery > img.is-full-frame{align-self:start;width:100%;max-width:100%;height:auto;aspect-ratio:auto;object-fit:contain;object-position:center center}
.split-content .coord-gallery{grid-column:1 / -1}
.coord-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:16px 0 0;padding:0;list-style:none}
.coord-photo-grid figure{margin:0}
.coord-photo-grid img.is-full-frame{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;border-radius:12px;background:#f4f8fb}
.coord-photo-grid figure{text-align:center}
.coord-photo-grid figcaption{margin-top:8px;color:#00407b;font-size:15px;font-weight:750;line-height:1.35;text-align:center}
@media(max-width:850px){.coord-photo-grid{grid-template-columns:1fr}}
.split-content .staff-directory{grid-column:1 / -1;margin-top:8px}
.staff-group{margin-top:14px}
.staff-group h4{margin:0 0 8px;color:#00407b;font-size:20px}
.staff-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none}
.staff-card{display:flex;flex-direction:column;height:100%;margin:0;background:#fff;border:1px solid #d4e5f3;border-radius:12px;overflow:hidden}
.split-content img.staff-photo,.staff-avatar{width:100%;aspect-ratio:3/2;background:#e8f2f8}
.split-content img.staff-photo{height:auto;object-fit:contain;object-position:center}
.staff-avatar{display:block}
.staff-avatar svg,.staff-avatar img{width:100%;height:100%;display:block;object-fit:cover}
.staff-copy{padding:8px 10px 10px}
.staff-name{margin:0;color:#003c77;font-size:15px;font-weight:750;line-height:1.25}
.staff-role{margin:3px 0 0;color:#405b75;font-size:13px;line-height:1.3}
.staff-mail{display:inline-block;max-width:100%;margin-top:4px;color:#00407b;font-size:12.5px;line-height:1.3;white-space:nowrap;text-underline-offset:2px}
@media(max-width:980px){.staff-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.staff-grid{grid-template-columns:1fr}.staff-mail{white-space:normal;overflow-wrap:anywhere}}
.prose-block{max-width:760px}
.prose-block .button{margin-top:12px}
.auth-panel{width:min(540px,100%);margin-inline:auto;border:1px solid #d4e5f3;padding:35px;border-radius:12px;background:#fff}
.auth-panel h1{font-size:28px;margin:0 0 13px;color:#00407b}
.auth-panel>p{color:#486381}
.auth-panel form{display:flex;flex-direction:column;gap:10px;margin-top:20px}
.auth-panel label{font-weight:700;font-size:13px;color:#00407b;margin-top:9px}
.auth-panel input,.auth-panel textarea,.auth-panel select{width:100%;padding:11px 13px;border:1px solid #bdd5e5;border-radius:7px;font:inherit;font-size:14px;background:#fff;color:#203b54}
.auth-panel .button{margin-top:15px;align-self:flex-start}
.form-error{background:#fff3f1;padding:12px;border:1px solid #cf796b;border-radius:8px;color:#7b2418}
.content-form{width:min(770px,100%)}
.admin-heading{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:20px;flex-wrap:wrap}
.admin-heading h1{font-size:27px;color:#00407b;margin:0}
.admin-summary{margin-top:24px}
.admin-table-wrap{overflow-x:auto;border:1px solid #d5e6f5;border-radius:10px}
.admin-table{width:100%;border-collapse:collapse;font-size:14px;min-width:600px}
.admin-table th{background:#00407b;color:#fff;text-align:left}
.admin-table th,.admin-table td{padding:13px 14px;border-bottom:1px solid #e5eef5}
.admin-table td a{color:#00407b;font-weight:700}
.inline-delete{display:inline-block;margin:0}
.inline-delete button{border:0;background:none;color:#a12a22;text-decoration:underline;cursor:pointer}
.form-notice{background:#eef8f1;padding:12px;border:1px solid #8fbf9b;border-radius:8px;color:#14532d;margin:0 0 16px}
.page-intro h1{color:#00407b;font-size:clamp(28px,4vw,42px);margin:0 0 22px}
.block-manager{margin-top:22px}
.block-list{list-style:none;padding:0;margin:0 0 18px}
.block-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #e5eef5;flex-wrap:wrap}
.block-row span{display:block;color:#5a7594;font-size:13px}
.inline-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.inline-actions form{margin:0}
.inline-actions button{border:0;background:none;color:#00407b;font-weight:700;text-decoration:underline;padding:0}
.item-editor{border:1px solid #d5e6f5;border-radius:10px;padding:4px 16px 12px;margin-top:16px}
.item-row{padding:12px 0;border-top:1px solid #e5eef5}
.item-row:first-of-type{border-top:0}
.add-block{margin-top:8px}
.inline-actions .inline-delete button{color:#a12a22}
.hero-admin .content-form{width:min(920px,100%)}
.home-section{display:flex;flex-direction:column;gap:8px;border:1px solid #d5e6f5;border-radius:10px;padding:8px 16px 16px;margin-top:14px}
.home-section legend{font-weight:800;color:#00407b;padding:0 6px}
.auth-panel .check-row{flex-direction:row;align-items:center;gap:8px;font-weight:700}
.auth-panel .check-row input{width:auto}
.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;margin:22px auto;width:min(1000px,100%)}
.media-card{border:1px solid #d5e6f5;border-radius:10px;padding:12px;background:#fff}
.media-card img{width:100%;height:120px;object-fit:cover;border-radius:8px;background:#eef6fd}
.media-card p{margin:8px 0 0;color:#405b75;font-size:13px;line-height:1.4}
.split-content.is-image-left img{order:-1}
.block-hero-photo{display:block;width:min(100%,640px);margin-top:18px;border-radius:12px}
.support-actions{flex-wrap:wrap}
.team-block{margin:8px 0 32px}
.team-block h2,.team-card h3{color:#00407b}
.team-intro{max-width:720px;color:#405b75;margin:0 0 16px}
.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.team-card{background:#fff;border:1px solid #d5e6f5;border-radius:12px;overflow:hidden;display:flex;flex-direction:column}
.team-card img{width:100%;aspect-ratio:4/5;object-fit:cover;background:#eef6fd}
.team-copy{padding:16px 18px 18px}
.team-card h3{margin:0;color:#002b5b;font-size:18px;line-height:1.3}
.team-card p{margin:4px 0 0;color:#47617d;font-size:14px;line-height:1.5}
:focus-visible{outline:3px solid #002b5b !important;outline-offset:0 !important;box-shadow:0 0 0 3px #002b5b,0 0 0 6px #fff !important;transition-duration:0s !important}
@media(max-width:850px){.catalog-grid,.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.internal-hero{padding:33px}.split-content{grid-template-columns:1fr}}
@media(max-width:650px){.internal-page{padding-top:17px;padding-bottom:45px}.internal-hero{padding:29px 22px}.internal-hero h1{font-size:28px}.internal-hero p{font-size:14px}.catalog-grid,.team-grid{grid-template-columns:1fr}.catalog-card{min-height:0}.auth-panel{padding:24px 17px}.admin-heading .button{width:100%}}
.procedure-block{margin:8px 0 32px;max-width:900px;min-width:0}
.procedure-block h1,.procedure-block h2{font-size:25px;color:#00407b;margin:0 0 16px;line-height:1.25}
.procedure-eyebrow{display:block;margin:0 0 8px;color:#00407b;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.procedure-intro{max-width:72ch;margin:0 0 16px;color:#405b75;font-size:15px;line-height:1.75}
.procedure-figure{margin:0 0 18px}
.procedure-figure img,.procedure-step img,.procedure-callout img{width:auto;max-width:100%;height:auto;border-radius:12px}
.procedure-flow{display:flex;flex-direction:column;gap:12px;min-width:0}
.procedure-steps{margin:0;padding:0 0 0 1.5em;list-style:decimal}
.procedure-step{margin:0;padding:0 0 2px;min-width:0}
.procedure-step h2,.procedure-step h3,.procedure-callout h2,.procedure-callout h3{margin:0 0 6px;color:#00407b;font-size:18px;line-height:1.35}
.procedure-step p,.procedure-callout p{margin:0 0 8px;color:#405b75;line-height:1.65;overflow-wrap:anywhere}
.procedure-step p:last-child,.procedure-callout p:last-child,.procedure-step .text-link:last-child,.procedure-callout .text-link:last-child{margin-bottom:0}
.procedure-block .button,.procedure-block .text-link{max-width:100%;overflow-wrap:anywhere}
.procedure-callout{margin:0;padding:14px 16px;border:1px solid #9bb7d7;border-left:4px solid #00407b;border-radius:10px;background:#eef6fd;min-width:0}
.procedure-callout.is-warning{background:#fff3f1;border-color:#cf796b;border-left-color:#7b2418}
.procedure-callout-label{margin:0 0 6px;color:#00407b;font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.procedure-callout.is-warning .procedure-callout-label{color:#7b2418}
.procedure-block .button{margin-top:4px}
@media(max-width:650px){.procedure-block h1,.procedure-block h2{font-size:22px}.procedure-callout{padding:12px}}
.procedure-item-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:8px 0 4px}
.procedure-item-actions button{border:0;background:none;color:#00407b;font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:3px;padding:4px 0;cursor:pointer}
.procedure-item-actions button:disabled{color:#5a7594;cursor:not-allowed;text-decoration:none}
.split-content.is-text-only{grid-template-columns:minmax(0,1fr);max-width:none}
.scope-list{margin:0 0 15px;padding-left:1.25em;color:#405b75;font-size:15px;line-height:1.7}
.scope-list li{margin:0 0 8px}
.scope-list strong{color:#003c77}
.internal-page h2[id]{scroll-margin-top:24px}
.page-toc{margin:0 0 28px;max-width:none}
.page-toc-label{margin:0 0 10px;color:#00407b;font-weight:800}
.page-toc ul{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.page-toc a{display:inline-flex;align-items:center;padding:8px 14px;border:1px solid #b7d0e6;border-radius:999px;background:#f4f8fb;color:#00407b;font-weight:700;line-height:1.3;text-decoration:none}
.page-toc a:hover{background:#e5f1fa;border-color:#00407b}
.page-toc a:focus-visible{outline:3px solid #002b5b;outline-offset:2px}
.page-toc a:active{background:#00407b;color:#fff;border-color:#00407b}
main:has(#quienes-somos:target) .page-toc a[href="#quienes-somos"],
main:has(#nuestro-quehacer:target) .page-toc a[href="#nuestro-quehacer"],
main:has(#organigrama:target) .page-toc a[href="#organigrama"],
main:has(#la-direccion:target) .page-toc a[href="#la-direccion"],
main:has(#nuestro-equipo:target) .page-toc a[href="#nuestro-equipo"],
main:has(#que-hacemos:target) .page-toc a[href="#que-hacemos"],
main:has(#redes-y-conectividad:target) .page-toc a[href="#redes-y-conectividad"],
main:has(#servidores-y-plataformas:target) .page-toc a[href="#servidores-y-plataformas"],
main:has(#ciberseguridad:target) .page-toc a[href="#ciberseguridad"],
main:has(#sistemas-institucionales:target) .page-toc a[href="#sistemas-institucionales"],
main:has(#desarrollo-de-sistemas:target) .page-toc a[href="#desarrollo-de-sistemas"],
main:has(#solicitar-acceso-a-un-sistema:target) .page-toc a[href="#solicitar-acceso-a-un-sistema"],
main:has(#solicitar-ayuda:target) .page-toc a[href="#solicitar-ayuda"],
main:has(#canales-y-horarios-de-atencion:target) .page-toc a[href="#canales-y-horarios-de-atencion"],
main:has(#guias-y-manuales:target) .page-toc a[href="#guias-y-manuales"],
main:has(#preguntas-frecuentes:target) .page-toc a[href="#preguntas-frecuentes"],
main:has(#normas-y-politicas:target) .page-toc a[href="#normas-y-politicas"]{background:#00407b;color:#fff;border-color:#00407b}
.split-content h2.has-section-icon{display:flex;align-items:flex-start;gap:10px}
.split-content h2 .section-icon{width:28px;height:28px;flex:0 0 auto;margin-top:3px}
.split-content h3.editorial-heading{margin:18px 0 8px;color:#003c77;font-size:18px;line-height:1.35}
.split-content .editorial-list{margin:0 0 16px;padding-left:1.25em;color:#405b75}
.split-content .editorial-list>li{margin:0 0 12px;overflow-wrap:break-word}
.split-content .editorial-list .editorial-title{margin:0 0 4px;color:#003c77;font-size:15px;line-height:1.4}
.split-content .editorial-list p{margin:0 0 8px}
.split-content .org-chart{margin:8px 0 4px;min-width:0}
.split-content .org-chart h3{margin:0 0 14px;color:#003c77;font-size:20px;line-height:1.3}
.org-chart-layout{--org-gap:14px;--org-line:#00407b;display:flex;flex-direction:column;align-items:center;min-width:0}
.split-content .org-node{margin:0;overflow-wrap:anywhere}
.split-content .org-node-root{width:min(100%,460px);padding:14px 18px;border-radius:12px;background:#00407b;color:#fff;font-size:18px;font-weight:750;line-height:1.35;text-align:center}
.org-stem{width:2px;height:12px;margin-bottom:-2px;background:var(--org-line);flex:0 0 auto;position:relative;z-index:1}
.org-branch{align-self:stretch;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:var(--org-gap);width:100%;height:24px;color:var(--org-line)}
.org-elbow{position:relative;min-width:0;height:24px}
.org-elbow-left::before,.org-elbow-right::before{content:"";position:absolute;top:0;height:12px;box-sizing:border-box;border-top:2px solid var(--org-line)}
.org-elbow-left::before{left:calc(50% - 1px);right:0;border-left:2px solid var(--org-line);border-top-left-radius:10px}
.org-elbow-right::before{left:0;right:calc(50% - 1px);border-right:2px solid var(--org-line);border-top-right-radius:10px}
.org-elbow-left::after,.org-elbow-right::after{content:"";position:absolute;top:0;width:var(--org-gap);height:2px;background:var(--org-line)}
.org-elbow-left::after{left:100%}
.org-elbow-right::after{right:100%}
.org-elbow-mid::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--org-line)}
.org-elbow-mid::after{content:"";position:absolute;top:2px;left:calc(50% - 1px);width:2px;height:10px;background:var(--org-line)}
.org-arrow{position:absolute;top:12px;left:calc(50% - 6px);z-index:1;display:block}
.org-elbow-right .org-arrow{left:auto;right:calc(50% - 6px)}
.org-rail-end{display:none}
.org-node-director{width:min(100%,190px);align-self:center}
.org-support{--org-gutter:40px;align-self:center;display:grid;grid-template-columns:minmax(0,1fr) var(--org-gutter) minmax(0,1fr);grid-template-rows:24px auto 22px;grid-template-areas:"dash-l axis dash-r" "role-l axis role-r" ". axis .";width:min(100%,660px);color:var(--org-line)}
.org-dash{position:relative;height:24px;min-width:0}
.org-dash-left{grid-area:dash-l}
.org-dash-right{grid-area:dash-r}
.org-dash-left::before,.org-dash-right::before{content:"";position:absolute;top:0;height:12px;box-sizing:border-box;border-top:2px dashed var(--org-line)}
.org-dash-left::before{left:calc(50% - 1px);right:0;border-left:2px dashed var(--org-line);border-top-left-radius:10px}
.org-dash-right::before{left:0;right:calc(50% - 1px);border-right:2px dashed var(--org-line);border-top-right-radius:10px}
.org-dash-left::after,.org-dash-right::after{content:"";position:absolute;top:0;width:calc((var(--org-gutter) - 2px) / 2);border-top:2px dashed var(--org-line)}
.org-dash-left::after{left:100%}
.org-dash-right::after{right:100%}
.org-axis{grid-area:axis;z-index:1;width:2px;justify-self:center;background:var(--org-line)}
.org-dash-right .org-arrow{left:auto;right:calc(50% - 6px)}
.org-role-left{grid-area:role-l;width:min(100%,308px);justify-self:center}
.org-role-right{grid-area:role-r;width:min(100%,196px);justify-self:center}
.org-support+.org-stem-units{margin-top:-2px}
.org-units{align-self:stretch;width:100%;margin:0;padding:0}
.org-node-director,.org-role,.org-people>li{display:flex;align-items:flex-start;gap:10px;min-width:0;margin:0;padding:12px;border:1px solid #d4e5f3;border-radius:12px;background:#fff}
.org-icon{width:32px;height:32px;flex:0 0 auto;display:grid;place-items:center;border-radius:50%;background:#e7f3fb;color:#00407b}
.org-icon svg{width:18px;height:18px}
.org-role-copy{min-width:0}
.org-role-copy strong{display:block;color:#00407b;font-size:14px;line-height:1.35}
.org-person{display:block;margin-top:2px;color:#405b75;font-size:13px;font-weight:650;line-height:1.35}
.org-units{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--org-gap)}
.org-unit{min-width:0;border:1px solid #d4e5f3;border-radius:12px;background:#f7fbfe;overflow:hidden}
.org-unit h4{margin:0}
.org-unit-toggle{width:100%;display:flex;align-items:flex-start;gap:10px;padding:12px;border:0;border-radius:12px;background:#003c77;color:#fff;text-align:left;font-weight:750;line-height:1.35}
.org-unit.is-open .org-unit-toggle{border-radius:12px 12px 0 0}
.org-unit-toggle .org-icon{background:rgba(255,255,255,.16);color:#fff}
.org-chevron{width:8px;height:8px;margin:6px 2px 0 auto;flex:0 0 auto;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg)}
.org-unit.is-open .org-chevron{margin-top:10px;transform:rotate(225deg)}
.org-panel{max-height:0;overflow:hidden;transition:max-height .28s ease}
.org-unit.is-open .org-panel{max-height:1200px}
.org-panel-inner{min-width:0}
.org-people{margin:0;padding:8px;list-style:none}
.org-people>li{padding:8px;border:0;border-radius:8px;background:transparent}
.org-people>li+li{border-top:1px solid #e3eef6;border-radius:0}
@media(max-width:1023px){
  .org-units{grid-template-columns:1fr}
  .org-unit{overflow:visible}
  .org-chart-layout{--org-rail:22px;position:relative;align-items:stretch;gap:14px;margin-left:4px;padding-left:var(--org-rail);background:none}
  .org-chart-layout::before{content:"";position:absolute;left:0;top:14px;bottom:0;width:2px;background:var(--org-line)}
  .split-content .org-node-root,.org-node-director{width:100%}
  .org-stem,.org-branch,.org-dash,.org-axis{display:none}
  .org-support{display:flex;flex-direction:column;gap:14px;width:100%}
  .org-support .org-role,.org-role-right{width:auto;max-width:none;justify-self:stretch;margin-left:16px}
  .org-node-root,.org-node-director,.org-support .org-role,.org-units>.org-unit{position:relative}
  .org-node-root::before,.org-node-director::before,.org-support .org-role::before,.org-units>.org-unit::before{content:"";position:absolute;left:calc(var(--org-rail) * -1);top:14px;width:14px;height:14px;box-sizing:border-box;background:#fff;border-bottom:2px solid var(--org-line);border-left:2px solid var(--org-line);border-bottom-left-radius:8px}
  .org-node-root::after,.org-node-director::after,.org-support .org-role::after,.org-units>.org-unit::after{content:"";position:absolute;left:-8px;top:24px;border-style:solid;border-width:4px 0 4px 6px;border-color:transparent transparent transparent var(--org-line)}
  .org-support .org-role::before{left:-38px;width:30px;border-bottom-style:dashed;border-left-style:dashed}
  .org-rail-end{display:block;position:absolute;left:calc(var(--org-rail) * -1);top:28px;bottom:0;width:4px;background:#fff}
}
@media(prefers-reduced-motion:reduce){.org-panel{transition:none}}
.incident-report{margin:22px 0 8px;min-width:0}
.incident-report .content-form{width:min(880px,100%)}
.incident-report p{overflow-wrap:anywhere}
.incident-report label{display:block;margin:14px 0 6px;color:#003c77;font-weight:700}
.incident-report .muted-note{font-weight:500}
.incident-warning{margin:14px 0;padding:12px 14px;border:1px solid #e6d3a1;border-radius:8px;background:#fff8e8;color:#5c4a1f}
.hp-field{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.incident-evidence{position:relative;min-width:0}
.incident-evidence-help{margin:6px 0 0;color:#5c7185;font-size:13px;font-weight:500;line-height:1.5}
.incident-report .incident-evidence-native input[type=file]{max-width:100%;padding:8px;line-height:1.4}
.incident-evidence-panel{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%;margin:0;padding:22px 16px;border:1.5px dashed #7eb0dc;border-radius:12px;background:#f5f9fd;text-align:center}
.incident-evidence-clip{display:block;color:#00407b}
.incident-evidence-lead{margin:0;color:#203b54;font-size:15px;font-weight:700;line-height:1.4}
.incident-evidence-choose,.incident-evidence-clear{min-height:44px;margin:0;padding:10px 16px;border:1px solid #00407b;border-radius:7px;background:#fff;color:#00407b;font:inherit;font-size:14px;font-weight:700;line-height:1.2;cursor:pointer}
.incident-evidence-choose:hover,.incident-evidence-clear:hover{background:#eef5fb}
.incident-evidence-meta{margin:0;max-width:42em;color:#5c7185;font-size:13px;font-weight:500;line-height:1.45}
.incident-evidence-list{display:grid;gap:8px;margin:12px 0 0;padding:0;list-style:none}
.incident-evidence-card{display:flex;align-items:center;gap:10px;min-width:0;padding:10px 12px;border:1px solid #d5e6f5;border-radius:8px;background:#fff}
.incident-evidence-badge{display:grid;flex:0 0 auto;place-items:center;width:40px;height:40px;border-radius:8px;background:#e7f1fa;color:#00407b;font-size:11px;font-weight:800;letter-spacing:.02em}
.incident-evidence-badge.is-unknown{background:#f4f6f8;color:#5c7185}
.incident-evidence-name{flex:1 1 auto;min-width:0;color:#203b54;font-size:14px;font-weight:700;overflow-wrap:anywhere}
.incident-evidence-size{flex:0 0 auto;color:#5c7185;font-size:13px;font-weight:600}
.incident-evidence-state{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid #0f7a45;border-radius:50%;background:#e8f6ee;color:#0f7a45;font-size:16px;font-weight:800;line-height:1}
.incident-evidence-state.is-review{width:auto;height:auto;min-height:28px;padding:4px 8px;border-color:#cf796b;border-radius:6px;background:#fff3f1;color:#7b2418;font-size:13px}
.incident-evidence-clear{margin-top:8px}
.incident-evidence .form-error{margin:8px 0 0}
.incident-evidence.is-enhanced .incident-evidence-native,.incident-evidence.is-enhanced .incident-evidence-help{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:420px){
  .incident-report .auth-panel{padding:18px}
  .incident-evidence-panel{padding:16px 12px}
  .incident-evidence-choose,.incident-evidence-clear{width:100%}
}
.guide-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px 0 4px;padding:0;list-style:none}
.guide-card-grid>li,.guide-card{min-width:0}
.guide-card h3,.guide-card p,.guide-card .text-link{overflow-wrap:anywhere}
.guide-card .text-link{white-space:normal}
.guide-page{min-width:0}
.guide-crumb-current,.guide-back,.guide-article,.guide-section{min-width:0;overflow-wrap:anywhere}
.guide-back{margin:0 0 8px}
.guide-kicker{display:flex;align-items:center;gap:8px;margin:0 0 8px;color:#00407b;font-size:13px;font-weight:800}
.guide-kicker img{width:22px;height:22px}
.guide-intro h1{overflow-wrap:anywhere}
.guide-article{max-width:860px}
.guide-article h2.has-section-icon{display:flex;align-items:flex-start;gap:10px;margin:0 0 14px;color:#00407b;font-size:25px;line-height:1.3}
.guide-article .section-icon{width:28px;height:28px;flex:0 0 auto;margin-top:2px}
.guide-section{margin:0 0 28px}
.guide-section.is-verify{padding:16px;border:1px solid #9bb7d7;border-radius:12px;background:#f4f8fb}
.guide-section.is-danger{padding:16px;border:2px solid #cf796b;border-radius:12px;background:#fff6f4}
.guide-label{margin:16px 0 8px;color:#003c77;font-size:18px;line-height:1.35}
.guide-article p,.guide-list{margin:0 0 12px;color:#405b75;font-size:15px;line-height:1.7}
.guide-list{padding-left:1.25em}
.guide-list li{margin:0 0 8px}
.guide-article .text-link{white-space:normal}
.guide-link-row{display:flex;flex-wrap:wrap;gap:8px 16px}
.guide-article .procedure-callout{margin:0 0 16px}
.guide-article .procedure-callout.is-warning{border-left-width:6px}
.procedure-callout-label{display:flex;align-items:center;gap:8px}
.procedure-callout-label img{width:18px;height:18px;flex:0 0 auto}
.guide-article .procedure-steps{margin-bottom:16px}
@media(max-width:850px){.guide-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.guide-card-grid{grid-template-columns:1fr}.guide-article h2.has-section-icon{font-size:22px}.guide-section.is-verify,.guide-section.is-danger{padding:12px}}
.guide-meet-docentes .guide-section{margin-bottom:40px;padding-top:4px}
.guide-meet-docentes .guide-section + .guide-section{border-top:1px solid #e3eef6;padding-top:28px}
.guide-meet-docentes .guide-option{margin:0 0 16px;padding:18px 18px 6px;border:1px solid #d5e6f5;border-top:4px solid #00407b;border-radius:12px;background:#f7fbfe}
.guide-meet-docentes .guide-option-b{border-top-color:#1b4f82;background:#f5f8fc}
.guide-meet-docentes .guide-option-c{border-top-color:#0c5c6e;background:#f4fafb}
.guide-meet-docentes .guide-option-heading{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 14px;color:#00407b;font-size:18px;line-height:1.35}
.guide-meet-docentes .guide-option-b .guide-option-heading{color:#1b4f82}
.guide-meet-docentes .guide-option-c .guide-option-heading{color:#0c5c6e}
.guide-meet-docentes .guide-option-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:6px;background:#00407b;color:#fff;font-size:12px;font-weight:800;letter-spacing:.06em;line-height:1.2}
.guide-meet-docentes .guide-option-b .guide-option-badge{background:#1b4f82}
.guide-meet-docentes .guide-option-c .guide-option-badge{background:#0c5c6e}
.guide-meet-docentes .guide-option-name{min-width:0}
.guide-meet-docentes .guide-option .procedure-steps{margin:0 0 8px}
.guide-meet-docentes .guide-option .procedure-step{margin:0 0 10px}
.guide-meet-docentes .guide-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 16px}
.guide-meet-docentes .guide-info-grid .guide-info-card:last-child:nth-child(odd){grid-column:1 / -1}
.guide-meet-docentes .guide-info-card{min-width:0;margin:0;padding:16px;border:1px solid #d5e6f5;border-top:4px solid #00407b;border-radius:12px;background:#fff}
.guide-meet-docentes .guide-info-title{display:flex;align-items:flex-start;gap:8px;margin:0 0 8px;color:#00407b;font-size:17px;line-height:1.35}
.guide-meet-docentes .guide-info-title img{width:22px;height:22px;flex:0 0 auto;margin-top:1px}
.guide-meet-docentes .guide-info-card p{margin:0}
@media(max-width:700px){
  .guide-meet-docentes .guide-info-grid{grid-template-columns:1fr}
  .guide-meet-docentes .guide-option{padding:14px 14px 4px}
}
.cyber-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:22px 0 4px;padding:0;list-style:none}
.cyber-card{display:flex;flex-direction:column;min-width:0;height:100%;padding:16px;border:1px solid #d5e6f5;border-radius:12px;background:#fff}
.cyber-card img{width:100%;height:148px;object-fit:contain;background:#f3f8fc;border-radius:10px}
.cyber-card h2,.cyber-card h3{margin:14px 0 8px;color:#00407b;font-size:18px;line-height:1.3;overflow-wrap:anywhere}
.cyber-card p{margin:0 0 14px;flex:1;color:#47617d;font-size:14px;line-height:1.6;overflow-wrap:anywhere}
.cyber-card .text-link{margin-top:auto;white-space:normal}
.cyber-card:hover{border-color:#86c8f5;box-shadow:0 8px 24px rgba(3,46,97,.06)}
.cyber-card:focus-within{border-color:#00407b}
@media(max-width:1023px){.cyber-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.cyber-card-grid{grid-template-columns:1fr}.cyber-card img{height:160px}}
.back-to-top{position:fixed;right:20px;bottom:20px;z-index:40;width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:#00407b;color:#fff;box-shadow:0 6px 16px rgba(0,43,91,.22);text-decoration:none}
.back-to-top[hidden]{display:none}
.editorial-faq-list{display:grid;gap:10px;margin:0 0 16px}
.editorial-faq{border:1px solid #d4e3f0;border-radius:10px;background:#f6faff}
.editorial-faq summary{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 16px;color:#00407b;font-size:16px;font-weight:700;line-height:1.4;cursor:pointer}
.editorial-faq summary::-webkit-details-marker{display:none}
.editorial-faq summary::after{content:"";flex:0 0 auto;width:9px;height:9px;margin-top:6px;border-right:2px solid #00407b;border-bottom:2px solid #00407b;transform:rotate(45deg)}
.editorial-faq[open] summary::after{margin-top:10px;transform:rotate(225deg)}
.editorial-faq-answer{padding:0 16px 14px}
.editorial-faq-answer p:last-child{margin-bottom:0}
.policy-list{list-style:none;padding-left:0}
.policy-card{display:grid;grid-template-columns:28px minmax(0,1fr);gap:12px;align-items:start;margin:0 0 12px;padding:14px;border:1px solid #d5e6f5;border-radius:12px;background:#fff}
.policy-icon{width:28px;height:28px}
.policy-card .text-link{white-space:normal}
@media(max-width:767px){.back-to-top{right:12px;bottom:12px}}
.resource-grid{gap:20px}
.resource-grid .catalog-card{min-width:0}
.resource-grid .catalog-card h2,.resource-grid .catalog-card p,.resource-grid .text-link{overflow-wrap:anywhere}
.resource-grid .text-link{margin-top:auto;white-space:normal}
.resource-faq{margin-top:36px}
.resource-faq .text-link{white-space:normal}
@media(max-width:850px){.catalog-grid.resource-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}}
@media(max-width:767px){.catalog-grid.resource-grid{grid-template-columns:1fr;gap:14px}.resource-grid .catalog-card{min-height:0;padding:20px}}
.skip-link{top:12px;white-space:nowrap;transform:translateY(calc(-100% - 28px));clip-path:inset(50%)}
.skip-link:focus,.skip-link:focus-visible{top:12px;transform:none;clip-path:none}
.cyber-report-banner{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(260px,.95fr);align-items:stretch;min-height:280px;margin:26px 0 8px;border-radius:12px;overflow:hidden;background:radial-gradient(90% 140% at 78% 40%,#1c86d6 0%,rgba(10,96,176,0) 56%),linear-gradient(102deg,#032454 0%,#043e86 40%,#0b6cb8 72%,#06356f 100%);color:#fff}
.cyber-report-copy{align-self:center;max-width:560px;padding:32px 18px 32px 40px}
.cyber-report-banner .eyebrow{margin:0 0 10px;color:#d7eeff}
.cyber-report-banner h2{margin:0 0 10px;color:#fff;font-size:clamp(26px,2.5vw,34px);font-weight:800;line-height:1.15;letter-spacing:-.4px}
.cyber-report-lead{margin:0 0 18px;max-width:46ch;color:#e7f4ff;font-size:15px;line-height:1.5}
.cyber-report-banner .button{width:auto;max-width:100%}
.cyber-report-art{width:100%;height:100%;min-height:280px;object-fit:cover;object-position:left center;pointer-events:none;background:transparent;border-radius:0;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 10%,#000 100%);mask-image:linear-gradient(90deg,transparent 0%,#000 10%,#000 100%)}
.incident-advice{max-width:880px;margin:8px auto 28px}
.incident-advice h2{margin:0 0 12px;color:#00407b;font-size:24px}
.incident-advice ul{margin:0 0 14px;padding-left:1.25em;color:#405b75}
.incident-advice li{margin:0 0 8px}
.vpn-request fieldset{margin:8px 0;padding:4px 14px 12px;border:1px solid #d5e6f5;border-radius:10px}
.vpn-request legend{padding:0 6px;color:#00407b;font-weight:800}
.vpn-request [hidden]{display:none !important}
.vpn-request .vpn-declaration{margin-top:16px;background:#f7fbfe}
.vpn-request .vpn-declaration label{display:grid;grid-template-columns:1.15rem minmax(0,1fr);gap:10px;align-items:start;margin:8px 0 0;font-weight:600;line-height:1.45}
.vpn-request .vpn-declaration input{width:1.15rem;height:1.15rem;margin:0.15rem 0 0;padding:0;accent-color:#00407b}
.vpn-request .vpn-declaration .muted-note{margin:10px 0 0}
@media(max-width:900px){
  .cyber-report-banner{grid-template-columns:minmax(0,1.1fr) minmax(220px,.85fr);min-height:260px}
  .cyber-report-copy{padding:24px 12px 24px 28px}
  .cyber-report-banner h2{font-size:24px}
  .cyber-report-art{min-height:260px}
}
@media(max-width:720px){
  .cyber-report-banner{grid-template-columns:1fr;min-height:0}
  .cyber-report-copy{max-width:none;padding:24px 20px 4px}
  .cyber-report-banner h2{font-size:24px}
  .cyber-report-lead{font-size:14px}
  .cyber-report-art{display:block;width:100%;height:188px;min-height:0;object-position:64% center;-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 18%,#000 100%);mask-image:linear-gradient(180deg,transparent 0%,#000 18%,#000 100%)}
}
@media(prefers-reduced-motion:reduce){
  .cyber-report-banner .button{transition:none}
  .cyber-report-banner .button:hover{transform:none}
}
