:root{
  /* Brand */
  --c-navy-950:#06142b;
  --c-navy-900:#0a1d3d;
  --c-navy-800:#12315c;
  --c-gold-700:#7b571c;
  --c-gold-600:#956b25;
  --c-gold-500:#bd8f3e;
  --c-gold-300:#e1c17b;
  --c-cream-50:#fdfbf7;
  --c-cream-100:#f7f2e9;
  --c-cream-200:#eee4d5;
  --c-ink:#162033;
  --c-muted:#667085;
  --c-line:rgba(6,20,43,.14);
  --c-line-dark:rgba(255,255,255,.18);
  --c-success:#19744a;
  --c-danger:#b42318;
  --c-focus:#0b70ff;
  --gold2:var(--c-gold-600);
  --c-white:#fff;

  /* Type */
  --font-display:"Cormorant Garamond", Georgia, serif;
  --font-sans:"Manrope", system-ui, sans-serif;
  --fs-xs:.75rem;
  --fs-sm:.875rem;
  --fs-body:clamp(1rem,.96rem + .18vw,1.125rem);
  --fs-lead:clamp(1.125rem,1.04rem + .34vw,1.375rem);
  --fs-h3:clamp(1.5rem,1.28rem + .8vw,2.125rem);
  --fs-h2:clamp(2.25rem,1.72rem + 2.15vw,4rem);
  --fs-h1:clamp(3rem,2rem + 4.3vw,6.2rem);

  /* 8pt spacing system */
  --s-0:4px;
  --s-1:8px;
  --s-2:16px;
  --s-3:24px;
  --s-4:32px;
  --s-5:48px;
  --s-6:64px;
  --s-7:96px;
  --s-8:128px;

  /* Grid */
  --container:1440px;
  --gutter:clamp(var(--s-3),4vw,var(--s-6));
  --grid-gap:clamp(var(--s-2),2.3vw,var(--s-4));
  --measure:68ch;
  --measure-tight:54ch;

  /* Shape + depth */
  --r-sm:8px;
  --r-md:16px;
  --r-lg:24px;
  --shadow-1:0 8px 24px rgba(6,20,43,.08);
  --shadow-2:0 24px 64px rgba(6,20,43,.14);
  --shadow-3:0 40px 96px rgba(6,20,43,.18);

  /* Motion */
  --dur-fast:200ms;
  --dur:320ms;
  --dur-slow:700ms;
  --ease:cubic-bezier(.22,.61,.36,1);
  --ease-emph:cubic-bezier(.16,1,.3,1);
}

/* ---------- reset / base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;text-size-adjust:100%}
body{margin:0;background:var(--c-cream-50);color:var(--c-ink);font-family:var(--font-sans);font-size:var(--fs-body);line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
body.menu-open{overflow:hidden}
img,picture,svg,video{display:block;max-width:100%}
img{height:auto}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
main{display:block}
:where(h1,h2,h3,h4,p,ul,ol,blockquote,figure){margin-top:0}
:where(h1,h2,h3,h4){font-family:var(--font-display);font-weight:600;letter-spacing:-.035em;line-height:1;text-wrap:balance;color:var(--c-navy-950)}
:where(p,li,blockquote,figcaption){text-wrap:pretty}
p{margin-bottom:var(--s-2)}
address{font-style:normal}
::selection{background:var(--c-gold-300);color:var(--c-navy-950)}

.container{width:min(var(--container),calc(100% - (var(--gutter) * 2)));margin-inline:auto}
.section{padding-block:clamp(var(--s-6),8vw,var(--s-8))}
.section.white{background:var(--c-white)}
.section.soft,.v9-cream{background:var(--c-cream-100)}
.section.navy{background:var(--c-navy-950);color:var(--c-white)}

.skip{position:fixed;z-index:1000;left:var(--s-2);top:var(--s-2);transform:translateY(-160%);padding:var(--s-2) var(--s-3);background:var(--c-white);color:var(--c-navy-950);border:2px solid var(--c-focus);border-radius:var(--r-sm);transition:transform var(--dur-fast) var(--ease)}
.skip:focus{transform:none}

:focus-visible{outline:3px solid var(--c-focus);outline-offset:4px;border-radius:var(--r-sm)}

.eyebrow,.v9-eyebrow,.v10-eyebrow{margin:0 0 var(--s-2);font-size:var(--fs-xs);font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--c-gold-700)}
.lead,.v9-lead{margin:var(--s-3) 0 0;max-width:var(--measure);font-size:var(--fs-lead);line-height:1.6;color:var(--c-muted)}
.mini,.small{font-size:var(--fs-sm)}

/* ---------- header / navigation ---------- */
.site-header{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--c-cream-50) 90%,transparent);border-bottom:1px solid transparent;backdrop-filter:blur(18px) saturate(140%);transition:box-shadow var(--dur) var(--ease),background var(--dur) var(--ease),border-color var(--dur) var(--ease)}
.site-header.is-scrolled{background:color-mix(in srgb,var(--c-cream-50) 96%,transparent);border-color:var(--c-line);box-shadow:0 12px 40px rgba(6,20,43,.08)}
.nav{min-height:96px;display:flex;align-items:center;gap:var(--s-4)}
.brand{display:flex;align-items:center;min-width:0;flex:0 1 360px}
.brand-lockup{display:grid;justify-items:center;width:min(360px,100%)}
.brand img{width:100%;height:auto;max-height:46px;object-fit:contain}
.brand-subtitle{margin-top:var(--s-1);font-size:.78rem;font-weight:600;letter-spacing:.20em;text-transform:uppercase;color:var(--c-navy-800);text-align:center;white-space:nowrap}
.nav-links{margin-left:auto;display:flex;align-items:center;gap:clamp(var(--s-2),1.5vw,var(--s-3));font-size:.75rem;font-weight:700;letter-spacing:.055em;text-transform:uppercase;color:var(--c-navy-950)}
.nav-links a{position:relative;display:inline-flex;align-items:center;min-height:48px;padding-inline:var(--s-0);white-space:nowrap}
.nav-links a:not(.nav-cta)::after{content:"";position:absolute;left:var(--s-0);right:var(--s-0);bottom:7px;height:1px;background:var(--c-gold-500);transform:scaleX(0);transform-origin:right;transition:transform var(--dur) var(--ease)}
.nav-links a:hover::after,.nav-links a:focus-visible::after,.nav-links a[aria-current="page"]::after{transform:scaleX(1);transform-origin:left}
.nav-cta{padding:0 var(--s-3)!important;background:var(--c-gold-500);color:var(--c-navy-950);border-radius:var(--r-sm);box-shadow:0 8px 22px rgba(189,143,62,.20);transition:transform var(--dur-fast) var(--ease),box-shadow var(--dur) var(--ease),background var(--dur) var(--ease)}
.nav-cta:hover,.nav-cta:focus-visible{background:var(--c-gold-300);transform:translateY(-2px);box-shadow:0 12px 28px rgba(189,143,62,.28)}
.menu-btn{display:none;margin-left:auto;width:48px;height:48px;padding:0;border:0;background:transparent;place-items:center}
.menu-btn span{display:block;width:24px;height:2px;margin:5px 0;background:var(--c-navy-950);transition:transform var(--dur) var(--ease),opacity var(--dur-fast) var(--ease)}
.menu-btn[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-btn[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-btn[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ---------- buttons / interactive ---------- */
.btn,.v9-btn,.v10-btn{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);padding:var(--s-2) var(--s-3);border:1px solid transparent;border-radius:var(--r-sm);font-family:var(--font-sans);font-size:.78rem;font-weight:700;letter-spacing:.055em;text-transform:uppercase;transition:transform var(--dur-fast) var(--ease),background var(--dur) var(--ease),border-color var(--dur) var(--ease),color var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}
.btn:hover,.v9-btn:hover,.v10-btn:hover{transform:translateY(-2px)}
.btn:active,.v9-btn:active,.v10-btn:active{transform:translateY(0) scale(.985)}
.btn.primary,.v9-btn-navy{background:var(--c-navy-950);color:var(--c-white);border-color:var(--c-navy-950)}
.btn.primary:hover,.v9-btn-navy:hover{background:var(--c-navy-800)}
.btn.gold,.v9-btn-gold,.v10-btn-gold{background:var(--c-gold-500);color:var(--c-navy-950);border-color:var(--c-gold-500);box-shadow:0 10px 30px rgba(189,143,62,.16)}
.btn.gold:hover,.v9-btn-gold:hover,.v10-btn-gold:hover{background:var(--c-gold-300)}
.v10-btn-outline,.btn.outline{background:rgba(255,255,255,.04);color:var(--c-white);border-color:rgba(255,255,255,.68)}
.btn:disabled,.v9-btn:disabled,.v10-btn:disabled{opacity:.46;cursor:not-allowed;transform:none;box-shadow:none}
.ui-icon{width:18px;height:18px;flex:0 0 18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.fill-icon{fill:currentColor;stroke:none}
.brand-icon{width:20px;height:20px;border-radius:var(--s-0);display:inline-grid;place-items:center;flex:0 0 20px;background:#0a66c2;color:#fff;font:700 11px/1 var(--font-sans)}

/* ---------- home ---------- */
.page-home .v10-main{overflow:hidden}
.page-home .v10-hero{position:relative;min-height:min(780px,82vh);display:grid;align-items:center;isolation:isolate;background:var(--c-navy-950);overflow:hidden}
.page-home .v10-hero-media{position:absolute;inset:-5%;z-index:-3;will-change:transform;transform:translate3d(0,var(--parallax-y,0),0) scale(1.06)}
.page-home .v10-hero-media picture,.page-home .v10-hero-media img{width:100%;height:100%}
.page-home .v10-hero-media img{object-fit:cover;object-position:58% center;animation:hero-breathe 18s ease-in-out infinite alternate}
.page-home .v10-hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(6,20,43,.94) 0%,rgba(6,20,43,.82) 40%,rgba(6,20,43,.30) 72%,rgba(6,20,43,.14) 100%)}
.page-home .v10-hero::after{content:"";position:absolute;inset:auto -8vw -16vw 18vw;height:28vw;min-height:180px;border:1px solid rgba(225,193,123,.48);border-radius:50%;transform:rotate(-6deg);pointer-events:none;z-index:-1}
.page-home .v10-hero-content{width:min(var(--container),calc(100% - (var(--gutter)*2)));margin-inline:auto;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--grid-gap);padding-block:var(--s-7)}
.page-home .v10-hero-copy{grid-column:1 / span 7;color:var(--c-white)}
.page-home .v10-eyebrow{color:var(--c-gold-300);margin-bottom:var(--s-3)}
.page-home .v10-hero h1{margin:0;max-width:12ch;color:var(--c-white);font-size:var(--fs-h1);line-height:.92;letter-spacing:-.045em}
.page-home .v10-hero h1 em{color:var(--c-gold-300);font-weight:500}
.page-home .v10-lead{max-width:52ch;margin-top:var(--s-3);font-size:var(--fs-lead);line-height:1.55;color:rgba(255,255,255,.82)}
.page-home .v10-actions{display:flex;flex-wrap:wrap;gap:var(--s-2);margin-top:var(--s-4)}
.page-home .v10-hero-curve{display:none}
@keyframes hero-breathe{from{transform:scale(1.02)}to{transform:scale(1.08)}}

.page-home .v10-portals{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0;background:var(--c-cream-50)}
.page-home .v10-portal-card{grid-column:span 4;position:relative;min-height:520px;overflow:hidden;color:var(--c-white);isolation:isolate;border-right:1px solid rgba(255,255,255,.6)}
.page-home .v10-portal-card:last-child{border-right:0}
.page-home .v10-portal-card picture{position:absolute;inset:-4%;z-index:-3;transform:translate3d(0,var(--card-shift,0),0);will-change:transform}
.page-home .v10-portal-card picture,.page-home .v10-portal-card img{width:100%;height:100%}
.page-home .v10-portal-card img{object-fit:cover;transition:transform var(--dur-slow) var(--ease-emph),filter var(--dur-slow) var(--ease);filter:saturate(.88) contrast(1.03)}
.page-home .v10-portal-card:nth-child(1) img{object-position:70% center}
.page-home .v10-portal-card:nth-child(2) img{object-position:66% center}
.page-home .v10-portal-card:nth-child(3) img{object-position:72% center}
.page-home .v10-card-overlay{position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,rgba(6,20,43,.10),rgba(6,20,43,.88) 88%)}
.page-home .v10-portal-card:hover img,.page-home .v10-portal-card:focus-visible img{transform:scale(1.045);filter:saturate(1) contrast(1.06)}
.page-home .v10-card-copy{height:100%;display:grid;grid-template-rows:auto auto 1fr auto auto;align-content:end;gap:var(--s-1);padding:var(--s-5)}
.page-home .v10-number{font-family:var(--font-display);font-size:1.35rem;color:var(--c-gold-300)}
.page-home .v10-card-copy>p{margin:0;font-size:var(--fs-xs);font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--c-gold-300)}
.page-home .v10-card-copy h2{align-self:end;margin:var(--s-2) 0 0;max-width:10ch;color:var(--c-white);font-size:clamp(2.5rem,3.1vw,4rem);line-height:.96}
.page-home .v10-card-copy small{display:block;max-width:32ch;margin-top:var(--s-2);font-size:var(--fs-sm);line-height:1.6;color:rgba(255,255,255,.78)}
.page-home .v10-card-copy strong{margin-top:var(--s-3);font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--c-white)}
.page-home .v10-card-copy strong b{margin-left:var(--s-1);color:var(--c-gold-300);font-size:1.2rem}

.page-home .v10-statement{padding-block:clamp(var(--s-6),7vw,var(--s-8));background:var(--c-cream-50)}
.page-home .v10-statement-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--grid-gap);align-items:center}
.page-home .v10-brand-statement{grid-column:1 / span 7;margin:0;font-family:var(--font-display);font-size:clamp(2.1rem,3.4vw,4rem);line-height:1.04;color:var(--c-navy-950);text-wrap:balance}
.page-home .v10-statement-links{grid-column:9 / -1;padding-left:var(--s-4);border-left:1px solid var(--c-line)}
.page-home .v10-statement-links img{width:min(360px,100%)}
.page-home .v10-statement-links>span{display:block;width:min(360px,100%);margin-top:var(--s-1);text-align:center;font-size:.78rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--c-gold-700)}
.page-home .v10-statement-links nav{display:grid;gap:var(--s-1);margin-top:var(--s-4)}
.page-home .v10-statement-links nav a{font-weight:700;color:var(--c-navy-950);transition:color var(--dur) var(--ease),transform var(--dur) var(--ease)}
.page-home .v10-statement-links nav a:hover{color:var(--c-gold-700);transform:translateX(4px)}

