 body {
/* background-color:#EDE8D0;  */
	/* background-color: #905010;  */
  /* font-family: Arial, sans-serif; */
  /* font-size: 16px;  */
} 


.container2 {
  position: relative;
}

 .image2 {
   display: block;
	
 margin: 20px;
  max-width: 50px;
  max-height: 50px;
	
}  

 .image2 img {
  height: 100%;
  width: 100%;
} 

/*

.info2 {
  margin: 350;
  position: absolute;
  left: 300px;
  top: 50%;
  transform: translateY(-50%);
}

.info2 .title
 {
  display: block;
}

.info2.title {
  color: #1b3565; 
  font-weight: bold;  
}

*/


#texto
			{
				margin: 5px;
				padding: 20px;
				display: inline-block
			}
#titulin
			{
			/*	 display: block; */
				margin-top: 15px;
    		/*	margin-bottom: 0px;  */
    			margin-left: 60px;
    		/*	margin-right: auto;  */
			/*	height: 120px;
				width: 120px; */
				
			}

#titulin2
			{
			/*	 display: block; */
				margin-top: 8px;
    		/*	margin-bottom: 0px;  */
    			margin-left: 40px;
    		/*	margin-right: auto;  */
			/*	height: 120px;
				width: 120px; */
				
			}

.formulari
{
float:right;
}

/*
.info2 {
  margin: 350;
  position: absolute;
  left: 300px;
  top: 50%;
  transform: translateY(-50%);
}

*/

.info2 {
  /* margin: 100;  */
  /* position: absolute; */
  margin-left: 300px;
  
   margin-top : -70px; 
  /* transform: translateY(-50%);  */
 display: block;



} 

/*
.info2 .title
 {
  display: block;
}

.info2.title {
  color: #1b3565; 
  font-weight: bold;  
}

*/
.centrada {

/*  display: inline;  */
/*  display: block;  */
/* position: relative; */
/*   margin: 10px 98%;  */
  margin-left: 98%; 
/* margin-bottom:10px;  */





}


/* Menú principal */
#wrap-menu-principal.navbar { min-height: inherit; margin-bottom: 0; border: 0; border-radius: 0; }
#wrap-menu-principal .navbar-brand { height: auto; }
#wrap-menu-principal .navbar-brand img { max-height: 60px; }
#menu-principal { /* padding: 0; */ margin-right: -150px; }
#menu-principal a, #menu-secundari a { color: #333333; text-transform: uppercase; transition: all 0.4s; line-height: 40px; padding-top: 0; padding-bottom: 0; }
#menu-principal .nav > li > a, #menu-secundari .nav > li > a { line-height: 85px; /* color: #FFFFFF; */ }
#menu-principal .nav > li.active > a, #menu-principal .nav > li > a:hover, #menu-principal .nav > li > a:active { color: #202971; background-color: transparent; }
/* #menu-principal .nav > li > a:hover, #menu-principal .nav > li > a:focus { background: transparent; }*/
/* #menu-principal .nav > li.active > a { font-weight: bold; border-bottom: 5px solid #AC7A2A; } */

