@import url('https://fonts.googleapis.com/css2?family=Comfortaa:wght@300..700&family=Noto+Sans:ital,wght@0,100..900;1,100..900&display=swap');

:root{
	--first-color:#3851A8;
	--second-color:#079348;
	--accent-one-color:#F4743B;
	--accent-two-color:#BEEE62;
	--accent-three-color:#16302B;
	--residencial-color:#079348;
	--office-color:#10C158;
	--comercial-color:#0BDD60;
	--industrial-color:#08FF6C;
	--font-title-family:"Comfortaa";
	--font-pharagraph-family:"Noto Sans";
	--font-size-xs:2.2rem;
	--font-size-s:3.3rem;
	--font-size-m:4rem;
	--font-size-l:5.6rem;
	--font-size-xl:5.8rem;
}

* {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:10px;
    vertical-align:baseline;
    background: transparent;
	box-sizing: border-box;
}

html{
	font-size: 62.5%;
}

body{
	font-family: var(--font-pharagraph-family);
	font-size: var(--font-size-xs);
	font-weight: 400;
	color: var(--accent-three-color);
}

a{
	text-decoration: none;
	color: inherit;
}

img{
	max-width: 100%;
	display: block;
	object-fit: cover;
}

ul{
	list-style: none;
}

p {
    font-family: var(--font-pharagraph-family);
	font-size: var(--font-size-xs);
	font-weight: 300;
	color: var(--accent-three-color);
    line-height: 3rem;
}

h4 {
    font-family: var(--font-pharagraph-family);
	font-size: var(--font-size-s);
	font-weight: 500;
	color: var(--accent-three-color);
    line-height: 3.9rem;
}

h3 {
    font-family: var(--font-title-family);
	font-size: var(--font-size-m);
	font-weight: 700;
	color: var(--second-color);
    line-height: 4.6rem;
}

h2 {
    font-family: var(--font-title-family);
	font-size: var(--font-size-l);
	font-weight: 900;
	color: var(--first-color);
    line-height: 5.6rem;
}

h1 {
    font-family: var(--font-title-family);
	font-size: var(--font-size-xl);
	font-weight: 900;
	color: var(--first-color);
    line-height: 6.8rem;
}

.container {
	max-width: 1240px;
	margin: 0 auto;
    width: 100%;
}

@media (max-width: 1023px) {
  .container {
    width: 90%;
  }
}

@media (max-width: 767px) {
  .container {
    width: 90%;
    padding: 0 1.6rem;
  }

  :root{
    --font-size-xs:1.6rem;
    --font-size-s:2.2rem; 
    --font-size-m:2.6rem;
    --font-size-l:3.2rem;
    --font-size-xl:3.4rem;
  }

  p { line-height: 2.4rem; }
  h4 { line-height: 2.6rem; }
  h3 { line-height: 3rem; }
  h2 { line-height: 3.8rem; }
  h1 { line-height: 4.2rem; }
}

/*
-----------------------------
BUTTONS
-----------------------------
*/

.btn-first{
	font-family: var(--font-pharagraph-family);
	background-color: var(--first-color);
	color: #ffffff;
	font-size: 1.8rem;
	font-weight: 400;
	border: var(--first-color) solid 2px;
	border-radius: 10px;
	padding: 8px 24px;
	box-shadow: 0 3px 7px 2px rgba(0,0,0,0.3);
}

.btn-first:hover {
	background-color: transparent;
	color: var(--second-color);
	transition: .3s;
	cursor: pointer;
	box-shadow: 0 0 0 0 rgba(0,0,0,0.3);
}

.btn-first:active {
	background-color: var(--first-color);
	color: var(--first-color);
    border: var(--first-color) solid 2px;
	transition: .3s;
	box-shadow: 0 0 0 0 rgba(0,0,0,0);
}

.btn-first:focus {
	outline: var(--first-color) solid 2px;
    outline-offset: 2px;
}

.btn-white{
	font-family: var(--font-pharagraph-family);
	background-color: #ffffff;
	color:var(--first-color);
	font-size: 1.8rem;
	font-weight: 400;
	border: #ffffff solid 2px;
	border-radius: 10px;
	padding: 8px 24px;
}

.btn-white:hover {
	background-color: transparent;
	color: #ffffff;
	transition: .3s;
	cursor: pointer;
	box-shadow: 0 0 0 0 rgba(0,0,0,0.3);
}

.btn-white:active {
	background-color: var(--first-color);
	color: var(--first-color);
    border: var(--first-color) solid 2px;
	transition: .3s;
	box-shadow: 0 0 0 0 rgba(0,0,0,0);
}

.btn-white:focus {
	outline: var(--first-color) solid 2px;
    outline-offset: 2px;
}

.btn-industrial{
	font-family: var(--font-pharagraph-family);
	background-color: var(--industrial-color);
	color: var(--accent-three-color);
	font-size: 1.8rem;
	font-weight: 400;
	border: var(--industrial-color) solid 2px;
	border-radius: 10px;
	padding: 8px 24px;
}

.btn-industrial:hover {
	background-color: transparent;
	color: #ffffff;
	transition: .3s;
	cursor: pointer;
}