/* ---------- page heroes ---------- */
.v9-page-hero,.page-hero,.v9-about-hero{position:relative;overflow:hidden;background:var(--c-cream-50)}
.v9-page-hero::before,.page-hero::before,.v9-about-hero::before{content:"";position:absolute;right:-18vw;top:-30vw;width:54vw;aspect-ratio:1;border:1px solid rgba(189,143,62,.18);border-radius:50%;pointer-events:none}
.v9-page-hero-grid,.page-hero-grid,.v9-about-hero-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--grid-gap);align-items:center;min-height:680px}
.v9-page-hero-grid>div:first-child,.page-hero-grid>div:first-child,.v9-about-hero-grid>div:first-child{grid-column:1 / span 6;min-width:0;padding-block:var(--s-7)}
.v9-page-hero h1,.page-hero h1,.v9-about-hero h1{margin:0;max-width:11.5ch;font-size:clamp(3.4rem,4.9vw,5.7rem);line-height:.96;letter-spacing:-.045em}
.v9-page-hero .v9-lead,.page-hero .lead,.v9-about-hero .v9-lead{max-width:50ch}
.v9-actions{display:flex;flex-wrap:wrap;gap:var(--s-2);margin-top:var(--s-4)}
.v9-art,.v9-about-photo,.page-hero-aside{grid-column:8 / -1;align-self:stretch;min-width:0}
.v9-art{position:relative;min-height:560px;margin-block:var(--s-5);overflow:hidden;background:var(--c-navy-900);border-radius:var(--r-lg);box-shadow:var(--shadow-2)}
.v9-art::before{content:"";position:absolute;inset:-5%;background-image:var(--art);background-size:cover;background-position:var(--art-pos,center);transform:translate3d(0,var(--parallax-y,0),0) scale(1.07);will-change:transform;transition:transform var(--dur-slow) var(--ease-emph),filter var(--dur-slow) var(--ease);filter:saturate(.92) contrast(1.02)}
.v9-art::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,20,43,.03),rgba(6,20,43,.14))}
.v9-art:hover::before{transform:translate3d(0,var(--parallax-y,0),0) scale(1.11);filter:saturate(1.02) contrast(1.04)}
.v9-art-org,.v9-art-exec{--art:url('assets/visual-organizacoes-photo.avif');--art-pos:66% center}
.v9-art-edu{--art:url('assets/visual-educacao-photo.avif');--art-pos:64% center}
.v9-art-people{--art:url('assets/visual-pessoas-photo.avif');--art-pos:66% center}
.v9-dark-hero{background:linear-gradient(135deg,var(--c-navy-950),var(--c-navy-900));color:var(--c-white)}
.v9-dark-hero::before{border-color:rgba(225,193,123,.16)}
.v9-dark-hero h1{color:var(--c-white)}
.v9-dark-hero .v9-eyebrow{color:var(--c-gold-300)}
.v9-dark-hero .v9-lead{color:rgba(255,255,255,.74)}
.v9-people-hero{background:linear-gradient(140deg,#f8f1e7,#eee0ce)}

.page-hero{padding-block:0;background:linear-gradient(130deg,var(--c-cream-50),var(--c-cream-100))}
.page-hero-grid{min-height:520px}
.page-hero h1{font-size:clamp(3rem,4.3vw,5rem);max-width:13ch}
.page-hero-aside{align-self:center;padding:var(--s-4);border-left:3px solid var(--c-gold-500);background:var(--c-navy-950);color:var(--c-white);border-radius:0 var(--r-md) var(--r-md) 0;box-shadow:var(--shadow-1)}
.page-hero-aside strong{display:block;margin-bottom:var(--s-1);font-size:var(--fs-sm);letter-spacing:.08em;text-transform:uppercase;color:var(--c-gold-300)}
.page-hero-aside p{margin:0;color:rgba(255,255,255,.72)}
.direct-links{display:grid;gap:var(--s-2);margin-top:var(--s-2)}
.direct-links a{min-height:44px;display:inline-flex;align-items:center;color:var(--c-white);font-weight:600}

/* About hero */
.v9-about-logo{width:min(420px,84%);margin:0 0 var(--s-4)}
.v9-about-photo{grid-column:8 / -1;margin:var(--s-5) 0;overflow:hidden;border-radius:var(--r-lg);box-shadow:var(--shadow-2);aspect-ratio:4/5}
.v9-about-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 24%;transform:translate3d(0,var(--parallax-y,0),0) scale(1.04);will-change:transform}

/* ---------- section heading rhythm ---------- */
.v9-visual-section,.v9-three-up,.v9-solutions,.v9-domain-section,.v9-topics,.v9-engagement,.v9-compact-profile,.v9-credentials,.v9-timeline,.v9-more,.v9-locations,.v9-questions,.v9-approaches,.v9-manifesto,.v9-philosophy,.v9-process{padding-block:clamp(var(--s-6),7.5vw,var(--s-8))}
.v9-section-intro,.section-head{width:min(760px,100%);margin-bottom:var(--s-5)}
.v9-section-intro h2,.section-head h2{margin:0;max-width:13ch;font-size:var(--fs-h2);line-height:1;letter-spacing:-.035em}
.v9-section-intro>p:not(.v9-eyebrow),.section-head>p:not(.eyebrow){margin:var(--s-2) 0 0;max-width:var(--measure);color:var(--c-muted)}
.section-head.center{margin-inline:auto;text-align:center}
.section-head.center h2,.section-head.center p{margin-inline:auto}

/* ---------- signal cards ---------- */
.v9-signal-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0;border-top:1px solid var(--c-line)}
.v9-signal-grid article{grid-column:span 6;min-height:220px;display:grid;grid-template-columns:64px minmax(0,1fr);grid-template-rows:auto 1fr;gap:var(--s-2);padding:var(--s-4) var(--s-5) var(--s-4) 0;border-bottom:1px solid var(--c-line)}
.v9-signal-grid article:nth-child(even){padding-left:var(--s-5);padding-right:0;border-left:1px solid var(--c-line)}
.v9-signal-grid article>span{grid-column:1;grid-row:1 / span 2;font-family:var(--font-display);font-size:1.5rem;color:var(--c-gold-600)}
.v9-signal-grid article>h3{grid-column:2;grid-row:1;margin:0;max-width:20ch;font-size:var(--fs-h3);line-height:1.08}
.v9-signal-grid article>p{grid-column:2;grid-row:2;margin:0;max-width:40ch;color:var(--c-muted)}

/* ---------- three-up / solutions / domains ---------- */
.v9-big-three,.v9-solution-grid,.v9-domain-grid,.v9-engagement-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--grid-gap)}
.v9-big-three article{grid-column:span 4;min-height:260px;display:flex;flex-direction:column;padding:var(--s-4);background:var(--c-white);border-top:3px solid var(--c-gold-500);box-shadow:var(--shadow-1)}
.v9-big-three b{font-family:var(--font-display);font-size:1.5rem;font-weight:600;color:var(--c-gold-600)}
.v9-big-three h3{margin:auto 0 var(--s-2);font-size:var(--fs-h3)}
.v9-big-three p{margin:0;max-width:32ch;color:var(--c-muted)}

.v9-solution-grid article{grid-column:span 4;min-height:210px;display:grid;align-content:space-between;padding:var(--s-4);background:var(--c-white);border:1px solid var(--c-line);border-radius:var(--r-md);transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease),border-color var(--dur) var(--ease)}
.v9-solution-grid article:hover{transform:translateY(-4px);border-color:rgba(149,107,37,.36);box-shadow:var(--shadow-1)}
.v9-solution-grid span{font-family:var(--font-display);font-size:1.35rem;color:var(--c-gold-600)}
.v9-solution-grid h3{margin:var(--s-5) 0 0;font-size:var(--fs-h3);line-height:1.08}

.v9-domain-grid article{grid-column:span 6;display:grid;grid-template-columns:56px 1fr;grid-template-rows:auto auto;gap:var(--s-1) var(--s-3);padding:var(--s-4) 0;border-top:1px solid var(--c-line)}
.v9-domain-grid article:nth-child(even){padding-left:var(--s-4)}
.v9-domain-grid span{grid-row:1 / span 2;font-family:var(--font-display);font-size:1.4rem;color:var(--c-gold-600)}
.v9-domain-grid h3{margin:0;font-size:var(--fs-h3)}
.v9-domain-grid p{margin:0;max-width:42ch;color:var(--c-muted)}

.v9-engagement-grid article{grid-column:span 4;min-height:220px;padding:var(--s-4);background:linear-gradient(180deg,var(--c-white),#faf7f1);border:1px solid var(--c-line);border-radius:var(--r-md)}
.v9-engagement-grid article span{display:block;font-family:var(--font-display);font-size:var(--fs-h3);font-weight:600;color:var(--c-navy-950)}
.v9-engagement-grid article p{margin:var(--s-2) 0 0;color:var(--c-muted)}

/* ---------- process ---------- */
.v9-process{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--c-navy-950),#0c2850);color:var(--c-white)}
.v9-process::after{content:"";position:absolute;right:-10vw;bottom:-22vw;width:42vw;aspect-ratio:1;border:1px solid rgba(225,193,123,.15);border-radius:50%;pointer-events:none}
.v9-process .v9-section-intro h2{color:var(--c-white)}
.v9-process .v9-eyebrow{color:var(--c-gold-300)}
.v9-process-line{list-style:none;margin:var(--s-5) 0 0;padding:0;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--grid-gap);position:relative}
.v9-process-line::before{content:"";position:absolute;left:4%;right:4%;top:23px;height:1px;background:rgba(225,193,123,.38)}
.v9-process-line li{grid-column:span 3;position:relative;padding-top:var(--s-6)}
.v9-process-line li::before{content:"";position:absolute;top:16px;left:0;width:16px;height:16px;border-radius:50%;background:var(--c-gold-300);box-shadow:0 0 0 8px var(--c-navy-950)}
.v9-process-line span{display:block;font-family:var(--font-display);font-size:1.25rem;color:var(--c-gold-300)}
.v9-process-line strong{display:block;margin-top:var(--s-2);font-family:var(--font-display);font-size:clamp(1.75rem,2vw,2.3rem);font-weight:600;color:var(--c-white)}
.v9-process-line small{display:block;margin-top:var(--s-1);max-width:22ch;font-size:var(--fs-sm);line-height:1.55;color:rgba(255,255,255,.66)}

/* ---------- questions ---------- */
.v9-questions{background:var(--c-white)}
.v9-question-list{border-top:1px solid var(--c-line)}
.v9-question-list blockquote{margin:0;display:grid;grid-template-columns:72px 1fr;gap:var(--s-3);align-items:start;padding-block:var(--s-5);border-bottom:1px solid var(--c-line);font-family:var(--font-display);font-size:clamp(1.9rem,3vw,3.25rem);line-height:1.04;color:var(--c-navy-950)}
.v9-question-list blockquote span{font-size:1.25rem;color:var(--c-gold-600)}

/* ---------- education ---------- */
.v9-philosophy{background:var(--c-navy-950);color:var(--c-white)}
.v9-philosophy-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--grid-gap);align-items:start}
.v9-philosophy-grid>div:first-child{grid-column:1 / span 7}
.v9-philosophy h2{margin:0;max-width:12ch;font-size:var(--fs-h2);color:var(--c-white)}
.v9-philosophy .v9-eyebrow{color:var(--c-gold-300)}
.v9-philosophy-words{grid-column:9 / -1;display:grid;gap:0;border-top:1px solid var(--c-line-dark)}
.v9-philosophy-words span{padding-block:var(--s-2);border-bottom:1px solid var(--c-line-dark);font-size:var(--fs-sm);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.84)}
.v9-topic-chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--s-5);border-top:1px solid var(--c-line)}
.v9-topic-chips span{padding-block:var(--s-2);border-bottom:1px solid var(--c-line);font-size:var(--fs-body);font-weight:600}
.v9-details{margin-top:var(--s-4);border-top:1px solid var(--c-line)}
.v9-details summary{min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:var(--s-2);cursor:pointer;font-weight:700;color:var(--c-navy-950);list-style:none}
.v9-details summary::-webkit-details-marker{display:none}
.v9-details summary::after{content:"+";font-family:var(--font-display);font-size:2rem;color:var(--c-gold-600);transition:transform var(--dur) var(--ease)}
.v9-details[open] summary::after{transform:rotate(45deg)}
.v9-modules{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-1) var(--s-4);padding:var(--s-3) 0 var(--s-2)}
.v9-modules span{padding-block:var(--s-1);border-bottom:1px solid var(--c-line);font-size:var(--fs-sm)}

/* ---------- people ---------- */
.v9-approaches{background:var(--c-cream-100)}
.v9-approach-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--grid-gap)}
.v9-approach-row span{min-height:112px;display:flex;align-items:flex-end;padding:var(--s-3);background:var(--c-white);border:1px solid var(--c-line);border-radius:var(--r-md);font-family:var(--font-display);font-size:clamp(1.4rem,2vw,2rem);font-weight:600;color:var(--c-navy-950)}
.v9-manifesto-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--grid-gap);align-items:center}
.v9-manifesto-grid>div:first-child{grid-column:1 / span 6}
.v9-manifesto-grid>div:last-child{grid-column:8 / -1}
.v9-manifesto h2{margin:0;max-width:12ch;font-size:var(--fs-h2)}
.v9-large-copy{margin:0;font-family:var(--font-display);font-size:clamp(1.8rem,2.7vw,3.1rem);line-height:1.12;color:var(--c-navy-950)}
.v9-location-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--grid-gap)}
.v9-location-row span{min-height:88px;display:grid;place-items:center;padding:var(--s-2);background:var(--c-white);border:1px solid var(--c-line);border-radius:var(--r-md);font-family:var(--font-display);font-size:1.45rem;color:var(--c-navy-950)}
.v9-note{margin:var(--s-3) 0 0;color:var(--c-muted)}

/* ---------- about ---------- */
.v9-timeline-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0;border-top:1px solid var(--c-line)}
.v9-timeline-grid article{grid-column:span 6;min-height:220px;display:grid;grid-template-columns:64px 1fr;grid-template-rows:auto auto;gap:var(--s-1) var(--s-3);padding:var(--s-4) var(--s-5) var(--s-4) 0;border-bottom:1px solid var(--c-line)}
.v9-timeline-grid article:nth-child(even){padding-left:var(--s-5);padding-right:0;border-left:1px solid var(--c-line)}
.v9-timeline-grid article>span{grid-row:1 / span 2;font-family:var(--font-display);font-size:1.4rem;color:var(--c-gold-600)}
.v9-timeline-grid h3{margin:0;font-size:var(--fs-h3)}
.v9-timeline-grid p{margin:0;max-width:42ch;color:var(--c-muted)}
.v9-credentials-grid,.v9-compact-profile-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--grid-gap);align-items:start}
.v9-credentials-grid>div:first-child,.v9-compact-profile-grid>div:first-child{grid-column:1 / span 5}
.v9-credentials-grid>div:last-child,.v9-compact-profile-grid>div:last-child{grid-column:7 / -1}
.v9-credentials h2,.v9-compact-profile h2{margin:0;max-width:12ch;font-size:var(--fs-h2)}
.v9-facts,.v9-facts-large{display:grid;border-top:1px solid var(--c-line)}
.v9-facts span,.v9-facts-large span{padding-block:var(--s-2);border-bottom:1px solid var(--c-line);font-weight:600}
.v9-more-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--grid-gap);padding-block:var(--s-3)}
.v9-more-grid h3{margin:0 0 var(--s-1);font-size:var(--fs-h3)}
.v9-more-grid p{margin:0;color:var(--c-muted)}

/* ---------- generic inner pages ---------- */
.editorial-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--grid-gap);align-items:start}
.editorial-grid>.editorial{grid-column:1 / span 7}
.editorial-grid>.side-note{grid-column:9 / -1}
.editorial h2,.choice-final h2,.cta h2,.form-intro h2{margin:0;font-size:var(--fs-h2);max-width:14ch}
.editorial p,.choice-final p{max-width:var(--measure);color:var(--c-muted)}
.editorial ul{margin:var(--s-3) 0;padding-left:1.15em}
.editorial li{margin-bottom:var(--s-1)}
.side-note{padding:var(--s-4);background:var(--c-cream-100);border-left:3px solid var(--c-gold-500);border-radius:0 var(--r-md) var(--r-md) 0}
.side-note h3{margin:0 0 var(--s-2);font-size:var(--fs-h3)}
.side-note p{margin:0;color:var(--c-muted)}

.cards{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 var(--grid-gap);border-top:1px solid var(--c-line)}
.cards>.card{grid-column:span 6;min-height:180px;padding:var(--s-4) 0;border:0;border-bottom:1px solid var(--c-line);background:transparent;box-shadow:none}
.cards>.card:nth-child(even){padding-left:var(--s-4);border-left:1px solid var(--c-line)}
.cards>.card h3{margin:0 0 var(--s-2);max-width:20ch;font-size:var(--fs-h3)}
.cards>.card p{margin:0;max-width:46ch;color:var(--c-muted)}

.topic-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--grid-gap)}
.topic-link{padding:var(--s-3);background:var(--c-white);border:1px solid var(--c-line);border-radius:var(--r-md)}
.topic-link h3{margin:0 0 var(--s-1);font-size:var(--fs-h3)}
.topic-link p{margin:0;color:var(--c-muted)}

.cta,.v9-cta{padding-block:clamp(var(--s-6),7vw,var(--s-7));background:var(--c-navy-950);color:var(--c-white)}
.cta-wrap,.v9-cta-inner{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--grid-gap);align-items:center}
.cta-wrap>h2,.v9-cta-inner>div{grid-column:1 / span 7}
.cta-wrap>p{grid-column:1 / span 7;margin:var(--s-2) 0 0;max-width:var(--measure);color:rgba(255,255,255,.70)}
.cta-wrap>a,.v9-cta-inner>a{grid-column:10 / -1;justify-self:end}
.cta h2,.v9-cta h2{margin:0;color:var(--c-white);font-size:var(--fs-h2);max-width:13ch}
.v9-cta .v9-eyebrow{color:var(--c-gold-300)}

