/* ═══════════════════════════════════════════════════════════════════════════
   Piezas del sitio que no son la ficha ni un shortcode.

   Se carga la última (prioridad 20, sin dependencias) para poder pisar a
   styles.css y elements.css sin subir la especificidad.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── Alto de la cabecera ─────────────────────────────────────────────────────
   OJO con lo que hace esta variable y con lo que NO hace.

   Sirve para UNA cosa: colocar la barra fija del popup justo debajo de la
   cabecera. Antes iba con un 95px escrito a mano, medido para la cabecera de
   90px que había; al adelgazarla quedó un hueco entre las dos.

   Lo que NO es es un hueco que haya que reservarle al contenido. Lo intenté y
   estaba equivocado: el contenido ya arranca donde tiene que arrancar, así que
   sumarle el alto de la cabecera lo bajaba una segunda vez y abría un hueco
   enorme en la portada. Si alguna vez hace falta reservar sitio, que se mida
   antes si de verdad falta: aquí no faltaba.
   ────────────────────────────────────────────────────────────────────────── */

:root {
  --trm-header-h: 74px;
}

@media (max-width: 991px) {
  :root {
    --trm-header-h: 62px;
  }
}

/* wpautop deja un <p></p> vacío alrededor de los shortcodes de bloque. No se ve,
   pero arrastra el margen inferior de los párrafos y abre un hueco de la nada
   justo encima de la portada. */
.page-wraper > p:empty,
.page-wrapper > p:empty,
.entry-content > p:empty {
  display: none;
}

/* ── Cabecera ────────────────────────────────────────────────────────────────
   El tema la deja en 90px de alto con los enlaces a 35px de padding vertical y
   14px de horizontal: mucho grosor y poco aire entre unos y otros. Aquí se
   apreta en vertical, se separa en horizontal y se rehacen los desplegables.
   ────────────────────────────────────────────────────────────────────────── */

.wpo-site-header .navigation {
  min-height: 74px;
  border-bottom: 1px solid #f0ede8;
}

/* La sombra al quedarse fija era azul (#086ad84a), de la paleta del tema
   original. Neutra y mucho más floja. */
.sticky-header {
  box-shadow: 0 2px 18px rgba(20, 16, 12, 0.08);
}

@media (min-width: 992px) {
  .wpo-site-header #navbar > ul > li > a {
    padding: 26px 17px;
    font-size: 0.93rem;
    font-weight: 600;
    letter-spacing: 0.005em;
    color: var(--neutro2);
  }

  .wpo-site-header #navbar > ul > li > a:hover,
  .wpo-site-header #navbar > ul > li.current-menu-item > a,
  .wpo-site-header #navbar > ul > li.current-menu-ancestor > a {
    color: var(--trm-oro-fuerte, #b8933f);
  }

  /* La marca del activo era una barra de 4px pegada al techo del header. Pasa a
     un filete fino debajo del texto, que crece desde el centro. */
  .wpo-site-header #navbar > ul > li > a:before {
    left: 17px;
    right: 17px;
    top: auto;
    bottom: 18px;
    width: auto;
    height: 2px;
    background: var(--trm-oro-fuerte, #b8933f);
    border-radius: 2px;
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 0.25s ease, opacity 0.25s ease;
  }

  .wpo-site-header #navbar > ul > li > a:hover:before,
  .wpo-site-header #navbar > ul > li > a.active:before,
  .wpo-site-header #navbar > ul > li.current-menu-item > a:before,
  .wpo-site-header #navbar > ul > li.current-menu-ancestor > a:before {
    opacity: 1;
    visibility: visible;
    transform: scaleX(1);
  }

  /* La flecha del desplegable estaba pegada al texto y sin sitio propio. */
  .wpo-site-header #navbar li.menu-item-has-children {
    padding-right: 8px;
  }

  .wpo-site-header #navbar > ul > .menu-item-has-children > a:after {
    right: 6px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 8px;
    opacity: 0.55;
    transition: opacity 0.2s ease;
  }

  .wpo-site-header #navbar > ul > .menu-item-has-children:hover > a:after {
    opacity: 1;
  }

  /* ── Desplegables ── */

  .wpo-site-header #navbar > ul .sub-menu {
    width: auto;
    min-width: 236px;
    padding: 8px;
    border: 1px solid #f0ede8;
    border-radius: 12px;
    box-shadow: 0 14px 34px rgba(20, 16, 12, 0.1);
    transform: translateY(6px);
    transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s ease;
  }

  .wpo-site-header #navbar > ul > li:hover > .sub-menu,
  .wpo-site-header #navbar .sub-menu > li:hover > .sub-menu {
    transform: none;
  }

  .wpo-site-header #navbar > ul > li .sub-menu a {
    padding: 10px 14px;
    border-radius: 8px;
    font-size: 0.9rem;
    font-weight: 600;
    line-height: 1.35;
    color: var(--neutro3);
    transition: background-color 0.18s ease, color 0.18s ease;
  }

  .wpo-site-header #navbar > ul > li .sub-menu a:hover,
  .wpo-site-header #navbar > ul > li .sub-menu li.current-menu-item > a {
    background: #faf6ee;
    color: var(--trm-oro-fuerte, #b8933f);
  }

  /* El subrayado que se deslizaba por debajo del texto sobra: ahora el estado
     lo lleva el propio fondo de la fila, que se lee mejor y no salta. */
  .wpo-site-header #navbar > ul > li .sub-menu a:after {
    content: none;
  }

  /* La flecha del submenú de segundo nivel, alineada con el texto. */
  .wpo-site-header #navbar > ul > li > .sub-menu > .menu-item-has-children > a:before {
    right: 12px;
    opacity: 0.5;
  }

  .wpo-site-header #navbar > ul > li > .sub-menu .sub-menu {
    left: 100%;
    margin-left: 6px;
  }
}

