html, body
	{
		height: 100%;
	}
	
	body
	{
		margin: 0px;
		padding: 0px;
		background: #F6F4F3;
		font-family: "Verdana", Verdana, sans-serif;
		font-size: 12pt;
		font-weight: 400;
		color: #4E4D4D;
	}
	
	
	h1, h2, h3
	{
		margin: 0;
		padding: 0;
	}
	
	p, ol, ul
	{
		margin-top: 0;
	}
	
	ol, ul
	{
		padding: 0;
		list-style: none;
	}
	
	p
	{
		line-height: 180%;
	}
	
	strong
	{
	}
	
	a
	{
		color: #383838;
	}
	
	a:hover
	{
		text-decoration: none;
	}
	
	.container
	{
		width: 100%;
		margin: 0px auto;
	}

	.content-wrapper {
		padding: 3em 2em;
		text-align: center;
		margin: auto !important;
		max-width: 1400px;
		width: 100%;
		box-sizing: border-box;
	}

	.content-wrapper p {
		max-width: 900px;
		margin-left: auto;
		margin-right: auto;
		font-size: 1em;
		line-height: 1.8;
		word-wrap: break-word;
		overflow-wrap: break-word;
	}

/*********************************************************************************/
/* Image Style                                                                   */
/*********************************************************************************/

	.image
	{
		display: inline-block;
	}
	
	.image img
	{
		display: block;
		width: 100%;
	}
	
	.image-full
	{
		display: block;
		width: 100%;
		margin: 0 0 0 0;
	}
	
	.image-left
	{
		float: left;
		margin: 0 2em 2em 0;
	}
	
	.image-centered
	{
		display: block;
		margin: 0 0 2em 0;
	}
	
	.image-centered img
	{
		margin: 0 auto;
		width: auto;
	}
	
	#banner1{
	margin-top:-120px;
	}

/*********************************************************************************/
/* List Styles                                                                   */
/*********************************************************************************/

	ul.style1
	{
	}


/*********************************************************************************/
/* Social Icon Styles                                                            */
/*********************************************************************************/

	ul.contact
	{
		overflow:  hidden;
		margin: 0em 0 3em 0;
		padding-top: 1em;
		text-align: center;
	}
	
	ul.contact li
	{
		display: inline-block;
		padding: 0em 0.30em;
		font-size: 1em;
	}
	
	ul.contact li span
	{
		display: none;
		margin: 0;
		padding: 0;
	}
	
	ul.contact li a
	{
		color: #FFF;
	}
	
	ul.contact li a:before
	{
		display: inline-block;
		background: #3f3f3f;
		width: 40px;
		height: 40px;
		line-height: 40px;
		border-radius: 20px;
		text-align: center;
		color: #FFFFFF;
	}

/*********************************************************************************/
/* Major Styles                                                                  */
/*********************************************************************************/

	.major
	{
		overflow: hidden;
		margin-bottom: 4em;
		text-align: center;
	}
	
	.major h1
	{
		letter-spacing: 0.05em;
		font-size: 2.5em;
		font-weight: 700;
		color: #3f3f3f;
		line-height: 1.3;
		margin-bottom: 0.5em;
	}
	
	.major h2
	{
		letter-spacing: 0.10em;
		text-transform: uppercase;
		font-size: 3em;
		font-weight: 700;
		color: #3f3f3f;
	}

	.major .byline
	{
		display: block;
		padding-top: 0.2em;
		font-weight: 300;
		font-size: 2em;
	}

/*********************************************************************************/
/* Title Styles                                                                  */
/*********************************************************************************/

	#titulo{
	font-size:60px;
	text-align:center;
	font-family: "Verdana", Verdana, sans-serif;
	margin-top:-40px;
	margin-bottom:-40px;
	}

	.title
	{
		text-align: center;
	}
	
	.title h2
	{
		letter-spacing: 0.10em;
		text-transform: uppercase;
		font-weight: 700;
		color: #3f3f3f;
	}

	.title .byline
	{
		display: block;
		padding-top: 1em;
		font-weight: 300;
		font-size: 1.1em;
	}


/*********************************************************************************/
/* Button Style                                                                  */
/*********************************************************************************/

	.button
	{
		display: inline-block;
		margin: 1em 0em;
		padding: 1em 3em 1em 3em;
		background: #3f3f3f;
		letter-spacing: 0.20em;
		text-decoration: none;
		text-align: center;
		text-transform: uppercase;
		font-weight: 400;
		font-size: 0.90em;
		color: #FFF;
	}
	
	.button:before
	{
	}
		