/* Ideas */
.ideas-intro{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--grid-gap);align-items:start}
.ideas-intro>.section-head{grid-column:1 / span 7;margin:0}
.ideas-jump{grid-column:9 / -1;display:grid;border-top:1px solid var(--c-line)}
.ideas-jump a{padding-block:var(--s-2);border-bottom:1px solid var(--c-line);font-weight:600;transition:color var(--dur) var(--ease),padding-left var(--dur) var(--ease)}
.ideas-jump a:hover{padding-left:var(--s-1);color:var(--c-gold-700)}
.definitions-list{display:grid;gap:0;border-top:1px solid var(--c-line)}
.definition-card{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--grid-gap);padding-block:var(--s-6);border-bottom:1px solid var(--c-line)}
.definition-number{grid-column:1 / span 1;font-family:var(--font-display);font-size:1.4rem;color:var(--c-gold-600)}
.definition-body{grid-column:3 / span 8}
.definition-body h2{margin:0 0 var(--s-3);font-size:var(--fs-h2)}
.definition-body blockquote{margin:0;padding-left:var(--s-4);border-left:2px solid var(--c-gold-500);font-family:var(--font-display);font-size:clamp(1.35rem,1.8vw,1.8rem);line-height:1.38;color:var(--c-navy-950)}
.definition-body blockquote p{margin:0;color:inherit}
.definition-author{margin:var(--s-2) 0 0;font-size:var(--fs-sm);font-weight:700;color:var(--c-gold-700)}
.definition-short{margin:var(--s-3) 0 0;color:var(--c-muted)}
.profile-on-dark h2{color:var(--c-white)}
.profile-on-dark p{color:rgba(255,255,255,.72)}
.choice-final{max-width:920px}

/* Contact / forms */
.contact-layout-v4{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--grid-gap);align-items:start}
.form{grid-column:1 / span 7;padding:0;background:transparent;border:0}
.contact-aside-v4{grid-column:9 / -1;padding:var(--s-4);background:var(--c-cream-100);border-top:3px solid var(--c-gold-500);border-radius:0 0 var(--r-md) var(--r-md)}
.form-intro{margin-bottom:var(--s-4)}
.form-intro p{max-width:var(--measure-tight);color:var(--c-muted)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-3)}
.field{display:grid;gap:var(--s-1)}
.field.full{grid-column:1/-1}
.field label{font-size:var(--fs-sm);font-weight:700;color:var(--c-navy-950)}
.field label span{font-weight:400;color:var(--c-muted)}
.field input,.field select,.field textarea{width:100%;min-height:48px;padding:var(--s-2);border:1px solid rgba(6,20,43,.24);border-radius:var(--r-sm);background:var(--c-white);transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}
.field textarea{min-height:180px;resize:vertical}
.field input:hover,.field select:hover,.field textarea:hover{border-color:rgba(6,20,43,.42)}
.field input:focus,.field select:focus,.field textarea:focus{outline:0;border-color:var(--c-focus);box-shadow:0 0 0 4px rgba(11,112,255,.12)}
.field :invalid:not(:placeholder-shown){border-color:var(--c-danger)}
.form .btn{margin-top:var(--s-3)}
.form-help{margin:var(--s-2) 0 0;font-size:var(--fs-sm);color:var(--c-muted)}
.form-status{min-height:1.4em;margin-top:var(--s-1);font-size:var(--fs-sm);color:var(--c-success)}
.contact-list{display:grid;gap:var(--s-2)}
.contact-line{padding-bottom:var(--s-2);border-bottom:1px solid var(--c-line)}
.contact-line small{display:block;font-size:var(--fs-xs);font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--c-gold-700)}
.contact-line a{display:inline-block;margin-top:var(--s-1);font-weight:600;overflow-wrap:anywhere}
.contact-routing-v4{margin-top:var(--s-4)}
.contact-routing-v4 h3{margin:0 0 var(--s-2);font-size:var(--fs-h3)}
.contact-routing-v4 p{margin:0 0 var(--s-2);font-size:var(--fs-sm);color:var(--c-muted)}
.location-grid-maps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-3)}
.location-with-map{display:grid;grid-template-rows:auto 280px auto;gap:var(--s-2);padding:var(--s-3);background:var(--c-white);border:1px solid var(--c-line);border-radius:var(--r-md)}
.location-copy .city{font-size:var(--fs-xs);font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--c-gold-700)}
.location-copy h3{margin:var(--s-1) 0;font-size:var(--fs-h3)}
.location-copy address{font-size:var(--fs-sm);color:var(--c-muted)}
.map-frame{overflow:hidden;border-radius:var(--r-sm);background:#e9e5dd;aspect-ratio:16/9}
.map-frame iframe{width:100%;height:100%;border:0}
.map-link{font-size:var(--fs-sm);font-weight:700;color:var(--c-gold-700)}

/* ---------- footer ---------- */
.footer{background:var(--c-navy-950);color:var(--c-white);border-top:1px solid rgba(255,255,255,.08)}
.footer-main{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--grid-gap);padding-block:var(--s-6)}
.footer-identity{grid-column:1 / span 8;min-width:0}
.footer-brand,.footer-logo{display:block;width:min(360px,100%)}
.footer-tagline{display:block;width:min(360px,100%);margin-top:var(--s-1);text-align:center;font-size:.78rem;font-weight:600;letter-spacing:.17em;text-transform:uppercase;color:var(--c-gold-300)}
.footer-contact{display:grid;grid-template-columns:repeat(2,minmax(0,max-content));gap:var(--s-1) var(--s-3);margin-top:var(--s-4);font-size:var(--fs-sm);color:rgba(255,255,255,.74)}
.footer-contact a{min-height:44px;display:inline-flex;align-items:center;transition:color var(--dur) var(--ease)}
.footer-contact a:hover{color:var(--c-gold-300)}
.footer-essentials{grid-column:10 / -1;display:flex;flex-direction:column;align-items:flex-start;gap:var(--s-2);font-size:var(--fs-sm)}
.footer-essentials a{min-height:44px;display:inline-flex;align-items:center;color:rgba(255,255,255,.72)}
.footer-bottom{display:flex;justify-content:space-between;gap:var(--s-3);padding-block:var(--s-3);border-top:1px solid rgba(255,255,255,.12);font-size:.75rem;color:rgba(255,255,255,.56)}

/* ---------- motion ---------- */
.js .v10-reveal{opacity:0;transform:translateY(24px);transition:opacity var(--dur-slow) var(--ease-emph),transform var(--dur-slow) var(--ease-emph)}
.js .v10-reveal.is-inview{opacity:1;transform:none}
.js .v10-reveal :is(article,.card,.topic-link,.location-with-map){transition-delay:calc(var(--stagger,0) * 50ms)}

/* ---------- responsive ---------- */
@media (max-width:1180px){
  :root{--gutter:var(--s-4)}
  .nav{min-height:80px}
  .brand{flex-basis:300px}.brand-lockup{width:min(300px,100%)}
  .brand-subtitle{font-size:.70rem}
  .menu-btn{display:grid}
  .nav-links{position:fixed;inset:80px 0 auto 0;display:grid;gap:0;padding:var(--s-2) var(--s-4) var(--s-4);background:var(--c-cream-50);border-bottom:1px solid var(--c-line);box-shadow:var(--shadow-2);transform:translateY(-120%);opacity:0;pointer-events:none;transition:transform var(--dur) var(--ease-emph),opacity var(--dur-fast) var(--ease)}
  .nav-links.open{transform:none;opacity:1;pointer-events:auto}
  .nav-links a{min-height:52px;border-bottom:1px solid var(--c-line)}
  .nav-links .nav-cta{margin-top:var(--s-2);justify-content:center;border-bottom:0}
  .nav-links a:not(.nav-cta)::after{display:none}
  .v9-page-hero-grid,.page-hero-grid,.v9-about-hero-grid{min-height:0}
  .v9-page-hero-grid>div:first-child,.page-hero-grid>div:first-child,.v9-about-hero-grid>div:first-child{grid-column:1 / span 7;padding-block:var(--s-6)}
  .v9-art,.v9-about-photo,.page-hero-aside{grid-column:8 / -1}
  .v9-art{min-height:480px}
  .v9-about-photo{aspect-ratio:4/5}
  .page-home .v10-hero-copy{grid-column:1 / span 8}
}

@media (max-width:900px){
  :root{--gutter:var(--s-3)}
  .section,.v9-visual-section,.v9-three-up,.v9-solutions,.v9-domain-section,.v9-topics,.v9-engagement,.v9-compact-profile,.v9-credentials,.v9-timeline,.v9-more,.v9-locations,.v9-questions,.v9-approaches,.v9-manifesto,.v9-philosophy,.v9-process{padding-block:var(--s-6)}
  .page-home .v10-hero{min-height:700px}
  .page-home .v10-hero-content{padding-block:var(--s-6)}
  .page-home .v10-hero-copy{grid-column:1 / span 9}
  .page-home .v10-hero-media img{object-position:67% center}
  .page-home .v10-portals{grid-template-columns:1fr}
  .page-home .v10-portal-card{grid-column:auto;min-height:440px;border-right:0;border-bottom:1px solid var(--c-cream-50)}
  .page-home .v10-card-copy{padding:var(--s-4)}
  .page-home .v10-brand-statement{grid-column:1 / span 8}
  .page-home .v10-statement-links{grid-column:9 / -1;padding-left:var(--s-3)}

  .v9-page-hero-grid,.page-hero-grid,.v9-about-hero-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:0}
  .v9-page-hero-grid>div:first-child,.page-hero-grid>div:first-child,.v9-about-hero-grid>div:first-child{grid-column:1/-1;padding-block:var(--s-6)}
  .v9-art,.v9-about-photo,.page-hero-aside{grid-column:1/-1}
  .v9-art{min-height:420px;margin:0 0 var(--s-6);border-radius:var(--r-md)}
  .v9-about-photo{margin:0 0 var(--s-6);aspect-ratio:16/10}
  .v9-about-photo img{object-position:50% 22%}
  .page-hero-aside{margin-bottom:var(--s-6)}

  .v9-big-three article,.v9-solution-grid article,.v9-engagement-grid article{grid-column:span 6}
  .v9-big-three article:last-child,.v9-engagement-grid article:last-child{grid-column:1/-1}
  .v9-process-line li{grid-column:span 6;padding-top:var(--s-5)}
  .v9-process-line::before{display:none}
  .v9-process-line li::before{top:12px}
  .v9-philosophy-grid>div:first-child{grid-column:1/-1}
  .v9-philosophy-words{grid-column:1/-1;margin-top:var(--s-4)}
  .v9-approach-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v9-manifesto-grid>div:first-child{grid-column:1/-1}
  .v9-manifesto-grid>div:last-child{grid-column:1/-1;margin-top:var(--s-4)}
  .v9-location-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v9-credentials-grid>div:first-child,.v9-compact-profile-grid>div:first-child{grid-column:1/-1}
  .v9-credentials-grid>div:last-child,.v9-compact-profile-grid>div:last-child{grid-column:1/-1;margin-top:var(--s-4)}
  .v9-more-grid{grid-template-columns:1fr}

  .editorial-grid>.editorial,.ideas-intro>.section-head,.form{grid-column:1/-1}
  .editorial-grid>.side-note,.ideas-jump,.contact-aside-v4{grid-column:1/-1;margin-top:var(--s-4)}
  .definition-body{grid-column:2/-1}
  .cta-wrap>h2,.cta-wrap>p,.v9-cta-inner>div{grid-column:1/span 8}
  .cta-wrap>a,.v9-cta-inner>a{grid-column:10/-1}
  .footer-identity{grid-column:1/span 8}.footer-essentials{grid-column:10/-1}
}

@media (max-width:640px){
  :root{--gutter:var(--s-2);--grid-gap:var(--s-2)}
  .nav{min-height:72px}.brand{flex-basis:220px}.brand-lockup{width:min(220px,100%)}.brand-subtitle{font-size:.64rem;letter-spacing:.14em;margin-top:var(--s-0)}
  .nav-links{top:72px;padding-inline:var(--s-2)}
  .page-home .v10-hero{min-height:680px}
  .page-home .v10-hero-content{width:min(var(--container),calc(100% - (var(--s-2)*2)));padding-block:var(--s-5)}
  .page-home .v10-hero-copy{grid-column:1/-1}
  .page-home .v10-hero h1{font-size:clamp(3.2rem,14vw,4.6rem);max-width:10ch}
  .page-home .v10-hero-shade{background:linear-gradient(90deg,rgba(6,20,43,.94),rgba(6,20,43,.72))}
  .page-home .v10-actions{display:grid}.page-home .v10-actions a{width:100%}
  .page-home .v10-portal-card{min-height:400px}.page-home .v10-card-copy{padding:var(--s-3)}
  .page-home .v10-card-copy h2{font-size:2.6rem}
  .page-home .v10-statement-grid{gap:var(--s-4)}
  .page-home .v10-brand-statement,.page-home .v10-statement-links{grid-column:1/-1}
  .page-home .v10-statement-links{padding:var(--s-4) 0 0;border-left:0;border-top:1px solid var(--c-line)}

  .v9-page-hero h1,.page-hero h1,.v9-about-hero h1{font-size:clamp(3rem,12vw,4.4rem);max-width:11ch}
  .v9-page-hero-grid>div:first-child,.page-hero-grid>div:first-child,.v9-about-hero-grid>div:first-child{padding-block:var(--s-5)}
  .v9-art{min-height:330px;margin-bottom:var(--s-5)}
  .v9-about-photo{margin-bottom:var(--s-5);aspect-ratio:4/5}
  .v9-signal-grid article,.v9-signal-grid article:nth-child(even){grid-column:1/-1;min-height:0;padding:var(--s-3) 0;border-left:0;grid-template-columns:48px 1fr}
  .v9-signal-grid article>h3{font-size:1.75rem}
  .v9-big-three article,.v9-solution-grid article,.v9-engagement-grid article{grid-column:1/-1;min-height:0}
  .v9-process-line li{grid-column:1/-1;padding:var(--s-4) 0 0;border-top:1px solid rgba(255,255,255,.16)}
  .v9-process-line li::before{display:none}
  .v9-question-list blockquote{grid-template-columns:42px 1fr;gap:var(--s-2);padding-block:var(--s-4);font-size:clamp(1.65rem,8vw,2.25rem)}
  .v9-domain-grid article,.v9-domain-grid article:nth-child(even){grid-column:1/-1;padding:var(--s-3) 0}
  .v9-topic-chips{grid-template-columns:1fr}.v9-modules{grid-template-columns:1fr}
  .v9-approach-row,.v9-location-row{grid-template-columns:1fr}
  .v9-timeline-grid article,.v9-timeline-grid article:nth-child(even){grid-column:1/-1;min-height:0;padding:var(--s-3) 0;border-left:0}
  .cards>.card,.cards>.card:nth-child(even){grid-column:1/-1;min-height:0;padding:var(--s-3) 0;border-left:0}
  .topic-links{grid-template-columns:1fr}
  .definition-card{padding-block:var(--s-5)}.definition-number{grid-column:1/-1;margin-bottom:var(--s-2)}.definition-body{grid-column:1/-1}.definition-body blockquote{padding-left:var(--s-3)}
  .form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}
  .location-grid-maps{grid-template-columns:1fr}.location-with-map{grid-template-rows:auto 220px auto}
  .cta-wrap>h2,.cta-wrap>p,.v9-cta-inner>div,.cta-wrap>a,.v9-cta-inner>a{grid-column:1/-1}.cta-wrap>a,.v9-cta-inner>a{justify-self:start;margin-top:var(--s-3)}
  .footer-identity,.footer-essentials{grid-column:1/-1}.footer-essentials{margin-top:var(--s-3)}.footer-contact{grid-template-columns:1fr}.footer-bottom{flex-direction:column}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .js .v10-reveal{opacity:1!important;transform:none!important}
  .page-home .v10-hero-media,.page-home .v10-portal-card picture,.v9-art::before,.v9-about-photo img{transform:none!important}
}

/* v18 final art-direction corrections */
.page-home .v10-hero-media{z-index:0}
.page-home .v10-hero-shade{z-index:1}
.page-home .v10-hero-content{position:relative;z-index:2}
.page-home .v10-hero::after{z-index:2}
.page-home .v10-portal-card{background:var(--c-navy-950)}
.page-home .v10-portal-card picture{z-index:0}
.page-home .v10-card-overlay{z-index:1}
.page-home .v10-card-copy{position:relative;z-index:2}
.v9-page-hero h1{font-size:clamp(3.25rem,4.25vw,4.8rem);max-width:13ch}
.page-executive .v9-page-hero h1{max-width:14ch}
.page-organizations .v9-page-hero h1{max-width:13ch}
.page-education .v9-page-hero h1{max-width:12.5ch}
.page-people .v9-page-hero h1{max-width:13ch}

