/* Dedicated corporate profile and board pages, using the NGIS visual language. */
.ngis-about-page { background: #fff; }
.ngis-about-hero { position: relative; z-index: 0; overflow: hidden; padding: clamp(4.5rem, 8vw, 6rem) 0 clamp(3.25rem, 6vw, 4.5rem); color: #fff; background: radial-gradient(circle at 85% 20%, rgba(213,174,99,.22), transparent 30%), linear-gradient(125deg, #071b33 0%, #123f70 100%); }
.ngis-about-hero::after { content: ''; position: absolute; z-index: 0; width: 26rem; height: 26rem; right: -10rem; bottom: -15rem; border: 1px solid rgba(213,174,99,.45); border-radius: 50%; box-shadow: 0 0 0 2rem rgba(213,174,99,.05), 0 0 0 5rem rgba(213,174,99,.04); pointer-events: none; }
.ngis-about-hero .container { position: relative; z-index: 1; max-width: 900px; }
.ngis-about-hero .eyebrow { color: #d5ae63; }
.ngis-about-hero h1 { max-width: 760px; margin: 0; font-size: clamp(2.35rem, 5vw, 4.25rem); font-weight: 800; line-height: 1; letter-spacing: -.05em; }
.ngis-about-hero h1 em, .ngis-about-page h2 em { color: #d5ae63; font-style: normal; }
.ngis-about-hero p:not(.eyebrow) { max-width: 650px; color: rgba(255,255,255,.76); font-size: clamp(1rem, 1.7vw, 1.25rem); line-height: 1.8; }
.ngis-simple-breadcrumb { display: flex; align-items: center; gap: .6rem; margin-bottom: 1.35rem; color: rgba(255,255,255,.62); font-size: .75rem; letter-spacing: .04em; }
.ngis-simple-breadcrumb a { color: rgba(255,255,255,.82); text-decoration: none; }
.ngis-simple-breadcrumb a:hover { color: #d5ae63; }
.ngis-simple-breadcrumb span:last-child { color: #d5ae63; }
.ngis-profile-intro, .ngis-board-intro { padding-bottom: 2rem; }
.ngis-profile-highlight { padding-top: 2rem; background: #f4f6f9; }
.ngis-profile-card { height: 100%; position: relative; padding: 2.5rem 2rem; overflow: hidden; border: 1px solid rgba(7,27,51,.08); border-radius: 18px; background: #fff; box-shadow: 0 10px 25px rgba(7,27,51,.06); }
.ngis-profile-card-featured { color: #fff; background: #071b33; transform: translateY(-1.5rem); }
.ngis-profile-card-featured .eyebrow, .ngis-profile-card-featured h3 { color: #fff; }
.ngis-profile-card-number { position: absolute; top: 1rem; right: 1.5rem; color: #d5ae63; font-size: .8rem; font-weight: 800; letter-spacing: .12em; }
.ngis-profile-card h3 { max-width: 17rem; margin: 0; color: #071b33; font-size: 1.35rem; line-height: 1.45; }
.ngis-profile-cta { padding-top: 2rem; }
.ngis-profile-cta-inner { display: flex; align-items: center; justify-content: space-between; gap: 2rem; padding: clamp(2rem, 5vw, 4rem); color: #fff; border-radius: 22px; background: linear-gradient(120deg, #071b33, #123f70); }
.ngis-profile-cta h2 { max-width: 34rem; margin: 0; color: #fff; }
.ngis-board-hero { background: radial-gradient(circle at 80% 15%, rgba(16,185,129,.16), transparent 28%), linear-gradient(125deg, #071b33 0%, #123f70 100%); }
.ngis-board-list { background: #f4f6f9; }
.ngis-board-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 2rem; }
.ngis-board-heading h2 { margin: 0; color: #071b33; }
.ngis-board-mark { display: grid; width: 5rem; height: 5rem; place-items: center; color: #d5ae63; border: 1px solid rgba(213,174,99,.6); border-radius: 50%; font-size: 1.6rem; }
.ngis-person-card { position: relative; min-height: 220px; display: flex; flex-direction: column; justify-content: flex-end; padding: 1.75rem; overflow: hidden; border: 1px solid rgba(7,27,51,.08); border-radius: 16px; background: #fff; box-shadow: 0 8px 20px rgba(7,27,51,.05); transition: transform .3s ease, box-shadow .3s ease; }
.ngis-person-card:hover { transform: translateY(-5px); box-shadow: 0 18px 35px rgba(7,27,51,.12); }
.ngis-person-card > i { position: absolute; top: 1.8rem; left: 1.75rem; color: #123f70; font-size: 2rem; }
.ngis-person-card strong { max-width: 16rem; color: #071b33; font-size: 1.05rem; }
.ngis-person-card > span:last-child { margin-top: .35rem; color: #d5ae63; font-size: .75rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.ngis-person-index { position: absolute; top: 1.5rem; right: 1.75rem; color: #9aa7b7; font-size: .75rem; font-weight: 800; }
.ngis-board-footer { padding-top: 2rem; text-align: center; }
.ngis-board-footer p { margin: 0; color: #123f70; font-size: clamp(1.4rem, 3vw, 2.5rem); font-weight: 700; }
.ngis-copy { color: #5f6b7a; line-height: 1.9; }
.ngis-copy p { margin-bottom: 1.15rem; }
.ngis-profile-intro h2 { color: #071b33; font-size: clamp(2rem, 4vw, 3.4rem); font-weight: 800; line-height: 1.12; }
.ngis-profile-stat-panel { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; overflow: hidden; border: 1px solid rgba(213,174,99,.35); border-radius: 22px; background: rgba(213,174,99,.35); box-shadow: 0 20px 45px rgba(7,27,51,.1); }
.ngis-profile-stat { min-height: 170px; display: flex; flex-direction: column; justify-content: flex-end; padding: 1.75rem; background: #071b33; }
.ngis-profile-stat strong { color: #d5ae63; font-size: clamp(2rem, 4vw, 3.5rem); line-height: 1; }
.ngis-profile-stat span { margin-top: .65rem; color: rgba(255,255,255,.68); font-size: .78rem; letter-spacing: .06em; text-transform: uppercase; }
.ngis-profile-direction { background: #f4f6f9; }
.ngis-profile-tabs .nav { justify-content: center; gap: .55rem; margin-bottom: 2rem; }
.ngis-profile-tabs .nav-link { color: #123f70; border: 1px solid rgba(18,63,112,.14); border-radius: 999px; font-size: .78rem; font-weight: 700; }
.ngis-profile-tabs .nav-link:hover, .ngis-profile-tabs .nav-link.active { color: #fff; background: #123f70; border-color: #123f70; }
.ngis-direction-card { max-width: 900px; min-height: 310px; margin: 0 auto; padding: clamp(1.5rem, 4vw, 3rem); border-radius: 20px; background: #fff; box-shadow: 0 15px 35px rgba(7,27,51,.08); }
.ngis-direction-card > i { color: #d5ae63; font-size: 2rem; }
.ngis-direction-card h3 { margin: .8rem 0 1.5rem; color: #071b33; font-size: 1.7rem; }
.ngis-direction-card h4 { margin-top: 1.4rem; color: #123f70; font-size: 1rem; }
.ngis-direction-card p, .ngis-direction-card li { color: #5f6b7a; line-height: 1.75; }
.ngis-direction-card li { margin-bottom: .65rem; }
.ngis-structure-diagram { display: grid; grid-template-columns: repeat(3, 1fr); gap: .75rem; margin-top: 1.5rem; }
.ngis-structure-diagram span { padding: 1.2rem .8rem; color: #123f70; border: 1px solid rgba(18,63,112,.16); border-radius: 10px; text-align: center; font-size: .78rem; font-weight: 700; }
.ngis-structure-image { margin-top: 1.5rem; overflow: hidden; border: 1px solid rgba(18,63,112,.16); border-radius: 1rem; background: #fff; box-shadow: 0 1rem 2.5rem rgba(8,42,77,.1); }
.ngis-structure-image img { display: block; width: 100%; max-height: clamp(240px, 42vw, 460px); object-fit: contain; object-position: center; background: #f6f8fb; }
.ngis-management-list { background: #f4f6f9; }
.ngis-management-card { min-height: 245px; }
.ngis-management-card small { margin-top: .75rem; color: #5f6b7a; font-size: .85rem; }
.ngis-board-list { position: relative; border-top: 4px solid #d5ae63; background: #fbfaf7; }
.ngis-management-list { position: relative; color: #fff; border-top: 4px solid #10b981; background: #071b33; }
.ngis-management-list .section-title, .ngis-management-list .section-description { color: #fff; }
.ngis-management-list .eyebrow { color: #70dfaa; }
.ngis-person-card { width: 100%; min-height: 355px; padding: 0 1.5rem 1.5rem; color: #071b33; border: 0; text-align: left; cursor: pointer; }
.ngis-person-card img { width: calc(100% + 3rem); height: 190px; margin: 0 -1.5rem 1.25rem; object-fit: cover; object-position: center top; background: #e8edf2; }
.ngis-person-card > i { top: 155px; left: auto; right: 1.4rem; z-index: 1; display: grid; width: 3rem; height: 3rem; place-items: center; color: #071b33; border: 4px solid #fff; border-radius: 50%; background: #d5ae63; font-size: 1rem; }
.ngis-person-card > strong { display: block; margin-top: .35rem; }
.ngis-person-card > span:not(.ngis-person-index) { display: block; margin-top: .45rem; color: #d5ae63; font-size: .73rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.ngis-management-list .ngis-person-card > span:not(.ngis-person-index) { color: #087f5b; }
.ngis-management-card small { display: block; margin-top: .7rem; }
.ngis-member-modal .modal-content { overflow: hidden; border: 0; border-radius: 18px; box-shadow: 0 25px 70px rgba(0,0,0,.25); }
.ngis-member-modal .modal-header { padding: 1.5rem 1.75rem; color: #fff; border: 0; background: #071b33; }
.ngis-member-modal .modal-title { color: #fff; font-size: 1.35rem; }
.ngis-member-modal .btn-close { filter: invert(1); }
.ngis-member-modal .modal-body { display: grid; grid-template-columns: 190px 1fr; gap: 1.75rem; padding: 1.75rem; }
.ngis-member-modal .modal-body img { width: 190px; height: 220px; object-fit: cover; object-position: center top; border-radius: 12px; background: #e8edf2; }
.ngis-member-modal .modal-body span { display: inline-block; margin-bottom: .9rem; color: #b48738; font-size: .75rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.ngis-member-modal .modal-body p { color: #5f6b7a; line-height: 1.8; }
@media (max-width: 767px) { .ngis-profile-stat-panel { grid-template-columns: 1fr 1fr; } .ngis-profile-stat { min-height: 135px; padding: 1.25rem; } .ngis-profile-tabs .nav { justify-content: flex-start; overflow-x: auto; flex-wrap: nowrap; padding-bottom: .5rem; } .ngis-profile-tabs .nav-link { white-space: nowrap; } .ngis-structure-diagram { grid-template-columns: 1fr 1fr; } .ngis-structure-image img { max-height: 300px; } }
@media (max-width: 767px) { .ngis-member-modal .modal-body { grid-template-columns: 1fr; } .ngis-member-modal .modal-body img { width: 100%; height: 240px; } }
@media (max-width: 767px) { .ngis-profile-card-featured { transform: none; } .ngis-profile-cta-inner, .ngis-board-heading { align-items: flex-start; flex-direction: column; } .ngis-profile-cta .btn { align-self: flex-start; } }
@media (prefers-reduced-motion: reduce) { .ngis-person-card { transition: none; } }
