css
/*
Theme Name: Adico Service
Author: Doscenter
Description: Tema WordPress basat en el disseny personalitzat d'Adico Service.
Version: 1.0
*/

body {
  font-family: Arial, Helvetica, sans-serif;
  margin: 0;
  padding: 250px;
  color: #2c4a5c;
  font-size: 0.90rem;
  
}

a {
  color: #e37c55;
  text-decoration: none;
}

/* Botó global */
.btn {
  background-color: #2c4a5c; /* blau fosc corporatiu */
  color: #ffffff; /* lletres blanques */
  padding: 12px 28px; /* ample i alt */
  border-radius: 20px; /* cantons rodons */
  font-weight: 600; /* text més gruixut */
  font-size: 0.95rem; /* mida uniforme */
  display: inline-block;
  margin-top: 20px;
  transition: background-color 0.3s ease;
}

/* Hover */
.btn:hover {
  background-color: #1f3644; /* blau més fosc al passar el ratolí */
}

header {
  position: fixed; /* fa que es quedi fix a la pantalla */
  top: 0;
  left: 0;
  width: 100%; /* ocupa tota l'amplada */
  z-index: 9999; /* sempre davant del contingut */
  background: #ffffff;
  padding-left: 20px; /* ajusta padding  */
  padding-top: 50px;
  padding-bottom: 20px;
  padding-right: 20px;
  display: flex; /* activem flexbox */
  justify-content: space-between; /* logo a l'esquerra, menú a la dreta */
  align-items: center; /* centrem verticalment */
  font-family: Arial, Helvetica, sans-serif;
  box-sizing: border-box;
}

header .logo img {
  height: 80px;
}

nav {
  float: none; /* eliminar float */
   display: flex;
  align-items: center;
}

nav a {
  margin-left: 20px;
  font-weight: 500;
  font-size: 14px;
}

.menu a {
  font-size: 16px !important;
}

.header-menu {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.header-translate {
  margin-left: 20px;
}

/* Ajust del selector */
.header-translate .switcher {
  font-size: 0.9rem;
}

/* Dropdown flotant */
.header-translate .switcher .option {
  position: absolute;
  right: 0;
  left: auto;
  z-index: 9999;
}

.hero {
  background: url("img/Banner_1.webp") center/cover
    no-repeat;
  color: white;
  text-align: left;
  padding-top: 300px;
  padding-bottom: 200px;
  padding-left: 90px;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 1.25rem;
}

.hero h1 {
  font-size: 4rem;
  margin-bottom: 20px;
}

.hero .btn {
  background: #e37c55;
}

.hero .btn:hover {
  background: #b8532e;
}

.section {
  padding: 30px;
  text-align: center;
  font-size: 1.1rem;
  font-family: Arial, Helvetica, sans-serif;
}

.section.bg-dark {
  background-color: #2c4a5c;
  color: white;
}

.section.bg-coral {
  background-color: #e37c55;
  color: white;
}

.section .cards {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
  margin-top: 40px;
}

.section .card {
  width: 320px;
  text-align: center;
}

.section .btn {
  background: #e37c55;
}

.section .btn:hover {
  background: #b8532e;
}

/* Cards */
.cards a.card {
  text-decoration: none;
  color: inherit;
  display: block;
  transition:
    transform 0.35s ease,
    box-shadow 0.35s ease;
  cursor: pointer;
}
.cards a.card:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.4);
}

.section.bg-dark .card {
  display: flex;
  flex-direction: column; /* imatge a sobre del text */
  align-items: center;
  text-align: center;
}

/* Imatges circulars */
.section.bg-dark .card img {
  width: 260px;
  height: 260px;
  object-fit: cover;
  border-radius: 50%;
  margin-bottom: 30px;
  background-color: white;
  transition: transform 0.4s ease;
}

.cards a.card:hover img {
  transform: scale(1.05);
}

.cards a.card:hover h3 {
  color: #e37c55; /* o el teu color coral */
  transition: color 0.3s ease;
}