/* v18 accessibility: mobile touch targets */
@media (max-width:640px){
  .v10-statement-links nav a,.contact-line a,.map-link{min-height:44px;display:flex;align-items:center}
}

/* v20 — frases institucionais com aspas tipográficas no próprio HTML */
.v10-brand-statement,
.v9-philosophy h2,
.page-organizations .v9-page-hero h1,
.page-organizations .v9-cta h2,
.page-executive .v9-page-hero h1,
.page-executive .v9-compact-profile h2,
.page-people .v9-personal-manifesto .v9-large-copy {
  text-wrap: balance;
}

/* ========================================================================== 
   v21 — Global alignment, centering and brand lockup refinement
   ========================================================================== */
:root{
  --container:1360px;
  --gutter:clamp(24px,3.3vw,48px);
  --grid-gap:clamp(16px,2vw,32px);
  --brand-blue:#06143a;
  --brand-accent:#7b571c;
}

/* Brand lockup: blue signature + gold descriptor everywhere */
.brand{flex:0 0 auto}
.brand-lockup{width:clamp(260px,24vw,360px);justify-items:center;align-content:center}
.brand img{width:100%;max-height:none;object-fit:contain}
.brand-subtitle{
  width:100%;
  margin-top:8px;
  color:var(--brand-accent);
  font-size:clamp(.76rem,.68rem + .14vw,.88rem);
  font-weight:700;
  letter-spacing:.22em;
  line-height:1.15;
  text-align:center;
  text-transform:uppercase;
  white-space:nowrap;
}

/* Header uses one optical axis across every page */
.nav{
  min-height:104px;
  display:grid;
  grid-template-columns:minmax(280px,360px) minmax(0,1fr) auto;
  align-items:center;
  column-gap:32px;
}
.nav .brand{grid-column:1}
.nav-links{grid-column:2 / 4;justify-self:end;margin-left:0}
.menu-btn{grid-column:3}

/* Internal heroes: same proportions and visual center */
.v9-page-hero-grid,.page-hero-grid,.v9-about-hero-grid{
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:var(--grid-gap);
  align-items:center;
  min-height:640px;
}
.v9-page-hero-grid>div:first-child,.page-hero-grid>div:first-child,.v9-about-hero-grid>div:first-child{
  grid-column:1 / span 5;
  padding-block:64px;
}
.v9-art,.v9-about-photo,.page-hero-aside{grid-column:7 / -1}
.v9-page-hero h1,.page-hero h1,.v9-about-hero h1{
  max-width:12ch;
  font-size:clamp(3.1rem,4.25vw,5rem);
  line-height:.98;
}
.v9-page-hero .v9-lead,.page-hero .lead,.v9-about-hero .v9-lead{max-width:48ch}
.v9-actions{align-items:center}

/* Section headers share one center line and one readable measure */
.v9-section-intro,.section-head{
  width:min(860px,100%);
  margin:0 auto 48px;
  text-align:center;
}
.v9-section-intro h2,.section-head h2,
.v9-section-intro>p:not(.v9-eyebrow),.section-head>p:not(.eyebrow){margin-inline:auto}
.v9-section-intro h2,.section-head h2{max-width:16ch}
.v9-section-intro>p:not(.v9-eyebrow),.section-head>p:not(.eyebrow){max-width:64ch}
.v9-section-intro .v9-eyebrow,.section-head .eyebrow{display:block;text-align:center}

/* Reusable content widths: keep grids centered, not edge-stretched */
.v9-signal-grid,.v9-big-three,.v9-solution-grid,.v9-domain-grid,.v9-engagement-grid,
.v9-process-line,.v9-question-list,.v9-philosophy-grid,.v9-topic-chips,.v9-approach-row,
.v9-manifesto-grid,.v9-location-row,.v9-timeline-grid,.v9-credentials-grid,
.v9-compact-profile-grid,.v9-more-grid,.cards,.editorial-grid,.contact-layout-v4,
.location-grid-maps{
  width:min(1160px,100%);
  margin-inline:auto;
}

/* Numbered signals: identical columns / baselines */
.v9-signal-grid{column-gap:48px;border-top:1px solid var(--c-line)}
.v9-signal-grid article,
.v9-signal-grid article:nth-child(even){
  min-height:208px;
  grid-template-columns:56px minmax(0,1fr);
  grid-template-rows:auto 1fr;
  align-content:start;
  column-gap:24px;
  padding:32px 0;
  border-left:0;
}
.v9-signal-grid article:nth-child(even){padding-left:0}
.v9-signal-grid article>span{padding-top:4px;text-align:left}
.v9-signal-grid article>h3{max-width:22ch;line-height:1.12}
.v9-signal-grid article>p{max-width:44ch}

/* Three / six-up systems: proportional cards and optical centering */
.v9-big-three,.v9-solution-grid,.v9-engagement-grid{align-items:stretch}
.v9-big-three article,.v9-solution-grid article,.v9-engagement-grid article{
  height:100%;
  min-height:248px;
}
.v9-big-three article{
  align-items:center;
  text-align:center;
  padding:32px 28px;
}
.v9-big-three h3{margin:32px 0 16px}
.v9-big-three p{margin-inline:auto;max-width:34ch}
.v9-solution-grid article{
  padding:32px;
  text-align:left;
}
.v9-solution-grid h3{margin-top:40px;max-width:18ch}
.v9-engagement-grid article{
  display:grid;
  align-content:center;
  text-align:center;
  padding:32px;
}
.v9-engagement-grid article p{max-width:32ch;margin-inline:auto}

/* Domain / timeline rows align number, title and copy consistently */
.v9-domain-grid,.v9-timeline-grid{column-gap:48px}
.v9-domain-grid article,.v9-domain-grid article:nth-child(even),
.v9-timeline-grid article,.v9-timeline-grid article:nth-child(even){
  padding:32px 0;
  border-left:0;
  grid-template-columns:56px minmax(0,1fr);
  column-gap:24px;
}
.v9-domain-grid article:nth-child(even),.v9-timeline-grid article:nth-child(even){padding-left:0}
.v9-domain-grid span,.v9-timeline-grid article>span{padding-top:3px}

/* Process: same optical center and equal columns */
.v9-process-line{margin-top:48px}
.v9-process-line li{text-align:center}
.v9-process-line li::before{left:50%;transform:translateX(-50%)}
.v9-process-line small{margin-inline:auto}
.v9-process-line::before{left:12.5%;right:12.5%}

/* Philosophy / approaches / manifesto */
.v9-philosophy-grid>div:first-child{grid-column:1 / span 7}
.v9-philosophy-words{grid-column:9 / -1}
.v9-approach-row span,.v9-location-row span{text-align:center;justify-content:center;align-items:center}
.v9-manifesto-grid{align-items:center}
.v9-manifesto-grid>div:first-child{grid-column:1 / span 5}
.v9-manifesto-grid>div:last-child{grid-column:7 / -1}

/* Home: cards and statement share centered dimensions */
.page-home .v10-card-copy{padding:48px;grid-template-rows:auto auto minmax(90px,auto) minmax(76px,auto) auto}
.page-home .v10-card-copy h2{align-self:end}
.page-home .v10-card-copy small{align-self:start}
.page-home .v10-statement-grid{width:min(1160px,100%);margin-inline:auto}
.page-home .v10-brand-statement{grid-column:1 / span 7}
.page-home .v10-statement-links{grid-column:9 / -1;text-align:center}
.page-home .v10-statement-links img{margin-inline:auto}
.page-home .v10-statement-links nav{justify-items:center}

/* About page logo follows the same blue/gold brand logic */
.v9-about-logo{margin-inline:auto}
.page-about .v9-about-hero-grid>div:first-child{text-align:center}
.page-about .v9-about-hero-grid>div:first-child .v9-lead{margin-inline:auto}

/* Footer: light, centered lockup so blue signature remains blue everywhere */
.footer{
  background:var(--c-cream-100);
  color:var(--c-navy-950);
  border-top:1px solid var(--c-line);
}
.footer-main{
  grid-template-columns:repeat(12,minmax(0,1fr));
  align-items:start;
  padding-block:48px 40px;
}
.footer-identity{
  grid-column:1 / -1;
  display:grid;
  justify-items:center;
  text-align:center;
}
.footer-brand,.footer-logo{width:min(380px,82vw);margin-inline:auto}
.footer-tagline{
  width:min(380px,82vw);
  margin:8px auto 0;
  color:var(--brand-accent);
  font-size:clamp(.76rem,.69rem + .12vw,.86rem);
  font-weight:700;
  letter-spacing:.21em;
  line-height:1.15;
  text-align:center;
  text-transform:uppercase;
}
.footer-contact{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:8px 24px;
  margin-top:32px;
  color:var(--c-navy-800);
}
.footer-contact a{color:var(--c-navy-800)}
.footer-contact a:hover{color:var(--c-gold-700)}
.footer-essentials{
  grid-column:1 / -1;
  flex-direction:row;
  justify-content:center;
  align-items:center;
  gap:24px;
  margin-top:24px;
}
.footer-essentials a{color:var(--c-navy-800)}
.footer-bottom{
  justify-content:center;
  flex-wrap:wrap;
  text-align:center;
  color:var(--c-muted);
  border-top:1px solid var(--c-line);
}

/* Generic page content: consistent measure and vertical rhythm */
.editorial h2,.choice-final h2,.cta h2,.form-intro h2{max-width:16ch}
.editorial p,.choice-final p,.form-intro p{max-width:64ch}
.cta-wrap,.v9-cta-inner{width:min(1160px,100%);margin-inline:auto;align-items:center}

/* Tablet */
@media (max-width:1180px){
  .nav{grid-template-columns:minmax(250px,310px) 1fr auto;min-height:88px}
  .brand-lockup{width:min(310px,100%)}
  .nav-links{grid-column:auto}
  .menu-btn{display:grid;justify-self:end}
  .v9-page-hero-grid>div:first-child,.page-hero-grid>div:first-child,.v9-about-hero-grid>div:first-child{grid-column:1 / span 6}
  .v9-art,.v9-about-photo,.page-hero-aside{grid-column:7 / -1}
}

/* Mobile / small tablet */
@media (max-width:900px){
  .nav{display:grid;grid-template-columns:1fr auto;min-height:84px;column-gap:16px}
  .nav .brand{grid-column:1}
  .brand-lockup{width:min(300px,72vw)}
  .brand-subtitle{font-size:.72rem;letter-spacing:.17em}
  .menu-btn{grid-column:2}
  .nav-links{grid-column:auto}
  .v9-page-hero-grid>div:first-child,.page-hero-grid>div:first-child,.v9-about-hero-grid>div:first-child{grid-column:1/-1;text-align:center}
  .v9-page-hero h1,.page-hero h1,.v9-about-hero h1,
  .v9-page-hero .v9-lead,.page-hero .lead,.v9-about-hero .v9-lead{margin-inline:auto}
  .v9-actions{justify-content:center}
  .v9-art,.v9-about-photo,.page-hero-aside{grid-column:1/-1}
  .v9-signal-grid{column-gap:24px}
  .v9-domain-grid,.v9-timeline-grid{column-gap:24px}
  .footer-contact{max-width:720px;margin-inline:auto}
}

@media (max-width:640px){
  .nav{min-height:80px}
  .brand-lockup{width:min(260px,72vw)}
  .brand-subtitle{font-size:.66rem;letter-spacing:.15em;margin-top:4px}
  .nav-links{top:80px}
  .v9-section-intro,.section-head{margin-bottom:32px}
  .v9-signal-grid article,.v9-signal-grid article:nth-child(even){grid-template-columns:44px minmax(0,1fr);column-gap:16px}
  .v9-domain-grid article,.v9-domain-grid article:nth-child(even),
  .v9-timeline-grid article,.v9-timeline-grid article:nth-child(even){grid-template-columns:44px minmax(0,1fr);column-gap:16px}
  .page-home .v10-card-copy{padding:24px;grid-template-rows:auto auto minmax(72px,auto) minmax(72px,auto) auto}
  .footer-main{padding-block:40px 32px}
  .footer-contact{display:grid;grid-template-columns:1fr;justify-items:center;gap:4px}
  .footer-essentials{flex-direction:column;gap:4px;margin-top:16px}
  .footer-bottom{gap:8px;padding-block:24px}
}


/* ==========================================================================
   v22 — Agency director edit: subtraction, rhythm and conversion clarity
   Home and brand system are intentionally preserved.
   ========================================================================== */

/* Internal pages: shorter, calmer vertical rhythm without compressing reading. */
body.v18:not(.page-home) .v9-visual-section,
body.v18:not(.page-home) .v9-three-up,
body.v18:not(.page-home) .v9-solutions,
body.v18:not(.page-home) .v9-domain-section,
body.v18:not(.page-home) .v9-topics,
body.v18:not(.page-home) .v9-engagement,
body.v18:not(.page-home) .v9-compact-profile,
body.v18:not(.page-home) .v9-credentials,
body.v18:not(.page-home) .v9-timeline,
body.v18:not(.page-home) .v9-more,
body.v18:not(.page-home) .v9-locations,
body.v18:not(.page-home) .v9-questions,
body.v18:not(.page-home) .v9-approaches,
body.v18:not(.page-home) .v9-manifesto,
body.v18:not(.page-home) .v9-philosophy,
body.v18:not(.page-home) .v9-process{
  padding-block:clamp(64px,6vw,96px);
}

body.v18:not(.page-home) .v9-section-intro,
body.v18:not(.page-home) .section-head{margin-bottom:40px}
body.v18:not(.page-home) .v9-section-intro h2,
body.v18:not(.page-home) .section-head h2{font-size:clamp(2.15rem,3.2vw,3.55rem);max-width:15ch}
body.v18:not(.page-home) .v9-section-intro>p:not(.v9-eyebrow),
body.v18:not(.page-home) .section-head>p:not(.eyebrow){max-width:58ch}

/* Hero copy gets one clear focal point and a tighter secondary line. */
body.v18:not(.page-home) .v9-page-hero-grid,
body.v18:not(.page-home) .v9-about-hero-grid{min-height:610px}
body.v18:not(.page-home) .v9-page-hero .v9-lead,
body.v18:not(.page-home) .v9-about-hero .v9-lead{max-width:44ch}
body.v18:not(.page-home) .v9-actions{margin-top:32px}
body.v18:not(.page-home) .v9-art{min-height:520px;margin-block:48px}

/* Signals become editorial rows rather than mini cards. */
body.v18:not(.page-home) .v9-signal-grid{width:min(1080px,100%);column-gap:64px}
body.v18:not(.page-home) .v9-signal-grid article,
body.v18:not(.page-home) .v9-signal-grid article:nth-child(even){min-height:176px;padding:28px 0}
body.v18:not(.page-home) .v9-signal-grid article>h3{font-size:clamp(1.7rem,2.25vw,2.4rem);max-width:20ch}

/* High-value triads: less boxed, more editorial. */
body.v18:not(.page-home) .v9-big-three{width:min(1080px,100%)}
body.v18:not(.page-home) .v9-big-three article{
  min-height:220px;
  padding:32px 16px 24px;
  background:transparent;
  border-top:2px solid var(--c-gold-500);
  box-shadow:none;
}
body.v18:not(.page-home) .v9-big-three h3{margin:28px 0 12px}

/* Solution catalogue: remove six floating boxes; keep a crisp 3x2 editorial grid. */
body.v18:not(.page-home) .v9-solution-grid{width:min(1080px,100%);gap:0 40px}
body.v18:not(.page-home) .v9-solution-grid article{
  min-height:166px;
  padding:28px 0;
  background:transparent;
  border:0;
  border-top:1px solid var(--c-line);
  border-radius:0;
  box-shadow:none;
}
body.v18:not(.page-home) .v9-solution-grid article:hover{
  transform:none;
  border-color:var(--c-gold-500);
  box-shadow:none;
}
body.v18:not(.page-home) .v9-solution-grid h3{margin-top:24px;max-width:20ch}

/* Engagement models: same subtraction principle. */
body.v18:not(.page-home) .v9-engagement-grid{width:min(1080px,100%);gap:0 40px}
body.v18:not(.page-home) .v9-engagement-grid article{
  min-height:190px;
  padding:32px 8px;
  background:transparent;
  border:0;
  border-top:1px solid var(--c-line);
  border-radius:0;
}

/* Process keeps contrast but occupies less vertical space. */
body.v18:not(.page-home) .v9-process-line{width:min(1080px,100%);margin-top:40px}
body.v18:not(.page-home) .v9-process-line strong{font-size:clamp(1.55rem,1.8vw,2rem)}
body.v18:not(.page-home) .v9-process-line small{max-width:19ch}

