/*
Theme Name: ArenaTV News
Theme URI: https://arenatvnews.com.br
Author: ArenaTV News Team
Description: Portal de notícias sobre tecnologia, IA, games, turismo, esportes, franquias e negócios.
Version: 2.1.0
Requires at least: 6.0
Tested up to: 6.4
Requires PHP: 8.0
License: GPL-2.0-or-later
Text Domain: arenatvnews
Tags: news, magazine, blog, custom-logo, custom-menu, featured-images
*/

@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@200;300;400;500;600;700&family=Open+Sans:wght@300;400;600;700;800&display=swap');

:root {
    --primary: #000000;
    --secondary: #f26522;
    --text: #333333;
    --background: #ffffff;
    --border: #e5e5e5;
    --dark-bg: #1a1a1a;
    --gray-100: #f3f4f6;
    --gray-400: #9ca3af;
    --gray-500: #6b7280;
    --gray-700: #374151;
    --gray-800: #1f2937;
    --gray-900: #111827;
    --ease-smooth: cubic-bezier(0.4, 0, 0.2, 1);
}

*,
*::before,
*::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html {
    scroll-behavior: smooth;
    overflow-x: hidden;
}

body {
    font-family: 'Open Sans', sans-serif;
    font-size: 16px;
    line-height: 1.7;
    color: var(--text);
    background: var(--background);
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
    max-width: 100vw;
}

img {
    max-width: 100%;
    height: auto;
    display: block;
}

a {
    text-decoration: none;
    color: inherit;
    transition: color 0.3s var(--ease-smooth);
}

ul,
ol {
    list-style: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Oswald', sans-serif;
    font-weight: 400;
    color: var(--primary);
    line-height: 1.35;
    margin-bottom: 0.5em;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

h1 {
    font-size: 1.75rem;
}

h2 {
    font-size: 1.5rem;
}

h3 {
    font-size: 1.25rem;
}

h4 {
    font-size: 1.125rem;
}

@media (min-width: 768px) {
    h1 {
        font-size: 2.25rem;
    }

    h2 {
        font-size: 1.75rem;
    }

    h3 {
        font-size: 1.5rem;
    }

    h4 {
        font-size: 1.25rem;
    }
}

@media (min-width: 1024px) {
    h1 {
        font-size: 2.5rem;
    }

    h2 {
        font-size: 2rem;
    }

    h3 {
        font-size: 1.625rem;
    }
}

.container {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 1rem;
}

@media (min-width: 1024px) {
    .container {
        padding: 0 2rem;
    }
}

/* Ensure all article elements are always visible */
.article-card,
.category-featured,
.category-article,
.hero-featured,
.stack-article {
    opacity: 1 !important;
    visibility: visible !important;
}