/* Títol sota la imatge */
.section.bg-dark .card h3 {
  font-size: 1.1rem;
  font-weight: 600;
  line-height: 1.3;
  color: white;
}

/* Secció serveis */
.section.bg-coral.services {
  text-align: center;
}

/* Contingut en dues columnes */
.services-content {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 50px;
  margin-top: 40px;
  text-align: left;
}

/* Text */
.services-text {
  max-width: 520px;
  font-family: Arial, Helvetica, sans-serif;
}

/* Imatge */
.services-image img {
  width: 600px;
  max-width: 100%;
  height: auto;
}

/* Botó específic de la secció serveis */
.section.bg-coral .btn {
  background-color: #2c4a5c; /* blau fosc corporatiu */
}

/* Hover elegant */
.section.bg-coral .btn:hover {
  background-color: #1f3644; /* blau una mica més fosc */
  transition: background-color 0.3s ease;
}

/* Menu principal */
nav {
  float: right;
}

/* Menu principal - pantalla gran */
/* Posició relativa del menú per als submenús */
nav .menu {
  display: flex; 
  list-style: none;
  gap: 25px;
  margin: 0;
  padding: 0;
  position: relative;
}

/* Cada item del menú */
nav .menu li {
  position: relative; /* necessari perquè el sub-menu sigui absolut respecte aquest li */
}

/* Submenú */
nav .menu li ul.sub-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  background: #ffffff;
  min-width: 180px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  padding: 10px 0;
  z-index: 1000;
}

/* Mostrar submenú al posar el cursor sobre el pare */
nav .menu li:hover > ul.sub-menu {
  display: block;
}

/* Enllaços del submenú */
nav .menu li ul.sub-menu li {
  display: block;
}

nav .menu li ul.sub-menu li a {
  display: block;
  padding: 8px 20px;
  color: #2c4a5c;
  font-weight: 500;
  white-space: nowrap; /* evita que es trenqui */
}

/* Afegir fletxa al costat dels elements amb submenú */
nav .menu li.menu-item-has-children > a::after {
  content: " ▼"; /* fletxa simple */
  font-size: 0.7rem; /* ajusta mida */
  margin-left: 5px; /* espai entre text i fletxa */
  transition: transform 0.3s ease; /* animació opcional */
}

/* Opcional: rotar fletxa quan es passa el cursor (desktop) */
nav .menu li.menu-item-has-children:hover > a::after {
  transform: rotate(-180deg);
}

nav .menu li ul.sub-menu li a:hover {
  background-color: #e37c55;
  color: #ffffff;
}

nav .menu li a {
  font-weight: 600;
  color: #2c4a5c;
  text-decoration: none;
  transition: color 0.3s ease;
}

nav .menu li a:hover {
  color: #e37c55;
}

nav a {
  font-weight: 600;
  color: #2c4a5c;
  text-decoration: none;
  transition: color 0.3s ease;
}

nav a:hover {
  color: #e37c55;
}

/* Hamburger */
.menu-toggle {
  display: none;
  flex-direction: column;
  cursor: pointer;
  gap: 5px;
}

.menu-toggle span {
  width: 25px;
  height: 3px;
  background: #2c4a5c;
  border-radius: 2px;
}
/* Menú horitzontal desktop */
header nav {
  display: flex;
  gap: 30px;
}

header nav ul.menu {
  display: flex;
  gap: 25px;
  list-style: none;
  margin: 0;
  padding: 0;
}

header nav ul.menu li {
  position: relative;
}

header nav ul.menu li ul.sub-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  background: #fff;
  padding: 10px 0;
  min-width: 180px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

header nav ul.menu li:hover > ul.sub-menu {
  display: block;
}

header nav ul.menu li ul.sub-menu li a {
  display: block;
  padding: 8px 20px;
  color: #2c4a5c;
}

header nav ul.menu li ul.sub-menu li a:hover {
  background-color: #e37c55;
  color: #fff;
}

nav ul.menu li.menu-item-has-children > a::after {
  content: " ▼";
  font-size: 0.7rem;
  margin-left: 5px;
  transition: transform 0.3s ease;
}

