@import url("../css/button/styleButton.css");

:root {
  --primary: #0f4c81;
  --secondary: #0f766e;
  --tertiary: #7dd3fc;
  --fourth: #374151;
  --btn-color: #0f4c81;
  --title: #0f172a;
  --text: #0b1220;
  --btn-hover-color: #0b3b5a;
  --btn-border-color: #083054;
}

body {
  overflow-x: hidden;
  background-color: var(--primary);
  background-image: url("/assets/bg-Plumbing.png");
  background-size: cover;
  background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
}

body::before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.2); /* Color blanco con opacidad */
  pointer-events: none; /* Permite interactuar con los elementos debajo */
  z-index: -1; /* Asegura que esté detrás del contenido */
}

/* Estilos para el scrollbar */
::-webkit-scrollbar {
  width: 12px; /* Ancho de la barra de desplazamiento */
}

/* Handle del scrollbar */
::-webkit-scrollbar-thumb {
  background: var(--btn-hover-color); /* Color del handle */
  border-radius: 6px; /* Bordes redondeados */
}

.scroolbarSubBlock::-webkit-scrollbar {
  width: 6px; /* Ancho de la barra de desplazamiento */
}

.scroolbarSubBlock::-webkit-scrollbar-thumb {
  background: var(--btn-hover-color); /* Nuevo color del handle */
  border-radius: 8px; /* Bordes redondeados */
}

.scroolbarSubBlock::-webkit-scrollbar-track {
  background: var(
    --btn-color
  ); /* Color de fondo de la barra de desplazamiento */
  border-radius: 8px; /* Bordes redondeados */
}

/* ***************************************************************************************************************** */

/* estilo de gallery masonry */

.my-masonry-grid {
  display: -webkit-box; /* Not needed if autoprefixing */
  display: -ms-flexbox; /* Not needed if autoprefixing */
  display: flex;
  justify-content: center;
  margin-left: -30px; /* gutter size offset */
  width: auto;
}
.my-masonry-grid_column {
  padding-left: 30px; /* gutter size */
  background-clip: padding-box;
}

/* Style your items */
.my-masonry-grid_column > div {
  /* change div to reference your elements you put in <Masonry> */
  background: grey;
  margin-bottom: 20px;
}

/* ***************************************************************************************************************** */

@keyframes slideIn {
  0% {
    opacity: 0;
    transform: translateX(-50%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

.slide {
  animation: slideIn 0.5s ease-in-out;
}

/* Estilos para la sección de contacto tipo tarjeta */
.service-contact-section {
  /* Imagen de fondo tipo landing con overlay para legibilidad */
  background-image:
    linear-gradient(rgba(6, 10, 30, 0.65), rgba(6, 10, 30, 0.65)),
    url("/assets/images/stockWeb/bg.png");
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.service-contact-card form-contact,
.service-contact-card form-contact * {
  /* Estilo base para los inputs generados por el componente */
  color: var(--text);
}

.service-contact-card input,
.service-contact-card textarea,
.service-contact-card select {
  background: #ffffff;
  border-radius: 10px;
  padding: 12px 14px;
  border: none;
  box-shadow: none;
  width: 100%;
  outline: none;
  color: var(--text);
}

.service-contact-card textarea {
  min-height: 160px;
  resize: vertical;
}

.service-contact-card .form-row {
  display: flex;
  gap: 12px;
}

@media (max-width: 768px) {
  .service-contact-card .form-row {
    flex-direction: column;
  }
}

@keyframes spinSlow {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

.animate-spin-slow {
  animation: spinSlow 12s linear infinite;
  transform-origin: 50% 50%;
}



/* Clase para aplicar borde concavo usando filtros SVG */
.concaveborder{
  --r: 18px; /* radio por defecto */
  --c: var(--primary, #0f4c81); /* color por defecto */
  position: relative;
}
.concaveborder::before{
  content: '';
  position: absolute;
  z-index: -1;
  inset: 0;
  background:
    linear-gradient(transparent 30%, var(--c) 0),
    conic-gradient(at 60% 15%, var(--c) 75%, transparent 0) 0 0/55% no-repeat;
  /* Referencia a filtro SVG; define #round0 en el DOM */
  filter: url(#round0);
}
/* Si hay dos elementos consecutivos, aplicar blur y otro filtro */
.concaveborder + .concaveborder::before{
  filter: blur(calc(0.5 * var(--r))) url(#round1);
}