/* ── Teléfono y carrito ── */

.wpo-site-header .headerRight {
  display: flex;
  align-items: center;
  gap: 22px;
  justify-content: flex-end;
}

.wpo-site-header .telefonoCabecera {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: var(--neutro2);
  transition: color 0.2s ease;
}

.wpo-site-header .telefonoCabecera:hover {
  color: var(--trm-oro-fuerte, #b8933f);
}

.wpo-site-header .telefonoCabecera svg {
  width: 19px;
  height: 19px;
}

.wpo-site-header .phone_head {
  margin: 0;
  font-size: 0.95rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  color: inherit;
}

.wpo-site-header .header-cart .cart-contents {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--neutro2);
  transition: color 0.2s ease;
}

.wpo-site-header .header-cart .cart-contents:hover {
  color: var(--trm-oro-fuerte, #b8933f);
}

.wpo-site-header .header-cart .cart-count {
  font-size: 0.86rem;
  font-weight: 700;
  color: var(--trm-oro-fuerte, #b8933f);
}

@media (max-width: 991px) {
  /* 10px arriba y abajo con el botón de 42px dan los 62px justos del
     min-height, que es lo que declara --trm-header-h. Con 12px se pasaba de
     largo y la variable dejaba de cuadrar. */
  .wpo-site-header .navigation {
    padding: 10px 0;
    min-height: 62px;
  }

  /* La retícula de Bootstrap reparte 3 + 6 + 1 + 2 columnas: al bloque de la
     derecha le tocaban dos doceavos, unos 70px, y ahí no caben el teléfono y
     el carrito. Se pasa a flex y cada bloque ocupa lo que necesita.
     La columna del menú se queda a cero, pero NO se oculta: el panel vive
     dentro y con display:none desaparecería. */
  .wpo-site-header .navigation .row {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
  }

  .wpo-site-header .navigation .row > div:has(> .mobail-menu),
  .wpo-site-header .navigation .row > div:has(.headerRight) {
    flex: 0 0 auto;
    width: auto;
    max-width: none;
  }

  .wpo-site-header .navigation .row > div:has(> .navbar-header) {
    flex: 1 1 auto;
    width: auto;
    max-width: none;
    text-align: center;
  }

  .wpo-site-header .navigation .row > div:has(> #navbar) {
    flex: 0 0 0;
    width: 0;
    padding: 0;
  }

  .wpo-site-header .headerRight {
    gap: 14px;
  }

  /* En móvil el número entero no cabe sin apretarlo todo: se queda el icono,
     que sigue llamando igual. */
  .wpo-site-header .phone_head {
    display: none;
  }
}

/* ── Menú móvil, rehecho de cero ─────────────────────────────────────────────

   Lo del tema no se podía ajustar a base de retoques, porque se contradice solo:
   pone las flechas de los submenús en position:absolute y a la vez fuerza
   position:static en los <li> que las contienen, así que se anclan a un
   antepasado que no es el suyo; el relleno de los enlaces va con !important; y
   el panel mezcla medidas fijas con porcentajes.

   Aquí se anula todo eso y se monta de nuevo. Lo único que se respeta es el
   comportamiento del JS del tema, que no se toca:

     .slideInn   en .navigation-holder     abre y cierra el panel
     .small-nav  en #navbar > ul           lo pone el JS por debajo de 992px
     .sub-toggle boton inyectado DENTRO del <a> de cada padre
     .rotate     en el enlace y en el botón, con el submenú abierto
     slideToggle escribe display en línea sobre .sub-menu: aquí no se toca
                 la propiedad display de los submenús, o se rompe la animación
   ────────────────────────────────────────────────────────────────────────── */

@media (max-width: 991px) {

  /* ── Botón hamburguesa ── */

  .wpo-site-header .mobail-menu button,
  .wpo-site-header .mobail-menu .open-btn {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 5px;
    width: 42px;
    height: 42px;
    padding: 0;
    border: 1px solid #e6e2db;
    border-radius: 10px;
    background: #fff;
    transition: border-color 0.2s ease, background-color 0.2s ease;
  }

  .wpo-site-header .mobail-menu .open-btn:hover {
    border-color: var(--trm-oro-fuerte, #b8933f);
    background: #faf6ee;
  }

  .wpo-site-header .mobail-menu button span,
  .wpo-site-header .navbar-header button span {
    position: static;
    width: 18px;
    height: 2px;
    margin: 0;
    border-radius: 2px;
    background-color: var(--neutro2);
    transform: none;
    transition: transform 0.25s ease, opacity 0.2s ease;
  }

  /* ── Velo ──
     Cuelga del <nav> y no del <body> a propósito: nav#site-navigation es
     position:fixed con z-index 9999, o sea que abre un contexto de apilamiento.
     El 999999 del panel solo ordena dentro de ese contexto. Un velo colgado del
     <body> vive en el contexto raíz y se pintaba por encima del panel entero. */

  #site-navigation:has(.navigation-holder.slideInn)::before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: 999998;
    background: rgba(12, 10, 8, 0.5);
    animation: trm-velo 0.25s ease;
  }

  @keyframes trm-velo {
    from { opacity: 0; }
    to   { opacity: 1; }
  }

  body:has(.navigation-holder.slideInn) {
    overflow: hidden;
  }

  /* Con el panel abierto sobra la hamburguesa: el aspa del panel ya cierra. */
  #site-navigation:has(.navigation-holder.slideInn) .mobail-menu .open-btn {
    opacity: 0;
    pointer-events: none;
  }

  /* ── El panel ──
     dvh y no vh: en el móvil vh cuenta con la barra del navegador desplegada y
     el panel se quedaba corto por abajo. */

  .wpo-site-header #navbar {
    position: fixed;
    top: 0;
    left: calc(-1 * min(88vw, 340px) - 24px);
    z-index: 999999;
    display: flex !important;
    flex-direction: column;
    width: min(88vw, 340px);
    height: 100dvh;
    margin: 0;
    padding: 0;
    border: 0;
    background: #fff;
    box-shadow: 6px 0 34px rgba(20, 16, 12, 0.18);
    opacity: 0;
    visibility: hidden;
    transition: left 0.3s ease, opacity 0.25s ease;
  }

  .wpo-site-header .slideInn {
    left: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  /* ── Cabecera del panel: solo el aspa ── */

  .wpo-site-header .menu-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 40px;
    height: 40px;
    margin: 14px 14px 14px auto;
    padding: 0;
    border: 1px solid #e6e2db;
    border-radius: 10px;
    background: none;
    color: var(--neutro2);
    font-size: 15px;
    line-height: 1;
    transition: border-color 0.2s ease, background-color 0.2s ease;
  }

  .wpo-site-header .menu-close:hover {
    border-color: var(--trm-oro-fuerte, #b8933f);
    background: #faf6ee;
  }

  .wpo-site-header #navbar .close-navbar {
    display: none;
  }

  /* ── La lista ── */

  .wpo-site-header #navbar .navbar-nav,
  .wpo-site-header #navbar > ul {
    display: block;
    flex: 1 1 auto;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0 0 40px;
    border-top: 1px solid #f0ece6;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }

  .wpo-site-header #navbar li {
    position: relative;
    float: none;
    width: 100%;
  }

  .wpo-site-header #navbar > ul > li + li {
    border-top: 1px solid #f4f1ec;
  }

  /* El enlace es una fila: texto a la izquierda, flecha al final. Así la flecha
     no necesita posicionarse en absoluto y no se puede descolocar. */
  .wpo-site-header #navbar > ul > li > a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 14px 16px !important;
    font-size: 0.97rem;
    font-weight: 600;
    line-height: 1.35;
    color: var(--neutro2);
  }

  .wpo-site-header #navbar ul a:hover,
  .wpo-site-header #navbar ul li.current-menu-item > a,
  .wpo-site-header #navbar ul li.current-menu-ancestor > a,
  .wpo-site-header #navbar > ul .menu-item-has-children > a.rotate {
    color: var(--trm-oro-fuerte, #b8933f);
  }

  /* ── Flecha de los submenús ──
     Deja de ser absoluta y pasa a ser un hijo más de la fila. */
  .wpo-site-header #navbar .sub-toggle {
    position: static;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 30px;
    height: 30px;
    margin: 0;
    padding: 0;
    border: 1px solid #e6e2db;
    border-radius: 8px;
    background: none;
    color: var(--neutro4);
    line-height: 1;
    transform: none;
    transition: border-color 0.2s ease, background-color 0.2s ease, color 0.2s ease;
  }

  .wpo-site-header #navbar .sub-toggle.rotate {
    border-color: var(--trm-oro-fuerte, #b8933f);
    background: #faf6ee;
    color: var(--trm-oro-fuerte, #b8933f);
  }

  .wpo-site-header #navbar .sub-toggle i {
    display: block;
    font-size: 10px;
    line-height: 1;
    transition: transform 0.25s ease;
  }

  .wpo-site-header #navbar .sub-toggle.rotate i {
    transform: rotate(180deg);
  }

  /* ── Submenús ──
     Sin tocar display: lo escribe jQuery en línea con slideToggle(). */
  .wpo-site-header #navbar .sub-menu {
    position: static;
    width: auto;
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: #faf9f7;
    box-shadow: none;
    opacity: 1;
    visibility: visible;
    transform: none;
    transition: none;
  }

  .wpo-site-header #navbar .sub-menu li + li {
    border-top: 1px solid #f0ece6;
  }

  .wpo-site-header #navbar .sub-menu a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 12px 16px 12px 28px !important;
    font-size: 0.91rem;
    font-weight: 500;
    line-height: 1.35;
    color: var(--neutro4);
  }

  /* Tercer nivel: un escalón más de sangría y fondo algo más marcado. */
  .wpo-site-header #navbar .sub-menu .sub-menu {
    background: #f4f2ee;
  }

  .wpo-site-header #navbar .sub-menu .sub-menu a {
    padding-left: 40px !important;
    font-size: 0.88rem;
  }

  /* El subrayado que se desliza es cosa del escritorio. */
  .wpo-site-header #navbar .sub-menu a:after,
  .wpo-site-header #navbar > ul > li > a:before,
  .wpo-site-header #navbar > ul > .menu-item-has-children > a:after {
    content: none;
  }
}

