/* Responsive CSS - Media queries consolidadas */

/* Breakpoints principais */
@media screen and (max-width: 1680px) {
  html { font-size: 12pt; }
  
  .row {
    display: flex;
    flex-wrap: wrap;
    box-sizing: border-box;
    align-items: stretch;
  }
  
  .row > * { box-sizing: border-box; }
  
  .row.aln-left { justify-content: flex-start; }
  .row.aln-center { justify-content: center; }
  .row.aln-right { justify-content: flex-end; }
  .row.aln-top { align-items: flex-start; }
  .row.aln-middle { align-items: center; }
  .row.aln-bottom { align-items: flex-end; }
  
  .row > .imp-xlarge { order: -1; }
  
  /* Grid columns xlarge */
  .row > .col-1-xlarge { width: 8.33333%; }
  .row > .col-2-xlarge { width: 16.66667%; }
  .row > .col-3-xlarge { width: 25%; }
  .row > .col-4-xlarge { width: 33.33333%; }
  .row > .col-5-xlarge { width: 41.66667%; }
  .row > .col-6-xlarge { width: 50%; }
  .row > .col-7-xlarge { width: 58.33333%; }
  .row > .col-8-xlarge { width: 66.66667%; }
  .row > .col-9-xlarge { width: 75%; }
  .row > .col-10-xlarge { width: 83.33333%; }
  .row > .col-11-xlarge { width: 91.66667%; }
  .row > .col-12-xlarge { width: 100%; }
  
  /* Offsets xlarge */
  .row > .off-1-xlarge { margin-left: 8.33333%; }
  .row > .off-2-xlarge { margin-left: 16.66667%; }
  .row > .off-3-xlarge { margin-left: 25%; }
  .row > .off-4-xlarge { margin-left: 33.33333%; }
  .row > .off-5-xlarge { margin-left: 41.66667%; }
  .row > .off-6-xlarge { margin-left: 50%; }
  .row > .off-7-xlarge { margin-left: 58.33333%; }
  .row > .off-8-xlarge { margin-left: 66.66667%; }
  .row > .off-9-xlarge { margin-left: 75%; }
  .row > .off-10-xlarge { margin-left: 83.33333%; }
  .row > .off-11-xlarge { margin-left: 91.66667%; }
  .row > .off-12-xlarge { margin-left: 100%; }
  
  /* Gutters */
  .row.gtr-0 { margin-top: 0; margin-left: 0rem; }
  .row.gtr-0 > * { padding: 0 0 0 0rem; }
  .row.gtr-0.gtr-uniform { margin-top: 0rem; }
  .row.gtr-0.gtr-uniform > * { padding-top: 0rem; }
  
  .row.gtr-25 { margin-top: 0; margin-left: -0.375rem; }
  .row.gtr-25 > * { padding: 0 0 0 0.375rem; }
  .row.gtr-25.gtr-uniform { margin-top: -0.375rem; }
  .row.gtr-25.gtr-uniform > * { padding-top: 0.375rem; }
  
  .row.gtr-50 { margin-top: 0; margin-left: -0.75rem; }
  .row.gtr-50 > * { padding: 0 0 0 0.75rem; }
  .row.gtr-50.gtr-uniform { margin-top: -0.75rem; }
  .row.gtr-50.gtr-uniform > * { padding-top: 0.75rem; }
  
  .row { margin-top: 0; margin-left: -1.5rem; }
  .row > * { padding: 0 0 0 1.5rem; }
  .row.gtr-uniform { margin-top: -1.5rem; }
  .row.gtr-uniform > * { padding-top: 1.5rem; }
  
  .row.gtr-150 { margin-top: 0; margin-left: -2.25rem; }
  .row.gtr-150 > * { padding: 0 0 0 2.25rem; }
  .row.gtr-150.gtr-uniform { margin-top: -2.25rem; }
  .row.gtr-150.gtr-uniform > * { padding-top: 2.25rem; }
  
  .row.gtr-200 { margin-top: 0; margin-left: -3rem; }
  .row.gtr-200 > * { padding: 0 0 0 3rem; }
  .row.gtr-200.gtr-uniform { margin-top: -3rem; }
  .row.gtr-200.gtr-uniform > * { padding-top: 3rem; }
}

