/*
 * Estilo sobrio de toda la web, como los bloques interiores de la web de módulos y la sección Actualidad:
 * bordes finos, esquinas pequeñas, sin sombras sólidas ni giros. Se carga después de style.css si
 * config.php → 'sober' es true; con false la web vuelve al estilo anterior.
 */
.btn, .btn-orange { min-height: 0; padding: 14px 24px; border-radius: 6px; font-size: 17px; font-weight: 800; }
.btn:hover, .nav-cta:hover { transform: none; filter: brightness(1.05); }
.nav-cta, .certified-link, .featured-more { border-radius: 4px; font-weight: 800; }

/* Panel del hero: plano, sin giro ni sombra de color */
.hero-panel { border: 1px solid #e3dad1; border-radius: 6px; box-shadow: 0 10px 30px rgba(31, 20, 10, .12); transform: none; }

/* Tarjetas y bloques: borde fino, esquina pequeña, hover con fondo suave y barra naranja interior */
.card, .pillar, .fgroup, .benefit, .catalog a, .related a, .custom-card, .faq-item {
  border: 1px solid #e3dad1; border-radius: 6px; box-shadow: none;
}
.card:not(.service-dark):hover, .catalog a:hover, .related a:hover { transform: none; background: #fbf9f7; box-shadow: inset 3px 0 0 var(--orange); }
.service-dark, .service-dark:hover { transform: none; box-shadow: none; border-color: var(--ink-soft); }
.related-shot { border-bottom: 1px solid #e3dad1; }
.certified, .demo-box, .pitch li { border: 1px solid #e3dad1; border-radius: 6px; background: #fbf9f7; }
.next { border: 1px dashed var(--orange); border-radius: 6px; }
.service-icon, .certified-icon { border-radius: 6px; }

/* Preguntas frecuentes a todo el ancho, con el + en un cuadrado pequeño */
.faq-wrap .faq { max-width: none; }
.faq-item[open] { border-color: #e3dad1; box-shadow: inset 3px 0 0 var(--orange); }
.faq-item summary::after { border-radius: 4px; }

/* Bloques oscuros destacados: se mantienen, con esquinas sobrias */
.featured, .compat { border-radius: 8px; }
.featured-illust { border-radius: 6px; }
.featured-logo { border-radius: 6px; box-shadow: 0 4px 12px rgba(31, 20, 10, .2); }
.path-from span { border-radius: 4px; }
.path-to { border-radius: 6px; }
.featured-flag { border-radius: 3px; font-weight: 800; font-size: 12px; }

@media (max-width: 760px) {
  .certified, .featured, .compat, .hero-panel { border-radius: 6px; }
  .hero-panel { box-shadow: 0 8px 20px rgba(31, 20, 10, .12); }
}

/* Marrón oscuro suavizado en los fondos (el texto mantiene var(--ink)) */
:root { --ink-soft: #3d2c20; }
.featured, .compat, .nav-cta, .certified-link, .kicker, .card-media-num, .card-more, .service-dark, .menu summary { background: var(--ink-soft); }

/* Páginas interiores */
.kicker { border-radius: 4px; }
.btn-ghost { box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .6); }
.btn-ghost-dark { border: 1px solid var(--ink-soft); }
.shot img { border: 1px solid #e3dad1; border-radius: 6px; }
.gallery-phone .shot img { border-radius: 14px; }

/* Formulario de contacto y confirmación */
.form-card, .success-card { border: 1px solid #e3dad1; border-radius: 6px; box-shadow: none; }
.success-icon { border-radius: 6px; }
.field input, .field select, .field textarea { border: 1px solid #cfc4b8; border-radius: 4px; background-color: #fff; }
.field input:focus, .field select:focus, .field textarea:focus { box-shadow: 0 0 0 3px rgba(235, 110, 7, .15); }
.alert { border-radius: 4px; border-width: 1px; font-weight: 700; }
.privacy { border: 1px solid #e3dad1; border-radius: 6px; background: #fbf9f7; }

/* Menú móvil y selector de idioma */
.menu summary { border-radius: 6px; }
.menu-panel { border: 1px solid #e3dad1; border-radius: 6px; box-shadow: 0 10px 30px rgba(31, 20, 10, .12); }
.menu-links a + a { border-top: 1px solid #e3dad1; }
.lang-list { border: 1px solid #e3dad1; border-radius: 6px; box-shadow: 0 10px 30px rgba(31, 20, 10, .12); }
.lang-list::before { display: none; }
.lang-list a { border-radius: 4px; }

@media (max-width: 760px) {
  .form-card { border-radius: 6px; }
  .pitch li { border-radius: 6px; }
}
