/*************************************************************/
/*************************************************************/
/************************************************************* STYLEGUIDE INSTRUCTIONS / INSTRUÇÕES DO GUIA DE ESTILO */
/*************************************************************/
/*************************************************************/
/*
 * ENGLISH:
 * This CSS file is organized for clarity, maintainability, and consistency. Future developers must follow these guidelines:
 *
 * 1. **File Structure**:
 *    - Retain section divisions (e.g., VARIÁVEIS, RESET, CUSTOM) using the highlighted-large comment block format.
 *    - Group related selectors under descriptive section headers. Add new sections with matching comment style if needed.
 *
 * 2. **Selector Organization**:
 *    - Order properties within selectors as follows:
 *      a. **Box Model**: width, height, margin, padding, border, etc.
 *      b. **Positioning**: position, top, left, right, bottom, z-index, transform, etc.
 *      c. **Layout**: display, flex, grid, align-items, justify-content, gap, etc.
 *      d. **Typography**: font, font-size, font-weight, line-height, text-align, text-transform, etc.
 *      e. **Visuals**: background, color, opacity, filter, box-shadow, etc.
 *      f. **Transitions/Interactions**: transition, animation, cursor, pointer-events, user-select, etc.
 *    - Separate groups with a blank line for readability.
 *
 * 3. **Formatting Rules**:
 *    - Use consistent indentation (2 spaces or 1 tab) for nested selectors and properties.
 *    - Place each property on a new line.
 *    - Preserve existing comment formatting; do not alter or remove comments unless updating their content.
 *    - Define reusable values as CSS custom properties (e.g., --spacer, --color-0) in the :root selector.
 *
 * 4. **Media Queries and Pseudo-Classes**:
 *    - Place media queries immediately after relevant selectors, maintaining the same property order.
 *    - Apply the same property grouping to pseudo-classes (e.g., :hover) and nested selectors.
 *
 * 5. **Best Practices**:
 *    - Avoid inline styles or !important unless essential.
 *    - Keep specificity low, preferring class-based selectors over IDs.
 *    - Test changes across breakpoints for responsiveness.
 *    - Document new sections or complex logic with clear comments.
 *
 * PORTUGUÊS:
 * Este arquivo CSS está organizado para garantir clareza, manutenibilidade e consistência. Desenvolvedores futuros devem seguir estas diretrizes:
 *
 * 1. **Estrutura do Arquivo**:
 *    - Mantenha as divisões de seções (ex.: VARIÁVEIS, RESET, CUSTOM) usando o formato de comentário multiline em destaque.
 *    - Agrupe seletores relacionados sob cabeçalhos de seção descritivos. Crie novas seções com o mesmo estilo de comentário, se necessário.
 *
 * 2. **Organização dos Seletores**:
 *    - Ordene as propriedades dentro dos seletores na seguinte sequência:
 *      a. **Modelo de Caixa**: width, height, margin, padding, border, etc.
 *      b. **Posicionamento**: position, top, left, right, bottom, z-index, transform, etc.
 *      c. **Layout**: display, flex, grid, align-items, justify-content, gap, etc.
 *      d. **Tipografia**: font, font-size, font-weight, line-height, text-align, text-transform, etc.
 *      e. **Visuais**: background, color, opacity, filter, box-shadow, etc.
 *      f. **Transições/Interações**: transition, animation, cursor, pointer-events, user-select, etc.
 *    - Separe grupos com uma linha em branco para legibilidade.
 *
 * 3. **Regras de Formatação**:
 *    - Use indentação consistente (2 espaços ou 1 tabulação) para seletores aninhados e propriedades.
 *    - Coloque cada propriedade em uma nova linha.
 *    - Preserve o formato dos comentários existentes; não altere ou remova comentários, exceto para atualizar seu conteúdo.
 *    - Defina valores reutilizáveis como propriedades personalizadas CSS (ex.: --spacer, --color-0) no seletor :root.
 *
 * 4. **Consultas de Mídia e Pseudo-Classes**:
 *    - Posicione consultas de mídia imediatamente após os seletores relevantes, mantendo a mesma ordem de propriedades.
 *    - Aplique o mesmo agrupamento de propriedades a pseudo-classes (ex.: :hover) e seletores aninhados.
 *
 * 5. **Melhores Práticas**:
 *    - Evite estilos inline ou !important, salvo quando indispensável.
 *    - Mantenha a especificidade baixa, preferindo seletores baseados em classes em vez de IDs.
 *    - Teste alterações em diferentes pontos de quebra para garantir responsividade.
 *    - Documente novas seções ou lógicas complexas com comentários claros.
 *
 * Adhering to these guidelines ensures a scalable and maintainable codebase.
 * Seguir estas diretrizes garante um código escalável e de fácil manutenção.
 */