@media screen and (max-width: 1280px) {
  html { font-size: 11pt; }
  
  .row {
    display: flex;
    flex-wrap: wrap;
    box-sizing: border-box;
    align-items: stretch;
  }
  
  .row > * { box-sizing: border-box; }
  
  .row.aln-left { justify-content: flex-start; }
  .row.aln-center { justify-content: center; }
  .row.aln-right { justify-content: flex-end; }
  .row.aln-top { align-items: flex-start; }
  .row.aln-middle { align-items: center; }
  .row.aln-bottom { align-items: flex-end; }
  
  .row > .imp-large { order: -1; }
  
  /* Grid columns large */
  .row > .col-1-large { width: 8.33333%; }
  .row > .col-2-large { width: 16.66667%; }
  .row > .col-3-large { width: 25%; }
  .row > .col-4-large { width: 33.33333%; }
  .row > .col-5-large { width: 41.66667%; }
  .row > .col-6-large { width: 50%; }
  .row > .col-7-large { width: 58.33333%; }
  .row > .col-8-large { width: 66.66667%; }
  .row > .col-9-large { width: 75%; }
  .row > .col-10-large { width: 83.33333%; }
  .row > .col-11-large { width: 91.66667%; }
  .row > .col-12-large { width: 100%; }
  
  /* Offsets large */
  .row > .off-1-large { margin-left: 8.33333%; }
  .row > .off-2-large { margin-left: 16.66667%; }
  .row > .off-3-large { margin-left: 25%; }
  .row > .off-4-large { margin-left: 33.33333%; }
  .row > .off-5-large { margin-left: 41.66667%; }
  .row > .off-6-large { margin-left: 50%; }
  .row > .off-7-large { margin-left: 58.33333%; }
  .row > .off-8-large { margin-left: 66.66667%; }
  .row > .off-9-large { margin-left: 75%; }
  .row > .off-10-large { margin-left: 83.33333%; }
  .row > .off-11-large { margin-left: 91.66667%; }
  .row > .off-12-large { margin-left: 100%; }
  
  /* Gutters (mesmo padrão) */
  .row.gtr-0 { margin-top: 0; margin-left: 0rem; }
  .row.gtr-0 > * { padding: 0 0 0 0rem; }
  .row.gtr-0.gtr-uniform { margin-top: 0rem; }
  .row.gtr-0.gtr-uniform > * { padding-top: 0rem; }
  
  .row.gtr-25 { margin-top: 0; margin-left: -0.375rem; }
  .row.gtr-25 > * { padding: 0 0 0 0.375rem; }
  .row.gtr-25.gtr-uniform { margin-top: -0.375rem; }
  .row.gtr-25.gtr-uniform > * { padding-top: 0.375rem; }
  
  .row.gtr-50 { margin-top: 0; margin-left: -0.75rem; }
  .row.gtr-50 > * { padding: 0 0 0 0.75rem; }
  .row.gtr-50.gtr-uniform { margin-top: -0.75rem; }
  .row.gtr-50.gtr-uniform > * { padding-top: 0.75rem; }
  
  .row { margin-top: 0; margin-left: -1.5rem; }
  .row > * { padding: 0 0 0 1.5rem; }
  .row.gtr-uniform { margin-top: -1.5rem; }
  .row.gtr-uniform > * { padding-top: 1.5rem; }
  
  .row.gtr-150 { margin-top: 0; margin-left: -2.25rem; }
  .row.gtr-150 > * { padding: 0 0 0 2.25rem; }
  .row.gtr-150.gtr-uniform { margin-top: -2.25rem; }
  .row.gtr-150.gtr-uniform > * { padding-top: 2.25rem; }
  
  .row.gtr-200 { margin-top: 0; margin-left: -3rem; }
  .row.gtr-200 > * { padding: 0 0 0 3rem; }
  .row.gtr-200.gtr-uniform { margin-top: -3rem; }
  .row.gtr-200.gtr-uniform > * { padding-top: 3rem; }
  
  #main > .post { padding: 6rem 4rem 4rem 4rem; }
  #copyright { margin: 4rem auto; }
}