/* Personal / education labels: editorial instead of pill-like blocks. */
.page-people .v9-approach-row{width:min(1080px,100%);gap:0 32px;border-top:1px solid var(--c-line)}
.page-people .v9-approach-row span{
  min-height:92px;
  padding:24px 0;
  justify-content:flex-start;
  text-align:left;
  background:transparent;
  border:0;
  border-bottom:1px solid var(--c-line);
  border-radius:0;
}
.page-education .v9-topic-chips{width:min(1000px,100%);column-gap:48px}

/* About: let evidence read like a selective profile, not a résumé wall. */
.page-about .v9-timeline-grid,
.page-about .v9-credentials-grid{width:min(1060px,100%)}
.page-about .v9-timeline-grid article,
.page-about .v9-timeline-grid article:nth-child(even){min-height:176px;padding-block:28px}
.page-about .v9-facts span,.page-about .v9-facts-large span{padding-block:14px}

/* CTAs are shorter and more decisive. */
body.v18:not(.page-home) .v9-cta{padding-block:64px}
body.v18:not(.page-home) .v9-cta-inner{width:min(1080px,100%)}
body.v18:not(.page-home) .v9-cta h2{font-size:clamp(2.15rem,3vw,3.4rem)}

/* Contact: reduce explanatory density. */
.page-contact .form-intro p,
.page-contact .contact-side p{max-width:54ch}

/* Tablet / mobile: preserve the edit, but never squeeze content. */
@media (max-width:900px){
  body.v18:not(.page-home) .v9-page-hero-grid,
  body.v18:not(.page-home) .v9-about-hero-grid{min-height:auto}
  body.v18:not(.page-home) .v9-art{min-height:420px;margin-block:0 48px}
  body.v18:not(.page-home) .v9-signal-grid{column-gap:24px}
  body.v18:not(.page-home) .v9-solution-grid,
  body.v18:not(.page-home) .v9-engagement-grid{gap:0 24px}
}
@media (max-width:640px){
  body.v18:not(.page-home) .v9-visual-section,
  body.v18:not(.page-home) .v9-three-up,
  body.v18:not(.page-home) .v9-solutions,
  body.v18:not(.page-home) .v9-domain-section,
  body.v18:not(.page-home) .v9-topics,
  body.v18:not(.page-home) .v9-engagement,
  body.v18:not(.page-home) .v9-compact-profile,
  body.v18:not(.page-home) .v9-credentials,
  body.v18:not(.page-home) .v9-timeline,
  body.v18:not(.page-home) .v9-more,
  body.v18:not(.page-home) .v9-locations,
  body.v18:not(.page-home) .v9-questions,
  body.v18:not(.page-home) .v9-approaches,
  body.v18:not(.page-home) .v9-manifesto,
  body.v18:not(.page-home) .v9-philosophy,
  body.v18:not(.page-home) .v9-process{padding-block:56px}
  body.v18:not(.page-home) .v9-section-intro,
  body.v18:not(.page-home) .section-head{margin-bottom:32px}
  body.v18:not(.page-home) .v9-signal-grid article,
  body.v18:not(.page-home) .v9-signal-grid article:nth-child(even){min-height:0;padding:24px 0}
  body.v18:not(.page-home) .v9-big-three article{min-height:0;padding:24px 0}
  body.v18:not(.page-home) .v9-solution-grid article{min-height:0;padding:24px 0}
  body.v18:not(.page-home) .v9-engagement-grid article{min-height:0;padding:24px 0;text-align:left}
  .page-people .v9-approach-row{gap:0}
  .page-people .v9-approach-row span{min-height:0;padding:20px 0}
  body.v18:not(.page-home) .v9-cta{padding-block:56px}
}


/* ========================================================================== 
   v25 — Editorial statement system
   Organizes label + institutional phrase blocks consistently across pages.
   ========================================================================== */

/* Quotation marks are real text, but hang optically outside the reading edge. */
.editorial-quote{
  hanging-punctuation:first last;
  text-wrap:balance;
}
.editorial-quote--hero{
  text-indent:-.32em;
  padding-left:.32em;
}

/* Standalone statements use one visual grammar: kicker, statement, evidence. */
.editorial-statement{
  position:relative;
  isolation:isolate;
  overflow:hidden;
}
.editorial-statement::before{
  content:"";
  position:absolute;
  left:50%;
  top:0;
  width:72px;
  height:3px;
  transform:translateX(-50%);
  background:var(--c-gold-500);
}
.editorial-statement .v9-eyebrow{
  display:block;
  margin:0 0 24px;
  text-align:center;
}
.editorial-quote--statement{
  max-width:24ch;
  margin-inline:auto!important;
  text-align:center;
  line-height:1.06;
  letter-spacing:-.025em;
}

/* Executive trajectory: statement first, credentials as a calm evidence row. */
.editorial-statement--profile .v9-compact-profile-grid{
  width:min(1120px,100%);
  margin-inline:auto;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:var(--grid-gap);
}
.editorial-statement--profile .v9-compact-profile-grid>div:first-child{
  grid-column:2 / -2;
  text-align:center;
}
.editorial-statement--profile .v9-compact-profile-grid>div:last-child{
  grid-column:2 / -2;
  margin-top:48px;
}
.editorial-statement--profile .v9-compact-profile-grid h2{
  max-width:22ch;
  margin-inline:auto;
  font-size:clamp(2.45rem,3.8vw,4.2rem);
}
.editorial-statement--profile .v9-facts{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border-top:1px solid var(--c-line);
  border-bottom:1px solid var(--c-line);
}
.editorial-statement--profile .v9-facts span{
  display:flex;
  min-height:88px;
  align-items:center;
  justify-content:center;
  padding:20px 24px;
  border:0;
  border-right:1px solid var(--c-line);
  text-align:center;
  font-size:var(--fs-sm);
  line-height:1.35;
}
.editorial-statement--profile .v9-facts span:last-child{border-right:0}

/* Philosophy: one centered statement, four equal concepts below it. */
.editorial-statement--dark .v9-philosophy-grid{
  width:min(1120px,100%);
  margin-inline:auto;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:var(--grid-gap);
}
.editorial-statement--dark .v9-philosophy-grid>div:first-child{
  grid-column:2 / -2;
  text-align:center;
}
.editorial-statement--dark .v9-philosophy-grid>div:first-child h2{
  max-width:22ch;
  margin-inline:auto;
  font-size:clamp(2.55rem,4vw,4.4rem);
}
.editorial-statement--dark .v9-philosophy-words{
  grid-column:2 / -2;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:0;
  margin-top:48px;
  border-top:1px solid var(--c-line-dark);
  border-bottom:1px solid var(--c-line-dark);
}
.editorial-statement--dark .v9-philosophy-words span{
  display:flex;
  min-height:80px;
  align-items:center;
  justify-content:center;
  padding:20px 18px;
  border:0;
  border-right:1px solid var(--c-line-dark);
  text-align:center;
}
.editorial-statement--dark .v9-philosophy-words span:last-child{border-right:0}

/* Personal principle: label + premise + quotation become one centered composition. */
.editorial-statement--principle .v9-manifesto-grid{
  width:min(1040px,100%);
  margin-inline:auto;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:var(--grid-gap);
  align-items:start;
}
.editorial-statement--principle .v9-manifesto-grid>div:first-child,
.editorial-statement--principle .v9-manifesto-grid>div:last-child{
  grid-column:2 / -2;
  text-align:center;
}
.editorial-statement--principle .v9-manifesto-grid>div:last-child{
  margin-top:24px;
  padding-top:32px;
  border-top:1px solid var(--c-line);
}
.editorial-statement--principle .v9-manifesto-grid h2{
  max-width:18ch;
  margin-inline:auto;
  font-size:clamp(2.2rem,3.4vw,3.8rem);
}
.editorial-statement--principle .v9-large-copy{
  max-width:25ch;
  margin-inline:auto;
  font-size:clamp(1.75rem,2.65vw,2.9rem);
  line-height:1.16;
}

/* Hero quotations: preserve left axis; the opening quotation does not shift the line. */
.page-executive .editorial-quote--hero,
.page-organizations .editorial-quote--hero{
  position:relative;
}
.page-executive .editorial-quote--hero::after,
.page-organizations .editorial-quote--hero::after{
  content:"";
  display:block;
  width:64px;
  height:2px;
  margin-top:24px;
  background:var(--c-gold-500);
}

@media (max-width:900px){
  .editorial-statement--profile .v9-compact-profile-grid>div:first-child,
  .editorial-statement--profile .v9-compact-profile-grid>div:last-child,
  .editorial-statement--dark .v9-philosophy-grid>div:first-child,
  .editorial-statement--dark .v9-philosophy-words,
  .editorial-statement--principle .v9-manifesto-grid>div:first-child,
  .editorial-statement--principle .v9-manifesto-grid>div:last-child{
    grid-column:1 / -1;
  }
  .editorial-statement--profile .v9-facts,
  .editorial-statement--dark .v9-philosophy-words{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .editorial-statement--profile .v9-facts span:nth-child(2),
  .editorial-statement--dark .v9-philosophy-words span:nth-child(2){border-right:0}
  .editorial-statement--profile .v9-facts span:nth-child(-n+2),
  .editorial-statement--dark .v9-philosophy-words span:nth-child(-n+2){border-bottom:1px solid var(--c-line)}
  .editorial-statement--dark .v9-philosophy-words span:nth-child(-n+2){border-bottom-color:var(--c-line-dark)}
}

@media (max-width:640px){
  .editorial-quote--hero{
    text-indent:0;
    padding-left:0;
  }
  .page-executive .editorial-quote--hero::after,
  .page-organizations .editorial-quote--hero::after{
    margin-inline:auto;
  }
  .editorial-statement::before{width:48px}
  .editorial-statement .v9-eyebrow{margin-bottom:16px}
  .editorial-statement--profile .v9-compact-profile-grid>div:last-child,
  .editorial-statement--dark .v9-philosophy-words{margin-top:32px}
  .editorial-statement--profile .v9-facts,
  .editorial-statement--dark .v9-philosophy-words{grid-template-columns:1fr}
  .editorial-statement--profile .v9-facts span,
  .editorial-statement--dark .v9-philosophy-words span{
    min-height:64px;
    border-right:0;
    border-bottom:1px solid var(--c-line);
  }
  .editorial-statement--dark .v9-philosophy-words span{border-bottom-color:var(--c-line-dark)}
  .editorial-statement--profile .v9-facts span:last-child,
  .editorial-statement--dark .v9-philosophy-words span:last-child{border-bottom:0}
  .editorial-statement--principle .v9-manifesto-grid>div:last-child{margin-top:20px;padding-top:24px}
}

/* ========================================================================== 
   v26 — Hero and statement reorganization
   Cleaner composition for phrase blocks and internal page visual areas.
   ========================================================================== */

/* Internal hero areas: calmer scale, clearer proportions and cleaner image framing. */
body.v18:not(.page-home) .v9-page-hero-grid,
body.v18:not(.page-home) .v9-about-hero-grid{
  width:min(1160px,100%);
  margin-inline:auto;
  min-height:580px;
  align-items:center;
}
body.v18:not(.page-home) .v9-page-hero-grid>div:first-child,
body.v18:not(.page-home) .v9-about-hero-grid>div:first-child{
  grid-column:1 / span 5;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding-block:72px;
}
body.v18:not(.page-home) .v9-art,
body.v18:not(.page-home) .v9-about-photo,
body.v18:not(.page-home) .page-hero-aside{
  grid-column:7 / -1;
}
body.v18:not(.page-home) .v9-art{
  min-height:0;
  aspect-ratio:4 / 5;
  margin-block:48px;
  border-radius:32px;
}
body.v18:not(.page-home) .v9-page-hero h1,
body.v18:not(.page-home) .v9-about-hero h1{
  max-width:10ch;
  font-size:clamp(2.9rem,4vw,4.6rem);
  line-height:.98;
}
body.v18:not(.page-home) .v9-page-hero .v9-lead,
body.v18:not(.page-home) .v9-about-hero .v9-lead{
  max-width:34ch;
}
body.v18:not(.page-home) .v9-actions{margin-top:28px}

/* Quote headlines no longer need hanging indentation; keep them optically tidy. */
.editorial-quote--hero{
  text-indent:0;
  padding-left:0;
}
.page-executive .editorial-quote--hero::after,
.page-organizations .editorial-quote--hero::after{
  width:56px;
  margin-top:20px;
}

/* Editorial statement blocks: left-aligned, measured and less monumental. */
.editorial-statement{
  padding-top:40px;
}
.editorial-statement::before{
  left:50%;
  top:0;
  width:56px;
}
.editorial-statement .v9-eyebrow{
  margin-bottom:20px;
}
.editorial-quote--statement{
  max-width:18ch;
  line-height:1.08;
  letter-spacing:-.022em;
}

/* Executive trajectory becomes a cleaner editorial section, not a poster. */
.editorial-statement--profile .v9-compact-profile-grid{
  width:min(1080px,100%);
  gap:32px var(--grid-gap);
}
.editorial-statement--profile .v9-compact-profile-grid>div:first-child{
  grid-column:2 / -2;
  text-align:center;
}
.editorial-statement--profile .v9-compact-profile-grid h2{
  max-width:18ch;
  font-size:clamp(2rem,3vw,3.25rem);
}
.editorial-statement--profile .v9-compact-profile-grid>div:last-child{
  grid-column:1 / -1;
  margin-top:8px;
}
.editorial-statement--profile .v9-facts{
  border-top:1px solid var(--c-line);
  border-bottom:1px solid var(--c-line);
}
.editorial-statement--profile .v9-facts span{
  min-height:74px;
  padding:16px 18px;
  font-size:.95rem;
}

/* Philosophy and principle get the same discipline. */
.editorial-statement--dark .v9-philosophy-grid,
.editorial-statement--principle .v9-manifesto-grid{
  width:min(1080px,100%);
  gap:32px var(--grid-gap);
}
.editorial-statement--dark .v9-philosophy-grid>div:first-child,
.editorial-statement--principle .v9-manifesto-grid>div:first-child,
.editorial-statement--principle .v9-manifesto-grid>div:last-child{
  grid-column:2 / -2;
  text-align:center;
}
.editorial-statement--dark .v9-philosophy-grid>div:first-child h2{
  max-width:18ch;
  font-size:clamp(2.1rem,3.2vw,3.4rem);
}
.editorial-statement--dark .v9-philosophy-words{
  grid-column:1 / -1;
  margin-top:8px;
}
.editorial-statement--principle .v9-manifesto-grid>div:last-child{
  margin-top:0;
  padding-top:24px;
}
.editorial-statement--principle .v9-manifesto-grid h2{
  max-width:16ch;
  font-size:clamp(2rem,3vw,3.1rem);
}
.editorial-statement--principle .v9-large-copy{
  max-width:20ch;
  font-size:clamp(1.55rem,2.4vw,2.35rem);
  line-height:1.18;
}

/* About page image follows the same calm framing. */
body.v18.page-about .v9-about-photo{
  aspect-ratio:4 / 5;
  min-height:0;
  overflow:hidden;
  border-radius:32px;
}
body.v18.page-about .v9-about-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 18%;
}

@media (max-width:900px){
  body.v18:not(.page-home) .v9-page-hero-grid,
  body.v18:not(.page-home) .v9-about-hero-grid{
    min-height:auto;
  }
  body.v18:not(.page-home) .v9-page-hero-grid>div:first-child,
  body.v18:not(.page-home) .v9-about-hero-grid>div:first-child{
    grid-column:1 / -1;
    text-align:center;
    padding-block:56px 32px;
  }
  body.v18:not(.page-home) .v9-page-hero h1,
  body.v18:not(.page-home) .v9-about-hero h1,
  body.v18:not(.page-home) .v9-page-hero .v9-lead,
  body.v18:not(.page-home) .v9-about-hero .v9-lead{margin-inline:auto}
  body.v18:not(.page-home) .v9-actions{justify-content:center}
  body.v18:not(.page-home) .v9-art,
  body.v18:not(.page-home) .v9-about-photo,
  body.v18:not(.page-home) .page-hero-aside{
    grid-column:1 / -1;
  }
  body.v18:not(.page-home) .v9-art,
  body.v18.page-about .v9-about-photo{
    aspect-ratio:16 / 10;
    margin-block:0 40px;
    border-radius:24px;
  }
}