/*********************************************************************************/
/* Header                                                                        */
/*********************************************************************************/

	#header
	{
		background: #3f3f3f;
	}

/*********************************************************************************/
/* Logo                                                                          */
/*********************************************************************************/

	#logo
	{
		padding: 4em 0em;
		text-transform: uppercase;
	}

	#logo h1
	{
		text-align: center;
		font-weight: 900;
		font-size: 2.5em;
	}
	
	#logo h1 a
	{
	}

	#logo span
	{
		padding: 0em 0em 0em 0.5em;
	}
	
	#logo h1:before
	{
		
	}
	
	#logo a 
	{
		color: #3f3f3f;
	}


/*********************************************************************************/
/* Menu                                                                          */
/*********************************************************************************/

	#menu ul
	{
		margin: 0;
		padding: 20px 0px 20px 0px;
		list-style: none;
		line-height: normal;
		text-align: center;
	}
	
	#menu li
	{
		display: inline-block;
	}
	
	#menu a
	{
		display: block;
		padding: 1em 2em;
		letter-spacing: 1px;
		text-decoration: none;
		text-transform: uppercase;
		font-size: 1em;
		font-weight: 700;
		color: #FFF;
	}
	
	#menu .current_page_item a
	{
	}
	
	#menu a:hover
	{
	}

/*********************************************************************************/
/* Banner                                                                        */
/*********************************************************************************/

	#banner
	{
	}

/*********************************************************************************/
/* Page                                                                          */
/*********************************************************************************/

	#page
	{
		overflow: hidden;
		padding: 6em 0em;
		border-top: 1px solid #E5E5E5;
		width: 100%;
		box-sizing: border-box;
	}

/*********************************************************************************/
/* Content                                                                       */
/*********************************************************************************/

	#content {
	    float: left;
	    width: 75%;
	    margin: auto;
	    padding: 10%;
	    text-align: center;

	}
	
	#content .title
	{
		padding-bottom: 2em;
		text-align: left;
	}
	
	#content h2
	{
		font-size: 2em;
	}
	
	#content .byline
	{
		padding-top: 0;
		font-size: 1.5em;
	}

/*********************************************************************************/
/* Sidebar                                                                       */
/*********************************************************************************/

	#sidebar
	{
		float: right;
		width: 588px;
	}

/*********************************************************************************/
/* Footer                                                                        */
/*********************************************************************************/

	#footer
	{
	}

/*********************************************************************************/
/* Copyright                                                                     */
/*********************************************************************************/

	#copyright
	{
		overflow: hidden;
		padding: 5em 0em;
	}
	
	#copyright p
	{
		letter-spacing: 0.20em;
		text-align: center;
		text-transform: uppercase;
		font-size: 0.80em;
		color: #6F6F6F;
	}
	
	#copyright a
	{
		text-decoration: none;
		color: #8C8C8C;
	}

/*********************************************************************************/
/* Featured - NUEVA IMPLEMENTACIÓN CON GRID                                     */
/*********************************************************************************/

	#featured-wrapper
	{
		text-align:center;
		padding: 4em 2em 3em 2em;
		background: #F6F4F3;
	}
	
	#featured-wrapper a:link, a:visited{
		text-decoration:none;
	}
	
	#featured h2
	{
		text-align: center;
	}

	/* Grid de Servicios */
	.services-grid {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
		gap: 2.5em;
		margin: 0 auto;
		max-width: 1200px;
	}

	/* Card de Servicio */
	.service-card {
		background: transparent;
		padding: 2.5em 2em;
		border-radius: 0;
		box-shadow: none;
		transition: all 0.3s ease;
		text-align: center;
		text-decoration: none;
		display: block;
		border-bottom: 0;
	}

	.service-card:hover {
		transform: translateY(-5px);
		box-shadow: none;
		border-bottom-color: transparent;
	}

	.service-card .icon {
		font-size: 4em;
		color: #3f3f3f;
		margin-bottom: 0.8em;
		display: block;
		transition: transform 0.3s ease;
		position: relative;
		margin: 0 auto 0.8em;
		line-height: normal;
	}

	.service-card:hover .icon {
		transform: scale(1.1);
	}

	.service-card .title h2,
	.service-card .title h3 {
		font-size: 1.4em;
		font-weight: 700;
		color: #3f3f3f;
		margin-bottom: 0.8em;
		text-transform: none;
		letter-spacing: 0.02em;
	}

	.service-card .title .byline {
		font-size: 1.1em;
		line-height: 1.7;
		color: #666;
		font-weight: 300;
		padding-top: 0;
	}

	/* Mantener compatibilidad con código antiguo (oculto) */
	.column1,
	.column2,
	.column3,
	.column4
	{
		display: none;
	}
	
	
	
	#featured-cee1
	{
		margin:auto;
		width:70%;
		text-align:center;
		overflow: hidden;
		padding: 5px;
		background: #FFF;
	}
	
	
	/*TAXACIONS*/
	
