@media (max-width: 1240px) {
    :root { --container: 1120px; --header-height: 84px; }
    .container { width: min(calc(100% - 40px), var(--container)); }
    .header-utility { display: none; }
    .primary-nav { gap: 18px; }
    .primary-nav > ul { gap: 20px; }
    .primary-nav > ul > li > a { min-height: 84px; font-size: .7rem; }
    .primary-nav > ul > li > a::after { bottom: 19px; }
    .brand { width: 150px; flex-basis: 150px; }
    .header-cta { display: none; }
    .mega-panel { right: -210px; }
    .hero-home { min-height: 820px; }
    .hero-content { grid-template-columns: 1fr 230px; padding-top: 95px; }
    .section { padding: 100px 0; }
    .editorial-split, .story-grid, .leadership-layout, .expertise-intro-grid, .sector-proof-grid { gap: 70px; }
    .services-grid, .services-grid-all { grid-template-columns: repeat(3, 1fr); }
    .method-timeline li { padding-right: 20px; }
    .project-image { height: 285px; }
    .project-card-large .project-image { height: 615px; }
    .values-grid { grid-template-columns: repeat(3, 1fr); }
    .values-grid .value-card:nth-last-child(-n+2) { min-height: 260px; }
    .projects-masonry { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 1024px) {
    :root { --header-height: 78px; }
    .section { padding: 86px 0; }
    h2 { font-size: clamp(2.2rem, 5.5vw, 3.8rem); }
    .site-header, .site-header.is-transparent, .site-header.is-sticky { position: fixed; inset: 0 0 auto; background: var(--white); color: var(--navy); box-shadow: 0 8px 30px rgba(16,26,51,.1); }
    .is-transparent .brand-dark { display: block; }
    .is-transparent .brand-light { display: none; }
    .header-inner { min-height: 78px; }
    .brand img { height: 58px; }
    .menu-toggle { position: relative; z-index: 1002; width: 48px; height: 48px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; cursor: pointer; }
    .menu-toggle span:not(.sr-only) { width: 24px; height: 2px; background: var(--navy); transition: transform .3s ease, opacity .3s ease; }
    .menu-toggle[aria-expanded="true"] span:nth-of-type(2) { transform: translateY(8px) rotate(45deg); }
    .menu-toggle[aria-expanded="true"] span:nth-of-type(3) { opacity: 0; }
    .menu-toggle[aria-expanded="true"] span:nth-of-type(4) { transform: translateY(-8px) rotate(-45deg); }
    .primary-nav { position: fixed; z-index: 1001; inset: 78px 0 0; display: block; padding: 25px 28px 50px; overflow-y: auto; background: var(--white); color: var(--navy); transform: translateX(100%); transition: transform .4s var(--ease); }
    .primary-nav.open { transform: translateX(0); }
    .primary-nav > ul { display: block; }
    .primary-nav > ul > li { border-bottom: 1px solid var(--line); }
    .primary-nav > ul > li > a { min-height: 62px; padding-right: 50px; font-size: .95rem; }
    .primary-nav > ul > li > a::after { display: none; }
    .submenu-toggle { position: absolute; z-index: 2; top: 8px; right: 0; width: 46px; height: 46px; display: grid; place-items: center; border: 0; background: transparent; color: var(--navy); cursor: pointer; }
    .submenu-toggle[aria-expanded="true"] { transform: rotate(45deg); }
    .submenu, .mega-panel { position: static; width: 100%; display: none; padding: 0 0 18px 18px; background: transparent; box-shadow: none; opacity: 1; pointer-events: auto; transform: none; }
    .submenu.open { display: block; }
    .mega-panel { grid-template-columns: 1fr; }
    .mega-intro { display: none; }
    .mega-links { grid-template-columns: 1fr; padding: 0; }
    .mega-links a, .compact-submenu li a { padding: 10px 0; border: 0; font-size: .78rem; }
    .header-cta { display: inline-flex; margin-top: 28px; }
    .hero-home { min-height: 760px; padding-top: 78px; }
    .hero-content { grid-template-columns: 1fr; align-items: center; padding-top: 30px; }
    .hero-copy { max-width: 790px; }
    .hero-copy h1 { font-size: clamp(3.1rem, 8vw, 5.7rem); }
    .hero-since { display: none; }
    .hero-wireframe { right: -20%; width: 85vw; opacity: .37; }
    .credibility-grid { grid-template-columns: repeat(2, 1fr); }
    .credibility-grid > div:nth-child(2) { border-right: 0; }
    .credibility-grid > div:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
    .split-heading, .editorial-split, .story-grid, .leadership-layout, .expertise-intro-grid, .sector-proof-grid, .admin-layout, .principles-layout, .detail-columns, .project-narrative-grid, .project-visual-grid, .schema-layout, .contact-layout { grid-template-columns: 1fr; gap: 50px; }
    .editorial-image { max-width: 670px; }
    .image-frame-tall { height: 550px; }
    .services-grid, .services-grid-all { grid-template-columns: repeat(2, 1fr); }
    .method-timeline { grid-template-columns: repeat(3, 1fr); gap: 35px 0; }
    .method-timeline::before { display: none; }
    .featured-project-grid { grid-template-columns: 1fr 1fr; }
    .project-card-large { grid-row: auto; grid-column: span 2; }
    .project-card-large .project-image { height: 520px; }
    .sectors-layout { grid-template-columns: 1fr; gap: 50px; }
    .sticky-heading, .contact-info, .prose-nav { position: static; }
    .africa-layout { gap: 50px; }
    .inner-hero { min-height: 460px; padding-top: 78px; }
    .values-grid { grid-template-columns: repeat(2, 1fr); }
    .org-branches { grid-template-columns: 1fr 1fr; }
    .org-technical { grid-column: span 2; }
    .compact-process { grid-template-columns: repeat(3, 1fr); }
    .project-grid-three { grid-template-columns: repeat(2, 1fr); }
    .projects-toolbar { display: block; }
    .filter-buttons { justify-content: flex-start; margin-top: 30px; }
    .projects-masonry { grid-template-columns: repeat(2, 1fr); }
    .project-card-wide { grid-column: span 2; }
    .project-detail-hero { min-height: 650px; padding-top: 78px; }
    .project-facts-grid { grid-template-columns: repeat(2, 1fr); }
    .project-facts-grid > div:nth-child(2) { border-right: 0; }
    .project-facts-grid > div:nth-child(-n+2) { border-bottom: 1px solid rgba(255,255,255,.15); }
    .sector-catalog-grid { grid-template-columns: repeat(2, 1fr); }
    .leaders-grid { grid-template-columns: 1fr; }
    .contact-info { max-width: 600px; }
    .footer-grid { grid-template-columns: 1.2fr .8fr .8fr; }
    .footer-grid > div:last-child { grid-column: span 3; }
}

@media (max-width: 768px) {
    .container { width: min(calc(100% - 32px), var(--container)); }
    .section { padding: 72px 0; }
    h1 { font-size: clamp(2.65rem, 11vw, 4.4rem); }
    h2 { font-size: clamp(2rem, 9vw, 3.3rem); }
    .eyebrow { margin-bottom: 18px; }
    .split-heading { gap: 28px; }
    .section-heading { margin-bottom: 40px; }
    .hero-home { min-height: 720px; }
    .hero-media img { object-position: 58% center; }
    .hero-overlay { background: linear-gradient(90deg, rgba(9,17,36,.96), rgba(9,17,36,.78)), linear-gradient(0deg, rgba(9,17,36,.6), transparent); }
    .hero-copy .eyebrow { display: flex; flex-wrap: wrap; margin-bottom: 25px; }
    .hero-copy h1 { margin-bottom: 23px; font-size: clamp(3rem, 12vw, 4.7rem); }
    .hero-copy p { font-size: .95rem; }
    .hero-actions { align-items: stretch; flex-direction: column; max-width: 360px; }
    .scroll-indicator { display: none; }
    .credibility-grid { grid-template-columns: 1fr; }
    .credibility-grid > div { min-height: 100px; padding: 20px 24px; border-right: 0; border-bottom: 1px solid var(--line); }
    .credibility-grid > div:last-child { border-bottom: 0; }
    .image-frame-tall { height: 470px; }
    .image-caption { position: relative; right: auto; bottom: auto; min-width: 0; box-shadow: none; border: 1px solid var(--line); }
    .principles-row { grid-template-columns: 1fr; }
    .services-grid, .services-grid-all { grid-template-columns: 1fr; }
    .service-card { min-height: 340px; }
    .service-card-top { margin-bottom: 40px; }
    .method-timeline { grid-template-columns: 1fr; gap: 0; }
    .method-timeline li { display: grid; grid-template-columns: 70px 1fr; column-gap: 20px; padding: 0 0 25px; }
    .method-timeline li span { grid-row: span 2; width: 58px; height: 58px; margin-bottom: 0; }
    .featured-project-grid { grid-template-columns: 1fr; }
    .project-card-large { grid-column: auto; }
    .project-card-large .project-image, .project-image { height: 380px; }
    .sector-row { grid-template-columns: 42px 1fr 24px; }
    .sector-row strong { font-size: 1rem; }
    .africa-layout { grid-template-columns: 1fr; }
    .africa-map-wrap { max-width: 410px; }
    .inner-hero { min-height: 430px; }
    .inner-hero h1 { font-size: clamp(2.6rem, 11vw, 4.4rem); }
    .story-visual img, .leadership-image img, .expertise-image img, .sector-proof-image img { height: 460px; }
    .floating-note, .leadership-image > span, .expertise-image span { right: 0; }
    .mission-grid { grid-template-columns: 1fr; }
    .mission-grid article { padding: 42px 30px; }
    .values-grid { grid-template-columns: 1fr; }
    .value-card { min-height: 250px; }
    .value-card h3 { margin-top: 45px; }
    .admin-list > div { grid-template-columns: 1fr; gap: 5px; }
    .org-root { width: min(100%, 320px); }
    .org-branches { grid-template-columns: 1fr; }
    .org-technical { grid-column: auto; }
    .org-branches::before { display: none; }
    .org-branches > .org-node::before { display: none; }
    .org-subbranches { grid-template-columns: 1fr; }
    .principle-cards { grid-template-columns: 1fr; }
    .detail-intro-grid { grid-template-columns: 1fr; gap: 45px; }
    .detail-icon { width: 180px; height: 180px; }
    .compact-process { grid-template-columns: repeat(2, 1fr); }
    .project-grid-three { grid-template-columns: 1fr; }
    .projects-masonry { grid-template-columns: 1fr; }
    .project-card-wide { grid-column: auto; }
    .project-card-wide .project-image { height: 400px; }
    .project-detail-hero { min-height: 600px; }
    .project-detail-heading { padding-bottom: 45px; }
    .project-facts-grid { grid-template-columns: 1fr; }
    .project-facts-grid > div { min-height: 95px; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.15); }
    .control-loop { grid-template-columns: 1fr; justify-items: center; gap: 10px; }
    .control-loop div { width: 145px; }
    .control-loop i { width: 1px; height: 25px; }
    .sector-catalog-grid { grid-template-columns: 1fr; }
    .sector-catalog-card { min-height: 350px; }
    .department-grid { grid-template-columns: 1fr; }
    .form-grid { grid-template-columns: 1fr; }
    .form-field-full { grid-column: auto; }
    .contact-form-card { padding: 35px 25px; }
    .prose-layout { grid-template-columns: 1fr; gap: 50px; }
    .prose-nav { display: none; }
    .prose-article dl div { grid-template-columns: 1fr; gap: 5px; }
    .prefooter-inner { grid-template-columns: 1fr; gap: 35px; }
    .footer-grid { grid-template-columns: 1fr 1fr; }
    .footer-brand, .footer-grid > div:last-child { grid-column: span 2; }
    .whatsapp-button span { display: none; }
    .whatsapp-button { width: 52px; padding: 0; justify-content: center; }
}

