.resource-guide.g3-guide { min-width:0; overflow-wrap:anywhere; }
.g3-guide [hidden] { display:none !important; }
.g3-guide .es-hero { max-width:800px; }
.g3-guide .es-hero figcaption { color:#fff; background:#102e50; }
.g3-guide .es-table-wrap { max-width:100%; margin:1.3rem 0; overflow-x:auto; }
.g3-guide .g3-table-hint { display:none; }
.g3-guide .es-table-wrap:focus,
.g3-guide input:focus-visible,.g3-guide select:focus-visible,.g3-guide button:focus-visible { outline:3px solid #006b77; outline-offset:3px; }
.g3-guide table caption { text-align:left; font-weight:700; padding:0 0 .6rem; color:#12324b; }
.g3-guide .g3-diagram { margin:1.5rem 0; padding:1.2rem; border:1px solid #b9d1d9; border-radius:8px; background:#f5fafb; }
.g3-guide .g3-diagram figcaption { color:#12324b; font-weight:700; margin-bottom:1rem; font-style:normal; }
.g3-guide .g3-route { display:flex; flex-wrap:wrap; gap:.7rem; list-style:none; padding:0; margin:0 0 1.2rem; }
.g3-guide .g3-route li { flex:1 1 130px; padding:.85rem; border-top:4px solid #006b77; background:#fff; color:#203443; }
.g3-guide .g3-route strong,.g3-guide .g3-route span { display:block; }
.g3-guide .g3-route span { font-size:.9em; }
.g3-guide .g3-learning li,.g3-guide .g3-timeline li { margin-bottom:.8rem; padding-left:.35rem; }
.g3-guide label { display:block; font-weight:700; margin-bottom:.35rem; }
.g3-guide input,.g3-guide select { width:100%; min-height:44px; padding:.6rem; font:inherit; color:#203443; background:#fff; border:1px solid #6b8793; border-radius:4px; }
.g3-guide button { min-height:44px; padding:.65rem 1rem; font:inherit; font-weight:700; color:#fff; background:#005b68; border:2px solid #005b68; border-radius:5px; cursor:pointer; }
.g3-guide button:hover { background:#12324b; border-color:#12324b; }
.g3-guide .g3-calculator { max-width:640px; }
.g3-guide .g3-filter { display:grid; grid-template-columns:2fr 1fr 1fr; gap:1rem; align-items:end; }
.g3-guide .g3-filter #g3-count { grid-column:2 / -1; margin:0; align-self:center; }
.g3-guide .g3-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.g3-guide .g3-entry { display:flex; gap:1rem; align-items:flex-start; padding:1rem; min-width:0; border:1px solid #b9d1d9; border-radius:8px; background:#f5fafb; }
.g3-guide .g3-entry img { flex:none; width:100px; height:100px; object-fit:cover; border-radius:5px; }
.g3-guide .g3-entry h4 { font-size:1.04em; line-height:1.4; margin:.35rem 0 .5rem; color:#12324b; }
.g3-guide .g3-entry p { margin:.3rem 0 0; }
.g3-guide .g3-entry .g3-label { font-size:.82em; color:#3e5664; margin:0; }
.g3-guide .g3-history { background:#fff; }
.g3-guide .g3-group > h3 { margin-top:2rem; }
@media(max-width:900px) { .g3-guide .g3-cards { grid-template-columns:1fr; } }
@media(max-width:600px) {
 .g3-guide .g3-table-hint { display:block; font-size:.9em; color:#3e5664; }
 .g3-guide .g3-filter { grid-template-columns:1fr; }
 .g3-guide .g3-filter #g3-count { grid-column:auto; }
 .g3-guide .es-table-wrap table { min-width:620px; }
 .g3-guide .g3-entry { gap:.75rem; }
 .g3-guide .g3-entry img { width:75px; height:75px; }
}
@media print { .g3-guide .g3-filter,.g3-guide .g3-calculator { display:none; } .g3-guide .es-table-wrap { overflow:visible; } .g3-guide .es-table-wrap table { min-width:0; } }