#featured-tax1
	{
	/*	text-align:center;
		overflow: hidden;
	    background: #FFF;*/
		padding: 1em 0em 30em;
		
	}
	
	#featuredTax h2
	{
		text-align: center;
		font-size:26pt;

	}

	#featuredTax .icon
	{
		position: relative;
		display: block;
		margin:auto;
		line-height:  normal;
		font-size: 4em;
		text-align: center;
		color: #3f3f3f;
		
	}

	.column1T,
	.column2T,
	.column3T,
	.column4T,
	.column5T
	{
		width: 33%;
		float:left;
		padding-top:50px;
	}	


/*********************************************************************************/
/* Responsive: Sección Serveis - MEJORADO                                       */
/*********************************************************************************/

	@media (max-width: 1024px)
	{
		.services-grid {
			grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
			gap: 2em;
		}
		
		.major h2 {
			font-size: 2em;
		}
		
		.major h1 {
			font-size: 2.2em;
		}
	}

	@media (max-width: 960px)
	{
		#featured .title
		{
			max-width: 640px;
			margin: 0 auto;
		}

		#featured .byline
		{
			display: block;
		}
	}

	@media (max-width: 768px)
	{
		#featured-wrapper {
			padding: 3em 1.5em;
		}
		
		.services-grid {
			grid-template-columns: 1fr;
			gap: 1.5em;
		}
		
		.service-card {
			padding: 2em 1.5em;
		}
		
		.service-card .icon {
			font-size: 3.5em;
		}
		
		.service-card .title h2,
		.service-card .title h3 {
			font-size: 1.3em;
		}
		
		.major h2 {
			font-size: 1.8em;
		}
		
		/* Responsive para la sección del H1 principal */
		#page {
			padding: 3em 0em;
			width: 100%;
		}
		
		.content-wrapper {
			padding: 2em 1.5em;
			width: 100%;
			max-width: 100%;
		}
		
		.major h1 {
			font-size: 1.8em;
			letter-spacing: 0.03em;
			line-height: 1.4;
			padding: 0 0.5em;
		}
		
		.content-wrapper p {
			font-size: 0.95em;
			line-height: 1.7;
			padding: 0 0.5em;
		}
		
		#banner1 {
			margin-top: -80px;
		}
	}

	@media (max-width: 600px)
	{
		.content-wrapper {
			padding: 1.8em 1.2em;
		}
		
		.major h1 {
			font-size: 1.6em;
			padding: 0 0.3em;
		}
		
		.content-wrapper p {
			font-size: 0.92em;
			text-align: left;
		}
	}

	@media (max-width: 480px)
	{
		.major h2 {
			font-size: 1.5em;
		}
		
		.service-card .icon {
			font-size: 3em;
		}
		
		.service-card .title h2,
		.service-card .title h3 {
			font-size: 1.2em;
		}
		
		/* Responsive para sección del H1 en móviles pequeños */
		#page {
			padding: 2em 0em;
			width: 100%;
		}
		
		.content-wrapper {
			padding: 1.5em 1em;
			width: 100%;
			max-width: 100%;
		}
		
		.major {
			margin-bottom: 2em;
			padding: 0;
		}
		
		.major h1 {
			font-size: 1.4em;
			letter-spacing: 0.02em;
			line-height: 1.5;
			padding: 0 0.5em;
			word-wrap: break-word;
		}
		
		.content-wrapper p {
			font-size: 0.9em;
			line-height: 1.6;
			padding: 0;
			text-align: left;
		}
		
		#banner1 {
			margin-top: -60px;
		}
		
		#titulo {
			font-size: 40px;
			margin-top: -30px;
			margin-bottom: -30px;
		}
		
		#logo {
			padding: 3em 0em 2em 0em;
		}
	}

/*********************************************************************************/
/* Portfolio                                                                     */
/*********************************************************************************/

	#portfolio-wrapper
	{
		display:none;
		padding: 6em 0em;
	}
	
	#portfolio
	{
		overflow: hidden;
		text-align: center;
	}
	
	#portfolio img
	{
		margin: 0;
		padding: 0;
	}
	
	#portfolio .box
	{
		padding: 30px;
		background: #FFF;
		border-bottom: 2px solid #7C7C7C;
		border-right: 1px solid #DADADA;
		border-left: 1px solid #DADADA;
	}

