
/* === BASE === */
body {
  margin: 0;
  padding: 0;
  font-family: "Source Sans Pro", sans-serif;
  background: #f9f6f1 url("images/main-bg.png") repeat;
  color: rgba(69,69,69, 0.85);
}

h1, h2, h3, h4, h5, h6 {
  color: rgba(69,69,69, 0.85);
  font-weight: 600;
}

a {
  color: rgba(69,69,69, 0.85);
  text-decoration: none;
}

a:hover {
  color: rgba(69,69,69, 1);
}

/* === HEADER === */
.site-header {
  background-color: rgba(163, 177, 138, 0.6);
  color: rgba(69,69,69, 0.85);
  padding: 20px;
  text-align: center;
}

.site-header a {
  color: rgba(69,69,69, 0.85);
}

.site-header a:hover {
  color: rgba(69,69,69, 1);
}

/* === FOOTER === */
.site-footer {
  background-color: #A3B18A;
  padding: 60px 20px 30px;
  font-size: 14px;
  color: rgba(69,69,69, 0.5);
}

.site-footer * {
  color: rgba(69,69,69, 0.5) !important;
}

.site-footer a:hover,
.site-footer .social a:hover,
.site-footer i:hover {
  color: rgba(69,69,69, 0.7) !important;
}

.site-footer .social i,
.site-footer svg {
  fill: rgba(69,69,69, 0.5) !important;
}

.footer-inner {
  max-width: 1100px;
  margin: 0 auto;
  display: grid;
  gap: 30px;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  text-align: center;
}

.footer-brand h3 {
  font-size: 24px;
  margin-bottom: 5px;
}

.footer-menu ul {
  list-style: none;
  padding: 0;
}

.footer-menu ul li {
  margin-bottom: 8px;
}

.footer-menu a {
  color: rgba(69,69,69, 0.5);
  text-decoration: none;
}

.footer-menu a:hover {
  text-decoration: underline;
}

.footer-social a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0 10px;
  transition: transform 0.2s ease;
}

.footer-social a:hover svg {
  transform: scale(1.2);
  fill: rgba(69,69,69, 0.85);
}

.footer-social svg {
  width: 24px;
  height: 24px;
}

.footer-bottom {
  grid-column: 1 / -1;
  text-align: center;
  margin-top: 30px;
  font-size: 13px;
}

/* === FORMULARIOS === */
.wpforms-container .wpforms-field-label {
  color: rgba(69,69,69, 0.85);
}

.wpforms-container input,
.wpforms-container textarea {
  border: 1px solid #ccc;
  padding: 12px;
  border-radius: 6px;
  width: 100%;
  font-size: 16px;
  color: rgba(69,69,69, 0.9);
  margin-bottom: 20px;
}

.wpforms-form {
  padding: 2em;
}

.wpforms-submit {
  background-color: rgba(69,69,69, 0.85) !important;
  color: white !important;
  border: none;
  font-weight: 600;
  font-size: 1em;
  border-radius: 4px;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.wpforms-submit:hover {
  background-color: rgba(69,69,69, 1) !important;
}

/* === CONTENIDO GENERAL === */
main,
#main,
.page-content,
.contact-page {
  padding: 2em;
  max-width: 1000px;
  margin: 0 auto;
  box-sizing: border-box;
}

.wpforms-form label {
  color: rgba(69,69,69, 0.85) !important;
}

.wpforms-form .wpforms-field-label,
.wpforms-form .wpforms-required-label,
.wpforms-form .wpforms-error {
  color: rgba(69,69,69, 0.85) !important;
}

/* Botón hamburguesa flotante */
#hamburger-nav {
  position: fixed;
  top: 4.5em;
  right: 2em;
  z-index: 10000;
}

#hamburger-nav ul {
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
}
#hamburger-nav ul li a {
  display: block;
  width: 3em;
  height: 3em;
  background: rgba(255,255,255,0.6);
  background-image: url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" viewBox="0 0 100 100"><style>line { stroke-width: 8px; stroke: #585858; }</style><line x1="0" y1="25" x2="100" y2="25" /><line x1="0" y1="50" x2="100" y2="50" /><line x1="0" y1="75" x2="100" y2="75" /></svg>');
  background-repeat: no-repeat;
  background-position: center;
  background-size: 2em;
  text-indent: -9999px;
  border-radius: 4px;
  transition: background 0.3s ease;
}
/* Ícono hamburguesa (líneas rosadas y grises según hover) */
#hamburger-nav a[href="#menu"] {
  display: block;
  position: relative;
  width: 3em;
  height: 3em;
  text-indent: 3em;
  overflow: hidden;
  white-space: nowrap;
  background-color: rgba(255, 255, 255, 0.5);
  border-radius: 4px;
}