#menu-principal .dropdown-menu { right: inherit; }
.navbar-toggle { background-color: #FFF; }
.navbar-toggle .icon-bar { background-color: #000; }

#menu-principal a.hvr-underline-reveal::before { background: #202971; }
#menu-principal li.active .hvr-underline-reveal::before { background: #202971; }

/*#menu-principal .nav.navbar-secundari.little-menu{ position: absolute; right: 15px;  }*/
.little-menu #menu-principal .nav > li > a{ line-height: 65px; }
.little-menu .navbar-secundari::before{ border-bottom: 65px solid #202971; }
.little-menu .navbar-brand{ padding-bottom: 0; }

/*@media (max-width: 1200px) {*/ 
@media (min-width: 980px) and (max-width: 1199px) {
       /*#wrap-menu-principal .navbar-brand img{ max-width: 30px;}*/
       .row-md-eq-height { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; }
       .row-md-eq-height .panel{ height: 100%; }
       .row-sm-eq-height { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; }
       .row-sm-eq-height .panel{ height: 100%; }  
}


.menu {
	z-index: 3;
	position: fixed;
	top: 0;
	left: 0;
	padding: 0px;
	width: 100%;
	background-color: #20408D;
	opacity: 0.9;
	cursor: pointer;
	color: white;
}



/*=== INICI FOOTER ===*/

footer {
    background: #222222;
    padding: 20px 0 0;
}
footer ul li.subtitol:first-child {
    font-weight: 600;
    color: #ffffff;
    font-size: 10px;
    margin-bottom: 3px;
}
footer ul li {
    line-height: 12px;
}
footer ul li a {
    color: #c7c7c7;
    font-size: 10px;
}
footer ul li a:hover {
    color: #ffffff;
}
footer .direccio {
    color: #ffffff;
    font-size: 10px;
}
footer .titol {
    color: #ffffff;
    font-size: 12px;
    margin-bottom: 5px;
}
footer .direccio a {
    color: #0091cf;
}
footer .direccio a:hover {
    color: #ffffff;
}

.postFooter {
    background: #181818;
    min-height: 30px;
    line-height: 10px;
    margin-top: 10px;
 /*   margin-left:40px; */
text-align: right;
}


.postFooter ul {
    margin-bottom: 0;
}
.postFooter ul li {
    color: #a0a0a0;
    font-size: 9px;
}
.postFooter ul li a {
    color: #a0a0a0;
    font-size: 9px;
}
.postFooter ul li a:hover {
    color: #ffffff;
}


.postFooter span {
    height: 20px;
    width: 20px;
    background-color: #858585;
    line-height: 20px;
    text-align: center;
    color: #181818;
    margin: 5px 2px;
    float: right;
}

/*=== FI FOOTER ===*/


html,body{
  overflow-x: hidden;
  color:black;
  /* font-family:'Opens Sans',helvetica;    */
	font-family: "sans-serif", Arial;
  /* font-family: "Roboto Flex", sans-serif; */
  height:100%;
  width:101%;
  margin: 0px;
  padding: 0px;
}

/*--- NAVBAR   ----*/

.navbar {
    background: none;
  /*  border: none;  */
    margin-bottom: 0;
    border-radius: 0;
    margin-left: 175px;
	
}
.navbar-collapse {
    padding-left: 0;
    padding-right: 0;
}
.navbar-default .navbar-nav>li>a {
    color: #ffffff !important;
    font-size: 13px;
    font-weight: 400;
    text-transform: uppercase;
}
.navbar-default .navbar-nav>li>a:hover {
    background: none;
    color: #fff;
    font-size: 13px;
}

.navbar-default .navbar-nav>.open>a, .navbar-default .navbar-nav>.open>a:focus, .navbar-default .navbar-nav>.open>a:hover {
    background: none !important;
    color: #fff;
}
.navbar-default .navbar-nav>.open>a div, .navbar-default .navbar-nav>.open>a:focus div, .navbar-default .navbar-nav>.open>a:hover div {
    border-bottom: 5px solid #fff;
}
.navbar-default .navbar-nav>li > a > div {
    border-bottom: 5px solid transparent;
    padding-bottom: 5px;
}
.navbar-default .navbar-nav>li:hover > a > div {
    border-bottom: 5px solid #fff;
}
.navbar-default .navbar-toggle .icon-bar {
    background: #fff;
}
.navbar-default .navbar-toggle:focus, .navbar-default .navbar-toggle:hover {
    background: #fff;
}
.navbar-default .navbar-toggle:focus .icon-bar, .navbar-default .navbar-toggle:hover .icon-bar {
     background: #0078cb;  
}
.navbar-default .navbar-collapse, .navbar-default .navbar-form {
    border-top: none;
}



#derecha {
 /* text-align : right; */
  float: right;  

  position: relative; 
  top: -300px;
  left: 400px;

}

#mapaarriba {
margin-top: -290px;
width: 1550px; 
	margin-left:200px;
  
} 


/* INTERIORES */


/* Page */
.page .carousel-gallery .wrap-img-cover-object { height: 550px; }
.page .page_with_subpages .page-content { padding: 35px 50px 35px 50px; }
.page .page_with_subpages .carousel-gallery .wrap-img-cover-object { height: 485px; }
.page .line-height-featured {line-height: 30px; font-size: 18px; font-style: italic; text-align: center; margin-bottom: 60px;}
.page .page-content hr { border-color: #ADADAD; }
.page .page-content { padding: 20px 50px 20px 50px;  }
#wrap-contenido.bg-grey .page-content article h2 {text-align: left; }
.wrap-img .page-content { color: #FFF; }
.wrap-img .page-content h2 { color: #FFF; }

.page ul {margin: 10px 0 20px 0;}
/* .page ul li {margin: 10px 0; text-align: left; width: 90%;}  */


.click_a img { transition: 0.25s all;  }
.click_a:hover img { -ms-transform: scale(1.05, 1.05); /* IE 9 */ -webkit-transform: scale(1.05, 1.05); /* Safari */ transform: scale(1.05, 1.05); }
.click_a:hover .panel-img img { -ms-transform: scale(1.00, 1.00); /* IE 9 */ -webkit-transform: scale(1.00, 1.00); /* Safari */ transform: scale(1.00, 1.00); opacity: 0.7;}


#sidebar ul li {padding: 15px ; border-bottom: 1px solid #eeeeee;}
.list-documents li { padding: 15px 0 15px 0; border-bottom: 1px solid #eeeeee;  }
.list-documents li a { display: block;}

/* Single */
.icona {max-width: 90px;}
#wrap-contenido.bg-grey {padding-top:30px;}
#wrap-contenido.bg-grey.novetats {padding-top:0px;}
#wrap-contenido.bg-grey .page-content {padding: 0px 50px 10px 50px; }

.gallery-image .picture figure a img.img-responsive { width: 10%; }

#items-related { margin-top: 30px; }

/* Single: serveis 
#prefooter-serveis { margin-top: 75px;  padding-top: 50px; padding-bottom: 50px; }
#prefooter-serveis h3 { font-size: 14px; font-weight: 100; color: #05902D; font-weight: 300; }
#prefooter-serveis h3 a { color: inherit; }  */

/* Single: novetats */
.padding_thumbs { margin-top: 6px; padding-left: 3px; padding-right: 3px; }
.padding_thumbs:first-of-type { margin-top: 0; }





/* List */
.mapa-serveis-iframe {width: 100%; height: 550px; border: 0; margin: 25px 0; }
.items .page-content { padding: 20px 65px 20px 65px; background: #f0f0f0  }
.items article { min-height: 200px; }   
.items_serveis .items article { margin: 20px;  }
.items_aigua .items article { margin: 20px;  }  

.items article small { color: #ADADAD; }
.items article .icona {max-width: 135px;}
.items article .resume { font-weight: 300;}
.items article .resume b, .items article .resume strong { font-weight: 500!important;}  

.click_a img { transition: 0.25s all;  }
.click_a:hover img { -ms-transform: scale(1.05, 1.05); /* IE 9 */ -webkit-transform: scale(1.05, 1.05); /* Safari */ transform: scale(1.05, 1.05); }
.click_a:hover .panel-img img { -ms-transform: scale(1.00, 1.00); /* IE 9 */ -webkit-transform: scale(1.00, 1.00); /* Safari */ transform: scale(1.00, 1.00); opacity: 0.7;}

  #list-serveis { padding: 50px 0;}
/* .items_serveis h3 a {color: #009933; margin-bottom: 15px; }  */
 .items_serveis h3 a {color: black; margin-bottom: 15px; } 


#list-aigua { padding: 50px 0;}
/* .items_aigua h3 a {color: #009933; margin-bottom: 15px;}  */
.items_aigua h3 a {color: black; margin-bottom: 15px; font-size: 18px;} 




@media all and (transform-3d), (-webkit-transform-3d) {
    .carousel-fade .carousel-inner > .item.next,
    .carousel-fade .carousel-inner > .item.active.right {
      opacity: 0;
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
    }
    .carousel-fade .carousel-inner > .item.prev,
    .carousel-fade .carousel-inner > .item.active.left {
      opacity: 0;
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
    }
    .carousel-fade .carousel-inner > .item.next.left,
    .carousel-fade .carousel-inner > .item.prev.right,
    .carousel-fade .carousel-inner > .item.active {
      opacity: 1;
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
    }
}



/* Per fer 5 columnes */
.col-xs-15,.col-sm-15,.col-md-15,.col-lg-15 {position: relative; min-height: 1px; padding-right: 10px; padding-left: 10px;}
.col-xs-15 {width: 20%; float: left;}

/* Per fer 8 columnes */
.col-8{position: relative; min-height: 1px; padding-right: 10px; padding-left: 10px;}
.col-8 {width: 50%; float: left;}





h7 {
 font-family: "Roboto Flex", sans-serif;
 font-size: 15px;  
     color: #282525;    
	  /*   color: white;  */
  /* text-align: center; */
    margin left: 10%;  
}
#empresa {
 color: #282525;  
/* color:orange;  */
/* font-weight:bold; */
Font-size:15px;
margin-left:200px;
}



/* Cookies */
#cookiescript_reportdate {display: none;}




.roboto-flex-<uniquifier> {
  font-family: "Roboto Flex", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
  font-variation-settings:
    "slnt" 0,
    "wdth" 100,
    "GRAD" 0,
    "XOPQ" 96,
    "XTRA" 468,
    "YOPQ" 79,
    "YTAS" 750,
    "YTDE" -203,
    "YTFI" 738,
    "YTLC" 514,
    "YTUC" 712;
}


/* ==========================================================================
   MODERN RESPONSIVE LAYOUT & NAVIGATION OVERRIDES (Castelló 2000)
   ========================================================================== */

/* Typography & Reset */
body {
    font-family: 'Roboto Flex', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
    overflow-x: hidden !important;
    background-color: #fcfcfc !important;
    color: #333333 !important;
}

/* Header Refactoring */
#header {
    background-color: #ffffff;
    border-bottom: none !important;
    position: relative;
    z-index: 1001;
}

.container2 {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    max-width: 1200px;
    margin: 0 auto;
    padding: 15px 20px;
}

/* Logo and contact info wrapper */
.header-logo-info {
    display: flex;
    align-items: center;
    gap: 30px;
}

#titulin {
    margin: 0 !important;
    height: 70px !important;
    width: auto !important;
    max-width: 100%;
    transition: transform 0.3s ease;
}

#titulin:hover {
    transform: scale(1.02);
}

.info2 {
    margin: 0 !important;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.info2 .title {
    color: #202971 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    display: flex;
    align-items: center;
    gap: 8px;
}

/* Banner Container */
.header-banner {
    display: flex;
    align-items: center;
}

#bannerImg {
    margin: 0 !important;
    height: 170px !important;
    width: 300px !important;
    object-fit: cover !important;
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    transition: all 0.3s ease;
}

#bannerImg:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(0,0,0,0.12);
}

/* Navigation Bar Modernization */
#wrap-menu-full {
    background-color: #ffffff;
    position: sticky;
    top: 0;
    z-index: 1000;
    box-shadow: 0 2px 10px rgba(0,0,0,0.04);
    border-bottom: 1px solid #eaeaea;
    transition: all 0.3s ease;
}

#wrap-menu-principal.navbar {
    margin-left: 0 !important;
    border: none !important;
    background: transparent !important;
    max-width: 1200px;
    margin: 0 auto !important;
    padding: 0 10px;
}