/* ── Barra de título ─────────────────────────────────────────────────────── */

/* La foto ya no es background-image: es un <img> de verdad (title-bar.php), que
   el navegador encuentra en el HTML y sirve con srcset. Va detrás del velo, que
   está en z-index -1. */
   .wpo-page-title-section {
    margin-top: 60px !important;
   }
   @media (max-width: 991px) {
    .wpo-page-title-section {
      margin-top: 0px !important; 
    }
   }
.wpo-page-title-section .wpo-page-title-img {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center;
}

/* El velo era un negro plano al 60%. Con un poco de dorado en diagonal entona
   con las demás bandas del sitio sin dejar de hacer legible el texto. */
.wpo-page-title-section:before {
  background:
    linear-gradient(122deg, rgba(120, 86, 30, 0.4) 0%, transparent 48%, rgba(227, 181, 118, 0.22) 100%),
    linear-gradient(180deg, rgba(10, 8, 6, 0.62) 0%, rgba(10, 8, 6, 0.5) 50%, rgba(10, 8, 6, 0.72) 100%);
}

/* ── Tablas del contenido ────────────────────────────────────────────────── */

/*
 * La cabecera iba con --canun-brand y texto blanco (elements.css:99). Ese es el
 * dorado claro, el de los acentos sobre fondo oscuro: con blanco encima da 1,9:1
 * y no se lee. El de relleno es --trm-oro-fuerte, que es justo para lo que está.
 *
 * El relleno era 10px parejo para td y th; la cabecera pedía más aire arriba y
 * abajo, y las celdas también respiran mejor con algo más de alto que de ancho.
 *
 * El :not([class*="wc-block"]) deja fuera las tablas de WooCommerce por bloques.
 * Esto se escribió para las tablas de contenido —la de tallas, [TableProduct]—,
 * pero pillaba también la del carrito: allí el fondo dorado no llegaba a entrar
 * y el color: #fff sí, así que PRODUCTO y TOTAL se quedaban en blanco sobre
 * blanco. Estaban ahí, invisibles.
 */