#hamburger-nav a[href="#menu"]::before,
#hamburger-nav a[href="#menu"]::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 2em 2em;
  transition: opacity 0.2s ease;
}

#hamburger-nav a[href="#menu"]::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100' viewBox='0 0 100 100'%3E%3Cstyle%3Eline%7Bstroke:%23f2849e;stroke-width:8px;%7D%3C/style%3E%3Cline x1='0' y1='25' x2='100' y2='25'/%3E%3Cline x1='0' y1='50' x2='100' y2='50'/%3E%3Cline x1='0' y1='75' x2='100' y2='75'/%3E%3C/svg%3E");
  opacity: 0;
}

#hamburger-nav a[href="#menu"]::after {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100' viewBox='0 0 100 100'%3E%3Cstyle%3Eline%7Bstroke:%23585858;stroke-width:8px;%7D%3C/style%3E%3Cline x1='0' y1='25' x2='100' y2='25'/%3E%3Cline x1='0' y1='50' x2='100' y2='50'/%3E%3Cline x1='0' y1='75' x2='100' y2='75'/%3E%3C/svg%3E");
  opacity: 1;
}

#hamburger-nav a[href="#menu"]:hover::before {
  opacity: 1;
}

#hamburger-nav a[href="#menu"]:hover::after {
  opacity: 0;
}


/* Menú deslizante */
#menu {
  transform: translateX(22em);
  transition: transform 0.4s ease, visibility 0.4s ease;
  position: fixed;
  top: 0;
  right: 0;
  width: 22em;
  max-width: 80%;
  height: 100%;
  background: #A3B18A;
  color: #fff;
  z-index: 10002;
  visibility: hidden;
  padding-top: 2.5em;
}

#menu > h2 {
  padding: 2em 1.5em 1em;
  font-weight: 700;
  text-transform: uppercase;
}
#menu ul {
  list-style: none;
  padding: 0 1.5em;
}
#menu ul li {
  border-top: 1px solid rgba(255, 255, 255, 0.2);
}
#menu ul li a {
  display: block;
  padding: 1em 0;
  color: inherit;
  font-weight: normal;
  text-decoration: none;
}
#menu .close {
  position: absolute;
  top: 2em;
  left: -4em;
  width: 4em;
  height: 3em;
  text-indent: -9999px;
  background: url("data:image/svg+xml;charset=utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100' viewBox='0 0 100 100'><style>line { stroke-width: 8px; stroke: #585858; }</style><line x1='15' y1='15' x2='85' y2='85' /><line x1='85' y1='15' x2='15' y2='85' /></svg>") no-repeat center;
  background-size: 2em;
  border: none;
  cursor: pointer;
}

/* Mostrar menú */
body.is-menu-visible #menu {
  transform: translateX(0);
  visibility: visible;
}

@media screen and (max-width: 768px) {
  #hamburger-nav {
    top: 4.5em;
    right: 1.5em;
  }
}

#menu .close {
  position: absolute;
  top: 1.5em;
  left: -3.5em;
  width: 3em;
  height: 3em;
  text-indent: -9999px;
  background: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100' viewBox='0 0 100 100'%3E%3Cstyle%3Eline %7B stroke-width: 8px%3B stroke: %23585858%3B %7D%3C/style%3E%3Cline x1='15' y1='15' x2='85' y2='85' /%3E%3Cline x1='85' y1='15' x2='15' y2='85' /%3E%3C/svg%3E") no-repeat center;
  background-size: 2em;
  border: none;
  cursor: pointer;
  z-index: 10003;
}
.language-switcher {
  position: absolute;
  top: 2em;
  left: auto;
  right: 4em; /* Puedes ajustar esto para moverlo más o menos al centro */
  z-index: 10001;
  display: flex;
  gap: 1em;
}

.language-switcher li {
  list-style: none;
  margin: 0;
  padding: 0;
  text-transform: uppercase; /* Asegura que EN/ES estén en mayúsculas */
}

.language-switcher a {
  text-decoration: none;
  font-weight: normal;
  font-size: 0.9em;
  color: #4E7A48;
  letter-spacing: 0.05em;
}

.language-switcher li.current-lang a {
  font-weight: bold;
  text-decoration: underline;
}

#trp-floater-ls {
    display: none !important;
}

/* Aplicar el patrón a todas las páginas WooCommerce */
body.woocommerce-page {
  background: #f9f6f1 url("images/main-bg.png") repeat;
}