@media (max-width:640px){
  body.v18:not(.page-home) .v9-page-hero h1,
  body.v18:not(.page-home) .v9-about-hero h1{font-size:clamp(2.4rem,11vw,3.5rem);max-width:11ch}
  .editorial-statement{padding-top:32px}
  .editorial-statement .v9-eyebrow{margin-bottom:16px}
  .editorial-quote--statement{max-width:15ch}
  .editorial-statement--profile .v9-compact-profile-grid h2,
  .editorial-statement--dark .v9-philosophy-grid>div:first-child h2,
  .editorial-statement--principle .v9-manifesto-grid h2{font-size:clamp(1.8rem,8vw,2.5rem)}
  .editorial-statement--principle .v9-large-copy{font-size:clamp(1.35rem,6vw,1.95rem)}
}

/* ========================================================================== 
   v27 — Quote bars / contained statement cards
   Puts long institutional phrases inside calmer containers.
   ========================================================================== */

/* Hero quotes become contained highlight panels instead of giant loose text. */
body.v18:not(.page-home) .v9-page-hero h1.editorial-quote--hero,
body.v18:not(.page-home) .v9-about-hero h1.editorial-quote--hero{
  display:block;
  max-width:9.5ch;
  margin:0;
  padding:24px 24px 26px;
  border-radius:28px;
  text-wrap:balance;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.page-executive .v9-page-hero h1.editorial-quote--hero{
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.04));
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 18px 40px rgba(0,0,0,.18);
}
.page-organizations .v9-page-hero h1.editorial-quote--hero{
  background:linear-gradient(180deg,rgba(255,255,255,.88),rgba(255,255,255,.72));
  border:1px solid rgba(6,20,43,.08);
  box-shadow:0 16px 36px rgba(6,20,43,.08);
}
.page-executive .v9-page-hero .v9-lead,
.page-organizations .v9-page-hero .v9-lead{
  margin-top:24px;
}
.page-executive .editorial-quote--hero::after,
.page-organizations .editorial-quote--hero::after{
  margin-top:18px;
}

/* Statement sections become centered cards/bars with controlled width. */
.editorial-statement{
  padding-top:24px;
}
.editorial-statement::before{
  display:none;
}
.editorial-statement .v9-eyebrow{
  margin-bottom:18px;
}
.editorial-quote--statement{
  display:block;
  width:min(900px,100%);
  max-width:none;
  margin-inline:auto !important;
  padding:28px 32px;
  border-radius:28px;
  text-align:center;
  line-height:1.12;
  letter-spacing:-.02em;
  text-wrap:balance;
}
.editorial-statement--profile .editorial-quote--statement,
.editorial-statement--principle .editorial-quote--statement{
  background:linear-gradient(180deg,#fffdf9,#f6f1e8);
  border:1px solid rgba(18,31,58,.08);
  box-shadow:0 14px 34px rgba(18,31,58,.05);
}
.editorial-statement--dark .editorial-quote--statement{
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.04));
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 14px 34px rgba(0,0,0,.18);
}

/* Reduce type size and widen measure so phrases break elegantly. */
.editorial-statement--profile .v9-compact-profile-grid h2,
.editorial-statement--dark .v9-philosophy-grid>div:first-child h2{
  font-size:clamp(1.85rem,2.4vw,2.9rem);
}
.editorial-statement--principle .v9-large-copy{
  max-width:none;
  width:min(900px,100%);
  font-size:clamp(1.45rem,2vw,2.2rem);
}
.editorial-statement--profile .v9-compact-profile-grid>div:first-child,
.editorial-statement--dark .v9-philosophy-grid>div:first-child,
.editorial-statement--principle .v9-manifesto-grid>div:first-child,
.editorial-statement--principle .v9-manifesto-grid>div:last-child{
  grid-column:1 / -1;
}
.editorial-statement--profile .v9-facts,
.editorial-statement--dark .v9-philosophy-words{
  margin-top:16px;
}

@media (max-width:900px){
  body.v18:not(.page-home) .v9-page-hero h1.editorial-quote--hero,
  body.v18:not(.page-home) .v9-about-hero h1.editorial-quote--hero{
    max-width:12ch;
    padding:20px 20px 22px;
    border-radius:24px;
  }
  .editorial-quote--statement{
    width:min(100%,720px);
    padding:24px 22px;
    border-radius:24px;
  }
}

@media (max-width:640px){
  body.v18:not(.page-home) .v9-page-hero h1.editorial-quote--hero,
  body.v18:not(.page-home) .v9-about-hero h1.editorial-quote--hero{
    max-width:100%;
    padding:18px 18px 20px;
    border-radius:20px;
  }
  .editorial-quote--statement{
    padding:20px 18px;
    border-radius:20px;
  }
  .editorial-statement--profile .v9-compact-profile-grid h2,
  .editorial-statement--dark .v9-philosophy-grid>div:first-child h2,
  .editorial-statement--principle .v9-large-copy{
    font-size:clamp(1.35rem,6.4vw,1.95rem);
  }
}

/* ========================================================================== 
   v28 — Home statement block redesign
   Replaces the loose oversized phrase with two balanced cards.
   ========================================================================== */
.page-home .v10-statement{
  padding-block:clamp(var(--s-6),6vw,var(--s-8));
  background:linear-gradient(180deg,var(--c-cream-50),#f5efe6);
}
.page-home .v10-statement-grid{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:var(--grid-gap);
  align-items:stretch;
}
.page-home .v10-brand-statement{
  grid-column:1 / span 7;
  display:flex;
  align-items:center;
  margin:0;
  padding:clamp(24px,3vw,40px);
  background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(255,255,255,.9));
  border:1px solid rgba(6,20,43,.08);
  border-radius:32px;
  box-shadow:0 16px 38px rgba(6,20,43,.06);
  font-family:var(--font-display);
  font-size:clamp(1.9rem,2.8vw,3.1rem);
  line-height:1.12;
  letter-spacing:-.025em;
  color:var(--c-navy-950);
  text-wrap:balance;
}
.page-home .v10-statement-links{
  grid-column:8 / -1;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:var(--s-2);
  min-height:100%;
  padding:clamp(24px,3vw,40px);
  border-left:0;
  background:linear-gradient(180deg,#fffdf9,#f8f2e9);
  border:1px solid rgba(6,20,43,.08);
  border-radius:32px;
  box-shadow:0 16px 38px rgba(6,20,43,.05);
  text-align:center;
}
.page-home .v10-statement-links img{width:min(320px,92%);margin-inline:auto}
.page-home .v10-statement-links>span{
  width:auto;
  margin-top:0;
  text-align:center;
  font-size:.82rem;
  font-weight:700;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--c-gold-700);
}
.page-home .v10-statement-links nav{
  display:grid;
  gap:12px;
  width:min(280px,100%);
  margin-top:var(--s-3);
}
.page-home .v10-statement-links nav a{
  min-height:52px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0 18px;
  border:1px solid rgba(6,20,43,.10);
  border-radius:999px;
  background:rgba(255,255,255,.72);
  font-weight:700;
  color:var(--c-navy-950);
  transition:transform var(--dur) var(--ease), box-shadow var(--dur) var(--ease), color var(--dur) var(--ease), border-color var(--dur) var(--ease);
}
.page-home .v10-statement-links nav a:hover,
.page-home .v10-statement-links nav a:focus-visible{
  color:var(--c-gold-700);
  border-color:rgba(123,87,28,.35);
  box-shadow:0 10px 22px rgba(6,20,43,.08);
  transform:translateY(-2px);
}

@media (max-width:900px){
  .page-home .v10-brand-statement,
  .page-home .v10-statement-links{grid-column:1 / -1}
  .page-home .v10-brand-statement{font-size:clamp(1.8rem,5vw,2.6rem)}
}

@media (max-width:640px){
  .page-home .v10-brand-statement,
  .page-home .v10-statement-links{
    padding:20px 18px;
    border-radius:24px;
  }
  .page-home .v10-brand-statement{
    font-size:clamp(1.55rem,8.2vw,2.15rem);
    line-height:1.14;
  }
  .page-home .v10-statement-links nav{width:100%}
}

/* v29 — ajuste fino da frase institucional da Home */
.page-home .v10-brand-statement{
  font-size:clamp(1.72rem,2.35vw,2.65rem);
  line-height:1.16;
  letter-spacing:-.018em;
  text-wrap:pretty;
  padding:clamp(24px,2.8vw,36px);
}
.page-home .v10-brand-statement::first-line{
  letter-spacing:-.02em;
}
@media (max-width:900px){
  .page-home .v10-brand-statement{
    font-size:clamp(1.62rem,4.5vw,2.25rem);
    line-height:1.17;
  }
}
@media (max-width:640px){
  .page-home .v10-brand-statement{
    font-size:clamp(1.42rem,7vw,1.82rem);
    line-height:1.18;
    padding:20px 18px;
  }
}

/* ========================================================================== 
   v30 — Final art direction + executive polish
   Wider internal compositions, fewer forced wraps, calmer editorial rhythm.
   ========================================================================== */

/* Internal hero: give the message enough width to breathe. */
body.v18:not(.page-home) .v9-page-hero-grid,
body.v18:not(.page-home) .v9-about-hero-grid{
  width:min(1200px,100%);
  min-height:600px;
  gap:clamp(24px,3vw,48px);
}
body.v18:not(.page-home) .v9-page-hero-grid>div:first-child,
body.v18:not(.page-home) .v9-about-hero-grid>div:first-child{
  grid-column:1 / span 6;
  padding-block:72px;
}
body.v18:not(.page-home) .v9-art,
body.v18:not(.page-home) .v9-about-photo,
body.v18:not(.page-home) .page-hero-aside{
  grid-column:7 / -1;
}
body.v18:not(.page-home) .v9-page-hero h1,
body.v18:not(.page-home) .v9-about-hero h1{
  max-width:12.5ch;
  font-size:clamp(2.7rem,3.55vw,4.2rem);
  line-height:1.01;
  letter-spacing:-.035em;
}
body.v18:not(.page-home) .v9-page-hero .v9-lead,
body.v18:not(.page-home) .v9-about-hero .v9-lead{
  max-width:42ch;
  line-height:1.55;
}
body.v18:not(.page-home) .v9-art{
  aspect-ratio:4 / 4.6;
  margin-block:48px;
  border-radius:28px;
}

/* Contained quotes: elegant panels, not oversized posters. */
body.v18:not(.page-home) .v9-page-hero h1.editorial-quote--hero{
  max-width:12ch;
  padding:22px 24px 24px;
  border-radius:24px;
}
.page-executive .v9-page-hero h1.editorial-quote--hero{
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035));
}
.page-organizations .v9-page-hero h1.editorial-quote--hero{
  background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(255,255,255,.78));
}

/* Institutional statement cards use wider measures and lower type scale. */
.editorial-quote--statement{
  width:min(940px,100%);
  max-width:none;
  padding:26px 32px;
  font-size:clamp(1.75rem,2.25vw,2.65rem)!important;
  line-height:1.12!important;
}
.editorial-statement--profile .v9-compact-profile-grid,
.editorial-statement--dark .v9-philosophy-grid,
.editorial-statement--principle .v9-manifesto-grid{
  width:min(1120px,100%);
}
.editorial-statement--profile .v9-compact-profile-grid>div:first-child,
.editorial-statement--dark .v9-philosophy-grid>div:first-child,
.editorial-statement--principle .v9-manifesto-grid>div:first-child,
.editorial-statement--principle .v9-manifesto-grid>div:last-child{
  grid-column:1 / -1;
}

/* Section rhythm: slightly tighter copy, more breathing room between groups. */
body.v18:not(.page-home) .v9-section-intro,
body.v18:not(.page-home) .section-head{
  width:min(820px,100%);
  margin-bottom:44px;
}
body.v18:not(.page-home) .v9-section-intro h2,
body.v18:not(.page-home) .section-head h2{
  max-width:18ch;
  font-size:clamp(2.05rem,2.85vw,3.25rem);
  line-height:1.03;
}
body.v18:not(.page-home) .v9-section-intro>p:not(.v9-eyebrow),
body.v18:not(.page-home) .section-head>p:not(.eyebrow){
  max-width:60ch;
}

/* Cards / rows: stronger baseline discipline, less visual noise. */
body.v18:not(.page-home) .v9-signal-grid article,
body.v18:not(.page-home) .v9-domain-grid article,
body.v18:not(.page-home) .v9-timeline-grid article{
  align-content:start;
}
body.v18:not(.page-home) .v9-signal-grid article>h3,
body.v18:not(.page-home) .v9-domain-grid article h3,
body.v18:not(.page-home) .v9-timeline-grid article h3{
  text-wrap:balance;
}
body.v18:not(.page-home) .v9-solution-grid article,
body.v18:not(.page-home) .v9-engagement-grid article{
  padding-block:30px;
}

/* Generic inner pages: cleaner relationship between title and side note. */
body.v18.page-inner .page-hero-grid{
  width:min(1160px,100%);
  min-height:500px;
}
body.v18.page-inner .page-hero-grid>div:first-child{
  grid-column:1 / span 7;
  padding-block:64px;
}
body.v18.page-inner .page-hero-aside{
  grid-column:9 / -1;
  padding:28px;
  border-left:0;
  border-top:3px solid var(--c-gold-500);
  border-radius:20px;
}
body.v18.page-inner .page-hero h1{
  max-width:15ch;
  font-size:clamp(2.7rem,3.6vw,4.2rem);
}
body.v18.page-inner .cards{
  width:min(1080px,100%);
  margin-inline:auto;
}
body.v18.page-inner .editorial-grid{
  width:min(1080px,100%);
}

/* About and Contact: direct, executive, clean. */
.page-about .v9-about-logo{width:min(390px,82%)}
.page-contact .form-intro h2{max-width:18ch}
.page-contact .contact-routing-v4{margin-top:32px}

/* Home final statement stays calm and premium. */
.page-home .v10-brand-statement{
  font-size:clamp(1.55rem,2.15vw,2.35rem);
  line-height:1.18;
  padding:clamp(22px,2.6vw,34px);
}

@media (max-width:900px){
  body.v18:not(.page-home) .v9-page-hero-grid,
  body.v18:not(.page-home) .v9-about-hero-grid,
  body.v18.page-inner .page-hero-grid{min-height:auto}
  body.v18:not(.page-home) .v9-page-hero-grid>div:first-child,
  body.v18:not(.page-home) .v9-about-hero-grid>div:first-child,
  body.v18.page-inner .page-hero-grid>div:first-child{
    grid-column:1/-1;
    padding-block:52px 32px;
  }
  body.v18:not(.page-home) .v9-art,
  body.v18:not(.page-home) .v9-about-photo,
  body.v18:not(.page-home) .page-hero-aside,
  body.v18.page-inner .page-hero-aside{
    grid-column:1/-1;
  }
  body.v18:not(.page-home) .v9-art,
  body.v18.page-about .v9-about-photo{aspect-ratio:16/10;margin-block:0 40px}
  body.v18.page-inner .page-hero-aside{margin-bottom:48px}
}

@media (max-width:640px){
  body.v18:not(.page-home) .v9-page-hero h1,
  body.v18:not(.page-home) .v9-about-hero h1,
  body.v18.page-inner .page-hero h1{
    max-width:12ch;
    font-size:clamp(2.25rem,10vw,3.25rem);
  }
  body.v18:not(.page-home) .v9-page-hero h1.editorial-quote--hero{
    max-width:100%;
    padding:18px 18px 20px;
  }
  .editorial-quote--statement{
    padding:20px 18px;
    font-size:clamp(1.35rem,6.2vw,1.85rem)!important;
  }
}

/* ========================================================================== 
   v31 — Definitive hero alignment
   One optical axis for eyebrow, headline, support copy and CTA.
   ========================================================================== */

/* The complete copy column becomes the panel; the headline itself is no longer a nested card. */
.page-executive .v9-page-hero-grid>div:first-child,
.page-organizations .v9-page-hero-grid>div:first-child,
.page-education .v9-page-hero-grid>div:first-child,
.page-people .v9-page-hero-grid>div:first-child{
  grid-column:1 / span 6;
  align-self:center;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:36px 36px 40px;
  margin-block:48px;
  border-radius:28px;
}
.page-executive .v9-page-hero-grid>div:first-child{
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035));
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 18px 46px rgba(0,0,0,.18);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.page-organizations .v9-page-hero-grid>div:first-child,
.page-education .v9-page-hero-grid>div:first-child,
.page-people .v9-page-hero-grid>div:first-child{
  background:linear-gradient(180deg,rgba(255,255,255,.84),rgba(255,255,255,.68));
  border:1px solid rgba(6,20,43,.08);
  box-shadow:0 16px 40px rgba(6,20,43,.07);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}

