/* Progressive mobile layout. Desktop dimensions are retained above 1050px. */
.bio-mobile-brand { display: none; }
.bio-nav-disclosure, .bio-primary-nav { margin: 0; padding: 0; border: 0; }
.bio-nav-disclosure > summary { display: none; }

@media (max-width: 1050px) {
  body.bio-page { margin: 0 !important; padding: 0; color: #333; background: #fff; font-family: Verdana, Arial, sans-serif; }
  .bio-shell, .bio-shell > tbody, .bio-row { display: block; width: 100% !important; max-width: 100% !important; margin: 0; box-sizing: border-box; }
  .bio-header, .bio-breadcrumb, .bio-nav-cell, .bio-main, .bio-footer { display: block; width: 100% !important; max-width: 100% !important; height: auto !important; min-width: 0; box-sizing: border-box; }
  .bio-decor, .bio-separator, .bio-ad, .bio-spacer, .bio-layout-ghost { display: none !important; }
  .bio-gallery-top-row { display: flex; flex-direction: column; }
  .bio-gallery-top-row > .bio-breadcrumb { order: 1; }
  .bio-gallery-top-row > .bio-nav-cell { order: 2; }
  .bio-header { background: none !important; padding: 0; }
  .bio-header p { margin: 0; }
  .bio-header img { display: block; width: 100%; max-width: 100%; height: auto !important; }
  .bio-mobile-brand { display: block; padding: .7rem .8rem; color: #064d21 !important; font-size: 1.15rem; font-weight: bold; letter-spacing: .04em; text-decoration: none; background: #f4f8ed; }
  .bio-breadcrumb { padding: .3rem .75rem; white-space: normal !important; overflow-wrap: anywhere; line-height: 1.5; }
  .bio-breadcrumb p { margin: 0; }
  .bio-breadcrumb font { font-size: .8rem !important; }
  .bio-breadcrumb a { display: inline-block; padding: .25rem .1rem; }
  .bio-nav-cell { padding: .4rem .75rem; }
  .bio-nav-disclosure { width: 100%; }
  .bio-nav-disclosure > summary { display: flex; align-items: center; gap: .6rem; box-sizing: border-box; min-height: 46px; padding: .65rem .8rem; border: 1px solid #759b55; border-radius: .25rem; color: #064d21; background: #f4f8ed; font-size: 1rem; font-weight: bold; cursor: pointer; list-style: none; }
  .bio-nav-disclosure > summary::before { content: "\2630"; font-size: 1.2rem; }
  .bio-nav-disclosure > summary::-webkit-details-marker { display: none; }
  .bio-nav-disclosure > summary:focus-visible { outline: 3px solid #006600; outline-offset: 2px; }
  .bio-primary-nav { padding-top: .35rem; }
  .bio-site-nav { width: 100% !important; max-width: 100%; }
  .bio-site-nav td { width: auto !important; height: auto !important; }
  .bio-site-nav ul { margin: 0; padding: 0 .4rem; }
  .bio-site-nav li { margin: 0; list-style: none; }
  .bio-site-nav a { display: flex; align-items: center; box-sizing: border-box; min-height: 44px; padding: .55rem .7rem; font-size: 1rem !important; }
  .bio-site-nav font { font-size: inherit !important; }
  .bio-main { padding: .6rem .75rem 1rem; overflow-x: auto; overflow-wrap: anywhere; font-size: 1rem; line-height: 1.55; }
  .bio-main:focus-visible { outline: 2px solid #006600; outline-offset: -2px; }
  .bio-content-layout { width: 100% !important; max-width: 100% !important; table-layout: fixed; }
  .bio-content-layout > tbody > tr > td, .bio-content-layout > tr > td { width: auto !important; height: auto !important; }
  .bio-main p, .bio-main li, .bio-main .textoconteudo { font-size: 1rem !important; line-height: 1.55 !important; text-indent: 0 !important; text-align: left; }
  .bio-main .textofotos { font-size: .9rem !important; line-height: 1.5 !important; }
  .bio-main .titulo { font-size: 1.15rem !important; line-height: 1.4; letter-spacing: .06em; overflow-wrap: anywhere; }
  .bio-main blockquote { margin: .75rem .5rem; }
  .bio-main img { max-width: 100%; height: auto !important; }
  .bio-photo-grid { display: block; width: 100% !important; }
  .bio-photo-grid > tbody { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .5rem; width: 100%; }
  .bio-photo-grid > tbody > tr { display: table; width: 100%; grid-column: 1 / -1; }
  .bio-photo-grid > tbody > tr.bio-photo-row { display: contents; }
  .bio-photo-grid .bio-photo-row > td { display: block; width: auto !important; max-width: 100%; padding: .2rem; box-sizing: border-box; }
  .bio-photo-grid .bio-photo-row a { display: block; min-height: 44px; }
  .bio-photo-grid .bio-photo-row img { width: 100%; }
  .bio-photo-grid > tbody > tr.bio-photo-captions { display: none; }
  .bio-photo-row > td[data-bio-caption]::after { content: attr(data-bio-caption); display: block; margin-top: .35rem; font-size: .9rem; font-style: italic; overflow-wrap: anywhere; }
  .bio-photo-controls { width: 100% !important; table-layout: fixed; }
  .bio-photo-controls td { width: auto !important; height: auto !important; padding: .25rem; }
  .bio-photo-controls .bio-photo-control-spacer { display: none; }
  .bio-photo-controls a { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; }
  .bio-page ins.adsbygoogle { max-width: 100% !important; overflow: hidden; }
  .bio-page ins.adsbygoogle iframe { max-width: 100% !important; }
  .bio-page ins.adsbygoogle[data-ad-status="unfilled"] { display: none !important; }
  .bio-main [nowrap], .bio-main nobr { white-space: normal !important; }
  .bio-main input, .bio-main textarea, .bio-main select, .bio-main button { max-width: 100%; box-sizing: border-box; font-size: 1rem; }
  .bio-main form table, .bio-main form tbody, .bio-main form tr, .bio-main form td { display: block; width: 100% !important; max-width: 100%; height: auto !important; box-sizing: border-box; }
  .bio-main form td { padding: .25rem 0; }
  .bio-main form label { display: block; font-size: 1rem; }
  .bio-main form tr:has(input[type="submit"]) { display: flex; gap: .5rem; }
  .bio-main form tr:has(input[type="submit"]) > td { width: auto !important; }
  .bio-main input[type="text"], .bio-main input[type="email"], .bio-main textarea { width: 100%; min-width: 0; min-height: 44px; padding: .6rem; }
  .bio-main input[type="submit"], .bio-main input[type="reset"], .bio-main button { min-height: 44px; padding: .5rem .7rem; }
  .bio-main textarea { resize: vertical; }
  .bio-table-scroll { max-width: 100%; overflow-x: auto; overscroll-behavior-inline: contain; -webkit-overflow-scrolling: touch; }
  .bio-table-scroll:focus-visible { outline: 2px solid #006600; outline-offset: 2px; }
  .bio-footer { padding: .75rem; white-space: normal !important; line-height: 1.8; overflow-wrap: anywhere; }
  .bio-footer [nowrap] { white-space: normal !important; }
  .bio-footer a { display: inline-block; padding: .25rem .15rem; }
}
@media (min-width: 600px) and (max-width: 1050px) {
  .bio-photo-grid > tbody { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