/*************************************************************/
/*************************************************************/
/************************************************************* VARIÁVEIS */
/*************************************************************/
/*************************************************************/
:root {
    /* Spacing */
    --spacer: 15px;
    
    /* Colors */
    --color-0: #242424;
    --color-1: #fff;
    --color-2: #daa116;
    --color-3: #ff3040;
    --color-4: #1b1b1b;
    
    /* Typography */
    --font-body: 'Source Sans Pro', sans-serif;
    --font-heading: 'Open Sans Condensed', sans-serif;
    
    /* Borders */
    --thin-border: 1px solid rgba(255,255,255,0.25);
}

/*************************************************************/
/*************************************************************/
/************************************************************* RESET */
/*************************************************************/
/*************************************************************/
*,
*::before,
*::after {
    /* Box model */
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    /* Typography */
    font-size: 100%;
    line-height: 1.25;
    font-family: var(--font-body);
    
    /* Rendering */
    -webkit-text-size-adjust: 100%;
}

body {
    /* Visuals */
    background-color: var(--color-0);
    color: var(--color-1);
    
    /* Rendering */
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

input,
button,
select,
textarea {
    /* Box model */
    margin: 0;
    padding: 0;
    border: none;
    
    /* Typography */
    font: inherit;
    color: inherit;
    
    /* Visuals */
    background: none;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}

input[type="text"],
input[type="search"],
input[type="email"],
input[type="password"],
textarea {
    /* Box model */
    width: 100%;
    border: none;
    outline: none;
    box-shadow: none;
    
    /* Typography */
    font: inherit;
    color: inherit;
    
    /* Visuals */
    all: unset; /* zera tudo, exceto display */
    background: none;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}

input[type="search"] {
    width: 100%;
}

ul,
ol {
    /* List */
    list-style: none;
}

a {
    /* Typography */
    color: inherit;
    text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    /* Typography */
    font-family: var(--font-heading);
}

/*************************************************************/
/*************************************************************/
/************************************************************* CUSTOM */
/*************************************************************/
/*************************************************************/
html {
    /* Behavior */
    scroll-behavior: smooth;
}

.container-main {
    /* Box model */
    width: 100%;
    height: 100%;
    min-height: 100vh;
    
    /* Layout */
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.container-main > main {
    /* Layout */
    flex-shrink: 1;
}

.container-main > footer {
    /* Layout */
    flex-shrink: 0;
}

header.header-main .boxed {    
    /* Layout */
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

.site-logo .logo-icon {
    /* Box model */
    width: 5vw;
    max-width: 60px;
    min-width: 40px;
    height: auto;
}

.boxed {
    /* Box model */
    max-width: 1410px;
    margin: 0 auto;
    padding: var(--spacer);
    
    /* Transitions */
    transition: all 0.3s ease;
}

.header-main nav ul {
    /* Layout */
    display: flex;
    gap: var(--spacer);
}

.header-main nav ul li {
    /* Typography */
    color: var(--color-1);
    
    /* Visuals */
    opacity: 0.3;
    
    /* Transitions */
    transition: all 0.45s ease-in-out;
}

.header-main nav ul li.current-menu-item,
.header-main nav ul li:hover {
    /* Typography */
    color: var(--color-2);
    
    /* Visuals */
    opacity: 1;
}

.header-main nav ul li a {
    /* Box model */
    display: block;
    
    /* Typography */
    font-family: var(--font-heading);
    font-weight: 700;
    font-size: 0.8rem;
    text-transform: uppercase;
}

@media (min-width: 1000px) {
    .header-main nav ul li a {
        /* Typography */
        font-size: 1.25rem;
    }
}

/*************************************************************/
/*************************************************************/
/************************************************************* STICK HEADER */
/*************************************************************/
/*************************************************************/
header.header-main {
    /* Positioning */
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999;
    
    /* Box model */
    width: 100%;
    padding: var(--spacer) 0;
    
    /* Visuals */
    background-color: var(--color-0);
    box-shadow: none;
    
    /* Transitions */
    transform: translateY(0);
    transition: transform 0.75s ease, box-shadow 0.75s ease;
}

/* Apenas controle de transição com rolagem */
header.header-main.is-hidden {
    /* Transitions */
    transform: translateY(-100%);
}

/* Sombra apenas quando o conteúdo passa por baixo */
header.header-main.has-shadow {
    /* Visuals */
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
}

header.header-main.has-shadow.is-fixed {
    /* Visuals */
    box-shadow: 0 0 0 rgba(0, 0, 0, 0);
}

/*************************************************************/
/*************************************************************/
/************************************************************* HEADER ELEMENTS > FILTERING */
/*************************************************************/
/*************************************************************/
.header-elements {
    /* Positioning */
    position: relative;
    
    /* Box model */
    margin-bottom: calc(var(--spacer) * 2);
}

.entry-header {
    /* Box model */
    padding-bottom: var(--spacer);
}

.gallery-filter {
    /* Positioning */
    position: relative;
}

.icon-filter {
    /* Positioning */
    position: absolute;
    left: -4px;
    top: 50%;
    transform: translateY(-50%);
    
    /* Visuals */
    fill: var(--color-1);
    opacity: 0.35;
}

.icon-filter.enabled {
    /* Visuals */
    fill: var(--color-2);
    opacity: 1;
}

.button-filter {
    /* Positioning */
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    
    /* Box model */
    padding: 0 10px;
    border-radius: 9px;
    
    /* Typography */
    font-family: var(--font-heading);
    font-size: 0.6em;
    font-weight: 700;
    line-height: 18px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    
    /* Visuals */
    background: var(--color-2);
    color: var(--color-1);
    opacity: 1;
}

.button-filter.disabled {
    /* Visuals */
    background: var(--color-1);
    color: var(--color-0);
    opacity: 0.35;
}

#gallery-search {
    /* Box model */
    padding-left: calc(var(--spacer) * 2);
    border-bottom: var(--thin-border);
    box-sizing: border-box;
    
    /* Typography */
    font-size: 0.8em;
    line-height: 2.5em;
    color: var(--color-1);
    
    /* Visuals */
    background: transparent;
}

.unmatched {
    /* Layout */
    display: none;
}

/*************************************************************/
/*************************************************************/
/************************************************************* GALERIA DE IMAGENS : FEED */
/*************************************************************/
/*************************************************************/
.gallery-grid {
    /* Positioning */
    position: relative;
    
    /* Layout */
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: calc(var(--spacer) / 3);
}

.gallery-grid .entry-header {
    grid-column: 1 / -1;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-bottom: calc(var(--spacer) * 2);
}

.gallery-grid .entry-header .button-filter {
    position: relative;
    padding: 0 15px;
    border-radius: 13px;
    font-family: var(--font-heading);
    font-size: 0.9em;
    font-weight: 700;
    line-height: 26px;
    cursor: pointer;
}

.spinner {
    display: none;
    width: 16px;
    height: 16px;
    border: 2px solid rgba(255,255,255,0.3);
    border-top-color: #fff;
    border-radius: 50%;
    animation: spin 0.8s linear infinite;
    margin-left: 8px;
    vertical-align: middle;
}

@keyframes spin {
    to { transform: rotate(360deg); }
}


@media (min-width: 600px) {
    .gallery-grid {
        /* Layout */
        grid-template-columns: repeat(4, 1fr);
    }
}

@media (min-width: 1000px) {
    .gallery-grid {
        /* Layout */
        grid-template-columns: repeat(5, 1fr);
    }
}

.gallery-item {
    /* Positioning */
    position: relative;
    
    /* Box model */
    aspect-ratio: 3 / 4;
    overflow: hidden;
    
    /* Visuals */
    background-color: #000; /* fallback se a imagem não carregar */
    
    /* Interaction */
    cursor: pointer;
}

/* Infinite Scroll: Estilo inicial aplicado via JS */
.gallery-item.fade-in {
    /* Visuals */
    opacity: 0;
    
    /* Transitions */
    transform: translateY(20px);
    transition: opacity 0.4s ease, transform 0.4s ease;
}

/* Infinite Scroll: Quando ativado */
.gallery-item.show {
    /* Visuals */
    opacity: 1;
    
    /* Transitions */
    transform: translateY(0);
}

.gallery-images {
    /* Positioning */
    position: absolute;
    
    /* Box model */
    width: 0;
    height: 0;
    overflow: hidden;
    
    /* Visuals */
    opacity: 0;
}

.gallery-item img {
    /* Box model */
    display: block;
    width: 100%;
    height: 100%;
    
    /* Visuals */
    object-fit: cover;
    object-position: center;
}

@media (hover: hover) and (pointer: fine) {
    .gallery-item img {
        /* Visuals */
        filter: grayscale(0%);
        transform: scale(1);
        
        /* Transitions */
        transition-property: filter, transform;
        transition-duration: 0.75s, 0.75s;
        transition-timing-function: ease, ease;
    }

    .gallery-item:hover img {
        /* Visuals */
        filter: grayscale(0%);
        transform: scale(1.03);
        
        /* Transitions */
        transition-duration: 0.3s, 0.3s;
    }
}

.gallery-icon {
    /* Positioning */
    position: absolute;
    top: 5px;
    right: 5px;
    
    /* Box model */
    width: 18px;
    height: 18px;
    
    /* Visuals */
    fill: #fff;
    opacity: 0.85;
    
    /* Interaction */
    pointer-events: none;
    
    /* Transitions */
    transition: opacity 0.3s ease;
}

.gallery-item:hover .gallery-icon {
    /* Visuals */
    opacity: 1;
}

.gallery-meta {
    /* Positioning */
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    
    /* Layout */
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    
    /* Box model */
    padding: calc(var(--spacer) / 3);
    
    /* Visuals */
    background: linear-gradient(to top, #000 5%, rgba(0, 0, 0, 0) 30%);
    color: var(--color-1);
    
    /* Typography */
    font-size: 0.9rem;
}

.gallery-title {
    /* Box model */
    margin: 0.25em 0 0 0;
    max-height: calc(1.15em * 2); /* 3 linhas */
    
    /* Typography */
    font-weight: 700;
    font-size: 0.75rem;
    line-height: 1;
    line-clamp: 2;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    
    /* Visuals */
    overflow: hidden;
    text-overflow: ellipsis;
}

.gallery-title:not(.lowercase) {
    /* Typography */
    text-transform: uppercase;
}

.gallery-meta time,
.gallery-meta .small {
    /* Box model */
    max-height: 1.25em; /* 1 linha */
    
    /* Layout */
    display: block;
    
    /* Typography */
    font-size: 0.6rem;
    line-clamp: 1;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    
    /* Visuals */
    opacity: 0.8;
    overflow: hidden;
    text-overflow: ellipsis;
}

@media (min-width: 1000px) {
    .gallery-title {
        /* Box model */
        max-height: calc(1.15em * 3);
        
        /* Typography */
        font-size: 1rem;
        line-height: 1.15;
        line-clamp: 3;
        -webkit-line-clamp: 3;
    }
    
    .gallery-meta time,
    .gallery-meta .small {
        /* Typography */
        font-size: 0.75rem;
    }
}

/*************************************************************/
/*************************************************************/
/************************************************************* GALERIA PRINCIPAL : DEFAULT (Textos) */
/*************************************************************/
/*************************************************************/
.default-item > a {
    /* Box model */
    width: 100%;
    height: 100%;
    padding: 5px;
    
    /* Layout */
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.default-item > a > svg {
    /* Box model */
    width: 24px;
    height: auto;
    margin-top: -29px;
}

.default-item > a > em {
    /* Box model */
    margin-top: 5px;
    max-height: calc(1.25em * 4); /* 4 linhas */
    
    /* Typography */
    font-size: 60%;
    line-clamp: 4;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    
    /* Visuals */
    color: var(--color-2);
    overflow: hidden;
    text-overflow: ellipsis;
}

.logo-icon {
    /* Visuals */
    color: rgba(255,255,255,0.25);
}

@media (min-width: 1000px) {
    .gallery-icon {
        /* Positioning */
        top: var(--spacer);
        right: var(--spacer);
        
        /* Box model */
        width: 24px;
        height: 24px;
    }
    
    .gallery-meta {
        /* Box model */
        padding: var(--spacer);
    }
    
    .gallery-title {
        /* Typography */
        font-size: 1rem;
        line-height: 1.15;
    }
    
    .gallery-meta time,
    .gallery-meta .small {
        /* Typography */
        font-size: 0.75rem;
    }
    
    .default-item > a {
        /* Box model */
        padding: var(--spacer);
    }
    
    .default-item > a > em {
        /* Typography */
        font-size: 85%;
    }
    
    .default-item > a > svg {
        /* Box model */
        width: 36px;
        margin-top: -41px;
    }
}

/*************************************************************/
/*************************************************************/
/************************************************************* CUSTOM SWIPPER LIGHTBOX */
/*************************************************************/
/*************************************************************/
.blurred {
    /* Visuals */
    filter: blur(5px);
}

.swiper,
.swiper-slide,
.swiper-slide img {
    /* Interaction */
    user-select: none;
    -webkit-user-select: none; /* Safari */
    -moz-user-select: none;    /* Firefox */
    -ms-user-select: none;     /* IE10+/Edge */
}

.swiper {
    /* Positioning */
    position: absolute;
    
    /* Box model */
    width: 100%;
}

.swiper-wrapper,
.swiper-slide {
    /* Box model */
    width: 100%;
}

.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
    /* Interaction */
    pointer-events: fill; /* Substitui none nativo. Importante para o correto funcionamento */
}

.swiper-lightbox {
    /* Positioning */
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    
    /* Box model */
    width: 100vw;
    height: 100vh;
    overflow: hidden;
    
    /* Layout */
    align-items: center;
    
    /* Visuals */
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    
    /* Transitions */
    transition: opacity 0.3s ease;
}

.swiper-slide {
    /* Box model */
    height: 95vh; /* altura da tela */
    overflow: hidden;
    
    /* Layout */
    display: flex;
    justify-content: center;
    align-items: center;
}

.swiper-slide button.swiper-button-hidden-close {
    /* Positioning */
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 0;
    
    /* Box model */
    display: block;
    
    /* Visuals */
    background: transparent;
}

.swiper-slide img {
    /* Box model */
    max-width: 100%;
    max-height: 100vh;
    width: auto;
    height: auto;
    
    /* Visuals */
    object-fit: contain;
    outline: none;
    
    /* Positioning */
    z-index: 1;
}

.swiper-button-prev::after,
.swiper-button-next::after {
    /* Box model */
    display: none;
    content: none;
}

.swiper-button-prev svg,
.swiper-button-next svg {
    /* Box model */
    width: 24px;
    height: 24px;
    
    /* Visuals */
    fill: white; /* ou a cor desejada */
}

.swiper-button-prev,
.swiper-button-next,
.swiper-button-close {
    /* Positioning */
    z-index: 20;
    
    /* Box model */
    width: 24px;
    height: 24px;
}

.swiper-button-close svg {
    /* Positioning */
    position: absolute;
    top: var(--spacer);
    right: var(--spacer);
    
    /* Box model */
    width: 30px;
    height: 30px;
    
    /* Visuals */
    fill: var(--color-1);
    
    /* Interaction */
    cursor: pointer;
}

.swiper-button-close:hover svg {
    /* Visuals */
    fill: var(--color-2);
}

/*************************************************************/
/*************************************************************/
/************************************************************* LIKE/DISLIKE (Implementação futura) */
/*************************************************************/
/*************************************************************/
@keyframes pulse {
    0% {
        transform: scale(1);
    }
    25% {
        transform: scale(1.2);
    }
    50% {
        transform: scale(0.95);
    }
    100% {
        transform: scale(1);
    }
}

/* Não implementado nessa versão
.pulse-animation {
    animation-name: pulse;
    animation-duration: 0.45s;
    animation-timing-function: ease-in-out;
}

.like {
    position: absolute;
    bottom: var(--spacer);
    right: var(--spacer);
    z-index: 1;
    display: block;
    width: 24px;
    height: 24px;
    overflow: hidden;
}

.gallery-icon-like,
.gallery-icon-dislike {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 24px;
    height: 24px;
}

.gallery-icon-like {
    fill: var(--color-1);
}

.gallery-icon-dislike {
    fill: var(--color-3);
    display: none;
}
*/

/*************************************************************/
/*************************************************************/
/************************************************************* FORMATAÇÃO PADRÃO PARA CONTEÚDO NATIVO WP */
/*************************************************************/
/*************************************************************/
.entry-content {
    /* Box model */
    width: 100%;
    max-width: 100%;
    margin-bottom: calc(var(--spacer) * 2);
    
    /* Typography */
    font-size: 1rem;
    line-height: 1.6;
    color: #fff;
}

/* Títulos */
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6 {
    /* Box model */
    margin-bottom: 0.5em;
    /* margin-top: 2em; */
    
    /* Typography */
    font-weight: 700;
    line-height: 1.2;
}

.entry-content h1,
.entry-title {
    /* Typography */
    font-size: 2rem;
}

.entry-content h2 {
    /* Typography */
    font-size: 1.75rem;
}

.entry-content h3 {
    /* Typography */
    font-size: 1.5rem;
}

.entry-content h4 {
    /* Typography */
    font-size: 1.25rem;
}

.entry-content h5 {
    /* Typography */
    font-size: 1rem;
}

.entry-content h6 {
    /* Typography */
    font-size: 0.875rem;
}

.entry-title {
    /* Typography */
    text-transform: uppercase;
    color: var(--color-2);
}

.entry-title em {
    /* Typography */
    text-transform: initial;
    color: var(--color-1);
}

.entry-date {
    /* Typography */
    font-size: small;
    
    /* Visuals */
    opacity: 0.5;
}

/* Parágrafos */
.entry-content p {
    /* Box model */
    margin-bottom: 1.5em;
}

/* Links */
.entry-content a {
    /* Typography */
    color: #88c0d0;
    text-decoration: underline;
}

.entry-content a:hover {
    /* Typography */
    text-decoration: none;
}

/* Ênfase e Destaques */
.entry-content em {
    /* Typography */
    font-style: italic;
}

.entry-content strong {
    /* Typography */
    font-weight: bold;
}

.entry-content mark {
    /* Visuals */
    background-color: #ff0;
    color: #000;
}

.entry-content abbr {
    /* Visuals */
    border-bottom: 1px dotted;
    
    /* Interaction */
    cursor: help;
}

/* Citações */
.entry-content blockquote {
    /* Box model */
    margin: 2em 0;
    padding-left: 1em;
    
    /* Visuals */
    border-left: 4px solid #666;
    color: #ccc;
    
    /* Typography */
    font-style: italic;
}

.entry-content blockquote cite {
    /* Box model */
    margin-top: 0.5em;
    
    /* Layout */
    display: block;
    
    /* Typography */
    font-size: 0.875em;
    color: #aaa;
}

/* Listas */
.entry-content ul,
.entry-content ol {
    /* Box model */
    margin: 1.5em 0 1.5em 2em;
}

.entry-content li {
    /* Box model */
    margin-bottom: 0.5em;
}

/* Código */
.entry-content code {
    /* Box model */
    padding: 0.2em 0.4em;
    border-radius: 3px;
    
    /* Typography */
    font-family: monospace;
    font-size: 0.95em;
    
    /* Visuals */
    background-color: #333;
}

.entry-content pre {
    /* Box model */
    margin: 2em 0;
    padding: 1em;
    border-radius: 4px;
    
    /* Typography */
    font-family: monospace;
    font-size: 0.95em;
    
    /* Visuals */
    background-color: #1e1e1e;
    overflow-x: auto;
}

.entry-content pre code {
    /* Box model */
    padding: 0;
    border: none;
    
    /* Visuals */
    background: none;
}

/* Tabelas (opcional) */
.entry-content table {
    /* Box model */
    width: 100%;
    margin: 2em 0;
    
    /* Visuals */
    border-collapse: collapse;
}

.entry-content th,
.entry-content td {
    /* Box model */
    padding: 0.75em;
    border: 1px solid #444;
    
    /* Typography */
    text-align: left;
}

/* Imagens */
.entry-content img {
    /* Box model */
    max-width: 100%;
    height: auto;
    margin: 2em 0;
    
    /* Layout */
    display: block;
}

.title-with-icon {
    /* Layout */
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 3px;
    
    /* Typography */
    text-transform: uppercase;
    color: var(--color-2);
}

.tags-links {
    /* Layout */
    display: inline-flex;
    flex-wrap: wrap;
    gap: 5px;
}

.tags-links > a {
    /* Box model */
    padding: 0 7px;
    border-radius: 0.2rem;
    
    /* Typography */
    font-family: var(--font-heading);
    font-size: 0.66rem;
    font-weight: 700;
    line-height: 1.25rem;
    text-transform: uppercase;
    
    /* Visuals */
    background: var(--color-2);
    color: var(--color-0);
}

/*************************************************************/
/*************************************************************/
/************************************************************* LAYOUT PADRÃO PARA single.php e page.php COM SIDEBAR */
/*************************************************************/
/*************************************************************/
.default-layout-content-sidebar > .boxed {
    /* Layout */
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacer) * 2);
}

.default-layout-content-sidebar article,
.default-layout-content-sidebar aside {
    /* Box model */
    width: 100%;
}

.default-layout-content-sidebar aside {
    /* Layout */
    display: none;
}

.default-layout-content-sidebar aside .widget {
    /* Box model */
    margin-bottom: calc(var(--spacer) * 2);
}

.default-layout-content-sidebar aside .widget:last-of-type,
.default-layout-content-sidebar aside .widget figure {
    /* Box model */
    margin-bottom: 0;
}

form[role="search"] > div {
    /* Box model */
    margin-bottom: 0.5em;
    
    /* Visuals */
    border-bottom: var(--thin-border);
    
    /* Typography */
    font-size: 0.8em;
}

form[role="search"] input[type="search"] {
    /* Box model */
    padding: 5px 0;
    
    /* Typography */
    line-height: 2em;
}

form[role="search"] .search-icon {
    /* Typography */
    color: var(--color-2);
}

@media (min-width: 1000px) {
    .default-layout-content-sidebar > .boxed {
        /* Layout */
        flex-direction: row;
        align-items: flex-start;
    }

    .default-layout-content-sidebar aside {
        /* Box model */
        width: 320px;
        
        /* Layout */
        display: block;
        flex-shrink: 0;
    }

    .default-layout-content-sidebar article {
        /* Layout */
        flex: 1;
    }
}

/************************/
/************************ LISTA DE FOTOS */
/************************/
.photo-list {
    /* Layout */
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--spacer);
}