.bg-white {
    background: transparent !important;
}

#wrap-menu-principal .navbar-nav {
    float: none !important;
    display: flex !important;
    justify-content: flex-start;
    margin: 0;
}

#wrap-menu-principal .navbar-nav > li {
    float: none !important;
}

#wrap-menu-principal .navbar-nav > li > a {
    color: #333333 !important;
    font-family: 'Roboto Flex', sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 0.5px;
    padding: 18px 20px !important;
    line-height: normal !important;
    position: relative;
    transition: all 0.3s ease !important;
    background: transparent !important;
}

#wrap-menu-principal .navbar-nav > li.active > a,
#wrap-menu-principal .navbar-nav > li > a:hover {
    color: #202971 !important;
}

/* Underline Reveal Custom - Disabled */
#wrap-menu-principal .navbar-nav > li > a::after {
    display: none !important;
}

#wrap-menu-principal .navbar-nav > li.active > a::after,
#wrap-menu-principal .navbar-nav > li > a:hover::after {
    display: none !important;
}

/* Hide default underline effect */
.hvr-underline-reveal::before {
    display: none !important;
}

/* Mobile Navbar Toggle */
.navbar-toggle {
    border: none !important;
    background-color: transparent !important;
    margin-top: 10px;
    margin-bottom: 10px;
    padding: 10px;
}