nav ul.menu li.menu-item-has-children:hover > a::after {
  transform: rotate(-180deg);
}
nav ul.menu > li > a {
  font-size: 1.2rem; /* abans podria ser 1rem o 0.95rem */
  font-weight: 600;
  color: #2c4a5c;  
}

/* Responsive */
@media (max-width: 900px) {
  /* Mostrem toggle hamburguesa */
  .menu-toggle {
    display: flex;
  }
  .hero{
  padding-left: 50px;
  }
  .hero h1{
    font-size: 3rem;
}

  /* Amaguem el menú per defecte */
  header nav {
    display: none; /* per defecte, es mostra amb toggle */
    flex-direction: column;
    width: 100%;
    height: calc(100vh - 80px); /* ocupa tota l'altura menys el header */
    text-align: center;
    background: #ffffff;
    position: absolute;
    top: 80px; /* just sota el header */
    left: 0;
    padding: 0;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    z-index: 999;
    align-items: center; /* opcional: centra horitzontalment */
            margin-top: 50px;
        padding-top: 150px;
  }

  /* Mostrar menú quan s’activa */
  header nav.active {
    display: flex;
  }

  /* Elements verticals */
  header nav ul.menu {
    flex-direction: column;
    gap: 30px; /* espai entre elements principals */
    padding: 0;
    margin: 0;
    list-style: none;
  }

  /* Elements principals del menú */
  header nav > ul.menu > li > a {
    padding: 25px 20px; /* més alt per aire extra */
    font-size: 1.1rem;
    display: block;
  }

  header nav ul.menu li {
    border-bottom: 1px solid #eee;
  }

  header nav ul.menu li a {
    padding: 18px 20px;
    font-size: 1.05rem;
  }

  /* Submenú mòbil */
  header nav ul.menu li ul.sub-menu {
    position: static;
    display: none;
    flex-direction: column;
    padding-left: 30px;
    box-shadow: none;
  }

  /* Obrir submenú quan es clica */
  header nav ul.menu li.open > ul.sub-menu {
    display: flex;
  }
  /* Augmentar espai entre subitems */
  header nav ul.menu li ul.sub-menu li a {
    padding: 14px 20px; /* més alt que abans */
  }
}
/* Scroll suau */
html {
  scroll-behavior: smooth;
}

/*Propuestas tecnicas*/
.contenido {
    display: flex;
    gap: 20px; /* espai entre columnes */
    flex-wrap: wrap; /* perquè en mòbil les columnes baixin */
}

.contenido > div:first-child {
    flex: 0 0 66%; /* primera columna 66% */
}

.contenido > div:last-child {
    flex: 0 0 34%; /* segona columna 34% */
    text-align: left;
}

.contenido img {
    width: 100%; /* perquè la imatge s’adapti a la columna */
    height: auto;
}

/* Opcional: responsiu */
@media screen and (max-width: 768px) {
    .contenido > div {
        flex: 0 0 100%; /* a mòbil, columna completa */
    }
    
}

.propuesta {
  max-width: 1000px;
  margin: 0 auto;
  /* padding: 60px 20px; */
  text-align: left;
}

.propuesta .contenido {
  display: flex;
  gap: 40px;
  align-items: flex-start;
  margin-top: 30px;
}

.propuesta .contenido img {
  width: 400px;
  border-radius: 8px;
}

.propuesta ul {
  list-style: disc;
  margin-top: 20px;
  padding-left: 25px;
}

.propuesta li {
  margin-bottom: 8px;
}

.propuesta .btn {
  margin-top: 40px;
  display: inline-block;
}

.headerPropuestas {
  margin-top: 100px;
  margin-bottom: 50px;
  background: #2c4a5c;
  color: #ffffff;
  padding: 40px 20px;
  text-align: center;

  font-family: Arial, Helvetica, sans-serif;
}

.col-esquerra img {
  border-radius: 8px;
}
.sectionContact {
  padding: 20px 20px;
  padding-bottom: 70px;
  text-align: center;
  font-size: 1rem;
  font-family: Arial, Helvetica, sans-serif;
}