@media screen and (max-width: 980px) {
  .row {
    display: flex;
    flex-wrap: wrap;
    box-sizing: border-box;
    align-items: stretch;
  }
  
  .row > * { box-sizing: border-box; }
  
  .row.aln-left { justify-content: flex-start; }
  .row.aln-center { justify-content: center; }
  .row.aln-right { justify-content: flex-end; }
  .row.aln-top { align-items: flex-start; }
  .row.aln-middle { align-items: center; }
  .row.aln-bottom { align-items: flex-end; }
  
  .row > .imp-medium { order: -1; }
  
  /* Grid columns medium */
  .row > .col-1-medium { width: 8.33333%; }
  .row > .col-2-medium { width: 16.66667%; }
  .row > .col-3-medium { width: 25%; }
  .row > .col-4-medium { width: 33.33333%; }
  .row > .col-5-medium { width: 41.66667%; }
  .row > .col-6-medium { width: 50%; }
  .row > .col-7-medium { width: 58.33333%; }
  .row > .col-8-medium { width: 66.66667%; }
  .row > .col-9-medium { width: 75%; }
  .row > .col-10-medium { width: 83.33333%; }
  .row > .col-11-medium { width: 91.66667%; }
  .row > .col-12-medium { width: 100%; }
  
  /* Offsets medium */
  .row > .off-1-medium { margin-left: 8.33333%; }
  .row > .off-2-medium { margin-left: 16.66667%; }
  .row > .off-3-medium { margin-left: 25%; }
  .row > .off-4-medium { margin-left: 33.33333%; }
  .row > .off-5-medium { margin-left: 41.66667%; }
  .row > .off-6-medium { margin-left: 50%; }
  .row > .off-7-medium { margin-left: 58.33333%; }
  .row > .off-8-medium { margin-left: 66.66667%; }
  .row > .off-9-medium { margin-left: 75%; }
  .row > .off-10-medium { margin-left: 83.33333%; }
  .row > .off-11-medium { margin-left: 91.66667%; }
  .row > .off-12-medium { margin-left: 100%; }
  
  /* Gutters (mesmo padrão) */
  .row.gtr-0 { margin-top: 0; margin-left: 0rem; }
  .row.gtr-0 > * { padding: 0 0 0 0rem; }
  .row.gtr-0.gtr-uniform { margin-top: 0rem; }
  .row.gtr-0.gtr-uniform > * { padding-top: 0rem; }
  
  .row.gtr-25 { margin-top: 0; margin-left: -0.375rem; }
  .row.gtr-25 > * { padding: 0 0 0 0.375rem; }
  .row.gtr-25.gtr-uniform { margin-top: -0.375rem; }
  .row.gtr-25.gtr-uniform > * { padding-top: 0.375rem; }
  
  .row.gtr-50 { margin-top: 0; margin-left: -0.75rem; }
  .row.gtr-50 > * { padding: 0 0 0 0.75rem; }
  .row.gtr-50.gtr-uniform { margin-top: -0.75rem; }
  .row.gtr-50.gtr-uniform > * { padding-top: 0.75rem; }
  
  .row { margin-top: 0; margin-left: -1.5rem; }
  .row > * { padding: 0 0 0 1.5rem; }
  .row.gtr-uniform { margin-top: -1.5rem; }
  .row.gtr-uniform > * { padding-top: 1.5rem; }
  
  .row.gtr-150 { margin-top: 0; margin-left: -2.25rem; }
  .row.gtr-150 > * { padding: 0 0 0 2.25rem; }
  .row.gtr-150.gtr-uniform { margin-top: -2.25rem; }
  .row.gtr-150.gtr-uniform > * { padding-top: 2.25rem; }
  
  .row.gtr-200 { margin-top: 0; margin-left: -3rem; }
  .row.gtr-200 > * { padding: 0 0 0 3rem; }
  .row.gtr-200.gtr-uniform { margin-top: -3rem; }
  .row.gtr-200.gtr-uniform > * { padding-top: 3rem; }
  
  /* Componentes responsivos */
  input[type="submit"],
  input[type="reset"],
  input[type="button"],
  button,
  .button {
    font-size: 0.9rem;
    height: 3.25rem;
    line-height: 3.25rem;
  }
  
  input[type="submit"].large,
  input[type="reset"].large,
  input[type="button"].large,
  button.large,
  .button.large {
    font-size: 1rem;
    height: 3.75rem;
    line-height: 3.75rem;
  }
  
  label { font-size: 0.9rem; }
  
  .pagination a,
  .pagination span {
    font-size: 0.9rem;
  }
  
  header br { display: none; }
  
  #intro {
    padding: 4rem 4rem 2rem 4rem;
    min-height: 90vh;
  }
  
  #intro p br { display: none; }
  
  #intro + #header { margin-top: -14rem; }
  
  #header { height: 14rem; padding-bottom: 4rem; }
  
  #nav { display: none; }
  
  #navPanelToggle { display: block; }
  
  #navPanel { display: block; }
  
  #main > .posts > * {
    width: 50%;
    padding: 2.5rem;
  }
  
  #footer {
    display: block;
  }
  
  #footer > section {
    border-top: solid 2px var(--border-light);
  }
  
  #footer > section:first-child {
    border-top: 0;
  }
  
  #footer > section.split > section {
    padding: 4rem 4rem 2rem 4rem;
  }
  
  #footer > section.split > section:first-child {
    padding: 4rem 4rem 2rem 4rem;
  }
  
  #footer > section.split > section:last-child {
    padding: 4rem 4rem 2rem 4rem;
  }
  
  #footer > section.split.contact > section {
    padding: 4rem;
  }
  
  #footer > section.split.contact > section:first-child {
    padding: 4rem;
  }
  
  #footer > section.split.contact > section:last-child {
    padding: 4rem;
  }
  
  #footer form label,
  #footer h3,
  #footer p {
    font-size: 0.9rem;
  }
  
  body.is-navPanel-visible #wrapper {
    opacity: 0.5;
  }
  
  body.is-navPanel-visible #navPanel {
    -moz-transform: translateX(0);
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
    box-shadow: 0 0 1.5rem 0 rgba(0, 0, 0, 0.2);
    visibility: visible;
  }
}

