:root{--navy:#0a3156;--deep:#062642;--blue:#175b8d;--gold:#e8b039;--ink:#17314b;--muted:#637688;--line:#dce6ee;--pale:#f4f8fb;font:16px Arial,"Noto Sans",sans-serif;color:var(--ink)}
*{box-sizing:border-box}html{scroll-behavior:smooth}html[data-font=small]{font-size:14px}html[data-font=large]{font-size:18px}body{margin:0;line-height:1.5}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}[hidden]{display:none!important}.container{width:min(1260px,calc(100% - 40px));margin:auto}.skip-link{position:absolute;top:-60px;left:12px;z-index:30;background:white;padding:8px}.skip-link:focus{top:8px}:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.utility{background:var(--deep);color:#fff}.utility-inner{min-height:43px;display:flex;justify-content:space-between;align-items:center;gap:12px}.gov-identity,.utility-actions{display:flex;align-items:center;gap:17px}.gov-identity span{display:flex;flex-direction:column;font-size:.65rem;font-weight:700;line-height:1.1}.gov-identity small{font-size:.55rem;letter-spacing:.07em}.utility-actions{font-size:.7rem}.utility-actions button{border:0;background:none;color:white}.utility-actions form{display:flex;height:28px;background:white}.utility-actions input{border:0;padding:4px 7px;width:160px;font-size:.72rem}.utility-actions form button{color:var(--navy);font-size:1.1rem}.masthead{background:linear-gradient(100deg,#fff 40%,#e7f2fa 70%,#fff)}.masthead-inner{min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:15px}.brand,.navy-brand{display:flex;align-items:center;gap:12px}.brand img{width:58px;height:65px;object-fit:contain}.brand strong{display:block;font-size:clamp(.95rem,1.8vw,1.38rem);color:var(--navy);line-height:1.2;letter-spacing:.025em}.brand small{font-size:.61rem;font-weight:700;letter-spacing:.08em}.navy-brand img{height:65px;max-width:85px;object-fit:contain}.navy-brand span{display:flex;flex-direction:column;font-size:.71rem;color:var(--navy);line-height:1.1}.navy-brand strong{font-size:1rem}.motto{background:linear-gradient(90deg,#c99529,#f9d56b,#c99529);text-align:center;color:#123553;font-size:.75rem;font-weight:800;padding:5px;letter-spacing:.05em}.primary-nav{background:var(--navy);color:#fff}.nav-list{display:flex;justify-content:space-between;gap:1px}.nav-list a{padding:11px 7px;border-bottom:3px solid transparent;font-size:.7rem;font-weight:700;white-space:nowrap}.nav-list a:hover,.nav-list a.active{background:#174a72;border-color:var(--gold)}.nav-list .login-link{background:var(--gold);color:var(--deep);margin:5px 0;padding:5px 14px;border:0;border-radius:3px}.menu-toggle{display:none;border:0;background:none;color:#fff;font-weight:700;padding:10px}
.site-footer{background:var(--deep);color:#e4edf4;margin-top:48px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.1fr;gap:35px;padding:35px 0}.footer-grid h3{margin:0 0 10px;color:#fff;font-size:.83rem}.footer-grid a{display:block;font-size:.76rem;margin:5px 0}.footer-grid a:hover{text-decoration:underline}.footer-grid p,.footer-grid small{font-size:.74rem;color:#c3d3df}.footer-brand{display:flex;align-items:center;gap:10px}.footer-brand img{width:50px}.footer-brand strong{font-size:.78rem}.footer-bottom{border-top:1px solid #ffffff30;font-size:.68rem}.footer-bottom .container{display:flex;justify-content:space-between;gap:12px;padding:10px 0}
.home-hero{height:375px;position:relative;overflow:hidden;background:var(--navy)}.hero-slide{position:absolute;inset:0;display:flex;align-items:center;background:linear-gradient(90deg,#062642f2,#0b3a60b0 47%,#082f5322),url('assets/images/img73.png') center 55%/cover;color:#fff;opacity:0;visibility:hidden;transform:scale(1.025);transition:opacity .65s,transform 6s}.hero-slide:nth-child(2){background-position:center 40%}.hero-slide:nth-child(3){background-position:center 70%}.hero-slide.is-active{opacity:1;visibility:visible;transform:scale(1)}.slide-inner{padding-bottom:15px}.eyebrow{font-size:.68rem;font-weight:800;letter-spacing:.13em;color:var(--gold)}.slide-inner h1{font:clamp(2rem,4.6vw,4.1rem)/1.08 Georgia,serif;max-width:710px;margin:12px 0}.slide-inner p{max-width:540px;font-size:.95rem}.button{display:inline-flex;align-items:center;justify-content:center;padding:10px 18px;border:0;border-radius:3px;font-size:.77rem;font-weight:800}.button-gold{background:var(--gold);color:var(--deep)}.button-primary{background:var(--navy);color:#fff}.hero-controls{position:absolute;right:max(20px,calc((100vw - 1260px)/2));bottom:20px;display:flex;align-items:center;gap:8px}.hero-controls>button{width:34px;height:34px;border:0;background:#ffffffdf;color:var(--navy);font-size:1.2rem}.hero-dots{display:flex;gap:5px}.hero-dots button{width:8px;height:8px;border:0;border-radius:8px;background:#b5c8d7;padding:0}.hero-dots button.active{width:20px;background:var(--gold)}
.home-content,.inner-content{padding-top:26px;min-height:450px}.section{margin-bottom:35px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);margin-bottom:14px}.section-head h2{font:1.36rem Georgia,serif;color:var(--navy);position:relative;margin:0;padding-bottom:10px}.section-head h2:after{content:"";position:absolute;bottom:-1px;left:0;width:43px;height:3px;background:var(--gold)}.text-link{font-size:.75rem;font-weight:800;color:var(--blue)}.text-link:hover{text-decoration:underline}p{margin:0 0 13px}.feature-grid{display:grid;grid-template-columns:1.1fr 1.1fr .85fr;gap:18px}.visual-panel{height:245px;overflow:hidden}.visual-panel img{width:100%;height:100%;object-fit:cover}.feature-grid p{font-size:.78rem}.feature-grid .lead{font-size:.88rem;font-weight:700;color:var(--navy)}.mini-stats{display:flex;gap:20px;margin:14px 0}.mini-stats div{display:flex;align-items:baseline;gap:6px}.mini-stats b{font-size:1.5rem;color:var(--blue)}.mini-stats span{font-size:.67rem}.message-card{background:#eef5fb;border:1px solid var(--line);padding:21px}.message-card h3{font:1.2rem Georgia,serif;color:var(--navy);margin:12px 0}
.depot-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:11px}.depot-card,.officer-card,.legacy-card,.award-card,.publication-card,.history-card,.gallery-card,.facility-card{border:1px solid var(--line);background:#fff;box-shadow:0 3px 12px #123b5b10;overflow:hidden}.depot-card:hover,.gallery-card:hover,.publication-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #123b5b20}.depot-art,.facility-art,.legacy-art,.history-art,.gallery-art{height:105px;display:grid;place-items:center;color:#ffffffad;background:linear-gradient(135deg,#6c9db7,#143e60);font-size:3rem}.art-1{background:linear-gradient(135deg,#779caf,#2e5975)}.art-2{background:linear-gradient(135deg,#9fb7c1,#345672)}.art-3{background:linear-gradient(135deg,#698ba5,#163b5d)}.card-pad{padding:10px}.card-pad h3{font-size:.78rem;color:var(--navy);margin:0 0 3px}.card-pad small{font-size:.64rem;color:var(--muted)}.card-pad p{font-size:.68rem;line-height:1.4;margin:8px 0}.card-pad b{font-size:.67rem;color:var(--blue)}.home-lower{display:grid;grid-template-columns:1.5fr 1fr;gap:24px}
.people-strip {
    display: flex;
    gap: 10px;
    overflow: hidden;
    width: 100%;
    scroll-behavior: smooth;
}

    .people-strip a {
        flex: 0 0 calc(25% - 8px);
        text-align: center;
        background: #f5f9fc;
        border: 1px solid var(--line);
        padding: 15px 5px;
        min-height: 150px;
        box-sizing: border-box;
    }.people-strip b,.people-strip small{display:block;font-size:.62rem}.people-strip small{color:var(--muted)}.avatar,.tiny-avatar{display:grid;place-items:center;border-radius:50%;background:#d4e4f0;color:#46728f}.avatar{width:50px;height:50px;margin:0 auto 7px;font-size:1.9rem}.tiny-avatar{width:27px;height:27px}.update-list a{display:grid;grid-template-columns:84px 57px 1fr;gap:5px;border-bottom:1px solid var(--line);padding:9px 0;font-size:.66rem}.update-list time{color:var(--muted)}.badge{background:#dceafa;color:var(--blue);font-size:.56rem;text-align:center;padding:3px}.quick-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.quick-grid a{border:1px solid var(--line);text-align:center;padding:13px 5px;font-size:.65rem;font-weight:700}.quick-grid a span{display:block;color:var(--blue);font-size:1.35rem}
.page-hero{min-height:155px;background:linear-gradient(90deg,#062a4af0,#0a3e67ca 55%,#0b355b9c),url('assets/images/img73.png') center 55%/cover;color:#fff;display:flex;align-items:center}.page-hero .container{padding:20px 0}.page-hero h1{font:2.3rem/1.1 Georgia,serif;margin:8px 0}.page-hero p{text-transform:uppercase;letter-spacing:.13em;font-size:.68rem;margin:0}.breadcrumbs{font-size:.65rem;color:#dbe8f4}.about-grid{display:grid;grid-template-columns:1.2fr 1fr .5fr;gap:22px;margin-bottom:30px}.about-grid h2{margin:0 0 7px}.about-grid h3{font-size:.87rem;color:var(--navy)}.about-grid p{font-size:.82rem}.presence-card{background:#f0f6fb;padding:15px;min-height:290px}.presence-card h3{margin:5px 0}.presence-map{height:210px;background:radial-gradient(ellipse at 68% 45%,#c7dcea 0 24%,transparent 25%),linear-gradient(135deg,#eaf3f9,#d9eaf5);padding:14px}.presence-map span{display:block;font-size:.62rem;font-weight:700;color:var(--navy);margin:7px 0 7px calc(var(--i)*4px)}.presence-map span:before{content:"●";color:var(--gold);margin-right:6px}.value-list{display:grid;gap:7px}.value-list div{display:flex;align-items:center;gap:7px;padding:7px;background:#f6f9fc}.value-list span{display:grid;place-items:center;width:37px;height:37px;border-radius:50%;background:#e1edf6;color:var(--blue);font-weight:800}.value-list b{font-size:.65rem}
.field-label{font-size:.75rem;font-weight:800;margin:0 0 7px}.selector{display:flex;gap:5px;overflow-x:auto;padding-bottom:7px;margin-bottom:16px}.selector button{flex:1;min-width:130px;background:#eef5fb;border:1px solid #d8e5ef;color:var(--navy);font-size:.7rem;font-weight:800;padding:10px 8px}.selector button.active{background:var(--navy);color:#fff}.profile-feature{display:grid;grid-template-columns:170px 1.5fr 1fr;gap:20px;padding:16px;border:1px solid var(--line);background:#f8fbfe;margin-bottom:26px}.profile-portrait,.portrait{background:linear-gradient(#e6edf3,#abc5d9);display:grid;place-items:center;color:#50748e;font-size:5rem}.profile-portrait{min-height:200px}.profile-feature h2{font-size:1.3rem;margin:8px 0}.profile-feature p{font-size:.81rem}.profile-list{display:grid;align-content:center;gap:6px;font-size:.75rem}.profile-list span{border-bottom:1px solid var(--line);padding:5px}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:15px 0;flex-wrap:wrap}.tabs{display:flex;gap:5px;overflow-x:auto;max-width:100%;padding-bottom:3px}.tab{border:1px solid var(--line);background:#f5f8fc;color:var(--navy);padding:8px 10px;white-space:nowrap;font-size:.67rem;font-weight:700}.tab.active{color:#fff;background:var(--navy);border-color:var(--navy)}.search-field{display:flex;align-items:center;gap:6px;border:1px solid var(--line);padding:6px 10px;background:#fff;color:var(--blue);min-width:190px}.search-field input{width:100%;border:0;outline:0;font-size:.74rem}.toolbar.compact .search-field{flex:1}.toolbar select,.reset-search{border:1px solid var(--line);background:#fff;color:var(--navy);padding:8px;font-size:.74rem}.officer-grid,.award-grid,.publication-grid,.legacy-grid,.gallery-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.officer-card{text-align:center;padding-bottom:8px}.officer-card .portrait{height:130px;font-size:4rem}.officer-card h3{font-size:.72rem;margin:9px 4px 2px}.officer-card small{display:block;color:var(--muted);font-size:.62rem}.detail-button{background:none;border:0;color:var(--blue);font-size:.68rem;font-weight:800;padding:9px}.officer-card .detail-button{background:var(--navy);color:#fff;width:90%;margin-top:9px}
.depot-detail{display:grid;grid-template-columns:1fr 1.4fr;gap:20px;border:1px solid var(--line);padding:14px;margin-bottom:25px}.depot-visual{display:grid;place-items:center;min-height:295px;background:linear-gradient(125deg,#205879,#93b8ca);color:#ffffffad;font-size:7rem}.depot-detail h2{margin:4px 0 10px}.depot-detail p{font-size:.83rem}.capability-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:22px}.capability-grid span{background:#f1f6fa;padding:10px;text-align:center;font-size:.67rem}.capability-grid b{display:block;color:var(--blue);font-size:1.4rem}.facility-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.facility-card{text-align:center;font-size:.72rem;padding-bottom:10px}.facility-art{height:145px;margin-bottom:9px}
.heritage-layout{display:grid;grid-template-columns:195px 1fr;gap:18px}.section-menu{display:grid;align-content:start;border:1px solid var(--line)}.section-menu a{padding:10px;border-bottom:1px solid var(--line);font-size:.74rem}.section-menu a.active{background:var(--navy);color:#fff}.heritage-intro{display:grid;grid-template-columns:1.6fr 1fr;gap:14px}.heritage-intro>div{padding:15px;border:1px solid var(--line)}.heritage-intro h2{margin:0}.heritage-intro p{font-size:.82rem}.quote-card{background:#edf5fc;color:var(--navy);font:italic 1rem Georgia,serif;display:grid;place-items:center;text-align:center}.timeline{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;border-top:2px solid var(--gold);padding-top:12px;text-align:center}.timeline b{display:block;color:var(--navy);font-size:.77rem}.timeline span{display:block;font-size:.61rem}.legacy-card .legacy-art{height:115px}.legacy-card h3,.legacy-card p{padding:0 9px}.legacy-card h3{font-size:.79rem}.legacy-card p{font-size:.68rem}.award-card .portrait{height:145px;position:relative;font-size:4rem}.award-card .portrait span{position:absolute;right:6px;top:6px;background:var(--gold);color:var(--navy);font-size:.64rem;padding:2px 5px}.stat-grid{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--line)}.stat-grid div{text-align:center;padding:16px;border-right:1px solid var(--line)}.stat-grid b{display:block;font-size:1.45rem;color:var(--navy)}.stat-grid span{font-size:.67rem}.publication-card{padding:9px}.book-cover{height:225px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(145deg,#17436b,#0a2744);color:#fff;padding:14px;box-shadow:inset 0 -50px 70px #0004}.book-cover strong{font:1.15rem Georgia,serif}.book-cover span,.book-cover small{font-size:.58rem;letter-spacing:.11em}.cover-1{background:linear-gradient(145deg,#29577f,#092a4c)}.cover-2{background:linear-gradient(145deg,#9bb1c0,#184a70)}.cover-3{background:linear-gradient(145deg,#316a91,#081d39)}.cover-4{background:linear-gradient(145deg,#0f3b61,#123d62)}.cover-5{background:linear-gradient(145deg,#779da4,#1d5765)}.publication-card h3{font-size:.76rem;margin:8px 0 0}.publication-card p,.publication-card .content-note{font-size:.64rem}.content-note{color:var(--muted);font-size:.71rem}.history-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.history-art{height:145px;font-size:1.8rem;font-weight:800}.history-card .card-pad h3{font-size:.83rem}.gallery-card{text-align:left;padding:0;color:inherit}.gallery-art{height:165px}.gallery-card .card-pad span{font-size:.67rem;color:var(--blue);font-weight:800}.directory-table{border-collapse:collapse;width:100%;min-width:850px;font-size:.69rem}.directory-table th{background:var(--navy);color:#fff;text-align:left}.directory-table th,.directory-table td{padding:9px;border:1px solid var(--line)}.directory-table tbody tr:nth-child(even){background:#f7fafc}.table-scroll{overflow-x:auto}.search-page-field{max-width:500px}.search-results{display:grid;gap:10px;margin:20px 0}.search-results a{border:1px solid var(--line);padding:12px;color:var(--blue)}
.detail-modal{position:fixed;inset:0;background:#05192caa;z-index:100;display:grid;place-items:center;padding:20px}.modal-box{background:#fff;max-width:480px;width:100%;padding:30px;position:relative;border-top:5px solid var(--gold)}.modal-box h2{font-family:Georgia,serif;color:var(--navy)}.modal-close{position:absolute;right:12px;top:8px;background:none;border:0;font-size:1.7rem}
.login-page{min-height:100vh;display:grid;grid-template-columns:2fr 1fr}.login-showcase{background:linear-gradient(90deg,#062440ed,#082f51ba),url('assets/images/img73.png') center/cover;color:#fff;display:grid;place-items:center}.login-showcase-inner{width:min(680px,80%)}.login-showcase-inner img{width:80px}.login-showcase h1{font:clamp(2.8rem,5vw,5rem) Georgia,serif;margin:8px 0}.login-showcase h1 em{color:var(--gold);font-style:normal}.login-showcase h2{font-size:1.1rem;margin-top:32px;text-transform:uppercase;letter-spacing:.08em}.login-showcase p{font-size:.82rem;max-width:500px}.login-features{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:35px}.login-features span{text-align:center;border:1px solid #ffffff45;padding:13px 5px;font-size:1.4rem}.login-features b{display:block;font-size:.61rem}.login-form-panel{display:grid;place-items:center;padding:28px}.login-form-wrap{width:min(350px,100%)}.login-form-wrap>small{font-weight:800;color:var(--blue);letter-spacing:.1em}.login-form-wrap h2{font:1.8rem Georgia,serif;color:var(--navy);margin:8px 0}.login-form-wrap>p{font-size:.77rem;color:var(--muted)}.login-form{display:grid;gap:14px;margin-top:30px}.login-form label{font-size:.75rem;font-weight:800}.login-form input{display:block;width:100%;padding:11px;border:1px solid var(--line);margin-top:6px}.security-note{background:#f0f7fc;border:1px solid var(--line);padding:11px;font-size:.69rem;margin-top:18px}.help-copy,.demo-links{font-size:.7rem;margin-top:18px}.form-feedback{color:#9a472c;font-size:.72rem}
.dashboard{min-height:100vh;background:#f5f8fb}.dash-header{height:68px;background:#fff;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 22px;gap:15px}.dash-brand{display:flex;align-items:center;gap:10px;color:var(--navy);font:1.2rem Georgia,serif;font-weight:800}.dash-brand img{height:44px}.dash-brand small{display:block;font:.55rem Arial,sans-serif;letter-spacing:.1em}.dash-actions{display:flex;gap:20px;align-items:center;font-size:.72rem}.dash-actions a{color:var(--blue)}.dash-shell{display:grid;grid-template-columns:195px 1fr}.dash-sidebar{background:#fff;border-right:1px solid var(--line);padding:15px 10px}.dash-sidebar nav{display:grid;gap:3px}.dash-sidebar a{padding:8px 10px;font-size:.71rem;border-radius:3px}.dash-sidebar a span{margin-right:10px;color:var(--blue)}.dash-sidebar a.active{background:#f5ead0}.dash-sidebar p{color:var(--muted);font-size:.55rem;margin:25px 10px}.dash-main{padding:18px;max-width:1500px;width:100%;margin:auto}.dash-hero{background:linear-gradient(90deg,#092d4de8,#0b436788),url('assets/images/img73.png') center 55%/cover;color:#fff;padding:28px 35px;min-height:150px}.dash-hero h1{font-size:1.8rem;margin:0}.dash-hero span,.dash-hero p{font-size:.7rem;letter-spacing:.1em}.dash-stats,.dash-highlights,.dash-shortcuts{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:14px 0}.dash-stats div,.dash-highlights a,.dash-shortcuts a,.dash-card{background:#fff;border:1px solid var(--line);padding:17px}.dash-stats b{display:block;color:var(--navy);font-size:1.4rem}.dash-stats span{font-size:.73rem}.dash-highlights{grid-template-columns:repeat(3,1fr)}.dash-highlights a{background:var(--navy);color:#fff;font-size:1.4rem}.dash-highlights b,.dash-highlights span{display:block;font-size:.72rem}.dash-shortcuts{grid-template-columns:repeat(3,1fr)}.dash-shortcuts a{font-size:.78rem;font-weight:800}.dash-columns{display:grid;grid-template-columns:1.3fr 1fr;gap:13px;margin-bottom:13px}.dash-card h2{color:var(--navy);font:1.1rem Georgia,serif;margin:0 0 12px}.app-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.app-grid a{display:grid;place-items:center;gap:3px;background:#f0f5fa;min-height:65px;color:var(--blue);font-size:1.1rem;text-align:center}.app-grid span{color:var(--ink);font-size:.65rem}.dash-list a{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:8px;font-size:.73rem}.dash-list span{color:var(--blue)}
@media(max-width:1100px){.nav-list a{font-size:.63rem;padding-inline:5px}.depot-grid,.officer-grid,.award-grid,.publication-grid,.legacy-grid{grid-template-columns:repeat(3,1fr)}.feature-grid{grid-template-columns:1fr 1fr}.message-card{grid-column:1/-1}.about-grid{grid-template-columns:1fr 1fr}.value-list{grid-column:1/-1;grid-template-columns:repeat(5,1fr)}.gallery-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.container{width:calc(100% - 28px)}.utility-inner{flex-wrap:wrap;padding:7px 0}.utility-actions{gap:8px;flex-wrap:wrap}.utility-actions input{width:120px}.masthead-inner{min-height:77px}.brand img{width:44px;height:48px}.brand strong{font-size:.9rem}.brand small{font-size:.5rem}.navy-brand{display:none}.menu-toggle{display:block}.nav-list{display:none;position:absolute;left:0;right:0;background:var(--navy);z-index:20;flex-direction:column;padding:6px 14px;max-height:70vh;overflow:auto}.nav-list.open{display:flex}.nav-list a{font-size:.78rem;padding:8px}.nav-list .login-link{align-self:flex-start}.home-hero{height:340px}.slide-inner h1{font-size:2.2rem}.feature-grid,.about-grid,.home-lower,.depot-detail,.heritage-layout,.heritage-intro,.profile-feature,.dash-columns{grid-template-columns:1fr}.visual-panel{height:200px}.value-list{grid-column:auto;grid-template-columns:repeat(2,1fr)}.depot-grid,.officer-grid,.award-grid,.publication-grid,.legacy-grid,.gallery-grid,.facility-grid,.history-grid{grid-template-columns:repeat(2,1fr)}.quick-grid{grid-template-columns:repeat(4,1fr)}.people-strip{grid-template-columns:repeat(3,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}.timeline{overflow-x:auto;grid-template-columns:repeat(7,110px)}.profile-portrait{min-height:130px}.login-page{grid-template-columns:1fr}.login-showcase{min-height:440px}.login-form-panel{padding-block:50px}.dash-shell{grid-template-columns:1fr}.dash-sidebar{overflow-x:auto;padding:7px}.dash-sidebar nav{display:flex;width:max-content}.dash-sidebar a{white-space:nowrap}.dash-sidebar p{display:none}.dash-actions span{display:none}}
@media(max-width:480px){.gov-identity{gap:10px}.utility-actions>span{display:none}.motto{font-size:.61rem}.brand strong{font-size:.75rem}.brand small{font-size:.43rem}.page-hero h1{font-size:1.8rem}.depot-grid,.officer-grid,.award-grid,.publication-grid,.legacy-grid,.gallery-grid,.facility-grid,.history-grid{gap:8px}.depot-art{height:80px}.quick-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr}.footer-bottom .container{flex-direction:column;gap:2px}.home-hero{height:360px}.slide-inner h1{font-size:1.9rem}.hero-controls{bottom:10px}.stat-grid{grid-template-columns:repeat(2,1fr)}.book-cover{height:170px}.login-features{grid-template-columns:repeat(2,1fr)}.dash-stats,.dash-highlights,.dash-shortcuts{grid-template-columns:repeat(2,1fr)}.app-grid{grid-template-columns:repeat(3,1fr)}.dash-header{padding:0 10px}.dash-brand{font-size:.9rem}.dash-actions{gap:7px}.toolbar .tabs{width:100%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.heritage-layout>div{min-width:0}.heritage-layout .toolbar,.heritage-layout .timeline{max-width:100%}.heritage-layout .tabs{min-width:0}.timeline{overflow-x:auto}
@media(max-width:760px){.section-menu{display:flex;overflow-x:auto;white-space:nowrap}.section-menu a{border-right:1px solid var(--line);border-bottom:0;flex:none}}
.demo-ribbon{background:#fff4d9;color:#674905;border-bottom:1px solid #e8cf8f;padding:7px max(20px,calc((100vw - 1260px)/2));font-size:.72rem;font-weight:700}.live-update{display:grid;grid-template-columns:70px 1fr;gap:5px 9px;align-items:center;padding:9px 0;border-bottom:1px solid var(--line);font-size:.7rem}.live-update small{grid-column:2;color:var(--muted)}

/* Government identity artwork */
.gov-identity .gov-emblem{display:block;width:auto;height:34px;flex:0 0 auto;object-fit:contain;margin-right:10px;align-self:center}
.masthead{background-color:#f7fbfe;background-image:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.92) 38%,rgba(255,255,255,.26) 55%,rgba(255,255,255,.96) 78%),url('assets/images/hbg.png');background-repeat:no-repeat;background-position:center;background-size:contain}
@media(max-width:760px){.gov-identity .gov-emblem{height:29px;margin-right:2px}.masthead{background-position:58% center}}

/* Left-aligned layout on wide screens */
.container {
    width: 100%;
    margin: 0;
    padding-inline: 27px
}

.hero-controls {
    right: 48px
}

.demo-ribbon {
    padding-inline: 48px
}

@media(max-width:760px) {
    .container {
        padding-inline: 14px
    }

    .demo-ribbon {
        padding-inline: 14px
    }
}

.page-hero .container {
    padding: 20px 25px;
}

@media(max-width:760px) {
    .page-hero .container {
        padding: 20px 14px;
    }
}

/* 3-panel hero */
.home-hero {
    height: auto;
    display: grid;
    grid-template-columns: 1fr 2.4fr 1fr;
    gap: 5px;
    padding: 14px 48px;
    background: #fff;
    overflow: visible;
}

.hero-side, .hero-center {
    height: 375px;
    border-radius: 0px;
    overflow: hidden;
    position: relative;
    background: var(--navy);
    box-shadow: 0 6px 18px #123b5b25
}

    .hero-side img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: opacity .6s
    }

        .hero-side img.fade {
            opacity: 0
        }

/* text chhota */
.slide-inner {
    padding: 0 28px 15px
}

    .slide-inner h1 {
        font: clamp(1.3rem,2.3vw,2.1rem)/1.15 Georgia,serif;
        max-width: 480px;
        margin: 8px 0
    }

    .slide-inner p {
        font-size: .8rem;
        max-width: 380px
    }

.eyebrow {
    font-size: .58rem
}

.hero-slide .button {
    padding: 7px 14px;
    font-size: .68rem
}

.hero-controls {
    right: 14px;
    bottom: 12px
}

    .hero-controls > button {
        width: 28px;
        height: 28px;
        font-size: 1rem
    }

@media(max-width:1100px) {
    .home-hero {
        padding: 14px 20px
    }
}

@media(max-width:760px) {
    .home-hero {
        grid-template-columns: 1fr 1fr;
        padding: 12px 14px
    }

    .hero-center {
        grid-column: 1/-1;
        order: -1;
        height: 300px
    }

    .hero-side {
        height: 140px
    }
}

/* ===== History timeline (nao.css ke end me add karo) ===== */
.tl-wrap {
    --per: 3;
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 10px 0 8px
}

.tl-viewport {
    overflow: hidden;
    flex: 1;
    min-width: 0
}

.tl-track {
    display: flex;
    transition: transform .7s ease
}

.tl-item {
    flex: 0 0 calc(100% / var(--per));
    padding: 0 14px;
    box-sizing: border-box;
    display: grid;
    grid-template-rows: 210px 80px 210px;
    position: relative
}

.tl-cell {
    display: flex
}

.tl-top {
    align-items: flex-end;
    padding-bottom: 10px
}

.tl-bottom {
    align-items: flex-start;
    padding-top: 10px
}

.tl-card {
    width: 100%;
    height: 190px;
    border-radius: 12px;
    overflow: hidden;
    background: #fff
}

.tl-desc {
    border: 3px solid var(--blue);
    padding: 16px;
    box-shadow: 0 4px 14px #123b5b18;
    overflow: auto
}

    .tl-desc h3 {
        margin: 0 0 8px;
        font: 1.05rem Georgia,serif;
        color: var(--navy)
    }

    .tl-desc p {
        margin: 0;
        font-size: .82rem;
        color: var(--ink)
    }

.tl-photo {
    position: relative;
    border: 2px solid #9db6cb;
    background: linear-gradient(135deg,#6c9db7,#143e60)
}

    .tl-photo .tl-ph {
        position: absolute;
        inset: 0;
        display: grid;
        place-items: center;
        font-size: 3rem;
        color: #ffffffad
    }

    .tl-photo img {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: opacity .5s
    }

        .tl-photo img.fade {
            opacity: 0
        }

.tl-mid {
    position: relative;
    display: grid;
    place-items: center
}

.tl-year {
    position: relative;
    z-index: 2;
    min-width: 120px;
    text-align: center;
    padding: 12px 18px;
    border: 3px solid var(--blue);
    border-radius: 50%;
    background: #fff;
    color: var(--navy);
    font-weight: 800;
    font-size: .95rem
}

.tl-line {
    position: absolute;
    z-index: 1;
    top: 50%;
    height: 2px;
    background: var(--blue);
    left: calc(50% + 62px);
    right: calc(-50% + 62px)
}

    .tl-line:after {
        content: "";
        position: absolute;
        right: -1px;
        top: -5px;
        border-left: 9px solid var(--blue);
        border-top: 6px solid transparent;
        border-bottom: 6px solid transparent
    }

.tl-nav {
    flex: none;
    width: 38px;
    height: 38px;
    border: 0;
    border-radius: 50%;
    background: var(--navy);
    color: #fff;
    font-size: 1.4rem
}

    .tl-nav:hover {
        background: var(--gold);
        color: var(--deep)
    }

.tl-dots {
    display: flex;
    justify-content: center;
    gap: 6px;
    margin: 6px 0 18px
}

    .tl-dots button {
        width: 9px;
        height: 9px;
        padding: 0;
        border: 0;
        border-radius: 9px;
        background: #b5c8d7
    }

        .tl-dots button.active {
            width: 22px;
            background: var(--gold)
        }

@media(max-width:1100px) {
    .tl-wrap {
        --per: 2
    }
}

@media(max-width:760px) {
    .tl-wrap {
        --per: 1
    }

    .tl-item {
        grid-template-rows: auto 70px auto
    }

    .tl-card {
        height: 180px
    }

    .tl-line {
        left: calc(50% + 62px);
        right: calc(-50% + 62px)
    }
}


/* ===== About: India map (Our Presence) ===== */
.presence-card.has-map {
    padding: 0;
    min-height: 0;
    background: #eef4fc
}

.presence-img {
    padding: 22px;
    background: #eef4fc
}

    .presence-img img {
        width: 100%;
        height: auto;
        display: block;
        background: #fff
    }

.presence-fallback {
    padding: 15px;
    min-height: 290px
}

.vm-grid {
    grid-template-columns: repeat(3,1fr)
}

    .vm-grid .legacy-art {
        font-size: 2.6rem
    }

    .vm-grid .legacy-card p {
        padding-bottom: 14px
    }

.vm-values {
    grid-template-columns: repeat(3,1fr)
}

    .vm-values div {
        padding: 12px
    }

    .vm-values b {
        font-size: .8rem
    }

    .vm-values small {
        display: block;
        font-size: .68rem;
        color: var(--muted);
        font-weight: 400
    }

@media(max-width:1100px) {
    .vm-grid, .vm-values {
        grid-template-columns: repeat(2,1fr)
    }
}

@media(max-width:760px) {
    .vm-grid, .vm-values {
        grid-template-columns: 1fr
    }
}

/* ===== Organisation chart ===== */
.org-chart {
    display: grid;
    gap: 36px;
    justify-items: center;
    padding: 14px 0 8px
}

.org-level {
    position: relative;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 14px;
    width: 100%
}

    .org-level + .org-level::before {
        content: "";
        position: absolute;
        top: -36px;
        left: 50%;
        width: 2px;
        height: 36px;
        background: var(--blue)
    }

.org-box {
    min-width: 210px;
    padding: 14px 18px;
    text-align: center;
    background: #fff;
    border: 2px solid var(--blue);
    border-top: 4px solid var(--gold);
    box-shadow: 0 3px 12px #123b5b10;
    font-size: .8rem;
    color: var(--navy)
}

    .org-box b {
        display: block;
        font-size: .88rem
    }

    .org-box small {
        display: block;
        font-size: .7rem;
        color: var(--muted)
    }

.org-top .org-box {
    background: var(--navy);
    border-color: var(--navy);
    border-top-color: var(--gold);
    color: #fff
}

    .org-top .org-box small {
        color: #c3d3df
    }

.org-sub .org-box {
    background: #f4f8fb;
    border-color: var(--line);
    border-top-color: var(--blue);
    font-weight: 700;
    min-width: 180px
}

@media(max-width:760px) {
    .org-box {
        min-width: 100%
    }

    .org-sub .org-box {
        min-width: 100%
    }
}

/* ===== Navigation: laptop/desktop par hamesha dikhe, mobile par hamburger ===== */
html, body {
    max-width: 100%;
    overflow-x: hidden;
}

@media (min-width: 761px) {
    .menu-toggle {
        display: none;
    }

    .nav-list {
        display: flex;
        flex-wrap: wrap; /* jagah kam pade to dusri line mein aa jaye */
        justify-content: flex-start;
        gap: 0 2px;
    }

        .nav-list a {
            padding: 11px 8px;
            font-size: .7rem;
        }

        .nav-list .login-link {
            margin: 5px 0 5px auto;
        }
}

@media (min-width: 761px) and (max-width: 1500px) {
    .nav-list a {
        padding: 11px 6px;
        font-size: .66rem;
    }
}

@media (min-width: 761px) and (max-width: 1250px) {
    .nav-list a {
        padding: 10px 5px;
        font-size: .62rem;
    }
}

/* ===== Login Dropdown ===== */
.primary-nav, .nav-inner {
    overflow: visible
}

.login-wrap {
    position: relative;
    display: flex;
    align-items: center
}

.nav-list .login-link.login-btn {
    font-size: .7rem;
    font-weight: 700;
    cursor: pointer;
    white-space: nowrap
}

.login-menu, .sub-menu {
    list-style: none;
    margin: 0;
    padding: 0;
    min-width: 190px;
    background: #fff;
    border-radius: 4px;
    box-shadow: 0 8px 22px rgba(0,0,0,.25);
    display: none;
    position: absolute;
    z-index: 1000
}

.login-menu {
    top: 100%;
    right: 0;
    margin-top: 2px
}

    .login-menu.open {
        display: block
    }

    .login-menu li {
        position: relative
    }

.nav-list .login-menu li > a,
.nav-list .login-menu li > span {
    display: block;
    padding: 10px 14px;
    color: #0a2540 !important;
    background: transparent;
    border: 0;
    font-size: .74rem;
    font-weight: 700;
    white-space: nowrap;
    cursor: pointer
}

    .nav-list .login-menu li > a:hover,
    .nav-list .login-menu li > span:hover {
        background: #eef3f9;
        color: #175b8d !important;
        border: 0
    }

.sub-menu {
    top: 0;
    right: 100%
}

.has-sub.open > .sub-menu {
    display: block
}

@media(max-width:760px) {
    .login-wrap {
        display: block;
        align-self: flex-start
    }

    .login-menu, .sub-menu {
        position: static;
        box-shadow: none;
        margin-top: 6px
    }

    .sub-menu {
        padding-left: 14px
    }
}

/* ===== Navbar responsive fix ===== */
.primary-nav {
    position: relative;
}

.nav-list .login-link {
    margin: 5px 0;
}

.login-wrap {
    margin-left: auto;
}

/* Desktop: ek proper menu bar */
@media (min-width: 1101px) {
    .menu-toggle {
        display: none;
    }

    .nav-list {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: 0 2px;
    }
}

/* Tablet + mobile: hamburger */
@media (max-width: 1100px) {
    .menu-toggle {
        display: block;
    }

    .nav-list {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        z-index: 20;
        flex-direction: column;
        flex-wrap: nowrap;
        background: var(--navy);
        padding: 6px 14px;
        max-height: 70vh;
        overflow: auto;
    }

        .nav-list.open {
            display: flex;
        }

        .nav-list a {
            font-size: .8rem;
            padding: 10px 8px;
        }

    .login-wrap {
        margin-left: 0;
        align-self: flex-start;
    }

    .login-menu, .sub-menu {
        position: static;
        box-shadow: none;
        margin-top: 6px;
    }

    .sub-menu {
        padding-left: 14px;
    }
}

/* People strip: chhoti screens par cards bade */
@media (max-width: 1100px) {
    .people-strip a {
        flex-basis: calc(33.33% - 7px);
    }
}

@media (max-width: 760px) {
    .people-strip a {
        flex-basis: calc(50% - 5px);
    }
}

@media (max-width: 480px) {
    .people-strip a {
        flex-basis: calc(80% - 5px);
    }
}
/* ===== Desktop: menu poori width mein failao ===== */
@media (min-width: 1101px) {
    .nav-list {
        flex-wrap: nowrap;
        justify-content: space-between;
        align-items: center;
        gap: 0;
    }

        .nav-list > a {
            flex: 1 1 auto; /* har item jagah bhar le */
            text-align: center;
            padding: 12px 4px;
            font-size: clamp(.70rem, .85vw, .86rem); /* screen ke saath text bada/chhota */
        }

    .login-wrap {
        flex: none;
        margin-left: 10px;
    }

    .nav-list .login-link.login-btn {
        font-size: clamp(.62rem, .85vw, .8rem);
    }
}