@media (max-width: 480px) {
    .container { width: min(calc(100% - 24px), var(--container)); }
    .section { padding: 62px 0; }
    .brand { width: 138px; flex-basis: 138px; }
    .primary-nav { padding-inline: 20px; }
    .hero-home { min-height: 690px; }
    .hero-copy h1 { font-size: clamp(2.7rem, 13.2vw, 3.75rem); }
    .hero-copy .eyebrow i { display: none; }
    .hero-copy .eyebrow { gap: 5px 10px; }
    .image-frame-tall { height: 390px; }
    .project-card-large .project-image, .project-image, .project-card-wide .project-image { height: 310px; }
    .country-list { grid-template-columns: 1fr; }
    .map-point { font-size: .53rem; padding: 5px 6px; }
    .inner-hero { min-height: 410px; }
    .inner-hero-content { padding-top: 55px; }
    .breadcrumbs { margin-bottom: 24px; }
    .story-visual img, .leadership-image img, .expertise-image img, .sector-proof-image img { height: 360px; }
    .compact-process { grid-template-columns: 1fr; }
    .compact-process li { min-height: 130px; }
    .compact-process li span { margin-bottom: 30px; }
    .feature-list li { grid-template-columns: 45px 1fr; font-size: .95rem; }
    .filter-buttons { flex-wrap: nowrap; padding-bottom: 8px; overflow-x: auto; }
    .filter-buttons button { flex: 0 0 auto; }
    .project-detail-hero { min-height: 540px; }
    .method-detail-list li { grid-template-columns: 48px 1fr; gap: 15px; }
    .leader-card { grid-template-columns: 70px 1fr; padding: 22px; }
    .leader-initials { width: 70px; height: 70px; }
    .contact-info { padding: 32px 25px; }
    .contact-form-card h2 { font-size: 2rem; }
    .error-content > div { flex-direction: column; }
    .footer-grid { grid-template-columns: 1fr; }
    .footer-brand, .footer-grid > div:last-child { grid-column: auto; }
    .footer-bottom { align-items: flex-start; flex-direction: column; justify-content: center; padding: 20px 0; }
}

@media (max-width: 360px) {
    .hero-copy h1 { font-size: 2.55rem; }
    .btn { width: 100%; padding-inline: 15px; }
    .service-card { padding: 26px; }
    .map-point { transform: scale(.9); transform-origin: left center; }
    .point-bj { transform: translateY(30px) scale(.9); }
}

