:root{
  --font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  --font-mono:"SFMono-Regular","Cascadia Mono",Consolas,monospace;
  --bg:#f4f6f7;
  --paper:#ffffff;
  --panel:#eef2f3;
  --ink:#171b1e;
  --muted:#56636a;
  --subtle:#67747b;
  --line:#d4dadd;
  --dark:#18242d;
  --dark-2:#10171b;
  --accent:#9ab2bf;
  --accent-dark:#294d63;
  --max:1180px;
  --header:76px;
  --radius:4px;
  --focus:0 0 0 3px rgba(122,157,176,.34);
  /* Escala espacial pública */
  --space-1:4px;
  --space-2:8px;
  --space-3:12px;
  --space-4:16px;
  --space-5:24px;
  --space-6:32px;
  --space-7:40px;
  --space-8:48px;
  --space-9:64px;
  --space-10:80px;
  --space-11:96px;
  --space-12:120px;
  --component-gap:var(--space-3);
  --block-gap:var(--space-7);
  --section-gap:var(--space-9);
  --section-transition:40px;
  --page-gutter:var(--space-8);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scrollbar-gutter:stable}
html,body{margin:0;padding:0}
body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body.menu-open{overflow:hidden}
img{display:block;max-width:100%;height:auto}
figure{margin:0}
a{color:inherit}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
:focus-visible{outline:none;box-shadow:var(--focus)}
::selection{background:var(--accent);color:var(--ink)}
.container{width:min(calc(100% - 64px),var(--max));margin-inline:auto}
.skip-link{position:fixed;left:16px;top:16px;z-index:2000;transform:translateY(-180%);padding:var(--space-3) var(--space-4);background:var(--ink);color:#fff;text-decoration:none;font:600 12px/1 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}
.skip-link:focus{transform:none}

.eyebrow,.kicker{margin:0;color:#5f6c73;font:600 11px/1.3 var(--font-mono);letter-spacing:.1em;text-transform:uppercase}

.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:var(--space-4);min-height:50px;padding:0 var(--space-4);border:1px solid var(--ink);border-radius:var(--radius);text-decoration:none;font:600 11px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;transition:background-color .18s ease,color .18s ease,border-color .18s ease}
.btn:hover{transform:none}
.btn-dark{background:var(--ink);color:#fff}
.btn-dark:hover{background:#2b3338;border-color:#2b3338}
.btn-outline{background:transparent;color:var(--ink);border-color:#aeb7bb;margin-left:8px}
.btn-outline:hover{background:#eef2f3;border-color:#7f8b90}
.btn-light{background:#fff;color:var(--ink);border-color:#fff}

/* Ritmo de sección: componente → bloque → sección */
.section{padding-block:var(--section-gap);background:var(--paper);scroll-margin-top:var(--header)}
.section + .section{padding-top:var(--section-transition)}
.section-pale{background:var(--panel)}
.section-intro{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);gap:var(--space-9);align-items:start;margin-bottom:var(--block-gap)}

.section-intro h2{margin:var(--space-4) 0 0;font-size:clamp(42px,5vw,70px);line-height:.98;letter-spacing:-.045em;font-weight:500}
.section-intro h2 strong{font-weight:500}
.section-intro>p,.section-copy{max-width:560px;color:#4f5c64;font-size:18px;line-height:1.6}
.section-copy p{margin:0 0 var(--space-4)}

.text-link{display:inline-flex;align-items:center;gap:var(--space-3);text-decoration:none;font:600 11px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid currentColor;padding-bottom:var(--space-2)}
.text-link:hover{color:#4c5b62}

.timeline{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.timeline article{min-height:220px;padding:var(--space-5);border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.timeline span{display:block;color:#6b7880;font:600 12px/1 var(--font-mono);letter-spacing:.08em}
.timeline h3{margin:var(--space-7) 0 var(--space-3);font-size:24px;line-height:1.1;font-weight:500}
.timeline p{margin:0;color:#5b6870;font-size:14px;line-height:1.5}

.philosophy-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.philosophy-grid article{min-height:220px;padding:var(--space-5);border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.philosophy-grid span{display:block;color:#6b7880;font:600 12px/1 var(--font-mono)}
.philosophy-grid h3{margin:var(--space-8) 0 var(--space-3);font-size:22px;font-weight:500}
.philosophy-grid p{margin:0;color:#5a666e;font-size:14px}

.service-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.service-card{min-height:280px;padding:var(--space-5) var(--space-5) var(--space-5);border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;gap:var(--space-5)}
.service-number{flex:0 0 42px;color:#6b7880;font:600 12px/1 var(--font-mono);padding-top:3px}
.service-content h3{margin:0;font-size:27px;line-height:1.06;font-weight:500;letter-spacing:-.02em}
.service-content p{max-width:520px;margin:var(--space-3) 0 var(--space-6);color:#5a666e;font-size:15px}

.sector-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.sector-card{min-height:108px;padding:var(--space-4) var(--space-5);display:grid;grid-template-columns:38px 42px minmax(0,1fr) 28px;align-items:center;gap:var(--space-3);border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-decoration:none}
.sector-card:hover{background:#e6ebed}
.sector-index{color:#6b7880;font:600 11px/1 var(--font-mono)}
.sector-card strong{font-size:17px;font-weight:500;line-height:1.2}
.sector-arrow{justify-self:end;font-size:17px;color:#4f5d65}

.people-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.person-card{min-height:230px;padding:var(--space-5);border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.person-card img{width:96px;height:96px;object-fit:cover;filter:grayscale(1);margin-bottom:var(--space-5)}
.person-card>span{display:block;color:#6b7880;font:500 10px/1.35 var(--font-mono);letter-spacing:.04em;text-transform:uppercase}
.person-card h3{margin:var(--space-3) 0 var(--space-1);font-size:20px;line-height:1.15;font-weight:500}
.person-card p{margin:0;color:#5a666e;font-size:13px}
.person-card__bio{margin-top:14px;padding-top:14px;border-top:1px solid var(--line);color:#5a666e;font-size:13px;line-height:1.55}

details{border-bottom:1px solid var(--line)}
summary{list-style:none;position:relative;padding:var(--space-5) 50px var(--space-5) 0;font-size:19px;font-weight:500;cursor:pointer}
summary::-webkit-details-marker{display:none}
summary:after{content:"+";position:absolute;right:0;top:18px;font:500 20px/1 var(--font-mono)}
details[open] summary:after{content:"−"}
details p{max-width:760px;margin:0;padding:0 50px var(--space-5) 0;color:#59666d;font-size:15px}

.contact-section{padding-bottom:var(--space-9)}

.contact-data{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.contact-data>div{padding:var(--space-4) var(--space-5) var(--space-4) 0;border-right:1px solid var(--line)}
.contact-data>div+div{padding-left:var(--space-5)}
.contact-data>div:last-child{border-right:0}
.contact-data span{display:block;color:#6b7880;font:600 10px/1.3 var(--font-mono);letter-spacing:.09em;text-transform:uppercase}
.contact-data strong,.contact-data a{display:block;margin-top:var(--space-2);font-size:15px;text-decoration:none}
.contact-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:var(--space-7);align-items:stretch}
.map-wrap{min-height:540px;border:1px solid var(--line);background:#dde3e5}
.map-wrap iframe{display:block;width:100%;height:100%;min-height:540px;border:0;filter:grayscale(1) contrast(1.04)}
.lead-panel{border:1px solid var(--line);background:#fff}
.lead-panel-head{min-height:56px;padding:0 var(--space-4);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);font:600 10px/1 var(--font-mono);letter-spacing:.08em}
.lead-panel-head strong{color:#5d6a71}
.lead-form{padding:var(--space-5)}
.lead-form label{display:block;color:#59666d;font:600 10px/1.3 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}
.lead-form input,.lead-form select,.lead-form textarea{display:block;width:100%;margin-top:8px;padding:12px 13px;border:1px solid #bfc7cb;border-radius:var(--radius);background:#fff;color:var(--ink);font:400 15px/1.4 var(--font-sans)}
.lead-form textarea{min-height:132px;resize:vertical}
.lead-form input:hover,.lead-form select:hover,.lead-form textarea:hover{border-color:#8f9ba1}
.lead-form input:focus-visible,.lead-form select:focus-visible,.lead-form textarea:focus-visible{box-shadow:var(--focus);border-color:#789fb5}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);margin-bottom:var(--space-3)}
.lead-form>label{margin-bottom:var(--space-3)}
.honeypot{position:absolute;left:-99999px;width:1px;height:1px;overflow:hidden}
.lead-submit{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:54px;padding:0 var(--space-4);border:1px solid var(--ink);border-radius:var(--radius);background:var(--ink);color:#fff;font:600 11px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase}
.lead-submit:hover{background:#2b3338}
.feedback-wrap{margin-bottom:var(--space-5)}
.feedback{padding:var(--space-3) var(--space-4);border:1px solid var(--line);font-size:14px}
.feedback.success{background:#eef4f7;border-color:#b7c9d3}
.feedback.error{background:#fbf2f2;border-color:#d7b4b4}

.closing-band{display:grid;grid-template-columns:1fr auto;gap:var(--space-7);align-items:end;padding-top:var(--space-5);border-top:1px solid var(--line)}
.closing-band h2{margin:var(--space-3) 0 0;font-size:clamp(42px,5vw,70px);line-height:.98;letter-spacing:-.045em;font-weight:500}



.footer{padding:var(--space-7) 0 var(--space-5);background:#0b1012;color:#fff;border-top:1px solid rgba(255,255,255,.12)}

.breadcrumb{padding:var(--space-4) 0;font:500 11px/1.4 var(--font-mono);color:#67747b}
.breadcrumb a{text-decoration:none}
.breadcrumb span{padding:0 var(--space-2)}
.page-hero,.detail-hero{background:var(--dark);color:#fff}
.page-hero{padding:var(--space-11) 0 var(--space-12)}
.page-hero .kicker,.detail-hero .kicker{color:#9ca8ad}
.page-hero h1,.detail-hero h1{max-width:860px;margin:var(--space-4) 0 var(--space-5);font-size:clamp(54px,6.2vw,90px);line-height:.94;letter-spacing:-.055em;font-weight:500}
.page-hero h1 strong,.detail-hero h1 strong{font-weight:500}
.page-hero p,.detail-hero p{max-width:680px;margin:0;color:#c0c9ce;font-size:19px;line-height:1.5}
.detail-hero{padding:var(--space-11) 0}
.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:var(--space-9)}
.detail-number{align-self:end;border-left:1px solid rgba(255,255,255,.22);padding:var(--space-4) 0 var(--space-4) var(--space-5)}
.detail-number span{display:block;font:600 54px/1 var(--font-mono);color:#d9e1e4}
.detail-number small{display:block;margin-top:10px;color:#a3adb2;font-size:12px}
.detail-content{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:var(--space-10)}
.detail-content h2{margin:var(--space-4) 0 0;font-size:clamp(42px,4.6vw,64px);line-height:1;letter-spacing:-.04em;font-weight:500}
.detail-image{width:100%;margin-bottom:var(--space-5);border:1px solid var(--line);filter:grayscale(1)}
.detail-copy{color:#4e5b63;font-size:18px;line-height:1.7;white-space:normal}
.detail-rule{margin:var(--space-5) 0;border-top:1px solid var(--line)}
.detail-meta{margin:0;color:#69767d;font:600 10px/1.4 var(--font-mono);letter-spacing:.08em}
.related{display:flex;justify-content:space-between;align-items:end;gap:var(--space-7)}
.error-page{padding:var(--space-12) 0}
.error-page h1{margin:var(--space-3) 0;font-size:clamp(46px,6vw,76px);line-height:1}
.error-page p:not(.kicker){max-width:600px;color:#5a676f;font-size:18px}

@media(max-width:900px){
  :root{--header:68px}
  .container{width:min(calc(100% - 40px),var(--max))}
  .desktop-nav{display:none}

  .menu-close{width:44px;height:44px;border:1px solid rgba(255,255,255,.26);background:transparent;color:#fff;font-size:28px;line-height:1}

  :root{--section-gap:48px;--section-transition:32px}
  .section{scroll-margin-top:var(--header)}
  .section-intro{grid-template-columns:1fr;gap:var(--space-5);margin-bottom:var(--block-gap)}
  .section-intro h2{font-size:clamp(40px,10vw,58px)}
  .section-intro>p,.section-copy{font-size:17px}
  .timeline,.service-grid,.sector-grid,.people-grid,.philosophy-grid{grid-template-columns:1fr 1fr}
  .timeline article{min-height:200px;padding:var(--space-5)}
  .philosophy-grid article{min-height:200px;padding:var(--space-5)}
  .service-card{min-height:250px;padding:var(--space-5)}
  .service-content h3{font-size:23px}
  .people-grid-page{grid-template-columns:1fr 1fr}
  .contact-data{grid-template-columns:1fr}
  .contact-data>div{border-right:0;border-bottom:1px solid var(--line);padding:var(--space-4) 0!important}
  .contact-data>div:last-child{border-bottom:0}
  .contact-grid{grid-template-columns:1fr;gap:var(--space-5)}
  .map-wrap,.map-wrap iframe{min-height:420px}

  .page-hero{padding:var(--space-11) 0}
  .page-hero h1,.detail-hero h1{font-size:clamp(50px,12vw,72px)}
  .detail-grid{grid-template-columns:1fr;gap:var(--space-6)}
  .detail-number{align-self:start}
  .detail-content{grid-template-columns:1fr;gap:var(--space-7)}
  .detail-copy{font-size:17px}
  .related{align-items:flex-start;flex-direction:column}
  .closing-band{grid-template-columns:1fr}
}
@media(max-width:560px){
  .container{width:calc(100% - 28px)}
  .nav-shell{min-height:64px}
  .brand img{width:94px}

  :root{--section-gap:48px;--section-transition:32px}
  .section-intro h2{font-size:41px}
  .timeline,.service-grid,.sector-grid,.people-grid,.philosophy-grid{grid-template-columns:1fr}
  .timeline article,.service-card,.philosophy-grid article{min-height:auto}
  .service-card{display:block}
  .service-number{margin-bottom:var(--space-7)}
  .service-content p{margin-bottom:var(--space-5)}
  .people-grid-page{grid-template-columns:1fr}
  .person-card{min-height:0}

  .detail-hero{padding:var(--space-9) 0}
  .detail-number span{font-size:46px}
  .lead-form{padding:var(--space-4)}
  .form-row{grid-template-columns:1fr;gap:var(--space-4)}
  .map-wrap,.map-wrap iframe{min-height:360px}
  .contact-section{padding-bottom:var(--space-8)}
  .footer{padding-top:var(--space-7)}

}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}

/* ==========================================================================
   PUBLIC DESIGN TOKENS / EDITORIAL FOUNDATION
   ========================================================================== */
:root{
  --bma-ink:#102331;
  --bma-ink-soft:#304653;
  --bma-steel:#5d7f92;
  --bma-steel-deep:#294d63;
  --bma-paper:#fbfbf8;
  --bma-stone:#f2f1ed;
  --bma-line:#dcdedc;
  --bma-line-strong:#c8ccca;
  --bma-muted:#65737b;
  --bma-max:1680px;
  --bma-gutter:clamp(22px,3.2vw,56px);
  --bma-radius:2px;
}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Header refinado */
.site-header{
  position:sticky;
  top:0;
  z-index:120;
  background:rgba(251,251,248,.92);
  border-bottom:1px solid rgba(16,35,49,.09);
  backdrop-filter:saturate(125%) blur(16px);
  -webkit-backdrop-filter:saturate(125%) blur(16px);
  transition:box-shadow .25s ease,background-color .25s ease;
}
.site-header.is-scrolled{background:rgba(251,251,248,.98);box-shadow:0 14px 42px rgba(16,35,49,.07)}
.nav-shell{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:clamp(16px,2.5vw,40px)}
.brand{display:inline-flex;align-items:center;text-decoration:none;flex:none}
.brand-mask{display:block;width:96px;height:36px;background:var(--bma-ink);-webkit-mask:url("/imagenes/logotipo.png") center/contain no-repeat;mask:url("/imagenes/logotipo.png") center/contain no-repeat}
.brand-mask--light{background:#fff;width:112px;height:42px}
.desktop-nav{margin-left:auto;display:flex;align-items:stretch;gap:clamp(18px,2.3vw,34px)}
.desktop-nav a{position:relative;display:inline-flex;align-items:center;min-height:44px;color:#263942;text-decoration:none;font-size:13px;font-weight:500;letter-spacing:.005em}
.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:6px;height:1px;background:var(--bma-steel);transition:right .24s ease}
.desktop-nav a:hover,.desktop-nav a[aria-current]{color:var(--bma-ink)}
.desktop-nav a:hover:after,.desktop-nav a[aria-current]:after{right:0}
.header-cta{display:inline-flex;align-items:center;gap:16px;min-height:42px;padding:0 18px;background:var(--bma-ink);color:#fff;text-decoration:none;border:1px solid var(--bma-ink);font:600 10px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;transition:background-color .2s ease,border-color .2s ease,transform .2s ease}
.header-cta:hover{background:var(--bma-steel-deep);border-color:var(--bma-steel-deep);transform:translateY(-1px)}

/* Home reset / canvas */
.home-page{background:var(--bma-paper);color:var(--bma-ink)}
.home-page .container{width:min(calc(100% - (var(--bma-gutter) * 2)),var(--bma-max))}
.home-container{width:min(calc(100% - (var(--bma-gutter) * 2)),var(--bma-max));margin-inline:auto}

/* Footer público */
.footer{background:#0d1d29;color:#dce4e8;padding:64px 0 30px;border:0}

/* Progressive reveal. Content remains visible without JS. */
.js-ready .reveal{opacity:0;transform:translateY(16px);transition:opacity .62s cubic-bezier(.2,.7,.2,1),transform .62s cubic-bezier(.2,.7,.2,1)}
.js-ready .reveal.is-visible{opacity:1;transform:none}

/* Existing internal pages receive cleaner global typography */
:not(.home-page) .page-hero{background:var(--bma-paper)}
:not(.home-page) .page-hero h1{color:var(--bma-ink)}





@media (max-width:900px){
  .desktop-nav,.header-cta{display:none}

}

@media (max-width:640px){
  :root{--bma-gutter:20px}
  .nav-shell{min-height:64px}
  .brand-mask{width:86px;height:32px}
  .site-header{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}

  .footer{padding-top:52px}

}



@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}

  .js-ready .reveal{opacity:1!important;transform:none!important;transition:none!important}
}



/* Cross-document continuity: progressive enhancement, no SPA required. */
@view-transition{navigation:auto}
@media(prefers-reduced-motion:reduce){::view-transition-group(*){animation-duration:0s!important}}

.bma-work__principles{display:none}

/* ==========================================================================
   BMA CORPORATE COMPONENT SYSTEM
   ========================================================================== */
:root{
  --bma-brand-navy:#17394d;
  --bma-brand-navy-deep:#0d2838;
  --bma-brand-steel:#5d7f92;
  --bma-brand-sky:#e4ecf0;
  --bma-brand-paper:#ffffff;
  --bma-brand-warm:#f7f9fa;
  --bma-brand-ink:#19364a;
  --bma-brand-copy:#5b6f7b;
  --bma-brand-line:#dbe3e7;
  --bma-content-max:1280px;
}
.home-page--bma{background:#fff;color:var(--bma-brand-ink)}
.home-page--bma .home-container,.bma-prefooter .home-container,.footer-v2 .home-container{width:min(calc(100% - clamp(40px,7vw,112px)),var(--bma-content-max));margin-inline:auto}
.home-page--bma .site-header{background:rgba(255,255,255,.97);border-bottom:1px solid rgba(13,40,64,.09)}
.home-page--bma .site-header.is-scrolled{background:rgba(255,255,255,.985);box-shadow:0 12px 36px rgba(5,37,65,.08)}

.home-page--bma .desktop-nav a{color:#18364d}
.home-page--bma .header-cta{background:var(--bma-brand-navy);border-color:var(--bma-brand-navy)}
.home-page--bma .header-cta:hover{background:#496b7e;border-color:#496b7e}

/* Canonical desktop header geometry — one coordinate system for every public route. */
@media (min-width:901px){
  .site-header .nav-shell{
    width:min(calc(100% - clamp(40px,7vw,128px)),1480px);
    min-height:68px;
    margin-inline:auto;
    display:grid;
    grid-template-columns:104px minmax(0,1fr) 166px;
    gap:clamp(16px,2.5vw,40px);
  }
  .site-header .brand{justify-self:start}
  .site-header .brand-mask{width:104px;height:36px;background:var(--bma-brand-navy)}
  .site-header .desktop-nav{margin-left:0;justify-self:end;gap:34px}
  .site-header .desktop-nav a{font-size:11px;letter-spacing:.01em}
  .site-header .header-cta{width:166px;min-width:166px;justify-content:center}
}

.bma-overline{margin:0;font:600 9px/1.35 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.74)}
.bma-overline--accent{color:var(--bma-brand-steel)}

/* Hero: full image, architectural and resilient from laptop to ultrawide */
.bma-hero{position:relative;min-height:clamp(650px,calc(100svh - 72px),820px);overflow:hidden;background:var(--bma-brand-navy)}
.bma-hero__picture,.bma-hero__picture img{position:absolute;inset:0;width:100%;height:100%;display:block}
.bma-hero__picture img{object-fit:cover;object-position:center 48%;transform:scale(1.008);transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.js-ready .bma-hero__picture img{transform:scale(1)}
.bma-hero__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,22,39,.94) 0%,rgba(2,22,39,.88) 28%,rgba(2,22,39,.58) 45%,rgba(2,22,39,.12) 67%,rgba(2,22,39,.08) 100%)}
.bma-hero__shade:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.03) 52%,rgba(0,18,31,.44) 100%)}
.bma-hero__layout{position:relative;z-index:2;min-height:inherit;display:grid;grid-template-columns:minmax(0,640px) 1fr;align-items:center}
.bma-hero__copy{padding:clamp(70px,8vw,110px) 0 clamp(72px,7vw,96px);color:#fff}
.bma-hero__copy h1{max-width:620px;margin:20px 0 24px;font-size:clamp(54px,5.2vw,82px);font-weight:500;line-height:.97;letter-spacing:-.052em;text-wrap:balance;color:#fff}
.bma-hero__copy h1 span{display:block;color:#cad9e1;font-weight:400}
.bma-hero__lead{max-width:560px;margin:0;color:rgba(245,250,253,.82);font-size:clamp(16px,1.2vw,19px);line-height:1.58;text-wrap:pretty}
.bma-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}
.bma-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:48px;padding:0 19px;text-decoration:none;border:1px solid transparent;font:600 9px/1 var(--font-mono);letter-spacing:.085em;text-transform:uppercase;transition:transform .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease}
.bma-btn:hover{transform:translateY(-2px)}
.bma-btn--light{background:#fff;color:var(--bma-brand-navy);border-color:#fff}
.bma-btn--light:hover{background:#eaf3f9;border-color:#eaf3f9}
.bma-btn--outline{color:#fff;border-color:rgba(255,255,255,.48);background:rgba(255,255,255,.03)}
.bma-btn--outline:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.bma-btn--accent{background:var(--bma-brand-steel);border-color:var(--bma-brand-steel);color:#fff;width:max-content}
.bma-btn--accent:hover{background:var(--bma-brand-navy);border-color:var(--bma-brand-navy)}
.bma-hero__principles{display:flex;align-items:center;gap:10px;margin-top:48px;color:rgba(255,255,255,.62);font:500 8px/1 var(--font-mono);letter-spacing:.11em;text-transform:uppercase}
.bma-hero__principles i{width:18px;height:1px;background:rgba(255,255,255,.32)}
.bma-hero__location{position:absolute;right:0;bottom:34px;display:grid;justify-items:end;gap:3px;color:#fff;text-shadow:0 2px 16px rgba(0,0,0,.35)}
.bma-hero__location small{font:600 8px/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;opacity:.68}
.bma-hero__location strong{font-size:14px;font-weight:600}
.bma-hero__location span{font-size:11px;opacity:.78}

/* Proof bar */
.bma-proof{background:#fff;border-bottom:1px solid var(--bma-brand-line)}
.bma-proof__grid{display:grid;grid-template-columns:1.55fr repeat(3,.7fr)}
.bma-proof__grid>div{min-height:130px;padding:28px 28px;border-right:1px solid var(--bma-brand-line);display:flex;flex-direction:column;justify-content:center}
.bma-proof__grid>div:first-child{padding-left:0}
.bma-proof__grid>div:last-child{border-right:0;padding-right:0}
.bma-proof__intro strong{display:block;max-width:520px;margin-top:10px;font-size:18px;line-height:1.35;font-weight:500;letter-spacing:-.015em}
.bma-proof__item strong{font-size:22px;line-height:1;font-weight:600;letter-spacing:-.03em;color:var(--bma-brand-navy)}
.bma-proof__item span{margin-top:9px;color:#71818d;font-size:11px;line-height:1.4}

/* Common sections */
.bma-section{padding:clamp(82px,8vw,118px) 0;background:#fff;scroll-margin-top:72px}
.bma-section__head{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.72fr);gap:clamp(48px,8vw,120px);align-items:end;margin-bottom:42px}
.bma-section__head h2{max-width:760px;margin:12px 0 0;font-size:clamp(40px,4.4vw,62px);line-height:1.01;letter-spacing:-.045em;font-weight:500;color:var(--bma-brand-ink)}
.bma-section__side{max-width:450px;justify-self:end}
.bma-section__side p{margin:0 0 18px;color:var(--bma-brand-copy);font-size:14px;line-height:1.6}
.bma-section__side a{display:inline-flex;align-items:center;gap:14px;padding-bottom:5px;border-bottom:1px solid #9cb8cc;color:var(--bma-brand-steel);text-decoration:none;font:600 9px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase}

/* Iconized services */
.bma-services{background:linear-gradient(180deg,#fff 0%,#f8fafb 100%)}
.bma-service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.bma-service-card{position:relative;min-height:292px;padding:24px 23px 22px;border:1px solid var(--bma-brand-line);background:rgba(255,255,255,.95);display:flex;flex-direction:column;box-shadow:0 1px 0 rgba(31,56,70,.02);transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.bma-service-card:hover{transform:translateY(-3px);border-color:#b7c7d0;box-shadow:0 16px 38px rgba(31,56,70,.07)}
.bma-service-card__icon{width:54px;height:54px;border:1px solid #d4dfe5;border-radius:12px;display:grid;place-items:center;background:#f0f4f6;color:#55768a}
.bma-service-card__icon svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.bma-service-card h3{margin:26px 0 10px;font-size:20px;line-height:1.1;font-weight:600;letter-spacing:-.025em;color:var(--bma-brand-ink)}
.bma-service-card p{margin:0 0 24px;color:#657889;font-size:13px;line-height:1.5}
.bma-service-card>a{margin-top:auto;display:inline-flex;align-items:center;gap:10px;width:max-content;color:var(--bma-brand-steel);text-decoration:none;font:600 9px/1 var(--font-mono);letter-spacing:.075em;text-transform:uppercase}

/* About split */
.bma-about{display:grid;grid-template-columns:minmax(0,1fr) minmax(520px,.95fr);width:min(100%,1600px);margin-inline:auto;background:#f6f8fa;border-block:1px solid var(--bma-brand-line)}
.bma-about__media{min-height:610px;overflow:hidden}
.bma-about__media picture,.bma-about__media img{display:block;width:100%;height:100%}
.bma-about__media img{object-fit:cover;object-position:center;filter:saturate(.9) contrast(1.03);transition:transform .8s ease}
.bma-about__media:hover img{transform:scale(1.015)}
.bma-about__copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(56px,6vw,88px)}
.bma-about__copy h2{max-width:660px;margin:13px 0 20px;font-size:clamp(40px,4vw,60px);line-height:1.03;letter-spacing:-.045em;font-weight:500;color:var(--bma-brand-ink)}
.bma-about__copy>p:not(.bma-overline){max-width:600px;margin:0 0 29px;color:var(--bma-brand-copy);font-size:15px;line-height:1.67}
.bma-about__values{display:grid;grid-template-columns:repeat(3,1fr);margin-top:46px;border-top:1px solid #cfdbe3}
.bma-about__values div{padding:17px 14px 0 0}
.bma-about__values div+div{padding-left:17px;border-left:1px solid #cfdbe3}
.bma-about__values strong{display:block;color:var(--bma-brand-steel);font:600 9px/1 var(--font-mono)}
.bma-about__values span{display:block;margin-top:7px;color:#637786;font-size:12px}

/* Sectors */
.bma-sectors{background:#fff}
.bma-sector-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--bma-brand-line);border-left:1px solid var(--bma-brand-line)}
.bma-sector-card{position:relative;min-height:140px;padding:22px 22px 20px;border-right:1px solid var(--bma-brand-line);border-bottom:1px solid var(--bma-brand-line);display:grid;grid-template-columns:40px 1fr 18px;gap:12px;align-items:end;text-decoration:none;background:#fff;transition:background .2s ease,color .2s ease}
.bma-sector-card span{align-self:start;color:#8897a2;font:600 9px/1 var(--font-mono)}
.bma-sector-card strong{font-size:16px;line-height:1.25;font-weight:500;color:var(--bma-brand-ink)}
.bma-sector-card i{font-style:normal;color:#8194a2;transition:transform .2s ease}
.bma-sector-card:hover{background:#f2f7fa}
.bma-sector-card:hover i{transform:translate(2px,-2px);color:var(--bma-brand-steel)}

/* Work / office visual band — refined horizontal media panel */
.bma-work{padding:28px 0 88px;background:#f7fafc}
.bma-work__shell{display:grid;grid-template-columns:minmax(340px,430px) minmax(0,1fr);align-items:stretch;border:1px solid var(--bma-brand-line);background:#fff;overflow:hidden;box-shadow:0 24px 60px rgba(5,37,65,.06)}
.bma-work__copy{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center;padding:clamp(46px,4.5vw,66px);background:var(--bma-brand-navy);color:#fff;min-width:0}
.bma-work__copy:after{content:"";position:absolute;right:0;top:14%;bottom:14%;width:1px;background:rgba(255,255,255,.12)}
.bma-work__copy h2{max-width:360px;margin:16px 0 22px;font-size:clamp(40px,3.5vw,58px);line-height:1.02;letter-spacing:-.05em;font-weight:500;color:#fff;text-wrap:balance}
.bma-work__copy>p:last-child{max-width:360px;margin:0;color:#c1d0db;font-size:15px;line-height:1.7;text-wrap:pretty}
.bma-work__photo{position:relative;margin:0;overflow:hidden;min-width:0;min-height:0;aspect-ratio:16/10;background:#d9e2e7}
.bma-work__photo picture,.bma-work__photo img{display:block;width:100%;height:100%}
.bma-work__photo img{object-fit:cover;object-position:center center;filter:saturate(.9) contrast(1.03);transform:scale(1.001);transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.bma-work__photo:hover img{transform:scale(1.012)}
/* Team — active DB members in compact editorial layout */
.bma-team{background:#f8fafb}
.bma-team-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.bma-team-card{position:relative;min-width:0;background:#fff;border:1px solid var(--bma-brand-line);overflow:hidden;isolation:isolate;box-shadow:0 1px 0 rgba(5,37,65,.02);transition:transform .28s cubic-bezier(.2,.7,.2,1),border-color .28s ease,box-shadow .28s ease,background .28s ease}.bma-team-card:before{content:"";position:absolute;z-index:3;left:-1px;right:-1px;top:-1px;height:3px;background:linear-gradient(90deg,#527487,#a6b9c3);transform:scaleX(0);transform-origin:left;transition:transform .32s cubic-bezier(.2,.7,.2,1)}
.bma-team-card:after{display:none}
.bma-team-card__index{position:absolute;z-index:4;top:12px;right:12px;color:rgba(5,37,65,.42);font:600 8px/1 var(--font-mono);letter-spacing:.09em;transition:color .25s ease,transform .25s ease}
.bma-team-card__media{position:relative;z-index:1;height:148px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(145deg,#edf3f7,#dbe7ef);color:var(--bma-brand-steel);transition:background .34s ease,color .34s ease}
.bma-team-card__media:before,.bma-team-card__media:after{display:none}
.bma-team-card__media:before{width:108px;height:108px}
.bma-team-card__media:after{width:76px;height:76px}
.bma-team-card__initials{position:relative;z-index:2;display:grid;place-items:center;width:58px;height:58px;border-radius:13px;border:1px solid rgba(75,112,134,.24);background:rgba(255,255,255,.68);backdrop-filter:blur(4px);font:500 21px/1 var(--font-sans);letter-spacing:-.04em;box-shadow:0 9px 24px rgba(31,56,70,.05);transition:transform .38s cubic-bezier(.2,.7,.2,1),background .3s ease,border-color .3s ease,color .3s ease,box-shadow .3s ease}
.bma-team-card__media img{width:100%;height:100%;object-fit:cover;object-position:center top;filter:saturate(.88) contrast(1.02);transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .4s ease}
.bma-team-card__body{position:relative;z-index:2;min-height:108px;padding:15px 15px 17px;background:rgba(255,255,255,.97);transition:transform .3s cubic-bezier(.2,.7,.2,1),background .3s ease}
.bma-team-card__body:before{content:"";display:block;width:22px;height:1px;margin:0 0 11px;background:#9fc1d7;transform-origin:left;transition:width .3s ease,background .3s ease}
.bma-team-card__body h3{margin:0 0 6px;font-size:15px;line-height:1.16;font-weight:600;letter-spacing:-.02em;color:var(--bma-brand-ink);transition:color .25s ease}
.bma-team-card__body p{margin:0;color:#617688;font-size:10.5px;line-height:1.4;transition:color .25s ease}
.bma-team-card__body small{display:block;margin-top:6px;color:#8796a1;font-size:9px;line-height:1.3;text-transform:uppercase;letter-spacing:.04em}
@media (hover:hover) and (pointer:fine){
  .bma-team-card:hover{transform:translateY(-6px);border-color:#b7ccda;box-shadow:0 24px 54px rgba(5,37,65,.12)}
  .bma-team-card:hover:before{transform:scaleX(1)}
  .bma-team-card:hover .bma-team-card__index{color:#526f80;transform:translateY(-1px)}
  .bma-team-card:hover .bma-team-card__media.is-placeholder{background:linear-gradient(145deg,#456477,#657f8e);color:#fff}
  .bma-team-card:hover .bma-team-card__initials{transform:translateY(-2px) scale(1.05);background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.34);color:#fff;box-shadow:0 16px 36px rgba(0,0,0,.16)}
  .bma-team-card:hover .bma-team-card__media img{transform:scale(1.035);filter:saturate(.92) contrast(1.04)}
  .bma-team-card:hover .bma-team-card__body:before{width:54px;background:var(--bma-brand-steel)}
}

/* Full team page: same neutral monogram language until real photos are loaded */
.person-card__placeholder{width:120px;height:120px;margin-bottom:18px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(145deg,#eef2f4,#dfe7eb);border:1px solid #cbd6dc;color:#5b7a8c;font:500 28px/1 var(--font-sans);letter-spacing:-.04em}
/* Pre-footer inspired by selected direction */
.bma-prefooter{position:relative;overflow:hidden;background:linear-gradient(105deg,#294c60 0%,#557789 60%,#879aa4 100%);color:#fff}
.bma-prefooter:after{content:"";position:absolute;right:0;top:0;width:min(48%,620px);height:100%;background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);background-size:34px 34px;opacity:.36;mask-image:linear-gradient(90deg,transparent,#000 34%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 34%);pointer-events:none}
.bma-prefooter__grid{position:relative;z-index:1;min-height:205px;display:grid;grid-template-columns:1.4fr .9fr auto .42fr;gap:clamp(28px,4vw,58px);align-items:center}
.bma-prefooter__title{padding-right:clamp(20px,3vw,42px);border-right:1px solid rgba(255,255,255,.28)}
.bma-prefooter__title h2{max-width:560px;margin:10px 0 0;font-size:clamp(27px,2.7vw,40px);line-height:1.08;letter-spacing:-.035em;font-weight:400;color:#fff}
.bma-prefooter__copy p{max-width:320px;margin:0;color:rgba(255,255,255,.84);font-size:13px;line-height:1.55}
.bma-btn--prefooter{min-width:154px;background:#fff;color:#36596c;border-color:#fff}
.bma-btn--prefooter:hover{background:#edf6fb;border-color:#edf6fb}
.bma-prefooter__motto{justify-self:end;color:rgba(255,255,255,.78);font:600 8px/1.55 var(--font-mono);letter-spacing:.12em}

/* Footer 1.2 */
.footer.footer-v2{padding:0;background:#172f3e;color:#e0e8ec;border:0}
.footer-v2__grid{display:grid;grid-template-columns:1fr 1.35fr 1.05fr;gap:clamp(36px,5vw,72px);padding-top:34px;padding-bottom:24px;align-items:start}
.footer-v2__brand .brand-mask--light{width:105px;height:40px}
.footer-v2__brand p{margin:8px 0 0;color:#9bb0be;font-size:11px;line-height:1.45}
.footer-v2__nav{display:flex;justify-content:center;gap:clamp(18px,2.5vw,36px);padding-top:13px}
.footer-v2__nav a{color:#d5e0e7;text-decoration:none;font-size:11px;transition:color .2s ease}
.footer-v2__nav a:hover{color:#fff}
.footer-v2__contact{display:grid;gap:7px;padding:7px 0 3px 28px;border-left:1px solid rgba(255,255,255,.16);color:#9eb2c0;font-size:10px;line-height:1.4}
.footer-v2__contact a{color:#dce8f0;text-decoration:none}
.footer-v2__bottom{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;padding-top:18px;border-top:1px solid rgba(255,255,255,.15);color:#7f97a7;font:500 8px/1.35 var(--font-mono);letter-spacing:.05em}
.footer-v2__bottom small{font:inherit;letter-spacing:0;text-transform:none}
.footer-v2__bottom>span{letter-spacing:.11em}
.footer-v2__bottom i{padding:0 8px;font-style:normal;color:#48677c}

/* Ultralarge: never allow text to become detached from the composition */
@media (min-width:1600px){
  .bma-hero{min-height:790px}
  .bma-hero__picture img{object-position:center 50%}
}

@media (max-width:1100px){
  .bma-hero__layout{grid-template-columns:minmax(0,570px) 1fr}
  .bma-hero__shade{background:linear-gradient(90deg,rgba(2,22,39,.94) 0%,rgba(2,22,39,.84) 35%,rgba(2,22,39,.35) 66%,rgba(2,22,39,.1) 100%)}
  .bma-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bma-about{grid-template-columns:1fr 1fr}
  .bma-about__copy{padding:56px 42px}
  .bma-sector-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bma-work__shell{grid-template-columns:minmax(320px,380px) 1fr}
  .bma-team-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .bma-prefooter__grid{grid-template-columns:1.3fr .9fr auto}
  .bma-prefooter__motto{display:none}
}

@media (max-width:900px){
  .bma-hero{min-height:760px}
  .bma-hero__layout{grid-template-columns:1fr;align-items:end}
  .bma-hero__shade{background:linear-gradient(90deg,rgba(2,22,39,.83),rgba(2,22,39,.28)),linear-gradient(180deg,rgba(2,22,39,.08) 35%,rgba(2,22,39,.88) 100%)}
  .bma-hero__copy{align-self:end;padding:90px 0 76px;max-width:650px}
  .bma-hero__copy h1{font-size:clamp(54px,9vw,76px)}
  .bma-hero__location{right:0;bottom:24px}
  .bma-proof__grid{grid-template-columns:1fr 1fr}
  .bma-proof__grid>div{border-bottom:1px solid var(--bma-brand-line)}
  .bma-proof__grid>div:nth-child(2){border-right:0}
  .bma-proof__grid>div:first-child{padding-left:24px}
  .bma-proof__grid>div:last-child{padding-right:24px}
  .bma-section__head{grid-template-columns:1fr;gap:22px;align-items:start}
  .bma-section__side{justify-self:start;max-width:580px}
  .bma-about{grid-template-columns:1fr}
  .bma-about__media{min-height:500px}
  .bma-about__copy{padding:62px var(--bma-gutter)}
  .bma-work{padding:22px 0 74px}
  .bma-work__shell{grid-template-columns:1fr}
  .bma-work__copy{padding:64px var(--bma-gutter)}
  .bma-work__copy:after{display:none}
  .bma-work__photo{aspect-ratio:16/9;height:auto}
  .bma-team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bma-prefooter__grid{grid-template-columns:1.25fr .75fr;min-height:245px;padding-block:35px}
  .bma-prefooter__title{grid-column:1/-1;padding-right:0;padding-bottom:24px;border-right:0;border-bottom:1px solid rgba(255,255,255,.25)}
  .footer-v2__grid{grid-template-columns:1fr 1fr}
  .footer-v2__nav{justify-content:flex-start;align-content:start;flex-wrap:wrap}
  .footer-v2__contact{grid-column:2;padding-left:24px}
  .footer-v2__bottom{grid-template-columns:1fr auto}
  .footer-v2__bottom>span{display:none}
}

@media (max-width:640px){
  .home-page--bma .home-container,.bma-prefooter .home-container,.footer-v2 .home-container{width:calc(100% - 40px)}
  .bma-hero{min-height:720px}
  .bma-hero__picture img{object-position:center 46%}
  .bma-hero__shade{background:linear-gradient(90deg,rgba(2,22,39,.58),rgba(2,22,39,.18)),linear-gradient(180deg,rgba(2,22,39,.05) 24%,rgba(2,22,39,.92) 76%)}
  .bma-hero__copy{padding:255px 0 64px;max-width:none}
  .bma-hero__copy h1{margin:14px 0 18px;font-size:clamp(43px,13.3vw,60px);line-height:.98}
  .bma-hero__lead{font-size:15px;line-height:1.55}
  .bma-actions{display:grid;grid-template-columns:1fr;margin-top:24px}
  .bma-btn{width:100%;min-height:50px}
  .bma-hero__principles{margin-top:29px;font-size:7px;gap:8px}
  .bma-hero__principles i{width:10px}
  .bma-hero__location{display:none}
  .bma-proof__grid{grid-template-columns:1fr}
  .bma-proof__grid>div,.bma-proof__grid>div:nth-child(2){min-height:100px;padding:21px 0;border-right:0}
  .bma-proof__grid>div:first-child,.bma-proof__grid>div:last-child{padding-left:0;padding-right:0}
  .bma-section{padding:70px 0}
  .bma-section__head{margin-bottom:30px}
  .bma-section__head h2{font-size:clamp(37px,10.5vw,48px)}
  .bma-section__side p{font-size:14px}
  .bma-service-grid{grid-template-columns:1fr;gap:10px}
  .bma-service-card{min-height:245px;padding:22px}
  .bma-service-card h3{margin-top:22px;font-size:20px}
  .bma-about__media{min-height:400px}
  .bma-about__copy{padding:56px 20px}
  .bma-about__copy h2{font-size:clamp(37px,10.5vw,48px)}
  .bma-about__values{grid-template-columns:1fr;margin-top:36px}
  .bma-about__values div,.bma-about__values div+div{padding:13px 0;border-left:0;border-bottom:1px solid #cfdbe3}
  .bma-sector-grid{grid-template-columns:1fr;border-left:0}
  .bma-sector-card{min-height:106px;border-left:1px solid var(--bma-brand-line)}
  .bma-work{padding:18px 0 64px}
  .bma-work__copy{padding:56px 20px}
  .bma-work__copy h2{font-size:clamp(36px,10.4vw,48px)}
  .bma-work__photo{aspect-ratio:4/3;height:auto}
  .bma-team-grid{grid-template-columns:1fr;gap:10px}  .bma-team-card__media{height:100%;min-height:124px}
  .bma-team-card__media:before{width:82px;height:82px}
  .bma-team-card__media:after{width:58px;height:58px}
  .bma-team-card__initials{width:48px;height:48px;font-size:18px}
  .bma-team-card__body{min-height:0;display:flex;flex-direction:column;justify-content:center;padding:14px 15px}
  .bma-team-card__body:before{margin-bottom:9px}
  .bma-prefooter__grid{grid-template-columns:1fr;gap:22px;padding-block:40px}
  .bma-prefooter__title{grid-column:auto;padding-bottom:22px}
  .bma-prefooter__title h2{font-size:31px}
  .bma-prefooter__copy p{font-size:13px}
  .bma-prefooter__action{width:100%}
  .footer-v2__grid{grid-template-columns:1fr;gap:28px;padding-top:30px}
  .footer-v2__nav{display:grid;grid-template-columns:1fr 1fr;gap:12px 28px}
  .footer-v2__contact{grid-column:auto;padding:20px 0 0;border-left:0;border-top:1px solid rgba(255,255,255,.14)}
  .footer-v2__bottom{grid-template-columns:1fr;gap:10px}
}

@media (max-width:420px){
  .home-page--bma .home-container,.bma-prefooter .home-container,.footer-v2 .home-container{width:calc(100% - 32px)}
  .bma-hero{min-height:690px}
  .bma-hero__copy{padding-top:225px}
  .bma-hero__copy h1{font-size:clamp(40px,12.5vw,52px)}}

@media (prefers-reduced-motion:reduce){
  .bma-hero__picture img,.bma-btn,.bma-service-card,.bma-about__media img,.bma-team-card,.bma-team-card__media,.bma-team-card__media img,.bma-team-card__initials,.bma-team-card__body,.bma-team-card__body:before,.bma-sector-card,.bma-sector-card i,.bma-work__photo img{transition:none!important;transform:none!important}
}

/* Public internal pages — corporate system */
body:not(.home-page--bma) .site-header{background:rgba(255,255,255,.98);border-bottom:1px solid rgba(13,40,64,.09)}
body:not(.home-page--bma) .site-header .brand-mask{background:var(--bma-brand-navy)}
body:not(.home-page--bma) .page-hero,
body:not(.home-page--bma) .detail-hero{background:linear-gradient(130deg,#183849 0%,#486a7c 100%);color:#fff;border:0}
body:not(.home-page--bma) .page-hero{padding:clamp(76px,8vw,118px) 0 clamp(80px,9vw,128px)}
body:not(.home-page--bma) .page-hero .container,
body:not(.home-page--bma) .detail-hero .container{width:min(calc(100% - clamp(40px,7vw,112px)),var(--bma-content-max))}
body:not(.home-page--bma) .page-hero .kicker,
body:not(.home-page--bma) .detail-hero .kicker{color:#b2c4cd}
body:not(.home-page--bma) .page-hero h1,
body:not(.home-page--bma) .detail-hero h1{max-width:900px;color:#fff;font-size:clamp(50px,5.5vw,78px);line-height:.97;letter-spacing:-.05em}
body:not(.home-page--bma) .page-hero p,
body:not(.home-page--bma) .detail-hero p{color:#bfd0dc;font-size:17px;line-height:1.58}
body:not(.home-page--bma) .section{background:#fff}
body:not(.home-page--bma) .section-pale{background:#f6f8fa}
body:not(.home-page--bma) .section>.container,
body:not(.home-page--bma) .contact-section>.container{width:min(calc(100% - clamp(40px,7vw,112px)),var(--bma-content-max))}
body:not(.home-page--bma) .section-intro h2,
body:not(.home-page--bma) .closing-band h2{color:var(--bma-brand-ink)}
body:not(.home-page--bma) .kicker{color:var(--bma-brand-steel)}
body:not(.home-page--bma) .service-grid,
body:not(.home-page--bma) .sector-grid,
body:not(.home-page--bma) .people-grid,
body:not(.home-page--bma) .timeline,
body:not(.home-page--bma) .philosophy-grid{border-color:var(--bma-brand-line)}
body:not(.home-page--bma) .service-card,
body:not(.home-page--bma) .sector-card,
body:not(.home-page--bma) .person-card,
body:not(.home-page--bma) .timeline article,
body:not(.home-page--bma) .philosophy-grid article{border-color:var(--bma-brand-line);background:#fff}
body:not(.home-page--bma) .service-card:hover,
body:not(.home-page--bma) .sector-card:hover,
body:not(.home-page--bma) .person-card:hover{background:#f5f9fb}
body:not(.home-page--bma) .btn-dark{background:var(--bma-brand-navy);border-color:var(--bma-brand-navy)}
body:not(.home-page--bma) .btn-dark:hover{background:var(--bma-brand-steel);border-color:var(--bma-brand-steel)}
body:not(.home-page--bma) .text-link{color:var(--bma-brand-steel)}
body:not(.home-page--bma) .lead-panel{border-color:var(--bma-brand-line);box-shadow:0 16px 45px rgba(5,37,65,.06)}
body:not(.home-page--bma) .lead-panel-head{border-color:var(--bma-brand-line)}
body:not(.home-page--bma) .lead-submit{background:var(--bma-brand-navy);border-color:var(--bma-brand-navy)}
body:not(.home-page--bma) .map-wrap{border-color:var(--bma-brand-line)}
body:not(.home-page--bma) .detail-hero{padding:clamp(74px,8vw,112px) 0}
body:not(.home-page--bma) .detail-number{color:#a4bac6}
body:not(.home-page--bma) .detail-rule{background:rgba(255,255,255,.22)}
body:not(.home-page--bma) .related a{border-color:var(--bma-brand-line)}

@media(max-width:640px){
  body:not(.home-page--bma) .page-hero .container,
  body:not(.home-page--bma) .detail-hero .container,
  body:not(.home-page--bma) .section>.container,
  body:not(.home-page--bma) .contact-section>.container{width:calc(100% - 40px)}
  body:not(.home-page--bma) .page-hero{padding:64px 0 72px}
  body:not(.home-page--bma) .page-hero h1,
  body:not(.home-page--bma) .detail-hero h1{font-size:clamp(44px,13vw,58px)}
}

.content-unavailable{padding:28px 0;color:#667987;font-size:14px;line-height:1.6}

/* ==========================================================================
   DESKTOP COMPOSITION / EDITORIAL DENSITY
   Corporate precision, tighter rhythm and stable responsive composition.
   ========================================================================== */
.home-page--bma{
  --bma-content-max:1480px;
  --bma-card-border:#d8e3ea;
  --bma-card-soft:#f5f9fc;
  --bma-card-shadow:0 18px 54px rgba(4,38,67,.075);
}
.home-page--bma .home-container,.home-page--bma .bma-prefooter .home-container{width:min(calc(100% - clamp(40px,7vw,128px)),var(--bma-content-max))}
.home-page--bma .site-header{backdrop-filter:saturate(140%) blur(14px)}

/* Hero — lower, wider and more architectural. */
.home-page--bma .bma-hero{min-height:clamp(545px,65vw,690px);max-height:720px}
.home-page--bma .bma-hero__picture img{object-position:center 50%}
.home-page--bma .bma-hero__shade{background:linear-gradient(90deg,rgba(2,25,45,.94) 0%,rgba(2,25,45,.90) 23%,rgba(2,25,45,.71) 38%,rgba(2,25,45,.22) 60%,rgba(2,25,45,.04) 100%)}
.home-page--bma .bma-hero__shade:after{background:linear-gradient(180deg,rgba(0,0,0,.01) 58%,rgba(0,21,37,.38) 100%)}
.home-page--bma .bma-hero__layout{grid-template-columns:minmax(0,610px) 1fr}
.home-page--bma .bma-hero__copy{padding:78px 0 68px}
.home-page--bma .bma-hero__copy h1{max-width:560px;margin:15px 0 19px;font-size:clamp(52px,4.3vw,70px);line-height:.99;letter-spacing:-.048em}
.home-page--bma .bma-hero__copy h1 span{display:inline;color:#fff;font-weight:500}
.home-page--bma .bma-hero__lead{max-width:490px;font-size:15px;line-height:1.55;color:rgba(255,255,255,.86)}
.home-page--bma .bma-actions{margin-top:26px}
.home-page--bma .bma-btn{min-height:44px;padding-inline:18px}
.home-page--bma .bma-hero__principles{margin-top:34px}
.home-page--bma .bma-hero__location{bottom:27px}
.home-page--bma .bma-hero__location:before{content:"";display:block;width:58px;height:1px;margin:0 0 7px auto;background:rgba(255,255,255,.7)}

/* Proof — a compact information rail, not another big section. */
.home-page--bma .bma-proof__grid{grid-template-columns:1.75fr .62fr .62fr .85fr}
.home-page--bma .bma-proof__grid>div{min-height:96px;padding:18px 28px}
.home-page--bma .bma-proof__intro strong{font-size:16px;margin-top:7px}
.home-page--bma .bma-proof__item strong{font-size:20px}
.home-page--bma .bma-proof__item span{margin-top:6px;font-size:9.5px}

/* Section rhythm */
.home-page--bma .bma-section{padding:76px 0}
.home-page--bma .bma-section__head{grid-template-columns:minmax(0,1.15fr) minmax(300px,.7fr);gap:72px;margin-bottom:32px}
.home-page--bma .bma-section__head h2{font-size:clamp(38px,3.5vw,54px);line-height:1.02}
.home-page--bma .bma-section__side{max-width:470px}
.home-page--bma .bma-section__side p{font-size:12.5px;line-height:1.55;margin-bottom:13px}

/* Services — more precise, numbered and icon-led. */
.home-page--bma .bma-services{background:linear-gradient(180deg,#fff 0%,#f7fafc 100%)}
.home-page--bma .bma-service-grid{gap:10px}
.home-page--bma .bma-service-card{position:relative;min-height:238px;padding:20px 20px 18px;border-color:var(--bma-card-border);box-shadow:none}
.home-page--bma .bma-service-card:before{content:"";position:absolute;inset:-1px -1px auto;height:2px;background:linear-gradient(90deg,#55768a,#a8bac4);transform:scaleX(0);transform-origin:left;transition:transform .28s ease}
.home-page--bma .bma-card-index{position:absolute;right:16px;top:16px;color:#8ba0af;font:600 8px/1 var(--font-mono);letter-spacing:.09em}
.home-page--bma .bma-service-card__icon{width:46px;height:46px}
.home-page--bma .bma-service-card__icon svg{width:23px;height:23px}
.home-page--bma .bma-service-card h3{margin:20px 0 8px;font-size:17px}
.home-page--bma .bma-service-card p{font-size:11.5px;line-height:1.48;margin-bottom:18px}
.home-page--bma .bma-service-card>a{font-size:8px}
@media (hover:hover) and (pointer:fine){
  .home-page--bma .bma-service-card:hover{transform:translateY(-5px);border-color:#b6cddd;box-shadow:var(--bma-card-shadow)}
  .home-page--bma .bma-service-card:hover:before{transform:scaleX(1)}
  .home-page--bma .bma-service-card:hover .bma-service-card__icon{background:#5d7f92;color:#fff;transform:translateY(-1px)}
}
.home-page--bma .bma-service-card__icon{transition:background .25s ease,color .25s ease,transform .25s ease}

/* About — slightly shorter and editorial. */



.home-page--bma .bma-about__copy h2{font-size:clamp(38px,3.6vw,54px);margin-bottom:16px}



/* Sectors — six compact visual cards on wide screens. */
.home-page--bma .bma-sectors{background:#fff}
.home-page--bma .bma-sector-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;border:0}
.home-page--bma .bma-sector-card{min-height:172px;padding:16px 15px 15px;border:1px solid var(--bma-card-border);display:grid;grid-template-columns:1fr 20px;grid-template-rows:auto 1fr auto;gap:9px;background:linear-gradient(145deg,#fbfcfd,#f2f5f7);overflow:hidden}
.home-page--bma .bma-sector-card:before{content:"";position:absolute;width:22px;height:22px;right:-1px;top:-1px;border-top:1px solid rgba(78,112,132,.42);border-right:1px solid rgba(78,112,132,.42);pointer-events:none;transition:width .24s ease,height .24s ease,border-color .24s ease}
.home-page--bma .bma-sector-number{grid-column:1;grid-row:1;color:#47677e;font:600 8px/1 var(--font-mono);align-self:start}
.home-page--bma .bma-sector-icon{grid-column:2;grid-row:1/3;width:28px;height:28px;justify-self:end;color:#5b7a8c}
.home-page--bma .bma-sector-icon svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.home-page--bma .bma-sector-card strong{grid-column:1/3;grid-row:2;align-self:end;font-size:13px;line-height:1.18;font-weight:600;max-width:155px}
.home-page--bma .bma-sector-card i{grid-column:2;grid-row:3;justify-self:end;align-self:end;font-size:11px}
.home-page--bma .bma-sector-card:hover{background:#f0f4f6;border-color:#b9c9d1}
.home-page--bma .bma-sector-card:hover:before{width:30px;height:30px;border-color:rgba(67,99,118,.68)}

/* Work — horizontal composition; no portrait source or viewport-driven vertical growth. */
.home-page--bma .bma-work{padding:0;background:var(--bma-brand-navy);overflow:hidden}
.home-page--bma .bma-work__shell{width:min(100%,1760px);max-width:none;height:clamp(390px,30vw,470px);min-height:390px;display:grid;grid-template-columns:minmax(360px,31%) minmax(0,69%);align-items:stretch;border:0;box-shadow:none;background:var(--bma-brand-navy);overflow:hidden}
.home-page--bma .bma-work__copy{height:100%;min-height:0;padding:clamp(42px,4vw,64px) clamp(38px,4.8vw,72px);justify-content:center;overflow:hidden}
.home-page--bma .bma-work__copy h2{max-width:420px;font-size:clamp(36px,3.1vw,50px);line-height:1.02;margin:13px 0 16px}
.home-page--bma .bma-work__copy>p:last-child{font-size:12.5px;line-height:1.58;max-width:390px}
.home-page--bma .bma-work__photo{height:100%;min-height:0;aspect-ratio:auto;overflow:hidden;background:#cad5dc}
.home-page--bma .bma-work__photo picture{position:absolute;inset:0;display:block;width:100%;height:100%}
.home-page--bma .bma-work__photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 53%;display:block}
.home-page--bma .bma-work__photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 60%,rgba(2,25,45,.10) 76%,rgba(2,25,45,.74) 100%);pointer-events:none}
.home-page--bma .bma-work-rail{position:absolute;z-index:2;right:38px;top:50%;transform:translateY(-50%);display:grid;gap:7px;color:#fff;font-size:12px;line-height:1.15;text-shadow:0 2px 14px rgba(0,0,0,.28)}
.home-page--bma .bma-work-rail:after{content:"";width:38px;height:1px;background:rgba(255,255,255,.62);margin-top:9px}

/* Team — compact editorial matrix using only published members. */
.home-page--bma .bma-team{background:#f8fafb}
.home-page--bma .bma-team-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.home-page--bma .bma-team-card{display:grid;grid-template-columns:78px minmax(0,1fr);min-height:104px;background:#fff}.home-page--bma .bma-team-card__index{top:11px;right:11px;font-size:7px}
.home-page--bma .bma-team-card__media{height:100%;min-height:102px}
.home-page--bma .bma-team-card__media:before{width:62px;height:62px}
.home-page--bma .bma-team-card__media:after{width:46px;height:46px}
.home-page--bma .bma-team-card__initials{width:42px;height:42px;font-size:15px;box-shadow:none}
.home-page--bma .bma-team-card__body{min-height:0;padding:18px 28px 15px 14px;display:flex;flex-direction:column;justify-content:center}
.home-page--bma .bma-team-card__body:before{width:17px;margin-bottom:8px}
.home-page--bma .bma-team-card__body h3{font-size:13px;margin-bottom:4px}
.home-page--bma .bma-team-card__body p{font-size:8.6px;line-height:1.35}
.home-page--bma .bma-team-card__body small{font-size:7.5px}

/* Pre-footer + footer — closer to the approved direction, lower and cleaner. */
.bma-prefooter{background:linear-gradient(105deg,#294c60 0%,#557789 60%,#879aa4 100%)}
.bma-prefooter__grid{min-height:170px}
.bma-prefooter__title h2{font-size:clamp(25px,2.25vw,36px)}
.footer.footer-v2{background:#172f3e}
.footer-v2__grid{padding-top:28px;padding-bottom:20px}
.footer-v2__bottom{padding-top:15px}

@media (min-width:1500px){
  .home-page--bma .bma-hero{min-height:640px}
  .home-page--bma .bma-service-card{min-height:228px}
}
@media (max-width:1250px){
  .home-page--bma .bma-sector-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .home-page--bma .bma-sector-card{min-height:132px}
}
@media (max-width:1100px){
  .home-page--bma .bma-hero{min-height:620px}
  .home-page--bma .bma-hero__layout{grid-template-columns:minmax(0,530px) 1fr}
  .home-page--bma .bma-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-page--bma .bma-service-card{min-height:220px}
  .home-page--bma .bma-team-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (max-width:900px){
  .home-page--bma .bma-hero{min-height:690px;max-height:none}
  .home-page--bma .bma-hero__shade{background:linear-gradient(90deg,rgba(2,22,39,.78),rgba(2,22,39,.22)),linear-gradient(180deg,rgba(2,22,39,.02) 28%,rgba(2,22,39,.88) 100%)}
  .home-page--bma .bma-hero__copy{padding:170px 0 66px}
  .home-page--bma .bma-hero__copy h1{font-size:clamp(50px,8vw,68px)}
  .home-page--bma .bma-proof__grid{grid-template-columns:1fr 1fr}
  .home-page--bma .bma-section{padding:68px 0}
  .home-page--bma .bma-about{grid-template-columns:1fr}
  .home-page--bma .bma-about__media{min-height:430px}
  .home-page--bma .bma-work{padding:0}
  .home-page--bma .bma-work__shell{height:auto;min-height:0;grid-template-columns:1fr}
  .home-page--bma .bma-work__copy{height:auto;min-height:0;padding:54px var(--bma-gutter)}
  .home-page--bma .bma-work__photo{height:auto;min-height:0;aspect-ratio:16/9}
  .home-page--bma .bma-work__photo picture,.home-page--bma .bma-work__photo img{position:absolute;inset:0}
  .home-page--bma .bma-work-rail{right:28px}
  .home-page--bma .bma-team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){
  .home-page--bma .bma-hero{min-height:650px}
  .home-page--bma .bma-hero__copy{padding:240px 0 54px}
  .home-page--bma .bma-hero__copy h1{font-size:clamp(41px,12vw,54px);max-width:410px}
  .home-page--bma .bma-hero__lead{font-size:14px}
  .home-page--bma .bma-proof__grid{grid-template-columns:1fr}
  .home-page--bma .bma-section{padding:58px 0}
  .home-page--bma .bma-section__head{gap:18px;margin-bottom:24px}
  .home-page--bma .bma-section__head h2{font-size:clamp(34px,9.5vw,43px)}
  .home-page--bma .bma-service-grid{grid-template-columns:1fr}
  .home-page--bma .bma-service-card{min-height:190px}
  .home-page--bma .bma-sector-grid{grid-template-columns:1fr 1fr;gap:8px}
  .home-page--bma .bma-sector-card{min-height:146px}
  .home-page--bma .bma-about__media{min-height:330px}
  .home-page--bma .bma-about__copy{padding:46px 20px}
  .home-page--bma .bma-work__copy{padding:44px 20px}
  .home-page--bma .bma-work__copy h2{font-size:clamp(34px,9.8vw,44px);max-width:360px}
  .home-page--bma .bma-work__photo{height:auto;min-height:0;aspect-ratio:16/10}
  .home-page--bma .bma-work-rail{display:none}
  .home-page--bma .bma-team-grid{grid-template-columns:1fr;gap:8px}  .home-page--bma .bma-team-card__media{min-height:94px}}
@media (max-width:420px){
  .home-page--bma .bma-sector-grid{grid-template-columns:1fr}
}

/* TECHNOLOGY SERVICES */
.bma-digital{position:relative;padding:clamp(72px,7vw,104px) 0;background:#173748;color:#fff;overflow:hidden}
.bma-digital:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(213,226,233,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(213,226,233,.055) 1px,transparent 1px),linear-gradient(120deg,rgba(255,255,255,.022),transparent 44%);background-size:38px 38px,38px 38px,auto;mask-image:linear-gradient(90deg,rgba(0,0,0,.45),#000 55%,rgba(0,0,0,.35));-webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.45),#000 55%,rgba(0,0,0,.35));pointer-events:none}
.bma-digital__head{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.65fr);gap:clamp(30px,5vw,80px);align-items:end;margin-bottom:34px}
.bma-digital__head .bma-overline{color:#a8bdc8}
.bma-digital__head h2{max-width:720px;margin:12px 0 0;color:#fff;font-size:clamp(40px,4.4vw,66px);line-height:.98;letter-spacing:-.05em;font-weight:500}
.bma-digital__head>p{max-width:480px;margin:0;color:#b8cad7;font-size:14px;line-height:1.65}
.bma-digital__grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.14);border-left:1px solid rgba(255,255,255,.14)}
.bma-digital-card{position:relative;display:grid;grid-template-columns:42px 54px minmax(0,1fr) 20px;gap:18px;align-items:center;min-height:156px;padding:26px 28px;color:#fff;text-decoration:none;border-right:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.015);transition:background .25s ease,transform .25s ease}
.bma-digital-card:after{content:"";position:absolute;left:-1px;right:-1px;top:-1px;height:2px;background:#8ca5b3;transform:scaleX(0);transform-origin:left;transition:transform .3s ease}
.bma-digital-card:hover{background:rgba(255,255,255,.055);transform:translateY(-2px)}
.bma-digital-card:hover:after{transform:scaleX(1)}
.bma-digital-card__num{align-self:start;padding-top:5px;color:#7695a9;font:600 8px/1 var(--font-mono);letter-spacing:.08em}
.bma-digital-card__icon{width:50px;height:50px;display:grid;place-items:center;border:1px solid rgba(182,204,215,.26);border-radius:12px;background:rgba(184,207,218,.055);color:#b2c6d0;transition:background .25s ease,color .25s ease,transform .25s ease}
.bma-digital-card__icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.bma-digital-card:hover .bma-digital-card__icon{background:#f4f7f8;color:#385e72;transform:translateY(-2px)}
.bma-digital-card__body{display:block;min-width:0}
.bma-digital-card__body strong{display:block;margin-bottom:8px;color:#fff;font-size:17px;line-height:1.2;font-weight:600;letter-spacing:-.02em}
.bma-digital-card__body small{display:block;max-width:510px;color:#a9bfce;font-size:12px;line-height:1.5}
.bma-digital-card>i{font-style:normal;color:#78a8c7;transition:transform .2s ease,color .2s ease}
.bma-digital-card:hover>i{color:#fff;transform:translate(2px,-2px)}

@media (max-width:900px){
  .bma-digital__head{grid-template-columns:1fr;gap:20px;align-items:start}
  .bma-digital__head>p{max-width:620px}
  .bma-digital__grid{grid-template-columns:1fr}
}
@media (max-width:640px){
  .bma-digital{padding:66px 0}
  .bma-digital__head h2{font-size:clamp(38px,11vw,50px)}
  .bma-digital-card{grid-template-columns:36px 46px minmax(0,1fr) 16px;gap:12px;min-height:138px;padding:22px 18px}
  .bma-digital-card__icon{width:44px;height:44px}
  .bma-digital-card__body strong{font-size:16px}
  .bma-digital-card__body small{font-size:11px}
}
@media (prefers-reduced-motion:reduce){
  .bma-digital-card,.bma-digital-card:after,.bma-digital-card__icon,.bma-digital-card>i{transition:none!important;transform:none!important}
}

/* PRIVACY / VALIDATION / EXTERNAL CONTENT CONSENT */
.bma-icon-sprite{position:absolute!important;width:0!important;height:0!important;overflow:hidden!important;pointer-events:none!important}
.bma-icon{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.form-privacy{margin:14px 0 0;color:#6a7c89;font-size:11px;line-height:1.55}
.form-privacy a{color:var(--bma-brand-steel);text-underline-offset:3px}
.field-error{display:block;min-height:18px;margin-top:6px;color:#a83f3f;font-size:11px;line-height:1.35}
.lead-form input.is-invalid,.lead-form textarea.is-invalid,.lead-form select.is-invalid{border-color:#c86a6a;box-shadow:0 0 0 3px rgba(200,106,106,.1)}
.lead-submit[disabled]{opacity:.68;cursor:wait}
.map-consent{min-height:480px;display:grid;place-items:center;position:relative;overflow:hidden;background:linear-gradient(145deg,#edf3f7,#dfe9ef)}
.map-consent:before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(76,108,127,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(76,108,127,.055) 1px,transparent 1px);background-size:38px 38px;transform:rotate(-6deg) scale(1.15)}
.map-consent__content{position:relative;z-index:1;width:min(78%,430px);padding:36px;background:rgba(255,255,255,.92);border:1px solid var(--bma-brand-line);box-shadow:0 22px 56px rgba(5,37,65,.1)}
.map-consent__eyebrow{display:block;margin-bottom:18px;color:var(--bma-brand-steel);font:600 9px/1 var(--font-mono);letter-spacing:.1em}
.map-consent__content strong{display:block;color:var(--bma-brand-ink);font-size:30px;line-height:1.05;letter-spacing:-.035em}
.map-consent__content p{margin:12px 0 24px;color:#607584;font-size:13px;line-height:1.55}
.map-consent__content .btn{margin-right:12px}
.map-consent iframe{width:100%;height:100%;min-height:480px;border:0}
.privacy-section{background:#fff}
.privacy-copy{max-width:900px}
.privacy-copy h2{margin:0 0 30px;font-size:clamp(34px,4vw,54px);line-height:1.02;letter-spacing:-.04em;font-weight:500;color:var(--bma-brand-ink)}
.privacy-copy p{max-width:820px;margin:0 0 20px;color:#506474;font-size:16px;line-height:1.75}
.privacy-copy a:not(.btn):not(.text-link){color:var(--bma-brand-steel)}
.privacy-actions,.error-actions{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-top:34px}
.page-hero--compact{padding-block:clamp(64px,7vw,94px)!important}
.icon-slug{color:#91a6b4;font-size:11px}
@media (max-width:640px){
  .map-consent{min-height:390px}
  .map-consent iframe{min-height:390px}
  .map-consent__content{width:calc(100% - 32px);padding:26px}
  .map-consent__content .btn{width:100%;margin:0 0 18px}
  .privacy-copy p{font-size:15px}
}

/* Icon semantics on public collection pages */
.service-card__icon{flex:0 0 42px;width:42px;height:42px;display:grid;place-items:center;border:1px solid #d4dfe5;border-radius:10px;background:#f0f4f6;color:#55768a;padding:9px}
.service-card{align-items:flex-start}
.service-content{min-width:0;flex:1}
.sector-card__icon{width:34px;height:34px;color:#5b7a8c;margin:0}

/* WORK VISUAL / PRIVATE ACCESS */




.home-page--bma .bma-work-rail{z-index:2;right:42px;text-align:left;font-size:11px;gap:8px;letter-spacing:.01em}


/* INSTITUTIONAL MEDIA DISTINCTION */
.home-page--bma .bma-about__media picture,.home-page--bma .bma-about__media img{display:block;width:100%;height:100%}

.home-page--bma .bma-work__photo{background:linear-gradient(135deg,#d8e7f0 0%,#f2f7fb 100%)}
.home-page--bma .bma-work__photo img{object-fit:cover;object-position:center center;filter:saturate(.9) contrast(1.02) brightness(1.01)}
.home-page--bma .bma-work__photo:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.05) 0%,rgba(255,255,255,.02) 20%,rgba(23,57,77,0) 42%,rgba(13,40,56,.12) 68%,rgba(13,40,56,.54) 100%);pointer-events:none;z-index:1}
.home-page--bma .bma-work__photo:after{background:linear-gradient(90deg,transparent 58%,rgba(2,25,45,.08) 72%,rgba(2,25,45,.44) 100%);z-index:1}

/* ABOUT MEDIA GEOMETRY */
.home-page--bma .bma-about{width:min(100%,1760px);grid-template-columns:minmax(0,1.08fr) minmax(480px,.92fr);align-items:stretch;background:#f6f9fb}
.home-page--bma .bma-about__media{height:clamp(400px,29vw,460px);min-height:0;overflow:hidden;background:#d8e2e8}
.home-page--bma .bma-about__media picture{display:block;width:100%;height:100%}
.home-page--bma .bma-about__media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 48%;filter:saturate(.94) contrast(1.03);transition:transform .65s cubic-bezier(.2,.7,.2,1)}
.home-page--bma .bma-about__copy{min-height:0;height:100%;padding:clamp(44px,4.4vw,64px) clamp(42px,4.6vw,72px);justify-content:center}
.home-page--bma .bma-about__copy h2{max-width:590px;font-size:clamp(38px,3.25vw,52px);line-height:1.01;margin:12px 0 14px}
.home-page--bma .bma-about__copy>p:not(.bma-overline){max-width:570px;margin-bottom:22px;font-size:13px;line-height:1.58}
.home-page--bma .bma-about__values{margin-top:26px}
@media (max-width:900px){
  .home-page--bma .bma-about{grid-template-columns:1fr}
  .home-page--bma .bma-about__media{height:auto;min-height:0;aspect-ratio:16/9}
  .home-page--bma .bma-about__copy{height:auto;padding:50px var(--bma-gutter)}
}
@media (max-width:640px){
  .home-page--bma .bma-about__media{height:auto;aspect-ratio:16/10}
  .home-page--bma .bma-about__copy{padding:42px 20px}
  .home-page--bma .bma-about__copy h2{font-size:clamp(35px,10vw,45px)}
}

/* Lenguaje técnico para cards de colección. */
body:not(.home-page--bma) .sector-card,
body:not(.home-page--bma) .service-card{position:relative;overflow:hidden}
body:not(.home-page--bma) .sector-card:after,
body:not(.home-page--bma) .service-card:after{content:"";position:absolute;right:-1px;top:-1px;width:22px;height:22px;border-top:1px solid rgba(78,112,132,.38);border-right:1px solid rgba(78,112,132,.38);pointer-events:none;transition:width .2s ease,height .2s ease,border-color .2s ease}
@media(hover:hover) and (pointer:fine){
  body:not(.home-page--bma) .sector-card:hover:after,
  body:not(.home-page--bma) .service-card:hover:after{width:30px;height:30px;border-color:rgba(67,99,118,.64)}
}

/* BMA 1.9.6 — accessibility, trust and interaction hardening */
:root{
  --focus-ring:#235f7d;
  --focus-ring-soft:rgba(35,95,125,.22);
  --trust:#365f73;
}

/* Keep keyboard focus unmistakable without changing the visual language. */
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{
  outline:3px solid var(--focus-ring);
  outline-offset:3px;
  box-shadow:0 0 0 5px rgba(255,255,255,.9),0 0 0 8px var(--focus-ring-soft);
}
.site-header :where(a,button):focus-visible,
.footer :where(a,button):focus-visible,
.bma-prefooter :where(a,button):focus-visible,
.bma-hero :where(a,button):focus-visible,
.bma-digital :where(a,button):focus-visible{
  outline-color:#d8edf7;
  box-shadow:0 0 0 4px rgba(16,36,45,.92),0 0 0 7px rgba(216,237,247,.72);
}
.skip-link:focus-visible{outline-color:#fff;box-shadow:0 0 0 4px #111}

/* Touch-target floor for important actions. */
:where(.desktop-nav a,.header-cta,.mobile-dock__item,.footer-v2__nav a,.footer-v2__contact a,.text-link,summary){
  min-height:44px;
}
.desktop-nav a,.footer-v2__nav a,.footer-v2__contact a,.text-link{display:inline-flex;align-items:center}

/* Contact / trust surface */
.form-security{
  display:grid;
  grid-template-columns:28px minmax(0,1fr);
  gap:11px;
  align-items:start;
  padding:14px 20px;
  border-bottom:1px solid var(--line);
  background:#f5f8f9;
  color:#53646d;
  font-size:12px;
  line-height:1.5;
}
.form-security strong{color:#263f4c;font-weight:650}
.form-security__icon{
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  border:1px solid #9eb4bf;
  border-radius:50%;
  background:#fff;
  color:var(--trust);
  font-weight:800;
  line-height:1;
}
.form-required{margin:0 0 14px;color:#62727a;font-size:12px;line-height:1.4}
.form-required span{color:#9a3f3f;font-weight:800}
.form-error-summary{
  margin:0 0 16px;
  padding:11px 13px;
  border-left:3px solid #a74747;
  background:#fff5f5;
  color:#6e2f2f;
  font-size:13px;
  line-height:1.45;
}
.field-meta-public{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-top:7px;
  color:#67767e;
  font:500 11px/1.4 var(--font-sans);
  letter-spacing:0;
  text-transform:none;
}
.field-meta-public [data-public-counter]{font-variant-numeric:tabular-nums;white-space:nowrap}
.field-error{display:block;min-height:18px;margin-top:5px;color:#8a3838;font:600 11px/1.35 var(--font-sans);letter-spacing:0;text-transform:none}
.lead-submit:disabled{cursor:wait;opacity:.72}
.lead-form input[aria-invalid="true"],.lead-form textarea[aria-invalid="true"],.lead-form select[aria-invalid="true"]{background:#fffafa}
.lead-form label:focus-within{color:#334f5d}

/* Reinforce interactive affordance beyond color alone. */
.contact-data a,.footer-v2__contact a,.privacy-copy a:not(.btn):not(.text-link){text-decoration-thickness:1px;text-underline-offset:3px}
.contact-data a:hover,.contact-data a:focus-visible,.footer-v2__contact a:hover,.footer-v2__contact a:focus-visible{text-decoration:underline;text-decoration-thickness:2px}
.footer-security-note{display:inline-flex!important;align-items:center;gap:7px;color:#8fa6b1!important;white-space:nowrap}
.footer-security-note b{width:16px;height:16px;display:inline-grid;place-items:center;border:1px solid rgba(190,211,220,.35);border-radius:50%;font-size:10px;line-height:1}

/* High-contrast and OS accessibility modes. */
@media (prefers-contrast:more){
  :root{--muted:#39464d;--subtle:#435159;--line:#aeb8bd}
  .eyebrow,.kicker,.lead-form label,.contact-data span{color:#3e4b52}
  .btn,.lead-submit{border-width:2px}
  .lead-form input,.lead-form select,.lead-form textarea{border-width:2px;border-color:#6f7c82}
}
@media (forced-colors:active){
  :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid Highlight;box-shadow:none}
  .brand-mask,.brand-mask--light{forced-color-adjust:auto;background:CanvasText}
  .form-security__icon,.footer-security-note b{border:1px solid CanvasText}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
}
.footer-trustline{display:flex;align-items:center;justify-content:flex-end;gap:22px}
@media(max-width:900px){
  .footer-v2__bottom>span.footer-trustline{display:flex!important}
  .footer-motto{display:none}
}
@media(max-width:640px){.footer-trustline{justify-content:flex-start}}
.map-wrap.is-loading{position:relative;min-height:540px}
.map-wrap.is-loading::after{content:"Cargando mapa…";position:absolute;inset:0;display:grid;place-items:center;background:#eef2f3;color:#49616e;font:600 11px/1 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;pointer-events:none}
.privacy-trust-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 34px;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.privacy-trust-grid article{min-height:170px;padding:20px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#f8fafb}
.privacy-trust-grid article>span{display:block;margin-bottom:28px;color:#607680;font:600 10px/1 var(--font-mono);letter-spacing:.08em}
.privacy-trust-grid strong{display:block;color:#213a47;font-size:16px;font-weight:650}
.privacy-trust-grid p{margin:8px 0 0!important;color:#5d6d75!important;font-size:13px!important;line-height:1.55!important}
main [id]{scroll-margin-top:calc(var(--header) + 18px)}
.contact-data strong,.contact-data a,.footer-v2__contact{overflow-wrap:anywhere}
@media(max-width:720px){.privacy-trust-grid{grid-template-columns:1fr}.privacy-trust-grid article{min-height:0}.privacy-trust-grid article>span{margin-bottom:14px}}
@media(pointer:coarse){:where(.btn,.bma-btn,.lead-submit,.header-cta,.mobile-dock__item,.text-link){min-height:48px}}
@media(prefers-reduced-transparency:reduce){.site-header{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:#fff!important}.home-page--bma .site-header:not(.is-scrolled){background:rgba(7,31,48,.98)!important}}
/* WCAG AA contrast refinements for small supporting text. */
.form-privacy{color:#61727a}
.bma-team-card__body small{color:#647680}

/* BMA 1.9.7 — semantic navigation, render efficiency and resilient feedback. */
.breadcrumb{padding-block:var(--space-4)}
.breadcrumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:0;margin:0;padding:0;list-style:none}
.breadcrumb li{display:inline-flex;align-items:center;min-width:0}
.breadcrumb li+li::before{content:"›";padding:0 var(--space-2);color:#8a969c}
.breadcrumb a{text-decoration:none;text-underline-offset:3px}
.breadcrumb a:hover,.breadcrumb a:focus-visible{text-decoration:underline}
.breadcrumb span{padding:0;color:#4e5e66;font-weight:600;overflow-wrap:anywhere}
.related-actions{display:flex;align-items:center;justify-content:flex-end;gap:22px;flex-wrap:wrap}
.feedback strong{font-weight:700;color:inherit}
.feedback:focus-visible{outline:2px solid #557b90;outline-offset:3px;box-shadow:none}
.map-wrap.is-slow::after{content:none}

/* Avoid work for heavy below-the-fold home sections until the browser needs it. */
@supports(content-visibility:auto){
  .home-page--bma :where(.bma-services,.bma-digital,.bma-about,.bma-sectors,.bma-work,.bma-team,.bma-prefooter){content-visibility:auto;contain-intrinsic-size:auto 680px}
}

/* Long headings remain stable and legible under dynamic content from BMA Control. */
:where(.page-hero h1,.detail-hero h1,.section-intro h2,.closing-band h2,.related h2){text-wrap:balance;overflow-wrap:anywhere}
:where(.service-content h3,.sector-card strong,.person-card h3){overflow-wrap:anywhere}

/* Autofill should look native to the BMA form instead of browser-yellow. */
.lead-form input:-webkit-autofill,.lead-form input:-webkit-autofill:hover,.lead-form input:-webkit-autofill:focus{-webkit-text-fill-color:var(--ink);box-shadow:0 0 0 1000px #fff inset;transition:background-color 9999s ease-out 0s}

@media(max-width:720px){
  .related-actions{justify-content:flex-start;align-items:flex-start;gap:14px}
  .related-actions .btn{width:100%}
}
.public-empty{max-width:760px;padding:42px;border:1px solid var(--line);background:#f8fafb}
.public-empty h2{max-width:640px;margin:14px 0 12px;font-size:clamp(30px,4vw,48px);line-height:1.04;letter-spacing:-.035em;font-weight:500;text-wrap:balance}
.public-empty>p:not(.kicker){max-width:580px;margin:0 0 24px;color:#596a73}
@media(max-width:640px){.public-empty{padding:28px 22px}.public-empty h2{font-size:32px}}

/* ==========================================================================
   BMA 1.9.8 — FINE VISUAL / UX POLISH
   Micro-rhythm, hierarchy, interaction consistency and responsive finish.
   ========================================================================== */
:root{
  --bma-shadow-xs:0 1px 2px rgba(13,40,56,.035);
  --bma-shadow-sm:0 8px 24px rgba(13,40,56,.055);
  --bma-shadow-md:0 18px 46px rgba(13,40,56,.085);
  --bma-control-height:48px;
}
body{font-kerning:normal;font-feature-settings:"kern" 1,"liga" 1}
p{ text-wrap:pretty }
:where(.service-number,.sector-index,.bma-card-index,.bma-sector-number,.bma-team-card__index,.detail-number span){font-variant-numeric:tabular-nums}
.btn-outline{margin-left:0}
:where(.btn,.bma-btn,.header-cta,.lead-submit) span[aria-hidden="true"]{display:inline-block;transition:transform .18s ease}
@media(hover:hover) and (pointer:fine){
  :where(.btn,.bma-btn,.header-cta,.lead-submit):hover span[aria-hidden="true"]{transform:translate(2px,-1px)}
}
:where(.btn,.bma-btn,.header-cta,.lead-submit):active{transform:translateY(0)}

/* Header: stable geometry with cleaner active state. */
@media(min-width:901px){
  .site-header .nav-shell{min-height:68px}
  .site-header .desktop-nav a{font-weight:550;color:#36505f;transition:color .18s ease}
  .site-header .desktop-nav a::after{right:0;bottom:8px;transform:scaleX(0);transform-origin:left;transition:transform .2s ease}
  .site-header .desktop-nav a:hover::after,.site-header .desktop-nav a[aria-current]::after{transform:scaleX(1)}
  .site-header .desktop-nav a[aria-current]{font-weight:650;color:var(--bma-brand-navy)}
  .site-header .header-cta{min-height:40px}
}
.site-header{transition:box-shadow .22s ease,background-color .22s ease,border-color .22s ease}
.site-header.is-scrolled{border-bottom-color:rgba(13,40,64,.13)}

/* Internal pages: same editorial cadence across every route. */
body:not(.home-page--bma) .page-hero,
body:not(.home-page--bma) .detail-hero{position:relative;isolation:isolate;overflow:hidden;box-shadow:inset 0 -1px rgba(255,255,255,.08)}
body:not(.home-page--bma) .page-hero::after,
body:not(.home-page--bma) .detail-hero::after{content:"";position:absolute;z-index:-1;right:-7vw;top:-28%;width:min(46vw,720px);aspect-ratio:1;border:1px solid rgba(255,255,255,.055);transform:rotate(18deg);pointer-events:none}
body:not(.home-page--bma) .page-hero .container,
body:not(.home-page--bma) .detail-hero .container{position:relative}
body:not(.home-page--bma) .page-hero .kicker,
body:not(.home-page--bma) .detail-hero .kicker{letter-spacing:.13em}
body:not(.home-page--bma) .page-hero h1,
body:not(.home-page--bma) .detail-hero h1{margin-top:15px;margin-bottom:20px;text-wrap:balance}
body:not(.home-page--bma) .page-hero h1 strong,
body:not(.home-page--bma) .detail-hero h1 strong{color:#dbe7ed}
body:not(.home-page--bma) .page-hero p,
body:not(.home-page--bma) .detail-hero p{max-width:650px}
body:not(.home-page--bma) .section-intro{align-items:end}
body:not(.home-page--bma) .section-intro h2{max-width:760px;text-wrap:balance}
body:not(.home-page--bma) .section-copy,
body:not(.home-page--bma) .section-intro>p{color:#536873}

/* Collection cards: finer alignment and a single interaction grammar. */
body:not(.home-page--bma) .service-card{min-height:250px;padding:28px;gap:20px;box-shadow:var(--bma-shadow-xs);transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease}
body:not(.home-page--bma) .service-number{flex-basis:34px;padding-top:5px;color:#748994}
body:not(.home-page--bma) .service-card__icon{flex-basis:44px;width:44px;height:44px;border-radius:11px;padding:10px}
body:not(.home-page--bma) .service-content h3{font-size:25px;text-wrap:balance}
body:not(.home-page--bma) .service-content p{color:#596e79;line-height:1.58}
body:not(.home-page--bma) .service-card:focus-within{background:#f6fafc;border-color:#bacbd4;box-shadow:var(--bma-shadow-sm)}
body:not(.home-page--bma) .sector-card{min-height:112px;transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease}
body:not(.home-page--bma) .sector-card:focus-visible{background:#eef4f7;border-color:#b7cad4}
body:not(.home-page--bma) .sector-card strong{text-wrap:balance}
body:not(.home-page--bma) .sector-arrow{transition:transform .18s ease,color .18s ease}
@media(hover:hover) and (pointer:fine){
  body:not(.home-page--bma) .service-card:hover{background:#f7fafc;border-color:#bccdd6;box-shadow:var(--bma-shadow-sm)}
  body:not(.home-page--bma) .sector-card:hover{background:#eef4f7;border-color:#b7cad4;box-shadow:var(--bma-shadow-xs)}
  body:not(.home-page--bma) .sector-card:hover .sector-arrow{transform:translate(2px,-2px);color:var(--bma-brand-steel)}
}

/* Institutional / people grids. */
.timeline article,.philosophy-grid article,.person-card{position:relative}
.timeline article,.philosophy-grid article{padding:28px}
.timeline h3,.philosophy-grid h3{letter-spacing:-.018em}
.timeline p,.philosophy-grid p{line-height:1.58}
.person-card{padding:26px;transition:border-color .18s ease,background-color .18s ease}
.person-card img{width:104px;height:104px;filter:grayscale(.82) saturate(.72) contrast(1.02);transition:filter .25s ease}
.person-card__placeholder{width:104px;height:104px;margin-bottom:24px;border-radius:14px}
.person-card>span{color:#617782}
.person-card h3{font-size:21px;letter-spacing:-.018em}
.person-card__bio{margin-top:16px;padding-top:16px;line-height:1.62}
@media(hover:hover) and (pointer:fine){.person-card:hover img{filter:grayscale(.45) saturate(.82) contrast(1.02)}}

/* Accordion polish without introducing decorative noise. */
summary{min-height:68px;display:flex;align-items:center;padding-block:20px;transition:color .18s ease}
summary::after{top:50%;transform:translateY(-50%);width:30px;height:30px;display:grid;place-items:center;border:1px solid #c9d3d8;border-radius:50%;color:#557283;font-size:17px}
details[open] summary{color:var(--bma-brand-navy)}
details p{line-height:1.65}

/* Detail pages: tighter relationship between editorial column and content. */
body:not(.home-page--bma) .detail-grid{align-items:end}
body:not(.home-page--bma) .detail-number{padding-left:28px}
body:not(.home-page--bma) .detail-number small{text-transform:uppercase;letter-spacing:.08em;font:600 9px/1.4 var(--font-mono)}
body:not(.home-page--bma) .detail-content{gap:clamp(54px,7vw,96px)}
body:not(.home-page--bma) .detail-content h2{text-wrap:balance}
body:not(.home-page--bma) .detail-image{filter:grayscale(.72) saturate(.72);box-shadow:var(--bma-shadow-sm)}
body:not(.home-page--bma) .detail-copy{color:#465d69;line-height:1.74}
body:not(.home-page--bma) .detail-meta{color:#71838c}
.related-actions .text-link{min-height:44px}

/* Contact: remove inherited offsets, improve scanning and control finish. */
.contact-data-page{margin-bottom:30px}
.contact-data>div{min-width:0}
.contact-data strong,.contact-data a{font-weight:600;line-height:1.35}
.contact-grid{gap:28px}
.map-consent__content{box-shadow:var(--bma-shadow-md)}
.map-consent__content .btn{margin-left:0}
.lead-panel{box-shadow:var(--bma-shadow-sm)}
.lead-panel-head{background:#fbfcfd}
.form-security{border-left:3px solid #8ca9b8;padding-left:17px}
.lead-form{padding:28px}
.lead-form label{color:#50646f}
.lead-form input,.lead-form select,.lead-form textarea{min-height:var(--bma-control-height);margin-top:9px;border-color:#b8c5cb;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease;caret-color:var(--bma-brand-navy)}
.lead-form textarea{min-height:144px;line-height:1.55}
.lead-form select{cursor:pointer}
.lead-form input::placeholder,.lead-form textarea::placeholder{color:#8b999f}
.lead-submit{min-height:52px;transition:background-color .18s ease,border-color .18s ease,opacity .18s ease}
.form-privacy{max-width:620px;margin-top:16px}
.feedback{padding:14px 16px;line-height:1.5}

/* Privacy + empty + error surfaces. */
.privacy-copy{max-width:880px}
.privacy-copy p{max-width:780px;color:#4e626e}
.privacy-trust-grid{border-color:var(--bma-brand-line)}
.privacy-trust-grid article{background:#f8fafb;border-color:var(--bma-brand-line)}
.public-empty{box-shadow:var(--bma-shadow-xs)}
.error-page{min-height:55svh;display:flex;align-items:center}
.error-page h1{letter-spacing:-.045em;text-wrap:balance}

/* Home: micro-alignment, card continuity and calmer hover behavior. */
.home-page--bma .bma-section__head h2,
.home-page--bma .bma-digital__head h2,
.home-page--bma .bma-about__copy h2,
.home-page--bma .bma-work__copy h2{ text-wrap:balance }
.home-page--bma .bma-section__side a{transition:color .18s ease,border-color .18s ease}
.home-page--bma .bma-section__side a span{display:inline-block;transition:transform .18s ease}
.home-page--bma .bma-proof__item strong{font-variant-numeric:tabular-nums}
.home-page--bma .bma-service-card h3{min-height:2.2em;text-wrap:balance}
.home-page--bma .bma-service-card p{line-height:1.55}
.home-page--bma .bma-service-card:focus-within{transform:translateY(-3px);border-color:#b6cddd;box-shadow:var(--bma-card-shadow)}
.home-page--bma .bma-service-card:focus-within::before{transform:scaleX(1)}
.home-page--bma .bma-sector-card:focus-visible{background:#f0f4f6;border-color:#b9c9d1}
.home-page--bma .bma-digital-card:focus-visible{background:rgba(255,255,255,.055)}
.home-page--bma .bma-team-card{box-shadow:var(--bma-shadow-xs)}
.home-page--bma .bma-team-card__body h3{text-wrap:balance}
.home-page--bma .bma-about__media,.home-page--bma .bma-work__photo{isolation:isolate}
@media(hover:hover) and (pointer:fine){
  .home-page--bma .bma-section__side a:hover{color:#345b70;border-color:#64889c}
  .home-page--bma .bma-section__side a:hover span{transform:translateX(2px)}
}

/* Pre-footer / footer: reduce visual seams and improve link affordance. */
.bma-prefooter__title h2{text-wrap:balance}
.bma-prefooter__copy p{text-wrap:pretty}
.footer-v2__nav a{position:relative;padding-block:4px}
.footer-v2__nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:rgba(255,255,255,.55);transform:scaleX(0);transform-origin:left;transition:transform .18s ease}
.footer-v2__contact a{width:max-content;max-width:100%}
@media(hover:hover) and (pointer:fine){.footer-v2__nav a:hover::after{transform:scaleX(1)}}

/* Mid-size screens: avoid cramped two-column cards before phone layout. */
@media(max-width:1120px) and (min-width:901px){
  body:not(.home-page--bma) .service-grid{grid-template-columns:1fr}
  body:not(.home-page--bma) .service-card{min-height:0}
  body:not(.home-page--bma) .people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:900px){
  body:not(.home-page--bma) .section-intro{align-items:start}
  body:not(.home-page--bma) .page-hero::after,body:not(.home-page--bma) .detail-hero::after{right:-26vw;width:75vw;opacity:.7}
  .contact-data-page{margin-bottom:22px}
  .lead-form{padding:24px}
  .person-card{padding:22px}
}

@media(max-width:640px){
  /* Forced line breaks are a desktop editorial device; phones wrap naturally. */
  :where(.page-hero h1,.detail-hero h1,.section-intro h2,.closing-band h2,.related h2,.detail-content h2) br{display:none}
  body:not(.home-page--bma) .page-hero h1,body:not(.home-page--bma) .detail-hero h1{line-height:1;letter-spacing:-.045em}
  body:not(.home-page--bma) .page-hero p,body:not(.home-page--bma) .detail-hero p{font-size:16px;line-height:1.58}
  .section-intro>p,.section-copy{font-size:16px;line-height:1.62}
  .lead-form{padding:20px}
  .lead-panel-head{min-height:52px}
  .form-security{grid-template-columns:24px minmax(0,1fr);padding:13px 16px 13px 14px}
  .map-consent__content{box-shadow:0 14px 36px rgba(5,37,65,.09)}
  .privacy-trust-grid{margin-bottom:28px}
  .privacy-copy p{line-height:1.7}
  .error-page{min-height:48svh;padding:70px 0}
  .home-page--bma .bma-service-card h3{min-height:0}
  .home-page--bma .bma-team-card__body h3{font-size:14px!important;line-height:1.2}
  .home-page--bma .bma-team-card__body p{font-size:10px!important;line-height:1.35}
  .footer-v2__nav a{min-height:38px;align-items:center}
}

/* BMA 1.9.9 — resilience and recoverable states */
.form-network-status{margin:0;padding:10px 12px;border:1px solid rgba(157,113,45,.22);border-radius:10px;background:#fff8ea;color:#72521f;font-size:12px;line-height:1.5}
.form-network-status[hidden]{display:none}
.runtime-error-page{min-height:100vh;display:grid;align-items:center;padding:72px 20px;background:#f5f8fa;color:#1b3544}
.runtime-error-page .container{width:min(760px,100%);margin:auto;padding:clamp(26px,5vw,54px);border:1px solid #d7e1e6;background:#fff;box-shadow:0 18px 60px rgba(32,61,78,.07)}
.runtime-error-page h1{max-width:680px;margin:12px 0 18px;font-size:clamp(38px,6vw,68px);line-height:.98;letter-spacing:-.05em}
.runtime-error-page p{max-width:620px;color:#60727c;font-size:15px;line-height:1.7}
.runtime-error-ref{margin:18px 0!important;font:600 10px/1.4 var(--font-mono)!important;letter-spacing:.05em;text-transform:uppercase}
.runtime-error-ref code{padding:3px 6px;border:1px solid #d7e1e6;background:#f7f9fb;color:#355466}

/* ==========================================================================
   BMA 1.10.0 — MICRO UX/UI + DASHBOARD CONTENT PARITY
   Optical rhythm, responsive content integrity and zero hidden DB fields.
   ========================================================================== */
::selection{background:#dce8ee;color:#173548}
html{scroll-padding-top:88px}
:where(a,button,input,select,textarea,summary){-webkit-tap-highlight-color:transparent}
:where(.page-hero,.detail-hero,.section,.bma-section){scroll-margin-top:82px}
:where([data-public-field],.detail-copy,.service-content h3,.service-content p,.sector-card strong,.person-card__bio,.bma-team-card__body h3,.bma-team-card__body p,.bma-team-card__body small){overflow-wrap:anywhere;word-break:normal}

/* Typography: optical consistency across user-managed content. */
:where(.page-hero h1,.detail-hero h1,.section-intro h2,.related h2,.closing-band h2,.bma-section__head h2){font-synthesis:none}
:where(.page-hero>*,.detail-hero>*,.section-intro>*,.person-card>*,.service-card>*,.sector-card>*){min-width:0}
body:not(.home-page--bma) .page-hero .container{padding-block:clamp(74px,8vw,116px)}
body:not(.home-page--bma) .section{padding-block:clamp(72px,7vw,106px)}
body:not(.home-page--bma) .section+.section{border-top-color:rgba(31,58,73,.095)}

/* Interactive surfaces never shift geometry between rest / hover / focus. */
:where(.btn,.bma-btn,.header-cta,.lead-submit,.text-link){will-change:auto}
:where(.service-card,.sector-card,.person-card,.bma-service-card,.bma-sector-card,.bma-team-card){outline:0}
:where(.service-card,.sector-card,.person-card,.bma-service-card,.bma-sector-card,.bma-team-card):focus-within{z-index:1}
:where(.service-card a,.sector-card,.bma-service-card a,.bma-sector-card,.text-link):focus-visible{outline-offset:4px}

/* Public team page: all dashboard-backed fields stay visible at every width. */
.people-grid-page .person-card{align-content:start}
.people-grid-page .person-card>span,.people-grid-page .person-card>h3,.people-grid-page .person-card>p,.people-grid-page .person-card__bio{display:block}
.people-grid-page .person-card>span:empty{display:none}
.people-grid-page .person-card h3{margin-top:10px}
.people-grid-page .person-card>p{margin-top:4px}
.people-grid-page .person-card__bio{max-width:42ch;color:#536873}
.people-grid-page .person-card img,.people-grid-page .person-card__placeholder{flex:none}

/* Home team cards preserve full dynamic values; no line-clamp or device copy. */
.home-page--bma .bma-team-card__body{height:auto}
.home-page--bma .bma-team-card__body h3,.home-page--bma .bma-team-card__body p,.home-page--bma .bma-team-card__body small{max-width:100%;white-space:normal;text-overflow:clip}
.home-page--bma .bma-team-card__body small{line-height:1.45}

/* Lists: make card rhythm resilient to longer content entered in BMA Control. */
body:not(.home-page--bma) .service-content{min-width:0;flex:1}
body:not(.home-page--bma) .service-content h3{margin-bottom:12px;line-height:1.08}
body:not(.home-page--bma) .service-content p{max-width:54ch;margin-bottom:20px}
body:not(.home-page--bma) .sector-card strong{max-width:38ch}
.home-page--bma .bma-service-card h3,.home-page--bma .bma-sector-card strong{overflow-wrap:anywhere}

/* Breadcrumb and detail metadata: quieter, cleaner scan. */
.breadcrumb{border-bottom:1px solid rgba(31,58,73,.07)}
.breadcrumb ol{min-height:22px}
.detail-meta{letter-spacing:.075em}
.detail-rule{margin-block:30px 18px}

/* Contact controls: subtle tactile finish without visual noise. */
.lead-form input,.lead-form select,.lead-form textarea{border-radius:2px}
.lead-form input:hover,.lead-form select:hover,.lead-form textarea:hover{border-color:#93a8b2}
.lead-form input:focus,.lead-form select:focus,.lead-form textarea:focus{background:#fff}
.lead-submit:disabled{cursor:wait;filter:saturate(.75)}
.form-network-status{box-shadow:inset 3px 0 0 #c59a54}

/* Footer micro hierarchy. */
.footer-v2__contact a,.footer-v2__nav a{text-underline-offset:4px}
.footer-v2__bottom{font-variant-numeric:tabular-nums}

@media(max-width:900px){
  html{scroll-padding-top:72px}
  body:not(.home-page--bma) .page-hero .container{padding-block:68px 74px}
  body:not(.home-page--bma) .section{padding-block:66px}
  .people-grid-page{gap:0}
  .people-grid-page .person-card{min-height:0}
}

@media(max-width:640px){
  html{scroll-padding-top:64px}
  body:not(.home-page--bma) .page-hero .container{padding-block:58px 64px}
  body:not(.home-page--bma) .section{padding-block:56px}
  body:not(.home-page--bma) .section-intro{gap:24px;margin-bottom:34px}
  body:not(.home-page--bma) .section-intro h2{font-size:clamp(34px,10vw,44px);line-height:1.01}

  /* Team becomes a compact editorial profile, while keeping every DB field visible. */
  .people-grid-page .person-card{display:grid;grid-template-columns:82px minmax(0,1fr);grid-template-rows:auto auto auto auto;column-gap:17px;row-gap:3px;padding:20px 18px 21px}
  .people-grid-page .person-card>img,.people-grid-page .person-card>.person-card__placeholder{grid-column:1;grid-row:1/4;width:82px;height:82px;margin:0;border-radius:12px}
  .people-grid-page .person-card>span{grid-column:2;grid-row:1;align-self:end;font-size:9.5px;line-height:1.35}
  .people-grid-page .person-card>h3{grid-column:2;grid-row:2;margin:4px 0 0;font-size:20px;line-height:1.08}
  .people-grid-page .person-card>p{grid-column:2;grid-row:3;margin:4px 0 0;font-size:12.5px;line-height:1.4}
  .people-grid-page .person-card>.person-card__bio{grid-column:1/-1;grid-row:4;max-width:none;margin-top:17px;padding-top:16px;font-size:13.5px;line-height:1.66}

  /* Home team: dynamic names/roles stay legible even when longer than the original copy. */
  .home-page--bma .bma-team-card__body{min-height:112px!important;padding:14px 13px 15px!important}
  .home-page--bma .bma-team-card__body h3{font-size:14.5px!important;line-height:1.18!important}
  .home-page--bma .bma-team-card__body p{margin-top:5px;font-size:10.5px!important;line-height:1.42!important}
  .home-page--bma .bma-team-card__body small{margin-top:7px;font-size:9.5px!important;line-height:1.42!important;letter-spacing:.035em}

  body:not(.home-page--bma) .service-card{padding:22px 20px;gap:16px}
  body:not(.home-page--bma) .service-content h3{font-size:22px;line-height:1.1}
  body:not(.home-page--bma) .sector-card{min-height:104px;padding-inline:18px}
  .breadcrumb{font-size:10px}
  .breadcrumb li+li::before{padding-inline:7px}
  .lead-form label{font-size:12.5px}
}

@media(max-width:380px){
  .people-grid-page .person-card{grid-template-columns:72px minmax(0,1fr);column-gap:14px;padding-inline:16px}
  .people-grid-page .person-card>img,.people-grid-page .person-card>.person-card__placeholder{width:72px;height:72px}
  .home-page--bma .bma-team-grid{gap:8px!important}
  .home-page--bma .bma-team-card__body{padding-inline:11px!important}
}

@media(prefers-reduced-motion:reduce){
  :where(.service-card,.sector-card,.person-card,.bma-service-card,.bma-sector-card,.bma-team-card){scroll-behavior:auto}
}


/* ==========================================================================
   BMA 1.10.1 — HOME CLAIM + OPTICAL POLISH
   Fine visual tuning only: hierarchy, affordance, contrast and rhythm.
   ========================================================================== */
.home-page--bma .bma-hero__copy{max-width:690px}
.home-page--bma .bma-hero__copy h1{max-width:680px;margin-top:17px;font-size:clamp(52px,4.55vw,74px);line-height:.965;letter-spacing:-.052em;text-wrap:balance}
.home-page--bma .bma-hero__copy h1 span{display:block;margin-top:.045em;color:#dce6eb;font-weight:450}
.home-page--bma .bma-hero__lead{max-width:535px;color:rgba(247,251,253,.89);line-height:1.62;text-wrap:pretty}
.home-page--bma .bma-actions{gap:11px;margin-top:30px}
.home-page--bma .bma-btn{border-radius:1px}
.home-page--bma .bma-hero__principles{margin-top:38px;color:rgba(255,255,255,.69)}
.home-page--bma .bma-hero__location{min-width:178px;padding:12px 14px 11px;border:1px solid rgba(255,255,255,.14);background:rgba(4,29,46,.22);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);text-shadow:0 2px 14px rgba(0,0,0,.28)}
.home-page--bma .bma-hero__location:before{margin-bottom:6px;width:42px;background:rgba(255,255,255,.55)}
.home-page--bma .bma-hero__location strong{letter-spacing:-.012em}

.home-page--bma .bma-proof{box-shadow:0 1px 0 rgba(5,37,65,.025)}
.home-page--bma .bma-proof__grid>div{position:relative}
.home-page--bma .bma-proof__item strong{letter-spacing:-.035em}
.home-page--bma .bma-proof__item span{max-width:17ch;color:#687b87}

.home-page--bma .bma-section__head{align-items:center}
.home-page--bma .bma-section__side p{text-wrap:pretty}
.home-page--bma .bma-section__side a{padding-bottom:6px;border-bottom-color:#a8c0ce}
.home-page--bma .bma-service-card>a span,.home-page--bma .bma-sector-card i,.home-page--bma .bma-digital-card>i{display:inline-block;transition:transform .18s ease,color .18s ease}
.home-page--bma .bma-service-card{background:linear-gradient(180deg,#fff 0%,#fbfcfd 100%)}
.home-page--bma .bma-service-card__icon{box-shadow:inset 0 1px 0 rgba(255,255,255,.72)}
.home-page--bma .bma-service-card p{color:#5f7380}
.home-page--bma .bma-sector-card strong{letter-spacing:-.012em;text-wrap:balance}
.home-page--bma .bma-team-card__body{border-top:1px solid rgba(38,69,87,.045)}

@media(hover:hover) and (pointer:fine){
  .home-page--bma .bma-btn:hover span[aria-hidden="true"],
  .home-page--bma .bma-service-card>a:hover span[aria-hidden="true"]{transform:translateX(3px)}
  .home-page--bma .bma-sector-card:hover i,.home-page--bma .bma-digital-card:hover>i{transform:translate(2px,-2px)}
  .home-page--bma .bma-service-card>a:hover{color:#335f76}
}

@media(max-width:900px){
  .home-page--bma .bma-hero__copy{max-width:620px}
  .home-page--bma .bma-hero__copy h1{max-width:590px;font-size:clamp(48px,8vw,66px)}
  .home-page--bma .bma-hero__copy h1 span{display:inline;margin-top:0}
  .home-page--bma .bma-hero__location{padding:11px 13px}
  .home-page--bma .bma-section__head{align-items:start}
}

@media(max-width:640px){
  .home-page--bma .bma-hero__copy{padding-top:218px;padding-bottom:52px}
  .home-page--bma .bma-hero__copy h1{max-width:365px;margin:12px 0 17px;font-size:clamp(39px,11.5vw,50px);line-height:.98;letter-spacing:-.048em}
  .home-page--bma .bma-hero__lead{max-width:350px;font-size:14.5px;line-height:1.58}
  .home-page--bma .bma-actions{margin-top:25px}
  .home-page--bma .bma-hero__principles{margin-top:29px}
  .home-page--bma .bma-proof__intro strong{max-width:28ch}
  .home-page--bma .bma-section__side p{max-width:36ch}
  .home-page--bma .bma-service-card>a{min-height:34px;align-items:center}
}