.photo-list-item {
    /* Positioning */
    position: relative;
    
    /* Box model */
    max-width: 100%;
    border: var(--spacer) solid var(--color-1);
    
    /* Layout */
    flex-shrink: 1;
}

.photo-list-item > img {
    /* Box model */
    margin: 0;
    max-height: calc(100vh - var(--spacer) * 2);
}

.photo-list-item > div {
    /* Positioning */
    position: absolute;
    top: 10px;
    right: 10px;
    
    /* Box model */
    min-width: 2rem;
    line-height: 2rem;
    border-radius: 1rem;
    
    /* Typography */
    font-size: 1rem;
    font-weight: 700;
    text-align: center;
    
    /* Visuals */
    background: var(--color-1);
    color: var(--color-0);
}

/************************/
/************************ NADA AQUI! */
/************************/
.nothing-found {
    /* Positioning */
    position: relative;
    /*
    left: 50%;
    transform: translateX(-50%);
    */
    
    /* Layout */
    display: flex;
    flex-direction: column;
    align-items: center;
    
    /* Box model */
    margin: auto;
    grid-column: 1 / -1;
    
    /* Typography */
    color: var(--color-2);
}

.nothing-found > span {
    /* Typography */
    font-family: var(--font-heading);
    font-weight: 700;
    font-size: 1.33rem;
    text-transform: uppercase;
}

/*************************************************************/
/*************************************************************/
/************************************************************* POSTS RELACIONADOS */
/*************************************************************/
/*************************************************************/
.related-posts .boxed > h2 {
    /* Box model */
    padding-top: calc(var(--spacer) * 2);
    
    /* Visuals */
    border-top: var(--thin-border);
    
    /* Typography */
    text-transform: uppercase;
    color: var(--color-2);
}

/*************************************************************/
/*************************************************************/
/************************************************************* WEBSITE FOOTER */
/*************************************************************/
/*************************************************************/
.footer-main {
    /* Box model */
    margin-top: var(--spacer);
    
    /* Visuals */
    background-color: var(--color-4);
    border-bottom: 3px solid var(--color-2);
}

.footer-main > .boxed {
    /* Layout */
    display: flex;
    flex-direction: column;
    align-items: center;
}

.footer-main .logo-icon {
    /* Box model */
    width: 36px;
    height: 36px;
}

.copyright {
    /* Box model */
    margin-top: 0.75em;
    
    /* Typography */
    font-size: 0.75em;
    
    /* Visuals */
    color: rgba(255,255,255,0.25);
}