:root {
  --primary: #5078A0;   /* Azul suave inspirado em calma */
  --accent:  #E6B65C;   /* Laranja suave de destaque */
  --light:   #F9F9F9;   /* Fundo claro */
  --dark:    #333;      /* Texto principal */
  --white:   #fff;
}

/* Reset & acessibilidade */
* { box-sizing: border-box; margin:0; padding:0; }
html { scroll-behavior: smooth; }
body { font-family: 'Open Sans', sans-serif; color: var(--dark); background: var(--white); line-height:1.6; }
.skip-link { position:absolute; left:0; top:-40px; background:#000; color:#fff; padding:8px; z-index:100; }
.skip-link:focus { top:0; }

/* Cabeçalho */
.site-header { background: var(--white); box-shadow: 0 2px 4px rgba(0,0,0,0.1); position: sticky; top:0; z-index:1000; }
.header-inner { display:flex; align-items:center; justify-content:space-between; padding:1rem; }
.logo img { height:48px; }

/* Navegação */
#menu-toggle { display:none; font-size:1.5rem; background:none; border:none; }
nav ul { list-style:none; display:flex; gap:1.5rem; }
nav a { color: var(--dark); text-decoration:none; font-weight:600; }
nav a:hover, nav a:focus, nav a.active { color: var(--primary); outline:none; }

/* Mobile */
@media(max-width:768px) {
  #menu-toggle { display:block; }
  nav ul { display:none; flex-direction:column; background: var(--white); position:absolute; top:100%; left:0; width:100%; padding:1rem; }
  nav.open ul { display:flex; }
}

/* Hero */
.hero-section { background: var(--light); color: var(--dark); padding:4rem 1rem; }
.hero-grid { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:2rem; }
.hero-content h1 { font-size:2.25rem; line-height:1.2; }
.hero-content p { margin-top:1rem; font-size:1.1rem; }
.cta-button {
  display:inline-block; margin-top:1.5rem; background: var(--accent);
  color: var(--white); padding:0.75rem 1.5rem; border-radius:4px; font-weight:bold; text-decoration:none;
}
.hero-image img { width:100%; height:auto; border-radius:8px; box-shadow:0 4px 8px rgba(0,0,0,0.1); }
@media(max-width:768px) { .hero-grid { grid-template-columns:1fr; } }

/* Seções */
section { padding:3rem 1rem; }
.bg-light { background: var(--light); }
.container { max-width: 900px; margin:0 auto; }

/* Listas & depoimentos */
.features-list, .steps-list, .contact-list { margin-top:1rem; list-style:none; padding-left:1rem; }
.features-list li::before { content:"✔️"; margin-right:0.5rem; }
.steps-list li { margin-bottom:0.75rem; }
.contact-list li { margin-bottom:0.5rem; }
blockquote {
  margin:2rem auto; padding:1rem; border-left:4px solid var(--accent);
  background: var(--white); color: var(--dark);
}
blockquote footer { margin-top:0.5rem; font-size:0.9rem; color:#555; }

/* Formulário */
form.contact-form { display:flex; flex-direction:column; gap:1rem; max-width:500px; margin:1rem auto; }
.form-group label { font-weight:600; margin-bottom:0.25rem; }
.form-group input, .form-group textarea {
  padding:0.6rem; border:1px solid #ccc; border-radius:4px; font-size:1rem; width:100%;
}
form.contact-form button[type="submit"] {
  background: var(--primary); color: var(--white); padding:0.75rem 1.5rem; border:none; border-radius:4px; font-weight:bold; cursor:pointer;
}
form.contact-form button[type="submit"]:hover { opacity:0.9; }

/* Disclaimer */
.disclaimer-section p {
  font-size:0.85rem; color:#555; margin-top:2rem; text-align:center;
}

/* Footer */
.site-footer { background: var(--white); text-align:center; padding:1.5rem; border-top:1px solid #eee; }
.site-footer p { color:#777; }

/* Títulos */
h2 { font-size:1.75rem; color: var(--primary); text-align:center; margin-bottom:1rem; }

/* Foco visível */
a:focus, button:focus { outline:3px dashed var(--accent); outline-offset:2px; }