@media screen and (max-width: 736px) {
  .row {
    display: flex;
    flex-wrap: wrap;
    box-sizing: border-box;
    align-items: stretch;
  }
  
  .row > * { box-sizing: border-box; }
  
  .row.aln-left { justify-content: flex-start; }
  .row.aln-center { justify-content: center; }
  .row.aln-right { justify-content: flex-end; }
  .row.aln-top { align-items: flex-start; }
  .row.aln-middle { align-items: center; }
  .row.aln-bottom { align-items: flex-end; }
  
  .row > .imp-small { order: -1; }
  
  /* Grid columns small */
  .row > .col-1-small { width: 8.33333%; }
  .row > .col-2-small { width: 16.66667%; }
  .row > .col-3-small { width: 25%; }
  .row > .col-4-small { width: 33.33333%; }
  .row > .col-5-small { width: 41.66667%; }
  .row > .col-6-small { width: 50%; }
  .row > .col-7-small { width: 58.33333%; }
  .row > .col-8-small { width: 66.66667%; }
  .row > .col-9-small { width: 75%; }
  .row > .col-10-small { width: 83.33333%; }
  .row > .col-11-small { width: 91.66667%; }
  .row > .col-12-small { width: 100%; }
  
  /* Offsets small */
  .row > .off-1-small { margin-left: 8.33333%; }
  .row > .off-2-small { margin-left: 16.66667%; }
  .row > .off-3-small { margin-left: 25%; }
  .row > .off-4-small { margin-left: 33.33333%; }
  .row > .off-5-small { margin-left: 41.66667%; }
  .row > .off-6-small { margin-left: 50%; }
  .row > .off-7-small { margin-left: 58.33333%; }
  .row > .off-8-small { margin-left: 66.66667%; }
  .row > .off-9-small { margin-left: 75%; }
  .row > .off-10-small { margin-left: 83.33333%; }
  .row > .off-11-small { margin-left: 91.66667%; }
  .row > .off-12-small { margin-left: 100%; }
  
  /* Gutters (mesmo padrão) */
  .row.gtr-0 { margin-top: 0; margin-left: 0rem; }
  .row.gtr-0 > * { padding: 0 0 0 0rem; }
  .row.gtr-0.gtr-uniform { margin-top: 0rem; }
  .row.gtr-0.gtr-uniform > * { padding-top: 0rem; }
  
  .row.gtr-25 { margin-top: 0; margin-left: -0.375rem; }
  .row.gtr-25 > * { padding: 0 0 0 0.375rem; }
  .row.gtr-25.gtr-uniform { margin-top: -0.375rem; }
  .row.gtr-25.gtr-uniform > * { padding-top: 0.375rem; }
  
  .row.gtr-50 { margin-top: 0; margin-left: -0.75rem; }
  .row.gtr-50 > * { padding: 0 0 0 0.75rem; }
  .row.gtr-50.gtr-uniform { margin-top: -0.75rem; }
  .row.gtr-50.gtr-uniform > * { padding-top: 0.75rem; }
  
  .row { margin-top: 0; margin-left: -1.5rem; }
  .row > * { padding: 0 0 0 1.5rem; }
  .row.gtr-uniform { margin-top: -1.5rem; }
  .row.gtr-uniform > * { padding-top: 1.5rem; }
  
  .row.gtr-150 { margin-top: 0; margin-left: -2.25rem; }
  .row.gtr-150 > * { padding: 0 0 0 2.25rem; }
  .row.gtr-150.gtr-uniform { margin-top: -2.25rem; }
  .row.gtr-150.gtr-uniform > * { padding-top: 2.25rem; }
  
  .row.gtr-200 { margin-top: 0; margin-left: -3rem; }
  .row.gtr-200 > * { padding: 0 0 0 3rem; }
  .row.gtr-200.gtr-uniform { margin-top: -3rem; }
  .row.gtr-200.gtr-uniform > * { padding-top: 3rem; }
  
  /* Componentes responsivos */
  ul.actions:not(.fixed) {
    -moz-flex-direction: column;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-left: 0;
    width: 100% !important;
  }
  
  ul.actions:not(.fixed) li {
    -moz-flex-grow: 1;
    -webkit-flex-grow: 1;
    -ms-flex-grow: 1;
    flex-grow: 1;
    -moz-flex-shrink: 1;
    -webkit-flex-shrink: 1;
    -ms-flex-shrink: 1;
    flex-shrink: 1;
    padding: 1rem 0 0 0;
    text-align: center;
    width: 100%;
  }
  
  ul.actions:not(.fixed) li > * {
    width: 100%;
  }
  
  ul.actions:not(.fixed) li:first-child {
    padding-top: 0;
  }
  
  ul.actions:not(.fixed) li input[type="submit"],
  ul.actions:not(.fixed) li input[type="reset"],
  ul.actions:not(.fixed) li input[type="button"],
  ul.actions:not(.fixed) li button,
  ul.actions:not(.fixed) li .button {
    width: 100%;
  }
  
  ul.actions:not(.fixed) li input[type="submit"].icon:before,
  ul.actions:not(.fixed) li input[type="reset"].icon:before,
  ul.actions:not(.fixed) li input[type="button"].icon:before,
  ul.actions:not(.fixed) li button.icon:before,
  ul.actions:not(.fixed) li .button.icon:before {
    margin-left: -0.5rem;
  }
  
  .image.fit { margin: 2rem 0; }
  .image.main { margin: 2rem 0; }
  
  /* Ajustar imagens da página inicial no mobile */
  .idx-boxed-img {
    height: auto;
    width: 100%;
    max-width: 100%;
    object-fit: cover;
  }
  
  header.major { margin: 0 0 2rem 0; }
  
  #intro {
    padding: 3rem 2rem 1rem 2rem;
    min-height: 80vh;
  }
  
  #intro h1 {
    font-size: 3.25rem;
    line-height: 1.1;
    margin-bottom: 1rem;
  }
  
  #intro p {
    font-size: 1rem;
    margin-top: 0rem;
  }
  
  #intro .actions { display: none; }
  
  #header { padding-bottom: 3rem; }
  
  #header .logo {
    font-size: 1.75rem;
    border-width: 3px !important;
  }
  
  #navPanelToggle {
    font-size: 1rem;
    padding: 0.5rem 1.25rem;
    background-color: rgba(255, 255, 255, 0.98);
    color: var(--text-primary);
  }
  
  #navPanelToggle:before {
    font-size: 1.2rem;
  }
  
  #navPanel {
    padding: 2.5rem 1.75rem;
  }
  
  #navPanel .close {
    height: 4rem;
    line-height: 4rem;
  }
  
  #main > .post {
    padding: 4rem 2rem 2rem 2rem;
  }
  
  #main > .post header.major > .date {
    margin-top: -1rem;
    margin-bottom: 2rem;
  }
  
  #main > .post header.major > h1,
  #main > .post header.major h2 {
    font-size: 2.5rem;
    line-height: 1.2;
    margin: 0 0 1.5rem 0;
  }
  
  #main > .posts > * {
    width: 100%;
    padding: 2rem;
  }
  
  #main > .posts > article:nth-child(2n - 1) {
    border-left-width: 2px;
  }
  
  #main > .posts > article:nth-child(-n + 2) {
    border-top-width: 2px;
  }
  
  #main > .posts > article:nth-child(n) {
    border-left-width: 0;
  }
  
  #main > .posts > article:nth-child(-n + 1) {
    border-top-width: 0;
  }
  
  #main > .posts > article .image {
    max-width: 25rem;
    margin-left: auto;
    margin-right: auto;
  }
  
  #main > * {
    padding: 2rem 2rem 0.1rem 2rem;
  }
  
  #footer > section {
    padding: 2rem 2rem 0.1rem 2rem;
  }
  
  #footer > section.split > section {
    padding: 2rem 2rem 0.1rem 2rem;
  }
  
  #footer > section.split > section:first-child {
    padding: 2rem 2rem 0.1rem 2rem;
  }
  
  #footer > section.split > section:last-child {
    padding: 2rem 2rem 0.1rem 2rem;
  }
  
  #footer > section.split.contact > section {
    padding: 2rem;
  }
  
  #footer > section.split.contact > section:first-child {
    padding: 2rem;
  }
  
  #footer > section.split.contact > section:last-child {
    padding: 2rem;
  }
}

