@import url('https://fonts.googleapis.com/css2?family=Alexandria:wght@400;500;600;700&family=Space+Grotesk:wght@300;400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap');
.content-page{--paper:#101215;--panel:#171a1e;--ink:#f5f1e8;--muted:#a4a9b0;--gold:#efb434;background:var(--paper);color:var(--ink);margin:0;font-family:Alexandria,system-ui,sans-serif;line-height:1.5}
html[data-theme=light] .content-page{--paper:#faf8f3;--panel:#f0eee8;--ink:#20242a;--muted:#626970;--gold:#926700}
.content-page *,.service-guide *{box-sizing:border-box}.content-page a{color:inherit;text-decoration:none}.content-page a:focus-visible,.service-guide a:focus-visible{outline:2px solid #efb434;outline-offset:5px}.content-header,.content-footer{max-width:1280px;margin:auto;padding:30px 40px;display:flex;align-items:center;gap:28px;justify-content:space-between}.content-header nav{display:flex;gap:28px;align-items:center;font-size:13px}.content-header img,.content-footer img{object-fit:contain}.project-story{max-width:1200px;margin:auto;padding:32px 40px 0}.breadcrumbs{display:flex;flex-wrap:wrap;gap:12px;color:var(--muted);font-size:12px}.content-kicker{font-size:11px;letter-spacing:1px;color:var(--gold);margin-bottom:22px}.story-heading{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:64px;padding:65px 0}.story-heading h1{font-size:clamp(32px,5vw,68px);line-height:1.35;margin:0 0 24px;font-weight:700}.story-subtitle{font-size:22px;margin:0 0 20px}.story-summary{color:var(--muted);font-size:15px;line-height:2.1}.story-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.story-tags span{font-size:10px;padding:7px 14px;border:1px solid #8883;border-radius:30px}.story-facts{background:var(--panel);padding:30px;border-radius:20px;align-self:start}.story-facts dt{font-size:11px;color:var(--muted);margin-top:20px}.story-facts dd{margin:4px 0 0;font-size:14px}.content-button{display:inline-flex;background:#efb434;color:#101215!important;padding:12px 22px;border-radius:10px;font-size:13px;font-weight:600;text-decoration:none}.story-facts .content-button{margin:24px 0 14px}.content-text-link{display:block;font-size:12px}.story-features,.story-images,.story-related{padding:45px 0}.project-story h2,.service-guide h2{font-size:clamp(24px,3vw,38px);line-height:1.55;margin:0 0 30px}.content-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.content-grid article,.related-card{background:var(--panel);padding:26px;border-radius:16px;min-width:0}.content-grid h3{font-size:16px;line-height:1.8;margin:16px 0}.feature-number{color:var(--gold);font-size:12px}.section-heading{display:flex;justify-content:space-between;gap:28px;align-items:end}.section-heading>p{max-width:320px;font-size:12px;color:var(--muted)}.image-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;align-items:start}.image-grid figure{margin:0;min-width:0}.image-grid figure:first-child{grid-column:1/-1}.project-image-loader{position:relative;background:var(--panel);border-radius:16px;min-height:180px;overflow:hidden}.loader-brand{position:absolute;top:70px;left:calc(50% - 60px);opacity:.5}.project-screen{display:block;width:100%;height:auto;position:relative;opacity:1;transition:opacity .3s}.project-screen.is-loaded{opacity:1}.image-grid figcaption{font-size:12px;color:var(--muted);display:flex;justify-content:space-between;gap:20px;padding:16px 4px}.image-grid.app-images{grid-template-columns:repeat(3,minmax(0,1fr))}.app-images figure:first-child{grid-column:auto}.related-card{display:block;transition:transform .2s}.related-card:hover{transform:translateY(-4px)}.related-card span,.related-card p{font-size:12px;color:var(--muted)}.content-cta{padding:55px 40px;background:var(--panel);border-radius:22px;margin:50px 0 60px}.content-cta p{max-width:700px}.content-footer{font-size:11px;color:var(--muted);flex-wrap:wrap}.skip-content{position:absolute;top:-100px}.skip-content:focus{top:10px;left:10px;background:#efb434;padding:10px;z-index:10}.service-guide{--panel:#171a1e;--muted:#a4a9b0;--gold:#efb434;font-family:Alexandria,Arial,sans-serif;color:#f5f1e8;max-width:1200px;margin:40px auto;padding:45px 40px;line-height:2}.service-guide .content-grid{margin:32px 0}.service-guide p{font-size:14px}.service-guide details{padding:20px 0;border-bottom:1px solid #8883}.service-guide summary{cursor:pointer;font-size:16px}.service-guide a{color:inherit;text-decoration:none}.service-guide .guide-links{display:flex;flex-wrap:wrap;gap:20px;margin-top:28px}.service-guide .guide-links a{color:#efb434}.service-guide .guide-intro{max-width:850px}.service-guide .guide-intro p{color:var(--muted)}html[data-theme=light] .service-guide{--panel:#f0eee8;--muted:#626970;--gold:#926700;color:#20242a}
@media(max-width:760px){.content-header,.content-footer{padding:24px;gap:20px}.content-header{align-items:start}.content-header nav{flex-wrap:wrap;justify-content:flex-end;gap:12px;font-size:11px}.content-header img{width:95px}.project-story{padding:22px}.story-heading{grid-template-columns:1fr;gap:28px;padding:35px 0}.story-facts{width:100%}.content-grid{grid-template-columns:1fr}.image-grid{grid-template-columns:1fr}.section-heading{display:block}.image-grid.app-images{grid-template-columns:repeat(2,minmax(0,1fr))}.content-cta{padding:30px 24px}.service-guide{padding:30px 24px}.story-subtitle{font-size:18px}}
@media(prefers-reduced-motion:reduce){.project-screen,.related-card{transition:none}}

/* The project pages mount the same public chrome as PublicSiteLayout.vue. */
.content-page .project-story{padding-top:130px}.brmji-public-domain .brmji-client-button{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 12px;border:1px solid #dca92f66;border-radius:30px;color:#f6bd42;font-size:12px;white-space:nowrap}.brmji-public-domain .brmji-client-button:hover{background:#dca92f15}.brmji-public-domain .brmji-shared-public-shell svg{width:revert;height:revert}.brmji-public-domain .brmji-theme-toggle svg{width:16px;height:16px}@media(max-width:480px){.content-page .project-story{padding-top:110px}.brmji-public-domain .brmji-client-button{font-size:10px;padding:0 8px}}
/* Service details follow the native hero; FAQ and portfolio mount before the final CTA. */
.brmji-service-detail>.service-guide{max-width:none;margin:0;padding:52px 0;border-top:1px solid #8882;min-width:0}.brmji-service-detail>.service-guide .guide-intro{max-width:920px}.brmji-service-detail .brmji-breadcrumb{display:none}.service-guide .guide-links{font-size:12px;margin-top:30px}.service-guide .content-kicker{color:var(--gold);font-size:10px;letter-spacing:1.6px}.service-guide .guide-intro h2{font-size:clamp(25px,3vw,38px)}.service-guide .guide-intro p{line-height:2.1}.service-guide .guide-faq,.service-guide .guide-portfolio{margin:0}.guide-faq details p{color:var(--muted);max-width:900px}.portfolio-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}.portfolio-heading h2{margin:0}.service-guide .portfolio-all{color:var(--gold);font-size:12px;white-space:nowrap}.portfolio-viewport{display:flex;gap:22px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding:4px 2px 12px}.portfolio-viewport::-webkit-scrollbar{display:none}.portfolio-slide{flex:0 0 calc((100% - 44px)/3);min-width:0;scroll-snap-align:start;border:1px solid #8883;border-radius:18px;overflow:hidden;background:var(--panel)}.portfolio-preview{aspect-ratio:1.5;overflow:hidden;background:#ffffff08}.portfolio-preview img{display:block;width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .5s}.portfolio-slide:hover img{transform:scale(1.035)}.portfolio-caption{padding:22px}.portfolio-caption>span{color:var(--gold);font-size:10px}.portfolio-caption h3{display:flex;justify-content:space-between;gap:14px;font-size:19px;line-height:1.6;margin:12px 0}.portfolio-caption p{font-size:12px;line-height:1.9;color:var(--muted);margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.portfolio-controls{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:18px}.portfolio-controls>div{display:flex;gap:10px}.portfolio-controls button{font:inherit;color:inherit;background:transparent;border:1px solid #8884;border-radius:999px;min-width:44px;min-height:44px;cursor:pointer;padding:8px 16px}.portfolio-controls button:hover{border-color:var(--gold);color:var(--gold)}.portfolio-controls [data-slide=pause]{font-size:11px}.portfolio-controls button:focus-visible,.portfolio-viewport:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
@media(max-width:900px){.portfolio-slide{flex-basis:calc((100% - 22px)/2)}}@media(max-width:600px){.brmji-service-detail>.service-guide{padding:38px 0}.portfolio-slide{flex-basis:86%}.portfolio-heading{align-items:flex-start;gap:12px}.portfolio-heading h2{font-size:26px}.portfolio-all{padding-top:8px}.portfolio-caption{padding:18px}.portfolio-controls{margin-top:10px}.service-guide .content-grid{gap:16px}}
@media(prefers-reduced-motion:reduce){.portfolio-preview img{transition:none}.portfolio-viewport{scroll-behavior:auto}}
.portfolio-slide[data-preview-type="applications"] .portfolio-preview img{object-fit:contain;padding:14px}

/* Public chrome inherits the same typography as the main website. */
html[dir=ltr] .content-page{font-family:Space Grotesk,Alexandria,system-ui,sans-serif}.project-story,.policy-content{line-height:1.9}