/* Every piece of copy uses the same left edge. */
.page-executive .v9-page-hero-grid>div:first-child>* ,
.page-organizations .v9-page-hero-grid>div:first-child>* ,
.page-education .v9-page-hero-grid>div:first-child>* ,
.page-people .v9-page-hero-grid>div:first-child>*{
  margin-left:0;
  margin-right:0;
}
.page-executive .v9-page-hero .v9-eyebrow,
.page-organizations .v9-page-hero .v9-eyebrow,
.page-education .v9-page-hero .v9-eyebrow,
.page-people .v9-page-hero .v9-eyebrow{
  margin-bottom:18px;
}

/* Headline: remove nested panel and avoid excessive line breaks. */
.page-executive .v9-page-hero h1,
.page-organizations .v9-page-hero h1,
.page-education .v9-page-hero h1,
.page-people .v9-page-hero h1,
.page-executive .v9-page-hero h1.editorial-quote--hero,
.page-organizations .v9-page-hero h1.editorial-quote--hero{
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
  background:none;
  border:0;
  border-radius:0;
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  font-size:clamp(2.65rem,3.45vw,3.9rem);
  line-height:1.01;
  letter-spacing:-.033em;
  text-align:left;
  text-wrap:balance;
}
.page-executive .editorial-quote--hero::after,
.page-organizations .editorial-quote--hero::after{
  width:56px;
  height:2px;
  margin:20px 0 0;
}

.page-executive .v9-page-hero .v9-lead,
.page-organizations .v9-page-hero .v9-lead,
.page-education .v9-page-hero .v9-lead,
.page-people .v9-page-hero .v9-lead{
  max-width:38ch;
  margin-top:24px;
  line-height:1.55;
  text-align:left;
}
.page-executive .v9-page-hero .v9-actions,
.page-organizations .v9-page-hero .v9-actions,
.page-education .v9-page-hero .v9-actions,
.page-people .v9-page-hero .v9-actions{
  justify-content:flex-start;
  margin-top:28px;
}

/* Image and copy share the same vertical visual box. */
.page-executive .v9-art,
.page-organizations .v9-art,
.page-education .v9-art,
.page-people .v9-art{
  grid-column:7 / -1;
  align-self:center;
  aspect-ratio:4 / 5;
  min-height:0;
  margin-block:48px;
  border-radius:28px;
}

@media (max-width:1100px){
  .page-executive .v9-page-hero-grid>div:first-child,
  .page-organizations .v9-page-hero-grid>div:first-child,
  .page-education .v9-page-hero-grid>div:first-child,
  .page-people .v9-page-hero-grid>div:first-child{
    padding:30px 30px 34px;
  }
  .page-executive .v9-page-hero h1,
  .page-organizations .v9-page-hero h1,
  .page-education .v9-page-hero h1,
  .page-people .v9-page-hero h1,
  .page-executive .v9-page-hero h1.editorial-quote--hero,
  .page-organizations .v9-page-hero h1.editorial-quote--hero{
    font-size:clamp(2.4rem,3.8vw,3.35rem);
  }
}

@media (max-width:900px){
  .page-executive .v9-page-hero-grid>div:first-child,
  .page-organizations .v9-page-hero-grid>div:first-child,
  .page-education .v9-page-hero-grid>div:first-child,
  .page-people .v9-page-hero-grid>div:first-child{
    grid-column:1 / -1;
    width:min(680px,100%);
    margin:40px auto 28px;
    padding:28px 28px 32px;
    text-align:left;
  }
  .page-executive .v9-page-hero h1,
  .page-organizations .v9-page-hero h1,
  .page-education .v9-page-hero h1,
  .page-people .v9-page-hero h1,
  .page-executive .v9-page-hero h1.editorial-quote--hero,
  .page-organizations .v9-page-hero h1.editorial-quote--hero,
  .page-executive .v9-page-hero .v9-lead,
  .page-organizations .v9-page-hero .v9-lead,
  .page-education .v9-page-hero .v9-lead,
  .page-people .v9-page-hero .v9-lead{
    margin-left:0;
    margin-right:0;
    text-align:left;
  }
  .page-executive .v9-page-hero .v9-actions,
  .page-organizations .v9-page-hero .v9-actions,
  .page-education .v9-page-hero .v9-actions,
  .page-people .v9-page-hero .v9-actions{
    justify-content:flex-start;
  }
  .page-executive .v9-art,
  .page-organizations .v9-art,
  .page-education .v9-art,
  .page-people .v9-art{
    grid-column:1 / -1;
    aspect-ratio:16 / 10;
    margin:0 0 40px;
  }
}

@media (max-width:640px){
  .page-executive .v9-page-hero-grid>div:first-child,
  .page-organizations .v9-page-hero-grid>div:first-child,
  .page-education .v9-page-hero-grid>div:first-child,
  .page-people .v9-page-hero-grid>div:first-child{
    margin:24px 0 20px;
    padding:22px 20px 24px;
    border-radius:22px;
  }
  .page-executive .v9-page-hero h1,
  .page-organizations .v9-page-hero h1,
  .page-education .v9-page-hero h1,
  .page-people .v9-page-hero h1,
  .page-executive .v9-page-hero h1.editorial-quote--hero,
  .page-organizations .v9-page-hero h1.editorial-quote--hero{
    font-size:clamp(2.15rem,10.5vw,2.85rem);
    line-height:1.02;
  }
  .page-executive .v9-page-hero .v9-lead,
  .page-organizations .v9-page-hero .v9-lead,
  .page-education .v9-page-hero .v9-lead,
  .page-people .v9-page-hero .v9-lead{
    margin-top:20px;
    font-size:1rem;
  }
  .page-executive .v9-page-hero .v9-actions,
  .page-organizations .v9-page-hero .v9-actions,
  .page-education .v9-page-hero .v9-actions,
  .page-people .v9-page-hero .v9-actions{
    margin-top:22px;
  }
}

/* ========================================================================== 
   v32 — FINAL CASCADE LOCK
   Removes legacy nested hero panels and normalizes all internal hero axes.
   ========================================================================== */

/* 1) Main internal heroes: one panel only; every element shares one left axis. */
body.v18.page-executive:not(.page-home) .v9-page-hero-grid,
body.v18.page-organizations:not(.page-home) .v9-page-hero-grid,
body.v18.page-education:not(.page-home) .v9-page-hero-grid,
body.v18.page-people:not(.page-home) .v9-page-hero-grid{
  width:min(1160px,100%);
  margin-inline:auto;
  min-height:0;
  padding-block:64px;
  align-items:stretch;
  gap:32px;
}

body.v18.page-executive:not(.page-home) .v9-page-hero-grid>div:first-child,
body.v18.page-organizations:not(.page-home) .v9-page-hero-grid>div:first-child,
body.v18.page-education:not(.page-home) .v9-page-hero-grid>div:first-child,
body.v18.page-people:not(.page-home) .v9-page-hero-grid>div:first-child{
  grid-column:1 / span 6;
  width:100%;
  min-width:0;
  min-height:500px;
  margin:0;
  padding:40px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  text-align:left;
  border-radius:28px;
}

body.v18.page-executive:not(.page-home) .v9-page-hero-grid>div:first-child{
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035));
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 18px 46px rgba(0,0,0,.18);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

body.v18.page-organizations:not(.page-home) .v9-page-hero-grid>div:first-child,
body.v18.page-education:not(.page-home) .v9-page-hero-grid>div:first-child,
body.v18.page-people:not(.page-home) .v9-page-hero-grid>div:first-child{
  background:linear-gradient(180deg,rgba(255,255,255,.90),rgba(255,255,255,.76));
  border:1px solid rgba(6,20,43,.08);
  box-shadow:0 16px 40px rgba(6,20,43,.07);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}

/* Legacy rules once styled the H1 as a second card. These properties are locked off. */
body.v18.page-executive:not(.page-home) .v9-page-hero h1.editorial-quote--hero,
body.v18.page-organizations:not(.page-home) .v9-page-hero h1.editorial-quote--hero,
body.v18.page-education:not(.page-home) .v9-page-hero h1,
body.v18.page-people:not(.page-home) .v9-page-hero h1{
  display:block !important;
  width:100% !important;
  max-width:12.5ch !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  text-indent:0 !important;
  font-size:clamp(2.75rem,3.45vw,3.85rem) !important;
  line-height:1.01 !important;
  letter-spacing:-.033em !important;
  text-align:left !important;
  text-wrap:balance;
}

body.v18.page-executive:not(.page-home) .v9-page-hero .v9-eyebrow,
body.v18.page-organizations:not(.page-home) .v9-page-hero .v9-eyebrow,
body.v18.page-education:not(.page-home) .v9-page-hero .v9-eyebrow,
body.v18.page-people:not(.page-home) .v9-page-hero .v9-eyebrow{
  width:100%;
  margin:0 0 18px !important;
  text-align:left !important;
}

body.v18.page-executive:not(.page-home) .v9-page-hero .v9-lead,
body.v18.page-organizations:not(.page-home) .v9-page-hero .v9-lead,
body.v18.page-education:not(.page-home) .v9-page-hero .v9-lead,
body.v18.page-people:not(.page-home) .v9-page-hero .v9-lead{
  width:100%;
  max-width:40ch !important;
  margin:24px 0 0 !important;
  line-height:1.55;
  text-align:left !important;
}

body.v18.page-executive:not(.page-home) .v9-page-hero .v9-actions,
body.v18.page-organizations:not(.page-home) .v9-page-hero .v9-actions,
body.v18.page-education:not(.page-home) .v9-page-hero .v9-actions,
body.v18.page-people:not(.page-home) .v9-page-hero .v9-actions{
  width:100%;
  margin:28px 0 0 !important;
  justify-content:flex-start !important;
}

body.v18.page-executive:not(.page-home) .editorial-quote--hero::after,
body.v18.page-organizations:not(.page-home) .editorial-quote--hero::after{
  display:block;
  width:56px;
  height:2px;
  margin:20px 0 0;
  background:var(--c-gold-500);
}

body.v18.page-executive:not(.page-home) .v9-art,
body.v18.page-organizations:not(.page-home) .v9-art,
body.v18.page-education:not(.page-home) .v9-art,
body.v18.page-people:not(.page-home) .v9-art{
  grid-column:7 / -1;
  align-self:stretch;
  min-height:500px;
  aspect-ratio:auto;
  margin:0;
  border-radius:28px;
}

/* 2) Generic internal-page heroes: clean 7/5 composition and aligned vertical centers. */
body.v18.page-inner .page-hero-grid{
  width:min(1100px,100%);
  margin-inline:auto;
  min-height:0;
  padding-block:64px;
  align-items:center;
  gap:48px;
}
body.v18.page-inner .page-hero-grid>div:first-child{
  grid-column:1 / span 7;
  padding:0;
  min-width:0;
}
body.v18.page-inner .page-hero h1{
  max-width:13ch;
  font-size:clamp(2.7rem,3.7vw,4.25rem);
  line-height:1;
}
body.v18.page-inner .page-hero .lead{max-width:52ch}
body.v18.page-inner .page-hero-aside{
  grid-column:9 / -1;
  align-self:center;
  margin:0;
  padding:32px;
}

/* 3) Editorial statement blocks: one contained bar, never a giant floating phrase. */
body.v18:not(.page-home) .editorial-statement{
  padding-block:64px;
}
body.v18:not(.page-home) .editorial-statement .v9-eyebrow{
  margin-bottom:16px;
  text-align:center;
}
body.v18:not(.page-home) .editorial-quote--statement{
  display:block;
  width:min(900px,100%) !important;
  max-width:none !important;
  margin-inline:auto !important;
  padding:28px 32px !important;
  border-radius:24px !important;
  font-size:clamp(1.65rem,2.35vw,2.65rem) !important;
  line-height:1.12 !important;
  text-align:center !important;
  text-wrap:balance;
}
body.v18:not(.page-home) .editorial-statement--profile .editorial-quote--statement,
body.v18:not(.page-home) .editorial-statement--principle .editorial-quote--statement{
  background:linear-gradient(180deg,#fffdf9,#f6f1e8) !important;
  border:1px solid rgba(18,31,58,.08) !important;
  box-shadow:0 14px 34px rgba(18,31,58,.05) !important;
}
body.v18:not(.page-home) .editorial-statement--dark .editorial-quote--statement{
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.04)) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  box-shadow:0 14px 34px rgba(0,0,0,.18) !important;
}

/* 4) About page hero: align copy and portrait, prevent disproportionate crop. */
body.v18.page-about .v9-about-hero-grid{
  width:min(1160px,100%);
  min-height:0;
  padding-block:64px;
  align-items:stretch;
  gap:48px;
}
body.v18.page-about .v9-about-hero-grid>div:first-child{
  grid-column:1 / span 6;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:40px;
  border:1px solid var(--c-line);
  border-radius:28px;
  background:rgba(255,255,255,.72);
  text-align:left;
}
body.v18.page-about .v9-about-logo{margin:0 0 24px;width:min(380px,100%)}
body.v18.page-about .v9-about-hero h1{max-width:12ch;font-size:clamp(2.7rem,3.5vw,4rem)}
body.v18.page-about .v9-about-hero .v9-lead{margin-inline:0;max-width:42ch}
body.v18.page-about .v9-about-photo{
  grid-column:7 / -1;
  align-self:stretch;
  min-height:500px;
  aspect-ratio:auto;
  margin:0;
  border-radius:28px;
}
body.v18.page-about .v9-about-photo img{object-position:50% 18%}

/* 5) Mobile/tablet: stack cleanly, no nested centering conflicts, 44px targets preserved. */
@media (max-width:900px){
  body.v18.page-executive:not(.page-home) .v9-page-hero-grid,
  body.v18.page-organizations:not(.page-home) .v9-page-hero-grid,
  body.v18.page-education:not(.page-home) .v9-page-hero-grid,
  body.v18.page-people:not(.page-home) .v9-page-hero-grid,
  body.v18.page-about .v9-about-hero-grid,
  body.v18.page-inner .page-hero-grid{
    padding-block:40px;
    gap:24px;
  }
  body.v18.page-executive:not(.page-home) .v9-page-hero-grid>div:first-child,
  body.v18.page-organizations:not(.page-home) .v9-page-hero-grid>div:first-child,
  body.v18.page-education:not(.page-home) .v9-page-hero-grid>div:first-child,
  body.v18.page-people:not(.page-home) .v9-page-hero-grid>div:first-child,
  body.v18.page-about .v9-about-hero-grid>div:first-child,
  body.v18.page-inner .page-hero-grid>div:first-child,
  body.v18.page-inner .page-hero-aside,
  body.v18.page-about .v9-about-photo,
  body.v18.page-executive:not(.page-home) .v9-art,
  body.v18.page-organizations:not(.page-home) .v9-art,
  body.v18.page-education:not(.page-home) .v9-art,
  body.v18.page-people:not(.page-home) .v9-art{
    grid-column:1 / -1;
  }
  body.v18.page-executive:not(.page-home) .v9-page-hero-grid>div:first-child,
  body.v18.page-organizations:not(.page-home) .v9-page-hero-grid>div:first-child,
  body.v18.page-education:not(.page-home) .v9-page-hero-grid>div:first-child,
  body.v18.page-people:not(.page-home) .v9-page-hero-grid>div:first-child,
  body.v18.page-about .v9-about-hero-grid>div:first-child{
    min-height:0;
    padding:32px;
  }
  body.v18.page-executive:not(.page-home) .v9-art,
  body.v18.page-organizations:not(.page-home) .v9-art,
  body.v18.page-education:not(.page-home) .v9-art,
  body.v18.page-people:not(.page-home) .v9-art,
  body.v18.page-about .v9-about-photo{
    min-height:0;
    aspect-ratio:16/10;
  }
  body.v18.page-inner .page-hero-aside{margin:0}
}

@media (max-width:640px){
  body.v18.page-executive:not(.page-home) .v9-page-hero-grid>div:first-child,
  body.v18.page-organizations:not(.page-home) .v9-page-hero-grid>div:first-child,
  body.v18.page-education:not(.page-home) .v9-page-hero-grid>div:first-child,
  body.v18.page-people:not(.page-home) .v9-page-hero-grid>div:first-child,
  body.v18.page-about .v9-about-hero-grid>div:first-child{
    padding:24px 20px;
    border-radius:22px;
  }
  body.v18.page-executive:not(.page-home) .v9-page-hero h1.editorial-quote--hero,
  body.v18.page-organizations:not(.page-home) .v9-page-hero h1.editorial-quote--hero,
  body.v18.page-education:not(.page-home) .v9-page-hero h1,
  body.v18.page-people:not(.page-home) .v9-page-hero h1{
    max-width:none !important;
    font-size:clamp(2.15rem,10vw,2.85rem) !important;
  }
  body.v18.page-inner .page-hero h1,
  body.v18.page-about .v9-about-hero h1{font-size:clamp(2.2rem,10vw,3rem)}
  body.v18:not(.page-home) .editorial-quote--statement{
    padding:20px 18px !important;
    border-radius:20px !important;
    font-size:clamp(1.35rem,6.2vw,1.85rem) !important;
  }
}