.sectionContact .btn {
  background: #e37c55;
}

.sectionContact .btn:hover {
  background: #b8532e;
}

.propuesta .contenido h2 {
  color: #e37c55;
}

.section-header {
  max-width: 900px;
  margin: 0 auto 60px auto;
  text-align: center;
}

.section-header h2 {
  color: #e37c55;
  margin-bottom: 15px;
}

.section-header .subtitulo {
  font-size: 1.3rem;
  color: #2c4a5c;
  line-height: 1.6;
}

/* =====================================================
   PROPOSTAS TÉCNICAS 
===================================================== */

/* Header */
.headerPropuestas {
  margin-top: 100px;
  background: #2c4a5c;
  color: #ffffff;
  padding: 40px 20px;
  text-align: center;
  font-size: 1.25rem;
  padding-top: 100px;
}

/* Seccions pròpies */
.section_propuesta {
  align-items: center;
}
.section h2{
  text-align: center;
  margin-bottom: 20px;
}
/* .section p{
  text-align: left;
} */
/* Contenidor intern */
.section_propuesta .contenido {
    display: flex;
    max-width: 1000px;   /* amplada màxima del bloc */
    gap: 20px;           /* espai entre columnes */
    align-items: flex-start;
    justify-content: center; /* centra les columnes dins del container */
    margin: 0 auto;      /* centra tot el bloc a la pantalla */
    flex-wrap: wrap;     /* permet que es pugin a columna en pantalles petites */
}

.contenido {
    display: flex; /* Activem flexbox */
    gap: 20px; /* Espai entre els divs, opcional */
}

.contenido > div:first-child {
    flex: 2; /* 2/3 de l'espai */
}

.contenido > div:last-child {
    flex: 1; /* 1/3 de l'espai */
}

.contenido > div:first-child img {
    width: 100%;
    height: auto;
    display: block;
} 

/* Títols */
.section_propuesta h2 {
  color: #e37c55;
}

/* Imatges */
.section_propuesta img {
  width: 100%;
  /* max-width: 400px; */
  border-radius: 8px;
  margin-top: 10px;
}

/* Paràgrafs */
.section_propuesta p {
  margin-bottom: 15px;
}

/* Llistes */
.section_propuesta ul {
  list-style: disc;
  padding-left: 50px;
  margin-top: 15px;
}

.section_propuesta li {
  margin-bottom: 8px;
  margin-left: 30px;
}

/* Responsive */
@media (max-width: 900px) {
  .section_propuesta .contenido {
    flex-direction: column;
    gap: 30px;
  }

  .services-content {
    flex-direction: column; /* passa a columna */
    align-items: center; /* centra les imatges i el text */
    gap: 30px; /* ajusta espai vertical entre elements */
    text-align: center; /* opcional: centra text dins de la columna */
  }

  .services-text {
    max-width: 100%; /* ocupa tota l'amplada disponible */
  }

  .services-image img {
    width: 100%; /* imatge responsive */
    max-width: 600px; /* manté un màxim si vols */
    height: auto;
  }
}

/* =====================================================
   SERVICIOS
===================================================== */

/* Contenidor principal */
.services-list {
  font-family: Arial, Helvetica, sans-serif;
  padding: 80px 20px;
  max-width: 1000px;
  margin: 0 auto;
  font-size: 1rem;
}

/* Cada servei */
.service-item {
  display: flex;
  align-items: center;
  gap: 60px;
  margin-bottom: 30px;
}


.service-icon img {
  width: 70px;
  margin-bottom: 15px;
}

.service-icon h3 {
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 1px;
  
}

/* Text */
.service-text {
  flex: 1;
}

.service-text h3{
color: #2c4a5c;
}
.headerServicios {
  margin-top: 100px;
  background: #e37c55;
  color: #ffffff;
  padding: 40px 20px;
  text-align: center;
  font-size: 1.25rem;
  font-family: Arial, Helvetica, sans-serif;
  padding-top: 100px;
}

@media (max-width: 900px) {
  .service-item {
    flex-direction: column;
    text-align: center;
    gap: 25px;
  }

  .service-icon {
    width: auto;
  }
}