.navbar-toggle:hover {
    background-color: rgba(0, 0, 0, 0.05) !important;
}

.navbar-toggle .icon-bar {
    background-color: #202971 !important;
    height: 3px !important;
    width: 22px !important;
    border-radius: 2px;
    transition: all 0.3s ease;
}

/* Home Carousel Responsiveness */
#carousel-home {
    margin: 0 !important;
    padding: 0 !important;
}

.wrap-img-cover-object {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    overflow: hidden !important;
    background-color: #f0f0f0;
}

.wrap-img-cover-object img {
    width: 100% !important;
    max-width: 100% !important;
    height: 480px !important;
    margin: 0 !important;
    object-fit: cover !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* Helper Utility Classes */
.nopadding {
    padding: 0 !important;
    margin: 0 !important;
}

.carousel-indicators {
    bottom: 15px !important;
}

.carousel-indicators li {
    border-color: #ffffff !important;
    background-color: rgba(255, 255, 255, 0.4) !important;
    width: 10px !important;
    height: 10px !important;
    margin: 3px !important;
}

.carousel-indicators .active {
    background-color: #ffffff !important;
    width: 12px !important;
    height: 12px !important;
}

/* Page Contents Centering */
#empresa {
    margin-left: 0 !important;
    padding: 10px 0 !important;
}