@media screen and (max-width: 480px) {
  html { font-size: 10pt; }
  
  .row {
    display: flex;
    flex-wrap: wrap;
    box-sizing: border-box;
    align-items: stretch;
  }
  
  .row > * { box-sizing: border-box; }
  
  .row.aln-left { justify-content: flex-start; }
  .row.aln-center { justify-content: center; }
  .row.aln-right { justify-content: flex-end; }
  .row.aln-top { align-items: flex-start; }
  .row.aln-middle { align-items: center; }
  .row.aln-bottom { align-items: flex-end; }
  
  .row > .imp-xsmall { order: -1; }
  
  /* Grid columns xsmall */
  .row > .col-1-xsmall { width: 8.33333%; }
  .row > .col-2-xsmall { width: 16.66667%; }
  .row > .col-3-xsmall { width: 25%; }
  .row > .col-4-xsmall { width: 33.33333%; }
  .row > .col-5-xsmall { width: 41.66667%; }
  .row > .col-6-xsmall { width: 50%; }
  .row > .col-7-xsmall { width: 58.33333%; }
  .row > .col-8-xsmall { width: 66.66667%; }
  .row > .col-9-xsmall { width: 75%; }
  .row > .col-10-xsmall { width: 83.33333%; }
  .row > .col-11-xsmall { width: 91.66667%; }
  .row > .col-12-xsmall { width: 100%; }
  
  /* Offsets xsmall */
  .row > .off-1-xsmall { margin-left: 8.33333%; }
  .row > .off-2-xsmall { margin-left: 16.66667%; }
  .row > .off-3-xsmall { margin-left: 25%; }
  .row > .off-4-xsmall { margin-left: 33.33333%; }
  .row > .off-5-xsmall { margin-left: 41.66667%; }
  .row > .off-6-xsmall { margin-left: 50%; }
  .row > .off-7-xsmall { margin-left: 58.33333%; }
  .row > .off-8-xsmall { margin-left: 66.66667%; }
  .row > .off-9-xsmall { margin-left: 75%; }
  .row > .off-10-xsmall { margin-left: 83.33333%; }
  .row > .off-11-xsmall { margin-left: 91.66667%; }
  .row > .off-12-xsmall { margin-left: 100%; }
  
  /* Gutters (mesmo padrão) */
  .row.gtr-0 { margin-top: 0; margin-left: 0rem; }
  .row.gtr-0 > * { padding: 0 0 0 0rem; }
  .row.gtr-0.gtr-uniform { margin-top: 0rem; }
  .row.gtr-0.gtr-uniform > * { padding-top: 0rem; }
  
  .row.gtr-25 { margin-top: 0; margin-left: -0.375rem; }
  .row.gtr-25 > * { padding: 0 0 0 0.375rem; }
  .row.gtr-25.gtr-uniform { margin-top: -0.375rem; }
  .row.gtr-25.gtr-uniform > * { padding-top: 0.375rem; }
  
  .row.gtr-50 { margin-top: 0; margin-left: -0.75rem; }
  .row.gtr-50 > * { padding: 0 0 0 0.75rem; }
  .row.gtr-50.gtr-uniform { margin-top: -0.75rem; }
  .row.gtr-50.gtr-uniform > * { padding-top: 0.75rem; }
  
  .row { margin-top: 0; margin-left: -1.5rem; }
  .row > * { padding: 0 0 0 1.5rem; }
  .row.gtr-uniform { margin-top: -1.5rem; }
  .row.gtr-uniform > * { padding-top: 1.5rem; }
  
  .row.gtr-150 { margin-top: 0; margin-left: -2.25rem; }
  .row.gtr-150 > * { padding: 0 0 0 2.25rem; }
  .row.gtr-150.gtr-uniform { margin-top: -2.25rem; }
  .row.gtr-150.gtr-uniform > * { padding-top: 2.25rem; }
  
  .row.gtr-200 { margin-top: 0; margin-left: -3rem; }
  .row.gtr-200 > * { padding: 0 0 0 3rem; }
  .row.gtr-200.gtr-uniform { margin-top: -3rem; }
  .row.gtr-200.gtr-uniform > * { padding-top: 3rem; }
  
  /* Componentes responsivos */
  form > .fields {
    width: calc(100% + 3rem);
    margin: -1.5rem 0 2rem -1.5rem;
  }
  
  form > .fields > .field {
    padding: 1.5rem 0 0 1.5rem;
    width: calc(100% - 1.5rem);
  }
  
  form > .fields > .field.half {
    width: calc(100% - 1.5rem);
  }
  
  form > .fields > .field.third {
    width: calc(100% - 1.5rem);
  }
  
  form > .fields > .field.quarter {
    width: calc(100% - 1.5rem);
  }
  
  .pagination .page,
  .pagination .extra {
    display: none;
  }
  
  #main { width: 100%; }
  #footer { width: 100%; }
  
  #copyright ul li {
    border-left: 0;
    margin: 1rem 0 0 0;
    padding-left: 0;
    display: block;
  }
  
  #copyright ul li:first-child {
    margin-top: 0;
  }
  
  /* Ajustar imagens da página inicial em telas muito pequenas */
  .idx-boxed-img {
    height: auto;
    width: 100%;
    max-width: 100%;
    object-fit: cover;
    margin: 1rem 0;
  }
}

