/*
Theme Name: Afazeres Curiosos
Theme URI: https://afazerescuriosos.pt
Description: Tema filho do Blocksy para Afazeres Curiosos — engenharia de sistemas tecnicos (AVAC, eletrico, hidraulico, comissionamento). Design tokens, tipografia e patterns de marca.
Author: Afazeres Curiosos
Author URI: https://afazerescuriosos.pt
Template: blocksy
Version: 1.0.0
Requires at least: 6.4
Tested up to: 6.9
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: afazeres-child
Tags: business, engineering, portfolio, full-site-editing, blocks
*/

/* =========================================================
   AFAZERES CURIOSOS — DESIGN TOKENS CSS
   (complementa theme.json; variaveis utilizaveis em blocos)
   ========================================================= */

:root {
  /* Paleta marca */
  --ac-navy:     #0A2540;
  --ac-azul:     #1E88E5;
  --ac-ambar:    #FF7A00;
  --ac-cinza-bg: #E6EBF0;
  --ac-branco:   #FFFFFF;
  --ac-texto:    #1A1A1A;
  --ac-texto-suave: #4A5568;
  --ac-borda:    #D1D9E0;

  /* Tipografia */
  --ac-font-body:    'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --ac-font-heading: 'Space Grotesk', 'Inter', system-ui, sans-serif;

  /* Espaco (escala 1.5) */
  --ac-space-1: 0.25rem;
  --ac-space-2: 0.5rem;
  --ac-space-3: 0.75rem;
  --ac-space-4: 1rem;
  --ac-space-5: 1.5rem;
  --ac-space-6: 2rem;
  --ac-space-7: 3rem;
  --ac-space-8: 4rem;
  --ac-space-9: 6rem;

  /* Radii */
  --ac-radius-sm: 4px;
  --ac-radius-md: 6px;
  --ac-radius-lg: 12px;

  /* Shadows */
  --ac-shadow-sm: 0 1px 2px rgba(10, 37, 64, 0.06);
  --ac-shadow-md: 0 4px 12px rgba(10, 37, 64, 0.08);
  --ac-shadow-lg: 0 12px 32px rgba(10, 37, 64, 0.12);

  /* Transicoes */
  --ac-ease: cubic-bezier(0.4, 0, 0.2, 1);
}

/* =========================================================
   BASE — overrides do Blocksy para alinhar a marca
   ========================================================= */

body {
  font-family: var(--ac-font-body);
  color: var(--ac-texto);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6,
.has-grotesk-font-family {
  font-family: var(--ac-font-heading);
  letter-spacing: -0.01em;
}

a {
  color: var(--ac-azul);
  transition: color 200ms var(--ac-ease);
}
a:hover { color: var(--ac-navy); }

/* Botoes do Gutenberg alinhados a marca */
.wp-block-button__link,
.wp-element-button {
  background-color: var(--ac-ambar);
  color: var(--ac-branco);
  border-radius: var(--ac-radius-md);
  padding: var(--ac-space-3) var(--ac-space-5);
  font-weight: 600;
  transition: background-color 200ms var(--ac-ease), transform 200ms var(--ac-ease);
}
.wp-block-button__link:hover,
.wp-element-button:hover {
  background-color: #E06A00;
  transform: translateY(-1px);
}
.is-style-outline .wp-block-button__link,
.is-style-outline .wp-element-button {
  background-color: transparent;
  color: var(--ac-navy);
  border: 2px solid var(--ac-navy);
}
.is-style-outline .wp-block-button__link:hover {
  background-color: var(--ac-navy);
  color: var(--ac-branco);
}

/* =========================================================
   PATTERNS — hero, cards, grids de servico
   ========================================================= */

.ac-hero {
  background: linear-gradient(135deg, var(--ac-navy) 0%, #0f3556 100%);
  color: var(--ac-branco);
  padding: var(--ac-space-9) var(--ac-space-5);
}
.ac-hero h1 {
  color: var(--ac-branco);
  font-size: clamp(2.5rem, 5vw, 3.75rem);
  margin-bottom: var(--ac-space-5);
}
.ac-hero .ac-lede {
  font-size: clamp(1.125rem, 2vw, 1.25rem);
  color: rgba(255, 255, 255, 0.85);
  max-width: 60ch;
  line-height: 1.6;
}

.ac-card {
  background: var(--ac-branco);
  border: 1px solid var(--ac-borda);
  border-radius: var(--ac-radius-lg);
  padding: var(--ac-space-6);
  transition: box-shadow 200ms var(--ac-ease), transform 200ms var(--ac-ease);
}
.ac-card:hover {
  box-shadow: var(--ac-shadow-md);
  transform: translateY(-2px);
}

.ac-servicos-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: var(--ac-space-5);
}

/* Utilitario acessibilidade */
.ac-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