/* =====================================================
   QUIENES SOMOS
===================================================== */

.headerPage {
  padding: 60px 0;
  text-align: center;
  background: #234e5a;
  color: #fff;
}

.propuesta h2 {
  color: #e37c55;
  margin-bottom: 40px; 
}

.sectionAbout {
  padding: 60px 0;
}

.aboutImage img {
  width: 50%;
  height: auto;
  margin-bottom: 30px;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.aboutContent h2 {
  color: #e66b3c;
  margin-top: 30px;
}

.sectionContact {
  padding: 60px 0;
  text-align: center;
}

.sectionContact .btn {
  background: #e66b3c;
  color: #fff;
  padding: 12px 30px;
  border-radius: 25px;
  text-decoration: none;
}

.section-quote {
  padding: 80px 20px;
  background-color: #ececec;
}

.quote-wrapper {
  max-width: 900px;
  margin: 0 auto;
  text-align: center;
}

.quote-text p:first-child {
  font-size: 1.2rem;
  margin-bottom: 20px;
}

blockquote {
  position: relative;
  padding: 20px 40px;
}

blockquote p {
  font-size: 2rem;
  line-height: 1.4;
  color: #234e5a;
  font-weight: 500;
}

/* Cometes decoratives */
blockquote::before {
  content: "“";
  font-size: 4rem;
  color: #e66b3c;
  position: absolute;
  left: 0;
  top: -10px;
}

blockquote::after {
  content: "”";
  font-size: 4rem;
  color: #e66b3c;
  position: absolute;
  right: 0;
  bottom: -20px;
}

/* =====================================================
   CITA DESTACADA – QUIENES SOMOS (TEXT)
===================================================== */
.section-quote {
  padding: 60px 20px;
  font-family: Arial, Helvetica, sans-serif;
  text-align: center;
}

.section-quote .quote-wrapper {
  max-width: 1000px;
  margin: 0 auto;
}

.section-quote .quote-text > p {
  font-size: 1rem; /* mateix tamany que les altres seccions */
  text-align: center;
  margin-bottom: 20px;
}

.section-quote blockquote {
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 1.4;
  color: #2c4a5c;
  margin: 0 auto;
  text-align: center;
  position: relative;
  padding: 0 60px; /* espai per les cometes */
}

.section-quote blockquote p {
  margin: 0;
}

/* Cometes decoratives */
.section-quote blockquote::before {
  content: "“";
  font-size: 3.5rem;
  color: #e37c55;
  position: absolute;
  left: 10px;
  top: -10px;
}

.section-quote blockquote::after {
  content: "”";
  font-size: 3.5rem;
  color: #e37c55;
  position: absolute;
  right: 10px;
  bottom: -10px;
}

/* =====================================================
   HEADER IMAGE – QUIENES SOMOS
===================================================== */
.section-header-image {
  padding-top: 40px; /* espai superior i inferior */
  text-align: center; /* centra el contingut */
  background: #ffffff; /* opcional: fons blanc */
}

.section-header-image .header-image-wrapper {
  width: 1000px; /* amplada fixa com el contingut */
  max-width: 100%; /* per ser responsive en pantalles petites */
  margin: 0 auto; /* centra horitzontalment */
}

.section-header-image .header-image-wrapper img {
  width: 100%; /* ocupa tot el contenidor */
  height: auto; /* manté proporció */
  display: block;
}

/* =========================
  CONTACTO
========================= */

.contact-container {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  max-width: 1100px;
  margin: 0 auto;
  padding: 60px 20px;
  font-family: Arial, Helvetica, sans-serif;
}

.contact-columns {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
}

.contact-left,
.contact-right {
  flex: 1;
  min-width: 300px;
}

/* =========================
  COLUMNA ESQUERRA
========================= */

.contact-left p {
  line-height: 1.6;
  margin-bottom: 15px;
  color: #2c4a5c;
  font-size: 1rem;
}

.contact-left .map-container {
  margin-top: 20px;
  border-radius: 8px;
  overflow: hidden;
}

.contact-left iframe {
  width: 100%;
  height: 300px;
  border: 0;
}

/* =========================
  COLUMNA DRETA (FORMULARI)
========================= */

.contact-right {
  font-size: 1rem;
}

/* Espai entre camps */
.contact-right .wpcf7-form p {
  margin-bottom: 10px;
}

/* =========================
  LABELS NORMALS (NO checkbox)
========================= */

.contact-right .wpcf7-form p:not(.wpcf7-checkbox):not(.wpcf7-radio) > label {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  font-weight: 600;
  color: #2c4a5c;
  font-size: 1rem;
  text-align: left;
}

/* =========================
  INPUT + ERROR SEMPRE EN COLUMNA
========================= */

.contact-right .wpcf7-form-control-wrap {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.contact-right .wpcf7-form-control {
  width: 100%;
}

.contact-right input.wpcf7-text,
.contact-right input.wpcf7-email,
.contact-right input.wpcf7-tel,
.contact-right textarea.wpcf7-textarea {
  padding: 15px 20px;
  border: 1px solid #ccc;
  border-radius: 8px;
  margin-top: 5px;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
  font-size: 1rem;
}

.contact-right input.wpcf7-text:focus,
.contact-right input.wpcf7-email:focus,
.contact-right input.wpcf7-tel:focus,
.contact-right textarea.wpcf7-textarea:focus {
  border-color: #e37c55;
  box-shadow: 0 0 5px rgba(227, 124, 85, 0.5);
  outline: none;
}

/* Missatge d’error sota l’input */
.contact-right .wpcf7-not-valid-tip {
  display: block;
  width: 100%;
  margin-top: 6px;
  font-size: 0.9rem;
  color: #dc3232;
}

/* Espai entre camps més compacte */
.contact-right .wpcf7-form p {
  margin-bottom: 6px;   /* abans 10px */
}

/* Labels sense marge inferior extra */
.contact-right .wpcf7-form p:not(.wpcf7-checkbox):not(.wpcf7-radio) > label {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  font-weight: 600;
  color: #2c4a5c;
  font-size: 1rem;
  margin-bottom: 0;   /* eliminem marge extra */
}

/* Input més ajustat */
.contact-right input.wpcf7-text,
.contact-right input.wpcf7-email,
.contact-right input.wpcf7-tel,
.contact-right textarea.wpcf7-textarea {
  padding: 12px 16px;   /* una mica menys alt */
  margin-top: 3px;      /* abans 5px */
}


/* =========================
  CHECKBOX I RADIO
========================= */

.contact-right .wpcf7-form p.wpcf7-checkbox,
.contact-right .wpcf7-form p.wpcf7-radio {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  align-items: center;
}

/* Reduïm espai entre els blocs de checkbox */
.contact-right .wpcf7-checkbox {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-bottom: 3px;   /* abans 6px */
  gap: 0;               /* eliminar gap horitzontal extra si vols més compacte */
}

/* Cada checkbox en línia */
.contact-right .wpcf7-checkbox label {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  gap: 6px;             /* espai entre checkbox i text */
  font-weight: 600;
  color: #2c4a5c;
  font-size: 1rem;
  margin-right: 10px;   /* espai entre opcions */
  margin-bottom: 2px;   /* abans 4px */
}

/* Error del checkbox compacte */
.contact-right .wpcf7-checkbox .wpcf7-not-valid-tip {
  margin-top: 2px;
  margin-bottom: 2px;
  font-size: 0.85rem;
}

/* Contenidor checkbox + text + enllaç */
.contact-right p.wpcf7-checkbox label > span.wpcf7-form-control-wrap {
  display: inline-flex;
  align-items: center;
  gap: 6px;   /* abans 10px, més compacte */
}

/* Enllaç dins checkbox */
.contact-right p.wpcf7-checkbox label a {
  font-size: 1rem;
  color: #e37c55;
  text-decoration: underline;
  white-space: nowrap;
}

/* Evitar marges estranys */
.contact-right .wpcf7-checkbox input[type="checkbox"] {
  margin: 0;
}

/* Eliminar els salts de línia dins de labels de checkbox */
.contact-right .wpcf7-form p label br {
  display: none;
}

/* Opcional: assegurem que l’enllaç "ver aquí" segueixi al costat del text */
.contact-right .wpcf7-form p label a {
  display: inline;          /* no fa salt de línia */
  vertical-align: middle;
  font-size: 1rem;
  color: #e37c55;
  text-decoration: underline;
  white-space: nowrap;
}
/* =========================
  BOTÓ
========================= */

.contact-right input.wpcf7-submit {
  background-color: #e37c55;
  color: #ffffff;
  font-weight: 600;
  font-size: 1rem;
  padding: 15px 40px;
  border: none;
  border-radius: 25px;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.contact-right input.wpcf7-submit:hover {
  background-color: #b8532e;
}

/* Missatge resposta */
.contact-right .wpcf7-response-output {
  margin-top: 15px;
  font-weight: 600;
  color: #e37c55;
  font-size:1rem;
}
.wp-block-quote {
    background-color: #f5f5f5;
    border-left: 4px solid #e37c55;
    padding: 10px 15px;
    font-style: normal;
}
.wp-block-quote p {
    font-size: 1rem;
}

/* =========================
  RESPONSIVE
========================= */

@media (max-width: 900px) {

  .contact-columns {
    flex-direction: column;
  }

  .contact-left,
  .contact-right {
    min-width: 100%;
  }

  .contact-left p,
  .contact-right label,
  .contact-right .wpcf7-response-output {
    font-size: 1.2rem;
  }

  .contact-right input.wpcf7-text,
  .contact-right input.wpcf7-email,
  .contact-right input.wpcf7-tel,
  .contact-right textarea.wpcf7-textarea {
    font-size: 1.2rem;
    padding: 12px 15px;
  }

  .contact-right input.wpcf7-submit {
    font-size: 1.2rem;
    padding: 12px 25px;
  }
}

/* =====================================================
   FOOTER
===================================================== */

.footer {
  background-color: #2c4a5c; /* blau corporatiu */
  color: #ffffff;
  padding: 60px 20px 30px;
  font-family: Arial, Helvetica, sans-serif;
}

.footer-container {
  max-width: 1100px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  gap: 40px;
  flex-wrap: wrap;
}

.footer-col {
  flex: 1;
  min-width: 220px;
}

.footer-col h4 {
  margin-bottom: 20px;
  font-size: 1.1rem;
  font-weight: 600;
}

.footer-col p,
.footer-col a {
  display: block;
  margin-bottom: 10px;
  font-size: 1rem;
  color: #ffffff;
  transition: color 0.3s ease;
}

/* Hover coral corporatiu */
.footer-col a:hover {
  color: #e37c55;
}

.footer-bottom {
  margin-top: 40px;
  padding-top: 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  text-align: center;
  font-size: 0.9rem;
  opacity: 0.8;
}

@media (max-width: 900px) {
  .footer-container {
    flex-direction: column;
    text-align: center;
  }
}

/* =====================================================
   POLÍTICAS  – PÀGINA ESPECIAL
===================================================== */

.politica {
  max-width: 1000px;
  margin: 0 auto;
  padding: 60px 20px;
  font-size: 1.2rem;
  text-align: left;
  font-family: Arial, Helvetica, sans-serif;
}

.politica h1,
.politica h2,
.politica h3 {
  color: #e37c55; /* mateix color títols que seccions */
  font-weight: 700;
  margin-top: 40px;
  margin-bottom: 20px;
}

.politica p {
  line-height: 1.8;
  margin-bottom: 20px;
  color: #2c4a5c; /* color del text principal del theme */
}

.politica ul,
.politica ol {
  padding-left: 40px;
  margin-bottom: 20px;
}

.politica li {
  margin-bottom: 10px;
}

.politica a {
  color: #e37c55;
  text-decoration: underline;
}

.politica a:hover {
  color: #b8532e;
}

@media (max-width: 900px) {
  .politica {
    font-size: 1rem;
    padding: 40px 20px;
  }
}
