/* Institutional reading and editorial directories, using native editable blocks. */
main[data-vibecms-page] section[id] { scroll-margin-top: 120px; }
main[data-vibecms-page="azul_sobre"] { display: grid; grid-template-columns: repeat(12,minmax(0,1fr)); }
main[data-vibecms-page="azul_sobre"] > section { grid-column: 1 / -1; min-width: 0; }
/* Identity converges before the people chapter; whole CMS text parts remain editable. */
main[data-vibecms-page="azul_sobre"] .vibe-hero.azul-about-opening { --azul-about-copy-travel:24px; padding:clamp(48px,6.5vw,96px) var(--azul-gutter) 40px; border-bottom:0; }
main[data-vibecms-page="azul_sobre"] .azul-about-opening .vibe-hero-content { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); align-items:end; gap:32px clamp(32px,5vw,80px); width:100%; max-width:none; }
main[data-vibecms-page="azul_sobre"] .vibe-hero.azul-about-opening .vibe-hero-title { min-width:0; max-width:14ch; font-size:clamp(3rem,7.5vw,6rem); line-height:1.08; padding-block:.06em; text-wrap:balance; transform-origin:center; }
main[data-vibecms-page="azul_sobre"] .vibe-hero.azul-about-opening .vibe-hero-subtitle { min-width:0; max-width:38ch; font-size:clamp(1.125rem,1.8vw,1.5rem); line-height:1.65; text-wrap:pretty; padding-bottom:.3em; }
main[data-vibecms-page="azul_sobre"] .azul-about-opening .vibe-hero-content::after { content:""; grid-column:1/-1; width:100%; height:2px; margin-top:8px; background:var(--azul-blue); transform-origin:center; pointer-events:none; }
main[data-vibecms-page] .azul-about-heading { padding: 64px var(--azul-gutter) 20px; }
main[data-vibecms-page] .azul-about-heading .vibe-heading-text { font-size: clamp(2.25rem,4.8vw,4rem); color: var(--azul-blue); }
main[data-vibecms-page] .azul-about-copy { padding: 0 var(--azul-gutter) 40px; }
main[data-vibecms-page] .azul-about-copy .vibe-prose { font-size: clamp(1.125rem,1.7vw,1.375rem); line-height: 1.65; max-width: 65ch; }
main[data-vibecms-page] .azul-about-note .vibe-card { display: block; padding: 0; border: 0; background: transparent; box-shadow: none; }
main[data-vibecms-page] .azul-about-note .vibe-card-title { color: var(--azul-blue); font-size: clamp(1.75rem,3vw,2.5rem); }
main[data-vibecms-page] .azul-about-note .vibe-card-body { font-size: 1.125rem; line-height: 1.55; }
main[data-vibecms-page] .azul-about-intro-heading { grid-column: 1 / 7; grid-row: 4; align-self: end; }
main[data-vibecms-page] .azul-about-intro-copy { grid-column: 1 / 7; grid-row: 5; padding-bottom: 64px; }
main[data-vibecms-page] .azul-about-intro-photo { grid-column: 7 / -1; grid-row: 4 / 6; padding: 32px var(--azul-gutter) 56px 0; }
main[data-vibecms-page] .azul-about-intro-photo img { width: 100%; height: 100%; min-height: 360px; max-height: 560px; object-fit: cover; aspect-ratio: 4 / 5; }
main[data-vibecms-page] .azul-about-years { padding: 40px var(--azul-gutter); background: var(--azul-deep); color: white; }
main[data-vibecms-page] .azul-about-years .vibe-card { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,2fr); align-items: center; gap: 24px 48px; }
main[data-vibecms-page] .azul-about-years .vibe-card-title { color: white; font-size: clamp(4rem,9vw,6rem); }
main[data-vibecms-page] .azul-about-years .vibe-card-body { color: white; font-size: clamp(1.375rem,2.7vw,2rem); margin: 0; max-width: 30ch; }
main[data-vibecms-page] .azul-about-direction { grid-column: span 6; padding: clamp(48px,5.2vw,80px) var(--azul-gutter); background: var(--azul-paper); }
main[data-vibecms-page] .azul-about-direction .vibe-card { overflow:visible; }
main[data-vibecms-page] .azul-about-direction .vibe-card-title { font-size: clamp(2.5rem,4vw,3.5rem); line-height:1.2; padding-block:.1em; }
main[data-vibecms-page] .azul-about-direction .vibe-card-body { font-size: 1.375rem; max-width: 40ch; }
main[data-vibecms-page] .azul-about-vision { background: var(--azul-blue); color: white; }
main[data-vibecms-page] .azul-about-vision :is(.vibe-card-title,.vibe-card-body) { color: white; }
main[data-vibecms-page] :is(.azul-about-value,.azul-about-commitment) { margin: 0 var(--azul-gutter); padding: 20px 0; border-bottom: 1px solid var(--azul-line); }
main[data-vibecms-page] :is(.azul-about-value,.azul-about-commitment) .vibe-card { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.3fr); gap: 12px 48px; align-items: center; }
main[data-vibecms-page] :is(.azul-about-value,.azul-about-commitment) .vibe-card-body { margin: 0; }
main[data-vibecms-page] .azul-about-value { border-radius:0; }
main[data-vibecms-page] .azul-about-value .vibe-card { padding-block:8px; overflow:visible; }
main[data-vibecms-page] .azul-about-value .vibe-card-title { line-height:1.2; padding-block:.08em; margin:0; }
main[data-vibecms-page] .azul-about-area { grid-column: span 6; padding: 24px var(--azul-gutter) 48px; }
main[data-vibecms-page] .azul-about-area .vibe-card { display: flex; flex-direction: column; gap: 0; height: 100%; color: inherit; }
main[data-vibecms-page] .azul-about-area .vibe-card-image { height: 320px; width: 100%; object-fit: cover; margin-bottom: 24px; }
main[data-vibecms-page] .azul-about-area .vibe-card-title { color: var(--azul-blue); font-size: clamp(2.25rem,3.5vw,3.5rem); }
main[data-vibecms-page] .azul-about-area .vibe-card-link-label { margin-top: auto; padding-top: 24px; }
main[data-vibecms-page] .azul-about-years-counter { background:var(--azul-paper); color:#041f35; }
main[data-vibecms-page] .azul-about-years-counter .vibe-card-title { color:#0261a2; font-variant-numeric:tabular-nums; line-height:1.15; padding-block:.08em; }
main[data-vibecms-page] .azul-about-years-counter .vibe-card-body { color:#183d52; }
main[data-vibecms-page] .azul-about-reason { grid-column: span 4; padding: 24px var(--azul-gutter) 32px; }
main[data-vibecms-page] .azul-about-reason .vibe-card { border-top: 1px solid var(--azul-line); padding-top: 24px; }
main[data-vibecms-page] .azul-about-reason .vibe-card-title { font-family: "Roboto Condensed",Arial,sans-serif; text-transform: none; font-size: 1.5rem; letter-spacing: 0; font-weight: 700; }
main[data-vibecms-page] .azul-about-stories { margin-top: 48px; padding: 64px var(--azul-gutter); background: var(--azul-deep); }
main[data-vibecms-page] .azul-about-stories :is(.vibe-cta-title,.vibe-cta-body) { color: white; }
main[data-vibecms-page] .azul-about-stories .vibe-cta-content { justify-items: start; text-align: left; }
main[data-vibecms-page] .azul-about-stories .vibe-cta-title { max-width: 16ch; }
main[data-vibecms-page] .azul-about-stories .vibe-button { margin-top: 20px; background: white; color: var(--azul-blue); }
main[data-vibecms-page] :is(.azul-about-direction,.azul-about-years,.azul-about-stories) { border-radius: 0; }
/* Wayfinding is a reading aid, with visible destinations rather than more menu items. */
main[data-vibecms-page] :is(.azul-about-index,.azul-resource-navigation) { padding: 20px var(--azul-gutter); border-bottom: 1px solid var(--azul-line); }
main[data-vibecms-page] :is(.azul-about-index,.azul-resource-navigation) .vibe-button-group { display: flex; flex-wrap: wrap; gap: 12px 28px; }
main[data-vibecms-page] :is(.azul-about-index,.azul-resource-navigation,.azul-action-paths,.azul-story-directory) .vibe-button { padding: 12px 0; min-height: 44px; background: transparent; color: var(--azul-blue); border: 0; font-weight: 700; text-decoration: underline; text-underline-offset: 6px; }
main[data-vibecms-page] .azul-home-identity { padding: 48px var(--azul-gutter) 64px; background: var(--azul-paper); }
main[data-vibecms-page] .azul-home-identity .vibe-card { grid-template-columns: minmax(0,1fr) minmax(0,1.1fr); gap: 20px 64px; }
main[data-vibecms-page] .azul-home-identity .vibe-card-title { font-size: clamp(2.5rem,5.5vw,5rem); color: var(--azul-blue); }
main[data-vibecms-page] .azul-home-identity .vibe-card-body { font-size: 1.25rem; line-height: 1.6; }
main[data-vibecms-page] .azul-home-identity .vibe-card-link-label { display: block; padding-top: 20px; }
main[data-vibecms-page] :is(#home_stories_heading,#home_reading) { padding: 56px var(--azul-gutter) 12px; }
main[data-vibecms-page] :is(#home_stories_heading,#home_reading) .vibe-heading-text { font-size: clamp(2.5rem,4.5vw,4rem); color: var(--azul-blue); }
main[data-vibecms-page] #home_stories_heading + #home_abdul { padding-top: 28px; }
main[data-vibecms-page] .azul-action-paths .vibe-button-group { display: flex; flex-wrap: wrap; gap: 12px 36px; }
main[data-vibecms-page] .azul-resource-directory { padding: 20px var(--azul-gutter) 56px; }
main[data-vibecms-page] .azul-resource-directory .vibe-button-group { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 0; border-block: 1px solid var(--azul-line); }
main[data-vibecms-page] .azul-resource-directory .vibe-button { padding: 24px; min-height: 100px; background: transparent; color: var(--azul-blue); font-size: 1.5rem; font-weight: 700; border: 0; }
main[data-vibecms-page] .azul-resource-directory .vibe-button + .vibe-button { border-left: 1px solid var(--azul-line); }
main[data-vibecms-page] .azul-resource-directory .vibe-button:is(:hover,:focus-visible) { background: var(--azul-paper); }
main[data-vibecms-page] .azul-resource-listing .vibe-card { padding-block: 24px; border-block: 1px solid var(--azul-line); }
main[data-vibecms-page] .azul-resource-listing .vibe-card-title { font-size: clamp(2rem,3.8vw,3.5rem); color: var(--azul-blue); }
main[data-vibecms-page] .azul-resource-listing .vibe-card-image { max-height: 420px; object-fit: contain; }
main[data-vibecms-page] .azul-resource-listing .vibe-card:has(> .vibe-card-image) { grid-template-columns: minmax(0,1fr) minmax(0,1.2fr); grid-template-rows: auto auto 1fr; gap: 24px 64px; align-items: start; }
main[data-vibecms-page] .azul-resource-listing .vibe-card-image { grid-column: 1; grid-row: 1 / 4; width: 100%; height: auto; aspect-ratio: 1; object-position: left top; }
main[data-vibecms-page] .azul-resource-listing .vibe-card:has(> .vibe-card-image) :is(.vibe-card-title,.vibe-card-body,.vibe-card-meta) { grid-column: 2; margin: 0; }
main[data-vibecms-page] .azul-resource-listing .vibe-card-meta { font-size: 1rem; color: var(--azul-ink); }
/* The listing carries each story's own image and editorial metadata. */
main[data-vibecms-page="azul_historias"] #historias_contexto { padding-top: 0; }
@media (max-width: 767px) {
  main[data-vibecms-page="azul_sobre"] { display: block; }
  main[data-vibecms-page] .azul-about-heading { padding-top: 40px; }
  main[data-vibecms-page] .azul-about-intro-copy { padding-bottom: 12px; }
  main[data-vibecms-page] .azul-about-intro-photo { padding: 24px var(--azul-gutter) 32px; }
  main[data-vibecms-page] .azul-about-intro-photo img { min-height: 0; max-height: 420px; height: auto; aspect-ratio: 4 / 3; }
  main[data-vibecms-page] :is(.azul-about-years,.azul-about-value,.azul-about-commitment,.azul-home-identity) .vibe-card { grid-template-columns: minmax(0,1fr); gap: 12px; }
  main[data-vibecms-page] .azul-about-area .vibe-card-image { height: 260px; }
  main[data-vibecms-page] .azul-about-reason { padding-block: 12px; }
  main[data-vibecms-page] .azul-resource-directory .vibe-button-group { grid-template-columns: minmax(0,1fr); }
  main[data-vibecms-page] .azul-resource-directory .vibe-button { min-height: 76px; padding: 20px 0; }
  main[data-vibecms-page] .azul-resource-directory .vibe-button + .vibe-button { border-left: 0; border-top: 1px solid var(--azul-line); }
  main[data-vibecms-page] .azul-resource-listing .vibe-card:has(> .vibe-card-image) { grid-template-columns: minmax(0,1fr); grid-template-rows: none; gap: 24px; }
  main[data-vibecms-page] .azul-resource-listing .vibe-card:has(> .vibe-card-image) > :is(.vibe-card-image,.vibe-card-title,.vibe-card-body,.vibe-card-meta) { grid-column: 1; grid-row: auto; }
}
@media (prefers-reduced-motion: no-preference) {
  main[data-vibecms-page="azul_sobre"] .vibe-hero.azul-about-opening .vibe-hero-title[data-vibe-motion-active] { animation:azul-about-identity-open var(--vibe-motion-duration,1100ms) var(--azul-route-ease) both; }
  main[data-vibecms-page="azul_sobre"] .vibe-hero.azul-about-opening .vibe-hero-subtitle[data-vibe-motion-active] { animation:azul-about-identity-copy var(--vibe-motion-duration,800ms) var(--azul-route-ease) var(--vibe-motion-delay,180ms) both; }
  main[data-vibecms-page="azul_sobre"] .azul-about-opening .vibe-hero-content:has(.vibe-hero-title[data-vibe-motion-active])::after { animation:azul-about-identity-line 600ms var(--azul-route-ease) 320ms both; }
  @keyframes azul-about-identity-open { from { clip-path:inset(-.1em 42% -.1em 42%); transform:translateY(12px) scaleX(.96); opacity:.75; } 70% { clip-path:inset(-.1em 0 -.1em); } to { clip-path:inset(-.1em 0 -.1em); transform:translateY(0) scaleX(1); opacity:1; } }
  @keyframes azul-about-identity-copy { from { transform:translateX(var(--azul-about-copy-travel)); opacity:.72; } to { transform:translateX(0); opacity:1; } }
  @keyframes azul-about-identity-line { from { transform:scaleX(.08); opacity:.65; } to { transform:scaleX(1); opacity:1; } }
  main[data-vibecms-page] .azul-resource-directory .vibe-button { transition: background-color 220ms ease-out; }
  main[data-vibecms-page="azul_sobre"] .azul-about-direction.azul-about-note .vibe-card-title[data-vibe-motion-active] { animation:azul-about-direction-title 700ms var(--azul-route-ease) both; }
  main[data-vibecms-page="azul_sobre"] .azul-about-value-sequence [data-vibe-part="card.inner"][data-vibe-motion-active] { animation:azul-about-value-descend var(--vibe-motion-duration,900ms) var(--azul-route-ease) var(--vibe-motion-delay,0ms) both; }
  main[data-vibecms-page="azul_sobre"] .azul-about-area-reveal [data-vibe-part="card.image"][data-vibe-motion-active] { animation:azul-about-area-open var(--vibe-motion-duration,1100ms) var(--azul-route-ease) both; }
  @keyframes azul-about-direction-title { from { transform:translateY(14px); opacity:.7; } to { transform:translateY(0); opacity:1; } }
  /* Never collapse the observed row: a zero intersection would reset native reenter. */
  @keyframes azul-about-value-descend { from { transform:translateY(-24px); opacity:.7; } to { transform:translateY(0); opacity:1; } }
  @keyframes azul-about-area-open { from { clip-path:inset(8%); transform:translateY(28px) scale(1.045); filter:grayscale(.6); opacity:.75; } to { clip-path:inset(0); transform:translateY(0) scale(1); filter:grayscale(0); opacity:1; } }
}
@media(max-width:767px) {
  main[data-vibecms-page="azul_sobre"] .vibe-hero.azul-about-opening { --azul-about-copy-travel:12px; padding-block:40px 28px; }
  main[data-vibecms-page="azul_sobre"] .azul-about-opening .vibe-hero-content { grid-template-columns:minmax(0,1fr); gap:24px; }
  main[data-vibecms-page="azul_sobre"] .vibe-hero.azul-about-opening .vibe-hero-title { font-size:clamp(3rem,12vw,4.5rem); }
  main[data-vibecms-page="azul_sobre"] .vibe-hero.azul-about-opening .vibe-hero-subtitle { max-width:52ch; }
}
@media(prefers-reduced-motion:reduce) {
  main[data-vibecms-page="azul_sobre"] :is(.azul-about-opening .vibe-hero-title,.azul-about-opening .vibe-hero-subtitle),
  main[data-vibecms-page="azul_sobre"] .azul-about-opening .vibe-hero-content::after { animation:none!important; transform:none!important; clip-path:none!important; opacity:1!important; }
  main[data-vibecms-page="azul_sobre"] :is(.azul-about-direction .vibe-card-title,.azul-about-value-sequence .vibe-card,.azul-about-area-reveal .vibe-card-image) { animation:none!important; transform:none!important; filter:none!important; clip-path:none!important; opacity:1!important; }
}