/* v32 mobile touch targets for minimalist redirect/privacy pages */
@media (max-width:640px){
  .redirect-action,
  .privacy-mail-action{
    min-height:44px;
    display:inline-flex;
    align-items:center;
    padding-block:10px;
  }
}

/* v32 final optical refinement: let major hero headlines use the full panel width. */
@media (min-width:901px){
  body.v18.page-executive:not(.page-home) .v9-page-hero h1.editorial-quote--hero,
  body.v18.page-organizations:not(.page-home) .v9-page-hero h1.editorial-quote--hero,
  body.v18.page-education:not(.page-home) .v9-page-hero h1,
  body.v18.page-people:not(.page-home) .v9-page-hero h1{
    max-width:100% !important;
    font-size:clamp(2.65rem,3.25vw,3.65rem) !important;
  }
}

/* ========================================================================== 
   v33 — Sobre: complementary credentials visible and structured
   ========================================================================== */
.v9-complementary{
  background:var(--c-cream-50);
}
.v9-complementary .v9-section-intro{
  width:min(920px,100%);
  margin-inline:auto;
  text-align:center;
}
.v9-complementary .v9-section-intro h2{
  max-width:22ch;
  margin-inline:auto;
}
.v9-more-grid-visible{
  width:min(1160px,100%);
  margin-inline:auto;
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:var(--grid-gap);
}
.v9-more-grid-visible article{
  grid-column:span 4;
  padding:32px;
  background:rgba(255,255,255,.72);
  border:1px solid var(--c-line);
  border-radius:24px;
  box-shadow:0 12px 30px rgba(6,20,43,.04);
}
.v9-more-grid-visible article h3{
  margin:0 0 20px;
  padding-bottom:16px;
  border-bottom:1px solid var(--c-line);
  color:var(--c-navy-950);
  font-size:clamp(1.35rem,1.6vw,1.65rem);
}
.v9-complementary-list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:0;
}
.v9-complementary-list li{
  margin:0;
  padding:14px 0;
  border-bottom:1px solid var(--c-line);
  color:var(--c-navy-800);
  line-height:1.5;
}
.v9-complementary-list li:first-child{padding-top:0}
.v9-complementary-list li:last-child{padding-bottom:0;border-bottom:0}
.v9-register-list li{line-height:1.45}
.no-break{white-space:nowrap}

@media (max-width:900px){
  .v9-more-grid-visible article{grid-column:span 6}
  .v9-more-grid-visible article:last-child{grid-column:1 / -1}
}
@media (max-width:640px){
  .v9-more-grid-visible article{grid-column:1 / -1;padding:24px}
}

/* ========================================================================== 
   v34 — Sobre: horizontal section title, lighter cards, refined hero layout
   ========================================================================== */

/* 1) Repertório complementar: keep the main title on one line on desktop. */
@media (min-width: 901px){
  .v9-complementary .v9-section-intro{
    width:min(1240px,100%);
  }
  .v9-complementary .v9-section-intro h2{
    max-width:none;
    white-space:nowrap;
    font-size:clamp(2.35rem,3vw,3.6rem);
    letter-spacing:-.03em;
  }
}

/* 2) Three transparent squares with stronger alignment discipline. */
.v9-more-grid-visible{
  align-items:stretch;
}
.v9-more-grid-visible article{
  display:flex;
  flex-direction:column;
  min-height:100%;
  padding:32px;
  background:rgba(255,255,255,.54);
  border:1px solid rgba(18,31,58,.10);
  border-radius:26px;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  box-shadow:0 14px 34px rgba(6,20,43,.04);
}
.v9-more-grid-visible article h3{
  min-height:2.4em;
  display:flex;
  align-items:flex-end;
}
.v9-complementary-list{
  margin-top:0;
}
.v9-complementary-list li{
  display:block;
  padding:14px 0;
}
.v9-register-list li{
  line-height:1.55;
}

/* 3) About hero: calmer card, fewer line breaks, better relation with photo. */
body.v18.page-about .v9-about-hero{
  padding-top:16px;
}
body.v18.page-about .v9-about-hero-grid{
  width:min(1180px,100%);
  margin-inline:auto;
  min-height:620px;
  align-items:stretch;
}
body.v18.page-about .v9-about-hero-grid>div:first-child{
  grid-column:1 / span 5;
  padding:36px 36px 38px;
  border-radius:28px;
}
body.v18.page-about .v9-about-logo{
  width:min(340px,100%);
  margin:0 0 20px;
}
body.v18.page-about .v9-about-hero h1{
  max-width:10.8ch;
  font-size:clamp(2.45rem,3vw,3.55rem);
  line-height:.99;
  letter-spacing:-.04em;
}
body.v18.page-about .v9-about-hero .v9-lead{
  max-width:26ch;
  margin-top:20px;
  font-size:clamp(1.1rem,1.4vw,1.35rem);
  line-height:1.45;
}
body.v18.page-about .v9-about-photo{
  grid-column:6 / -1;
  min-height:620px;
  border-radius:28px;
  box-shadow:var(--shadow-2);
}
body.v18.page-about .v9-about-photo img{
  object-position:50% 16%;
}

@media (max-width: 1200px){
  body.v18.page-about .v9-about-hero h1{
    font-size:clamp(2.3rem,2.8vw,3.2rem);
    max-width:11.4ch;
  }
}

@media (max-width: 900px){
  .v9-complementary .v9-section-intro h2{
    white-space:normal;
  }
  .v9-more-grid-visible article{
    padding:28px;
    border-radius:24px;
  }
  body.v18.page-about .v9-about-hero-grid{
    min-height:auto;
    gap:24px;
  }
  body.v18.page-about .v9-about-hero-grid>div:first-child,
  body.v18.page-about .v9-about-photo{
    grid-column:1 / -1;
  }
  body.v18.page-about .v9-about-hero-grid>div:first-child{
    padding:32px;
  }
  body.v18.page-about .v9-about-logo{
    margin-inline:auto;
  }
  body.v18.page-about .v9-about-hero h1,
  body.v18.page-about .v9-about-hero .v9-lead{
    margin-inline:auto;
    text-align:center;
  }
  body.v18.page-about .v9-about-photo{
    min-height:0;
    aspect-ratio:16/10;
  }
}

@media (max-width: 640px){
  .v9-more-grid-visible article{
    padding:24px 20px;
    border-radius:22px;
  }
  body.v18.page-about .v9-about-hero-grid>div:first-child{
    padding:24px 20px 26px;
    border-radius:22px;
  }
  body.v18.page-about .v9-about-hero h1{
    font-size:clamp(2rem,9.4vw,2.8rem);
    max-width:12ch;
  }
  body.v18.page-about .v9-about-hero .v9-lead{
    font-size:1.04rem;
  }
}

/* ========================================================================== 
   v35 — Proportional typography, optical centering and alignment harmonization
   ========================================================================== */
:root{
  --measure:64ch;
  --measure-tight:52ch;
  --content-reading:720px;
}

/* Major section introductions: one consistent optical axis. */
.v9-section-intro,
.section-head{
  width:min(820px,100%);
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}
.v9-section-intro h2,
.section-head h2{
  max-width:18ch;
  margin-left:auto;
  margin-right:auto;
  font-size:clamp(2.15rem,3.15vw,3.65rem);
  line-height:1.03;
}
.v9-section-intro>p:not(.v9-eyebrow),
.section-head>p:not(.eyebrow){
  max-width:60ch;
  margin-left:auto;
  margin-right:auto;
  line-height:1.65;
}

/* Primary internal heroes: centered copy inside a balanced text panel. */
body.v18.page-executive:not(.page-home) .v9-page-hero-grid>div:first-child,
body.v18.page-organizations:not(.page-home) .v9-page-hero-grid>div:first-child,
body.v18.page-education:not(.page-home) .v9-page-hero-grid>div:first-child,
body.v18.page-people:not(.page-home) .v9-page-hero-grid>div:first-child{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  padding:clamp(32px,3.2vw,48px);
}
body.v18.page-executive:not(.page-home) .v9-page-hero h1.editorial-quote--hero,
body.v18.page-organizations:not(.page-home) .v9-page-hero h1.editorial-quote--hero,
body.v18.page-education:not(.page-home) .v9-page-hero h1,
body.v18.page-people:not(.page-home) .v9-page-hero h1{
  width:auto !important;
  max-width:12.8ch !important;
  margin-left:auto !important;
  margin-right:auto !important;
  font-size:clamp(2.55rem,3vw,3.45rem) !important;
  line-height:1.03 !important;
  text-align:center !important;
}
body.v18.page-executive:not(.page-home) .v9-page-hero .v9-eyebrow,
body.v18.page-organizations:not(.page-home) .v9-page-hero .v9-eyebrow,
body.v18.page-education:not(.page-home) .v9-page-hero .v9-eyebrow,
body.v18.page-people:not(.page-home) .v9-page-hero .v9-eyebrow{
  width:auto;
  text-align:center !important;
}
body.v18.page-executive:not(.page-home) .v9-page-hero .v9-lead,
body.v18.page-organizations:not(.page-home) .v9-page-hero .v9-lead,
body.v18.page-education:not(.page-home) .v9-page-hero .v9-lead,
body.v18.page-people:not(.page-home) .v9-page-hero .v9-lead{
  width:auto;
  max-width:38ch !important;
  margin:22px auto 0 !important;
  text-align:center !important;
}
body.v18.page-executive:not(.page-home) .v9-page-hero .v9-actions,
body.v18.page-organizations:not(.page-home) .v9-page-hero .v9-actions,
body.v18.page-education:not(.page-home) .v9-page-hero .v9-actions,
body.v18.page-people:not(.page-home) .v9-page-hero .v9-actions{
  width:auto;
  margin:28px auto 0 !important;
  justify-content:center !important;
}
body.v18.page-executive:not(.page-home) .editorial-quote--hero::after,
body.v18.page-organizations:not(.page-home) .editorial-quote--hero::after{
  margin-left:auto;
  margin-right:auto;
}

/* About hero: same centered typographic logic as the rest of the site. */
body.v18.page-about .v9-about-hero-grid>div:first-child{
  align-items:center;
  text-align:center;
}
body.v18.page-about .v9-about-logo{margin-left:auto;margin-right:auto}
body.v18.page-about .v9-about-hero h1{
  max-width:12ch;
  margin-left:auto;
  margin-right:auto;
  text-align:center;
  font-size:clamp(2.35rem,2.9vw,3.35rem);
  line-height:1.03;
}
body.v18.page-about .v9-about-hero .v9-lead{
  max-width:36ch;
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}

/* Home: center the message within its intended left-side visual field. */
.page-home .v10-hero-copy{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}
.page-home .v10-hero h1{
  max-width:11.5ch;
  font-size:clamp(3rem,4.4vw,5.75rem);
  line-height:.96;
}
.page-home .v10-lead{max-width:42ch;margin-left:auto;margin-right:auto}
.page-home .v10-actions{justify-content:center}

/* Portal cards: centered hierarchy and equal text measures. */
.page-home .v10-card-copy{
  justify-items:center;
  text-align:center;
}
.page-home .v10-card-copy h2,
.page-home .v10-card-copy small{
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}
.page-home .v10-card-copy h2{max-width:11ch}
.page-home .v10-card-copy small{max-width:30ch;text-transform:none}

/* Reusable cards: centered headings, readable copy, equal visual weight. */
.v9-big-three article,
.v9-solution-grid article,
.v9-engagement-grid article,
.topic-link,
.v9-more-grid-visible article{
  text-align:center;
  align-items:center;
}
.v9-solution-grid article{justify-items:center;align-content:center}
.v9-solution-grid h3{margin-top:28px;max-width:20ch}
.v9-big-three p,
.v9-engagement-grid article p,
.topic-link p,
.v9-more-grid-visible article p{margin-left:auto;margin-right:auto}
.v9-more-grid-visible article h3{
  min-height:0;
  justify-content:center;
  align-items:center;
  text-align:center;
}

/* Generic page hero copy gets centered while supporting asides remain readable. */
body.v18.page-inner .page-hero-grid>div:first-child{text-align:center}
body.v18.page-inner .page-hero h1,
body.v18.page-inner .page-hero .lead{margin-left:auto;margin-right:auto}
body.v18.page-inner .direct-links{justify-items:center}

/* Calls-to-action: center the message and button as one proportional unit. */
.cta-wrap,.v9-cta-inner{text-align:center}
.cta-wrap>h2,.cta-wrap>p,.v9-cta-inner>div{
  grid-column:2 / span 7;
  margin-left:auto;
  margin-right:auto;
}
.cta-wrap>a,.v9-cta-inner>a{grid-column:10 / span 2;justify-self:center}
.cta h2,.v9-cta h2{max-width:16ch;margin-left:auto;margin-right:auto}

/* Contact and editorial copy: center headings only; long-form content stays left-aligned. */
.form-intro{text-align:center}
.form-intro h2,.form-intro p{margin-left:auto;margin-right:auto}
.contact-aside-v4>.eyebrow,.contact-routing-v4 h3{text-align:center}
.location-copy{text-align:center}
.location-copy address{max-width:36ch;margin-left:auto;margin-right:auto}
.map-link{justify-self:center;text-align:center}

/* Desktop proportions: keep text/image pairs balanced. */
@media (min-width:901px){
  body.v18.page-executive:not(.page-home) .v9-page-hero-grid,
  body.v18.page-organizations:not(.page-home) .v9-page-hero-grid,
  body.v18.page-education:not(.page-home) .v9-page-hero-grid,
  body.v18.page-people:not(.page-home) .v9-page-hero-grid{
    width:min(1180px,100%);
    grid-template-columns:repeat(12,minmax(0,1fr));
    gap:40px;
  }
  body.v18.page-executive:not(.page-home) .v9-page-hero-grid>div:first-child,
  body.v18.page-organizations:not(.page-home) .v9-page-hero-grid>div:first-child,
  body.v18.page-education:not(.page-home) .v9-page-hero-grid>div:first-child,
  body.v18.page-people:not(.page-home) .v9-page-hero-grid>div:first-child{
    grid-column:1 / span 6;
  }
  body.v18.page-executive:not(.page-home) .v9-art,
  body.v18.page-organizations:not(.page-home) .v9-art,
  body.v18.page-education:not(.page-home) .v9-art,
  body.v18.page-people:not(.page-home) .v9-art{
    grid-column:7 / -1;
  }
}

@media (max-width:900px){
  .page-home .v10-hero-copy{align-items:center;text-align:center}
  .page-home .v10-hero h1{margin-left:auto;margin-right:auto}
  .cta-wrap>h2,.cta-wrap>p,.v9-cta-inner>div,
  .cta-wrap>a,.v9-cta-inner>a{grid-column:1/-1}
  .cta-wrap>a,.v9-cta-inner>a{justify-self:center;margin-top:24px}
}

@media (max-width:640px){
  .v9-section-intro h2,.section-head h2{font-size:clamp(2rem,9vw,2.75rem)}
  body.v18.page-executive:not(.page-home) .v9-page-hero h1.editorial-quote--hero,
  body.v18.page-organizations:not(.page-home) .v9-page-hero h1.editorial-quote--hero,
  body.v18.page-education:not(.page-home) .v9-page-hero h1,
  body.v18.page-people:not(.page-home) .v9-page-hero h1{
    max-width:13ch !important;
    font-size:clamp(2.05rem,9.2vw,2.7rem) !important;
  }
  .page-home .v10-hero h1{font-size:clamp(2.8rem,12vw,4rem);max-width:10.5ch}
  .page-home .v10-lead{font-size:1.05rem;line-height:1.5}
  .page-home .v10-card-copy{padding:28px 22px}
  .page-home .v10-card-copy h2{font-size:clamp(2.2rem,10vw,2.8rem)}
}

/* Brand signature: crisp intrinsic aspect ratio across header, footer and interior pages. */
.brand img,.footer-logo,.v9-about-logo{height:auto;object-fit:contain;image-rendering:auto}
