/*
    Theme Name: Atom Theme
    Theme URI: https://atomdigital.com.br/
    Author: Higor Paulo | Atom Digital
    Author URI: https://atomdigital.com.br/
    Description: Website/One Page/Landing Page
    Version: 2025.1
    License: Atom Digital
    License URI: https://atomdigital.com.br/
    Tags: criação de páginas web Brasil, criação de páginas web Goiânia, desenvolvimento de sites Goiânia, desenvolvimento de sites responsivos Goiânia, web design Goiânia, otimização SEO, análise de desempenho de sites, técnicas de otimização para sites, gestão de redes sociais, estratégias de marketing nas redes sociais, produção de conteúdo para websites
    Text Domain: Atom Digital
*/

/* ── Variáveis ─────────────────────────────────────── */
:root {
    --color-neutral-100: #FFFFFF;
    --color-neutral-200: #D0D1CF;
    --color-neutral-300: #A0A0A0;
    --color-neutral-400: #747474;
    --color-neutral-500: #393939;
    --color-neutral-600: #2C2C2C;
    --color-neutral-700: #1A1A1A;
    --color-neutral-800: #111111;
    --color-neutral-900: #0D1117;

    --color-primary:   #002C5F;
    --color-secondary: #00AAD2;

    --font-family-01: "Inter", sans-serif;
}

/* ── Base ──────────────────────────────────────────── */
html {
    font-size: 16px;
    font-weight: 400;
    scroll-behavior: smooth;
}
body {
    font-family: var(--font-family-01);
    color: var(--color-neutral-900);
    background-color: var(--color-neutral-100);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    letter-spacing: 0.08em;
    font-weight: 400;
}
@media screen and (max-width: 999px) { html { font-size: 15px; } }
@media screen and (max-width: 768px) { html { font-size: 14px; } }
@media screen and (max-width: 576px) { html { font-size: 13px; } }

form { touch-action: manipulation; }
input, textarea, select {
    width: 100%;
    background: var(--color-neutral-900);
    font-size: 1rem;
    touch-action: manipulation;
    color: var(--color-neutral-400);
    border: 1px solid var(--color-neutral-700);
    padding: 1rem;
    letter-spacing: 0.08em;
}
textarea { min-height: 7rem; max-height: 7rem; }
select {
    appearance: none !important;
    -webkit-appearance: none !important;
    background: var(--color-neutral-900) url(./assets/img/default-dropdown.svg) no-repeat right 1rem center;
    background-size: .6rem;
    border-radius: 0 !important;
    border: 1px solid var(--color-neutral-600);
}
form select:focus, form input:focus { outline: none !important; box-shadow: none !important; }

/* ── Fonts ─────────────────────────────────────────── */
.font-family-01 { font-family: var(--font-family-01); }

/* ── Background utilities ──────────────────────────── */
.bg-color-neutral-100 { background-color: var(--color-neutral-100); }
.bg-color-neutral-200 { background-color: var(--color-neutral-200); }
.bg-color-neutral-300 { background-color: var(--color-neutral-300); }
.bg-color-neutral-400 { background-color: var(--color-neutral-400); }
.bg-color-neutral-500 { background-color: var(--color-neutral-500); }
.bg-color-neutral-600 { background-color: var(--color-neutral-600); }
.bg-color-neutral-700 { background-color: var(--color-neutral-700); }
.bg-color-neutral-800 { background-color: var(--color-neutral-800); }
.bg-color-neutral-900 { background-color: var(--color-neutral-900); }
.bg-color-primary   { background-color: var(--color-primary)   !important; }
.bg-color-secondary { background-color: var(--color-secondary) !important; }

/* ── Color utilities ───────────────────────────────── */
.text-color-neutral-100 { color: var(--color-neutral-100) !important; }
.text-color-neutral-200 { color: var(--color-neutral-200); }
.text-color-neutral-300 { color: var(--color-neutral-300); }
.text-color-neutral-400 { color: var(--color-neutral-400); }
.text-color-neutral-500 { color: var(--color-neutral-500); }
.text-color-neutral-600 { color: var(--color-neutral-600); }
.text-color-neutral-700 { color: var(--color-neutral-700); }
.text-color-neutral-800 { color: var(--color-neutral-800); }
.text-color-neutral-900 { color: var(--color-neutral-900); }
.text-color-primary   { color: var(--color-primary)   !important; }
.text-color-secondary { color: var(--color-secondary) !important; }

/* ── Text sizes ────────────────────────────────────── */
.heading-size-xxs { font-size: 1.375rem; }
.heading-size-xs { font-size: 1.625rem; }
.heading-size-sm { font-size: 2rem; }
.heading-size-md { font-size: 2.5rem; }
.heading-size-lg { font-size: 3rem; }
.heading-size-xl { font-size: 3.25rem; }
.heading-size-xxl { font-size: 5.5rem; }
@media screen and (max-width: 768px) {
    .heading-size-xxl { font-size: 3.25rem; }
    .heading-size-xl  { font-size: 2.5rem; }
    .heading-size-lg  { font-size: 2.25rem; }
    .heading-size-md  { font-size: 2rem; }
    .heading-size-sm  { font-size: 1.75rem; }
}
@media screen and (max-width: 576px) {
    .heading-size-xxl { font-size: calc(3.813rem - 50%); }
    .heading-size-xl { font-size: calc(3.25rem - 50%); }
    .heading-size-lg { font-size: calc(3rem - 50%); }
    .heading-size-md { font-size: calc(2.625rem - 50%); }
}
.text-size-xs { font-size: 0.656rem; }
.text-size-sm { font-size: 0.75rem; }
.text-size-md { font-size: 0.875rem; }
.text-size-lg { font-size: 1rem !important; }
.text-size-xl { font-size: 1.125rem; }
.text-size-xxl { font-size: 1.25rem; }

/* ── Font weights ──────────────────────────────────── */
.font-weight-200 { font-weight: 200; }
.font-weight-300 { font-weight: 300; }
.font-weight-400 { font-weight: 400; }
.font-weight-500 { font-weight: 500; }
.font-weight-600 { font-weight: 600; }
.font-weight-700 { font-weight: 700; }
.font-weight-800 { font-weight: 800; }

/* ── Container override ────────────────────────────── */
@media screen and (max-width: 576px) {
    .container { padding: 0 30px; }
}

/* ── Section padding ───────────────────────────────── */
.section-padding { padding: 6.25rem 0; }

@media screen and (max-width: 999px) {
    .products-section,
    .banner-hero-section,
    .products01-section,
    .section-padding { padding: 3.75rem 0 !important; }
}