.page-content {
    padding: 20px 0 !important;
}

/* Fix grid icon alignment */
.icona {
    display: block !important;
    margin: 0 auto 15px auto !important;
    width: 60px !important;
    height: auto !important;
}

/* Footer Fixes */
footer {
    background-color: #121212 !important;
    padding: 40px 0 0 0 !important;
    border-top: 4px solid #202971;
    color: #adadad;
}

.postFooter {
    background-color: #0c0c0c !important;
    padding: 25px 0 !important;
    margin: 0 !important;
    text-align: center !important;
}

.postFooter .container {
    margin: 0 auto !important;
    max-width: 1200px;
    padding: 0 15px;
}

.postFooter .row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}

.postFooter ul {
    margin: 0 !important;
    padding: 0 !important;
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    align-items: center;
    justify-content: flex-start;
}

.postFooter ul li {
    color: #adadad !important;
    font-size: 13px !important;
    padding: 0 !important;
}

.postFooter ul li a {
    color: #adadad !important;
    font-size: 13px !important;
    transition: color 0.3s ease;
}

.postFooter ul li a:hover {
    color: #ffffff !important;
    text-decoration: none !important;
}

.postFooter .logo-footer-link {
    margin-left: auto;
    display: flex;
    align-items: center;
}

.postFooter .logo-footer-link img {
    margin: 0 !important;
    height: 35px !important;
    width: auto !important;
    opacity: 0.8;
    transition: opacity 0.3s ease;
}

.postFooter .logo-footer-link img:hover {
    opacity: 1;
}

/* Responsive Rules (Mobile & Tablet) */
@media (max-width: 991px) {
    .container2 {
        justify-content: center;
        flex-direction: column;
        gap: 15px;
        text-align: center;
    }

    .header-logo-info {
        flex-direction: column;
        gap: 10px;
    }

    .info2 {
        align-items: center;
    }

    #bannerImg {
        width: 250px !important;
        height: 140px !important;
        object-fit: cover !important;
    }

    .wrap-img-cover-object img {
        height: 350px !important;
    }
}

@media (max-width: 767px) {
    /* Mobile Menu Drawer style */
    #wrap-menu-principal.navbar {
        padding: 0 15px;
    }
    
    #wrap-menu-principal .navbar-header {
        display: flex;
        justify-content: flex-end;
        width: 100%;
    }

    .navbar-collapse {
        background-color: #ffffff !important;
        border-top: 1px solid #eaeaea !important;
        border-bottom: 1px solid #eaeaea !important;
        box-shadow: 0 4px 12px rgba(0,0,0,0.08) !important;
        margin: 0 -15px !important;
        max-height: 80vh !important;
        overflow-y: auto;
        border-radius: 0 0 8px 8px;
    }

    #wrap-menu-principal .navbar-nav {
        flex-direction: column;
        padding: 10px 0;
    }

    #wrap-menu-principal .navbar-nav > li > a {
        padding: 15px 25px !important;
        border-bottom: 1px solid #eaeaea;
        color: #333333 !important;
        font-size: 15px !important;
    }

    #wrap-menu-principal .navbar-nav > li > a::after {
        display: none !important;
    }

    #wrap-menu-principal .navbar-nav > li.active > a {
        background-color: #f7f7f9 !important;
        color: #202971 !important;
        border-left: 4px solid #202971;
    }

    #bannerImg {
        display: none !important; /* Hide rotating banner on small screens to save valuable height */
    }

    .wrap-img-cover-object img {
        height: 220px !important;
        border-radius: 0;
    }

    /* Footer Responsive */
    .postFooter .row {
        flex-direction: column;
        gap: 15px;
        text-align: center;
    }

    .postFooter ul {
        justify-content: center;
        flex-direction: column;
        gap: 8px;
    }

    .postFooter .logo-footer-link {
        margin: 0 auto;
    }

    /* Page gallery columns standard grid */
    .page-gallery {
        padding: 0 15px !important;
        margin-top: 25px;
    }
    
    .page-gallery img {
        width: 100% !important;
        height: auto !important;
    }
}