.btn-industrial:active {
	background-color: var(--first-color);
	color: var(--first-color);
    border: var(--first-color) solid 2px;
	transition: .3s;
	box-shadow: 0 0 0 0 rgba(0,0,0,0);
}

.btn-industrial:focus {
	outline: var(--first-color) solid 2px;
    outline-offset: 2px;
}

.btn-first-footer {
	font-family: var(--font-pharagraph-family);
	background-color: var(--first-color);
	color: #ffffff;
	font-size: 1.8rem !important;
	font-weight: 400;
	border: var(--first-color) solid 2px;
	border-radius: 10px;
	padding: 6px 20px;
	box-shadow: 0 3px 7px 2px rgba(0,0,0,0.3);
}

.btn-first-footer:hover {
	background-color: transparent;
	color: #ffffff;
	border: #ffffff solid 2px;
	transition: .3s;
	cursor: pointer;
	box-shadow: 0 0 0 0 rgba(0,0,0,0.3);
}

.btn-first-footer:active {
	background-color: var(--third-color);
	color: var(--first-color);
    border: var(--first-color) solid 2px;
	transition: .3s;
	box-shadow: 0 0 0 0 rgba(0,0,0,0);
}

.btn-first-footer:focus {
	outline: var(--first-color) solid 2px;
    outline-offset: 2px;
}



/*
-----------------------------
cookie
-----------------------------
*/

.wrapper {
	position: fixed;
	bottom: 50px;
	left: 50px;
	max-width: 340px;
	background: #fff;
	border-radius: 20px;
	padding: 50px 36px;
	transition: all 0.3s ease;
	box-shadow: 0 5px 12px 4px rgba(0,0,0,0.4);
}

  
.wrapper .header-cookies {
	display: flex;
	align-items: center;
	column-gap: 15px;
}
  
.header-cookies h2 {
	font-family: var(--headlines-font-family);
    font-size: var(--font-size-m);
    color: var(--first-color);
    font-weight: 400;
    line-height: 2.6rem;
}

.wrapper .data {
	margin: 16px 0;
}
  
.wrapper .data p {
	color: var(--dark-color)
}
  
.data p a{
	font-family: var(--pharagraph-font-famlily);
    font-size: var(--font-size-s);
    color: var(--first-color);
    font-weight: 400;
	padding-top: 24px;
    padding-bottom: 24px;
}
  
.wrapper .buttons {
	margin-top: 16px;
	width: 100%;
	display: flex;
	align-items: center;
}
  
.buttons .button {
	transition: all 0.2s ease;
}

#cookie-consent.show {
  display: block;
}

#cookie-consent {
  display: none;
}

@media only screen and (max-width: 920px) {
	.wrapper {
		bottom: 20px;
		left: 10px;
		max-width: 340px;
	}	
}

/*
-----------------------------
cookie
-----------------------------
*/

.wrapper {
  position: fixed;
  bottom: 50px;
  left: 50px;
  max-width: 400px;
  background: #fff;
  border-radius: 20px;
  padding: 50px 36px;
  transition: all 0.3s ease;
  box-shadow: 0 5px 12px 4px rgba(0,0,0,0.4);
}

.wrapper .header-cookies {
  display: flex;
  align-items: center;
  column-gap: 15px;
}

.header-cookies h2 {
  font-family: var(--font-title-family);
  font-size: 3rem;
  color: var(--first-color);
  font-weight: 800;
  line-height: 3rem;
}

.wrapper .data {
  margin: 32px 0;
}

.wrapper .data p {
  color: var(--dark-color);
}

.data p a {
  font-family: var(--font-pharagraph-family);
  font-size: var(--font-size-xs);
  color: var(--first-color);
  font-weight: 400;
}

.wrapper .buttons {
  margin-top: 16px;
  width: 100%;
  display: flex;
  justify-content: left;
  gap: 24px;;
}

.buttons button {
  transition: all 0.2s ease;
}

#cookie-consent.show {
  display: block;
}

#cookie-consent .btn-white{
	background-color: #ffffff00;
}

#cookie-consent .btn-white:hover {
	color: var(--residencial-color);
}

#cookie-consent {
  display: none;
}

@media only screen and (max-width: 920px) {
  .wrapper {
    bottom: 20px;
    left: 10px;
    max-width: 340px;
  }
}

/*
-----------------------------
BUTON TRIMIS SUS
-----------------------------
*/

.scroll-to-top {
    position: fixed;
    bottom: 30px;
    right: 30px;
    width: 50px;
    height: 50px;
    background-color: #3851A8;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    z-index: 99;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
    text-decoration: none;
    opacity: 0;
    visibility: hidden;
}

.scroll-to-top::before {
    content: "↑";
    color: white;
    font-size: 24px;
    font-weight: bold;
}

.scroll-to-top:hover {
    background-color: #2a3a82;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
    transform: translateY(-3px);
}

.scroll-to-top.show {
    opacity: 1;
    visibility: visible;
}

@media (max-width: 768px) {
    .scroll-to-top {
        bottom: 20px;
        right: 20px;
        width: 45px;
        height: 45px;
    }

    .scroll-to-top::before {
        font-size: 20px;
    }
}