.page-wraper table:not([class*="wc-block"]) tbody tr th,
.page-wraper table:not([class*="wc-block"]) thead tr th {
  padding: 15px 16px;
  background: var(--trm-oro-fuerte, #b8933f);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.4;
  color: #fff;
  text-align: left;
  text-transform: uppercase;
  vertical-align: middle;
}

/* El tema le ponía un :hover que la volvía gris oscuro. Una cabecera de tabla
   no es pulsable: el cambio de color solo despistaba. */
.page-wraper table:not([class*="wc-block"]) tbody tr th:hover,
.page-wraper table:not([class*="wc-block"]) thead tr th:hover {
  background: var(--trm-oro-fuerte, #b8933f);
}

.page-wraper table:not([class*="wc-block"]) tbody tr td {
  padding: 13px 16px;
  font-size: 0.95rem;
  font-weight: 500;
  line-height: 1.6;
  color: var(--neutro3);
  vertical-align: middle;
}

/* Filas alternas: en tablas largas es lo que evita saltarse una línea. */
.page-wraper table:not([class*="wc-block"]) tbody tr:nth-child(even) td {
  background: #fbfaf8;
}

/* Una tabla ancha se desplaza dentro de su caja, no empuja la página entera. */
.page-wraper .wp-block-table,
.page-wraper figure.wp-block-table {
  overflow-x: auto;
}

/* ── Pie ─────────────────────────────────────────────────────────────────── */

.wpo-site-footer {
  background: #17130f;
  font-size: 0.92rem;
  color: rgba(255, 255, 255, 0.62);
}

.wpo-site-footer .wpo-upper-footer {
  padding: 64px 0 44px;
}

/* Las cabeceras: el sitio donde el dorado se ve de verdad. */
.wpo-site-footer .widget-title {
  margin-bottom: 18px;
}

.wpo-site-footer .widget-title h3,
.wpo-site-footer .contact-widget-inner h3 {
  margin: 0;
  font-family: inherit;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.18em;
  line-height: 1.4;
  color: var(--canun-brand);
  text-transform: uppercase;
}

.wpo-site-footer li,
.wpo-site-footer p,
.wpo-site-footer .about-widget p,
.wpo-site-footer .wpo-lower-footer p,
.wpo-site-footer .contact-ft ul li {
  color: rgba(255, 255, 255, 0.62);
}

.wpo-site-footer .about-widget p {
  max-width: 38ch;
  font-size: 0.9rem;
  line-height: 1.8;
}

.wpo-site-footer .link-widget ul li {
  padding-bottom: 9px;
  font-size: 0.9rem;
}

.wpo-site-footer .link-widget ul li + li,
.wpo-site-footer .contact-ft ul li + li {
  margin-left: 0;
}

/* El tamaño hay que ponerlo en el <a>, no en el <li>: styles.css:3452 se lo
   fija a 17px al enlace y el li no le llega. */
.wpo-site-footer a,
.wpo-site-footer .link-widget ul li a,
.wpo-site-footer .widget_nav_menu ul li a,
.wpo-site-footer .widget ul li a,
.wpo-site-footer .social-widget ul li a,
.wpo-site-footer .wpo-lower-footer p a,
.wpo-site-footer .wpo-lower-footer .copyright a {
  font-size: 0.9rem;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.62);
  text-decoration: none;
  transition: color 0.2s ease;
}

.wpo-site-footer a:hover,
.wpo-site-footer .link-widget ul li a:hover,
.wpo-site-footer .widget_nav_menu ul li a:hover,
.wpo-site-footer .widget ul li a:hover,
.wpo-site-footer .social-widget ul li a:hover,
.wpo-site-footer .wpo-lower-footer p a:hover,
.wpo-site-footer .wpo-lower-footer .copyright a:hover {
  color: #fff;
}

.wpo-site-footer .contact-ft ul li i,
.wpo-site-footer .contact-ft ul li .fi:before {
  color: var(--canun-brand);
}

/* Contacto: el icono deja de ir en absoluto.
   El tema lo colocaba con position:absolute y top:6px, una medida calculada
   para el texto de 17px que tenía antes. Al bajarlo a 0.9rem el icono se quedó
   descolgado de su línea, y el padding-left de 30px sobraba. Ahora la fila es
   flex y el icono es un hijo más: se alinea solo, mida lo que mida el texto. */
.wpo-site-footer .contact-ft ul li {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  padding: 0 0 11px 0;
  font-size: 0.9rem;
}

.wpo-site-footer .contact-ft ul li i {
  position: static;
  flex: 0 0 auto;
  top: auto;
  left: auto;
  line-height: 1.5;
}

.wpo-site-footer .contact-ft ul li .fi:before {
  margin-right: 0;
  font-size: 15px;
}
/* Los redondeles de las redes: apagados en reposo, dorados al pasar. */
.footer-social-link,
.wpo-site-footer .about-widget ul li a {
  border: 1px solid rgba(255, 255, 255, 0.18);
  background: transparent;
  color: rgba(255, 255, 255, 0.72);
}

.footer-social-link:hover,
.wpo-site-footer .about-widget ul li a:hover {
  border-color: var(--canun-brand);
  background: var(--canun-brand);
  color: #17130f;
}

.wpo-site-footer .newsletter-widget input {
  border: 1px solid rgba(255, 255, 255, 0.18);
  background: rgba(255, 255, 255, 0.04);
  color: #fff;
}

.wpo-site-footer .newsletter-widget input::placeholder {
  color: rgba(255, 255, 255, 0.42);
}

.wpo-site-footer .wpo-lower-footer {
  background: transparent;
}

.wpo-site-footer .wpo-lower-footer .row {
  padding: 20px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.wpo-site-footer .wpo-lower-footer .copyright,
.wpo-site-footer .wpo-lower-footer .copyright a,
.wpo-site-footer .wpo-lower-footer p,
.wpo-site-footer .wpo-lower-footer p a {
  font-size: 0.8rem;
  color: rgba(255, 255, 255, 0.4);
}

@media (max-width: 991px) {
  .wpo-site-footer .wpo-service-link-widget {
    padding-left: 0;
  }
}

@media (max-width: 767px) {
  .wpo-site-footer .wpo-upper-footer {
    padding: 48px 0 32px;
  }
}