@media screen and (max-width: 360px) {
  html { font-size: 10pt; }
  
  .row {
    display: flex;
    flex-wrap: wrap;
    box-sizing: border-box;
    align-items: stretch;
  }
  
  .row > * { box-sizing: border-box; }
  
  .row.aln-left { justify-content: flex-start; }
  .row.aln-center { justify-content: center; }
  .row.aln-right { justify-content: flex-end; }
  .row.aln-top { align-items: flex-start; }
  .row.aln-middle { align-items: center; }
  .row.aln-bottom { align-items: flex-end; }
  
  .row > .imp-xxsmall { order: -1; }
  
  /* Grid columns xxsmall */
  .row > .col-1-xxsmall { width: 8.33333%; }
  .row > .col-2-xxsmall { width: 16.66667%; }
  .row > .col-3-xxsmall { width: 25%; }
  .row > .col-4-xxsmall { width: 33.33333%; }
  .row > .col-5-xxsmall { width: 41.66667%; }
  .row > .col-6-xxsmall { width: 50%; }
  .row > .col-7-xxsmall { width: 58.33333%; }
  .row > .col-8-xxsmall { width: 66.66667%; }
  .row > .col-9-xxsmall { width: 75%; }
  .row > .col-10-xxsmall { width: 83.33333%; }
  .row > .col-11-xxsmall { width: 91.66667%; }
  .row > .col-12-xxsmall { width: 100%; }
  
  /* Offsets xxsmall */
  .row > .off-1-xxsmall { margin-left: 8.33333%; }
  .row > .off-2-xxsmall { margin-left: 16.66667%; }
  .row > .off-3-xxsmall { margin-left: 25%; }
  .row > .off-4-xxsmall { margin-left: 33.33333%; }
  .row > .off-5-xxsmall { margin-left: 41.66667%; }
  .row > .off-6-xxsmall { margin-left: 50%; }
  .row > .off-7-xxsmall { margin-left: 58.33333%; }
  .row > .off-8-xxsmall { margin-left: 66.66667%; }
  .row > .off-9-xxsmall { margin-left: 75%; }
  .row > .off-10-xxsmall { margin-left: 83.33333%; }
  .row > .off-11-xxsmall { margin-left: 91.66667%; }
  .row > .off-12-xxsmall { margin-left: 100%; }
  
  /* Gutters (mesmo padrão) */
  .row.gtr-0 { margin-top: 0; margin-left: 0rem; }
  .row.gtr-0 > * { padding: 0 0 0 0rem; }
  .row.gtr-0.gtr-uniform { margin-top: 0rem; }
  .row.gtr-0.gtr-uniform > * { padding-top: 0rem; }
  
  .row.gtr-25 { margin-top: 0; margin-left: -0.375rem; }
  .row.gtr-25 > * { padding: 0 0 0 0.375rem; }
  .row.gtr-25.gtr-uniform { margin-top: -0.375rem; }
  .row.gtr-25.gtr-uniform > * { padding-top: 0.375rem; }
  
  .row.gtr-50 { margin-top: 0; margin-left: -0.75rem; }
  .row.gtr-50 > * { padding: 0 0 0 0.75rem; }
  .row.gtr-50.gtr-uniform { margin-top: -0.75rem; }
  .row.gtr-50.gtr-uniform > * { padding-top: 0.75rem; }
  
  .row { margin-top: 0; margin-left: -1.5rem; }
  .row > * { padding: 0 0 0 1.5rem; }
  .row.gtr-uniform { margin-top: -1.5rem; }
  .row.gtr-uniform > * { padding-top: 1.5rem; }
  
  .row.gtr-150 { margin-top: 0; margin-left: -2.25rem; }
  .row.gtr-150 > * { padding: 0 0 0 2.25rem; }
  .row.gtr-150.gtr-uniform { margin-top: -2.25rem; }
  .row.gtr-150.gtr-uniform > * { padding-top: 2.25rem; }
  
  .row.gtr-200 { margin-top: 0; margin-left: -3rem; }
  .row.gtr-200 > * { padding: 0 0 0 3rem; }
  .row.gtr-200.gtr-uniform { margin-top: -3rem; }
  .row.gtr-200.gtr-uniform > * { padding-top: 3rem; }
}

/* Orientação portrait */
@media screen and (orientation: portrait) {
  #wrapper > .bg {
    background-size:
      auto,
      auto,
      auto 175%;
  }
}

/* Redução de movimento */
@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
  
  .idx-boxed-img:hover {
    transform: none;
  }
  
  .button:hover {
    transform: none;
  }
  
  .platform-card {
    transition: none;
  }
  
  .platform-card:hover {
    transform: none;
  }
  
  .platform-card:hover {
    transform: none;
  }
  
  .instance-card {
    transition: none;
  }
  
  .instance-card:hover {
    transform: none;
  }
  
  .instance-card-link:hover {
    transform: none;
  }
  
  .instances-spinner {
    animation: none;
    border-top-color: var(--primary-color-light);
  }
  
  /* Ajustar imagens da página inicial em telas extra pequenas */
  .idx-boxed-img {
    height: auto;
    width: 100%;
    max-width: 100%;
    object-fit: cover;
    margin: 0.5rem 0;
  }
}