/* Align the gallery column at the top with the card column on desktop */
@media (min-width: 992px) {
    .page-gallery {
        margin-top: 20px !important;
    }
}

/* ==========================================================================
   EQUAL HEIGHT & GRID ALIGNMENT FOR SERVICE CARDS
   ========================================================================== */
.items_serveis .row {
    display: flex !important;
    flex-wrap: wrap !important;
}

.items_serveis .row > [class*="col-"] {
    display: flex !important;
    flex-direction: column !important;
}

.items_serveis article.click_a {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    background: #ffffff !important;
    border: 1px solid #eaeaea !important;
    border-radius: 8px !important;
    padding: 25px 20px !important;
    margin-bottom: 0 !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03) !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    height: 100% !important;
    text-align: center !important;
}

.items_serveis article.click_a:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 10px 25px rgba(32, 41, 113, 0.08) !important;
    border-color: #202971 !important;
}

.items_serveis article.click_a h3 {
    font-size: 17px !important;
    font-weight: 700 !important;
    margin-top: 15px !important;
    margin-bottom: 12px !important;
    color: #202971 !important;
    line-height: 1.4 !important;
}

.items_serveis article.click_a h3 a {
    color: #202971 !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
}

.items_serveis article.click_a h3 a:hover {
    color: #12184d !important;
}

.items_serveis article.click_a p,
.items_serveis article.click_a .resume {
    font-size: 13.5px !important;
    color: #555555 !important;
    line-height: 1.6 !important;
    margin: 0 !important;
    flex-grow: 1 !important; /* Forces the text container to push footer elements if any */
}

/* Ensure icons are centered and sized properly */
.items_serveis article.click_a img.icona {
    width: 60px !important;
    height: 60px !important;
    object-fit: contain !important;
    margin: 0 auto 15px auto !important;
    transition: transform 0.3s ease !important;
}

.items_serveis article.click_a:hover img.icona {
    transform: scale(1.08) !important;
}

/* Justify description paragraph text content and color it black */
.page-content p {
    text-align: justify !important;
    color: #000000 !important;
}

/* Style the description blocks and forms as modern card boxes */
#empresa,
.card-box {
    margin-left: 0 !important;
    background-color: #ffffff !important;
    border: 1px solid #eef2f6 !important;
    border-radius: 12px !important;
    padding: 30px !important;
    box-shadow: 0 10px 30px rgba(32, 41, 113, 0.04) !important;
    margin-top: 0 !important;
    margin-bottom: 25px !important;
    width: 100% !important;
}

#empresa h2,
.card-box h1,
.card-box h2 {
    color: #000000 !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    margin-top: 0 !important;
    margin-bottom: 20px !important;
    border-bottom: 2px solid #f1f5f9 !important;
    padding-bottom: 12px !important;
}

#empresa p,
.card-box p {
    font-size: 14.5px !important;
    color: #000000 !important;
    line-height: 1.7 !important;
    margin-bottom: 15px !important;
    text-align: justify !important;
}

#empresa ul,
.card-box ul {
    padding-left: 20px !important;
    margin-top: 15px !important;
}

#empresa ul li,
.card-box ul li {
    font-size: 14px !important;
    color: #000000 !important;
    margin-bottom: 10px !important;
}

#empresa ul li h5,
.card-box ul li h5 {
    font-size: 14px !important;
    color: #000000 !important;
    font-weight: 500 !important;
    margin: 6px 0 !important;
}

/* Contact page flex alignment */
.contact-row {
    display: flex !important;
    flex-wrap: wrap !important;
}

.contact-row > [class*="col-"] {
    display: flex !important;
    flex-direction: column !important;
}

/* Contact page button custom styling */
#contact-form .btn-submit {
    background-color: #000000 !important;
    border-color: #000000 !important;
    color: #ffffff !important;
    padding: 10px 25px !important;
    font-weight: bold !important;
    text-transform: uppercase !important;
    border-radius: 4px !important;
    transition: all 0.3s ease-in-out !important;
}

#contact-form .btn-submit:hover,
#contact-form .btn-submit:focus,
#contact-form .btn-submit:active {
    background-color: #333333 !important;
    border-color: #333333 !important;
    color: #ffffff !important;
    outline: none !important;
}