/*********************************************************************************/
/* CTA Section                                                                   */
/*********************************************************************************/

	.cta-section {
		background: #3f3f3f;
		padding: 4em 2em;
		text-align: center;
	}

	.cta-container {
		max-width: 800px;
		margin: 0 auto;
	}

	.cta-title {
		font-size: 2em;
		font-weight: 700;
		color: #fff;
		margin-bottom: 0.5em;
		line-height: 1.3;
	}

	.cta-text {
		font-size: 1.1em;
		font-weight: 300;
		color: #e0e0e0;
		margin-bottom: 1.5em;
		line-height: 1.6;
	}

	.cta-button {
		display: inline-block;
		padding: 1em 2.5em;
		background: #fff;
		color: #3f3f3f;
		text-decoration: none;
		font-weight: 700;
		font-size: 1em;
		letter-spacing: 0.05em;
		text-transform: uppercase;
		border-radius: 4px;
		transition: all 0.3s ease;
	}

	.cta-button:hover {
		background: #f0f0f0;
		transform: translateY(-2px);
	}

/*********************************************************************************/
/* FAQ Section                                                                   */
/*********************************************************************************/

	.faq-section {
		background: #F6F4F3;
		padding: 4em 2em;
	}

	.faq-container {
		max-width: 900px;
		margin: 0 auto;
	}

	.faq-section .major {
		margin-bottom: 3em;
	}

	.schema-faq-item {
		background-color: #f9f9f9;
		cursor: pointer;
		padding: 18px 50px 18px 18px;
		border: 1px solid #ddd;
		border-radius: 12px;
		margin-bottom: 10px;
		position: relative;
		transition: background-color 0.3s, border-color 0.3s;
	}

	.schema-faq-item:hover {
		background-color: #f0f0f0;
		border-color: #ccc;
	}

	.schema-faq-item::after {
		content: '+';
		font-size: 24px;
		font-weight: bold;
		color: #777;
		position: absolute;
		right: 18px;
		top: 18px;
		transition: transform 0.2s ease;
		width: 24px;
		height: 24px;
		display: flex;
		align-items: center;
		justify-content: center;
		flex-shrink: 0;
	}

	.schema-faq-item.active::after {
		content: '−';
		transform: rotate(180deg);
	}

	.schema-faq-question {
		display: block;
		font-weight: 600;
		color: #333;
		font-size: 16px;
		line-height: 1.4;
		margin: 0;
		padding-right: 10px;
	}

	.schema-faq-answer {
		overflow: hidden;
		max-height: 0;
		opacity: 0;
		transition: all 0.4s ease-in-out;
		margin: 0;
		padding: 0;
		color: #555;
		line-height: 1.6;
		font-weight: 300;
	}

	.schema-faq-answer.open {
		padding-top: 15px;
		opacity: 1;
	}

/*********************************************************************************/
/* CTA & FAQ Responsive                                                          */
/*********************************************************************************/

	@media (max-width: 768px) {
		.cta-section {
			padding: 3em 1.5em;
		}

		.cta-title {
			font-size: 1.6em;
		}

		.cta-text {
			font-size: 1em;
		}

		.cta-button {
			padding: 0.9em 2em;
			font-size: 0.95em;
		}

		.faq-section {
			padding: 3em 1.5em;
		}

		.schema-faq-item {
			padding: 15px 45px 15px 15px;
		}

		.schema-faq-item::after {
			right: 15px;
			top: 15px;
			font-size: 22px;
		}

		.schema-faq-question {
			font-size: 15px;
		}
	}

	@media (max-width: 480px) {
		.cta-section {
			padding: 2.5em 1em;
		}

		.cta-title {
			font-size: 1.4em;
		}

		.cta-text {
			font-size: 0.95em;
		}

		.cta-button {
			padding: 0.8em 1.8em;
			font-size: 0.9em;
		}

		.faq-section {
			padding: 2.5em 1em;
		}

		.schema-faq-item {
			padding: 12px 40px 12px 12px;
		}

		.schema-faq-item::after {
			right: 12px;
			top: 12px;
			font-size: 20px;
		}

		.schema-faq-question {
			font-size: 14px;
		}
	}

/*********************************************************************************/
/* Taxacions Page - Services Grid                                               */
/*********************************************************************************/

	.tax-services-section {
		background: #F6F4F3;
		padding: 4em 2em;
		text-align: center;
	}

	.tax-services-alt {
		background: #fff;
	}

	.tax-services-container {
		max-width: 1200px;
		margin: 0 auto;
	}

	.tax-services-container .major {
		margin-bottom: 2em;
	}

	.tax-intro {
		max-width: 900px;
		margin: 0 auto 3em;
		font-size: 1.1em;
		font-weight: 300;
		line-height: 1.8;
		color: #666;
	}

	.tax-grid {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
		gap: 2em;
		margin: 0 auto;
		max-width: 1200px;
	}

	.tax-item {
		text-align: center;
		padding: 1.5em;
		transition: transform 0.3s ease;
	}

	.tax-item:hover {
		transform: translateY(-5px);
	}

	.tax-item .icon {
		font-size: 3.5em;
		color: #3f3f3f;
		margin-bottom: 0.5em;
		display: block;
		transition: transform 0.3s ease;
	}

	.tax-item:hover .icon {
		transform: scale(1.1);
	}

	.tax-item .title h3 {
		font-size: 1.2em;
		font-weight: 700;
		color: #3f3f3f;
		margin-bottom: 0.3em;
	}

	.tax-item .title .byline {
		font-size: 0.9em;
		font-weight: 300;
		color: #666;
	}

	/* Content section responsive */
	#content {
		float: none;
		width: 100%;
		max-width: 900px;
		margin: 0 auto;
		padding: 3em 2em;
		text-align: center;
		box-sizing: border-box;
	}

	#content .title {
		text-align: center;
		padding-bottom: 2em;
	}

	#content h1 {
		font-size: 2.5em;
		font-weight: 700;
		letter-spacing: 0.1em;
		text-transform: uppercase;
		color: #3f3f3f;
		margin-bottom: 0.5em;
	}

	#content .byline {
		display: block;
		padding-top: 0.5em;
		font-size: 1.3em;
		font-weight: 300;
		color: #666;
	}

	#content p {
		text-align: left;
		line-height: 1.8;
		margin-bottom: 2em;
	}

	#content ul {
		text-align: left;
		margin: 2em 0;
		padding-left: 0;
		list-style: none;
	}

	#content ul li {
		padding: 0.5em 0 0.5em 2em;
		position: relative;
		line-height: 1.6;
	}

	#content ul li:before {
		content: "•";
		position: absolute;
		left: 0.5em;
		color: #3f3f3f;
		font-weight: bold;
		font-size: 1.2em;
	}

/*********************************************************************************/
/* Taxacions Page Responsive                                                    */
/*********************************************************************************/

	@media (max-width: 1024px) {
		.tax-grid {
			grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
			gap: 1.5em;
		}

		#content h1 {
			font-size: 2.2em;
		}
	}

	@media (max-width: 768px) {
		.tax-services-section {
			padding: 3em 1.5em;
		}

		.tax-intro {
			font-size: 1em;
			margin-bottom: 2em;
		}

		.tax-grid {
			grid-template-columns: repeat(2, 1fr);
			gap: 1.5em;
		}

		.tax-item .icon {
			font-size: 3em;
		}

		.tax-item .title h3 {
			font-size: 1.1em;
		}

		#content {
			padding: 2em 1.5em;
		}

		#content h1 {
			font-size: 1.8em;
			letter-spacing: 0.05em;
		}

		#content .byline {
			font-size: 1.1em;
		}

		#content ul li {
			padding-left: 1.5em;
			font-size: 0.95em;
		}
	}

	@media (max-width: 600px) {
		.tax-grid {
			grid-template-columns: repeat(2, 1fr);
			gap: 1em;
		}

		.tax-item {
			padding: 1em;
		}

		.tax-item .icon {
			font-size: 2.5em;
		}
	}

	@media (max-width: 480px) {
		.tax-services-section {
			padding: 2.5em 1em;
		}

		.tax-intro {
			font-size: 0.95em;
		}

		.tax-grid {
			grid-template-columns: 1fr;
			gap: 1em;
		}

		.tax-item .title h3 {
			font-size: 1em;
		}

		#content {
			padding: 1.5em 1em;
		}

		#content h1 {
			font-size: 1.4em;
			letter-spacing: 0.03em;
		}

		#content .byline {
			font-size: 1em;
		}

		#content p {
			font-size: 0.9em;
		}

		#content ul li {
			padding-left: 2.2em;
			font-size: 0.9em;
		}
	}