@font-face {
  font-family: "Onest";
  src: url("./data/cnf/Fonts/Onest/static/Onest-Regular.ttf") format("truetype");
}

body {
  background-color: #f4f5f9;
  /* White background */
  font-family: "Onest", sans-serif;
  margin: 0;
  padding: 0;
  height: 100vh;
  /* Full viewport height */
  overflow: hidden;
  /* Prevent body scrolling */
  display: flex;
  flex-direction: column;
}

/* Video Background Styles */

.video-bg-container {
  position: fixed;
  /* Fixed to the viewport */
  top: 16px;
  /* Margin to show white background */
  left: 0px;
  right: 0px;
  bottom: 0px;
  overflow: hidden;
  z-index: -1;
  /* Ensure it stays behind everything */
  background-size: cover;
  /* Ensure the fallback image covers the container */
  background-position: center;
  /* Center the fallback image */
  background-repeat: no-repeat;
  /* Prevent tiling of the fallback image */
}

.video-bg {
  width: 100%;
  height: 100%;
  object-fit: cover;
  /* Ensures the video covers the container without distortion */
  filter: blur(8px);
  /* Adds blur effect */
  transform: scale(1.1);
  /* Slight zoom to prevent visible edges after blur */
}

.overlay {
  position: fixed;
  /* Fixed to cover the entire viewport */
  top: 16px;
  left: 0px;
  right: 0px;
  bottom: 0px;
  background: rgba(0, 0, 0, 0.4);
  /* Semi-transparent overlay for readability */
  z-index: 0;
  /* Ensure overlay is above the video but below content */
}

/* General Header Styles */
.dtop {
  background-color: #003da6;
  width: 100%;
  height: 55px;
  margin-bottom: 16px;
  position: sticky;
  top: 0px;
  z-index: 1000;
}

#dtop-container {
  width: auto;
  height: inherit;
  margin-left: 10px;
  margin-right: 10px;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}

/* GVA Logo Section */
#gva-logo {
  min-width: 20px;
  height: 55px;
  background-color: #f4f5f9;
  display: flex;
  align-items: center;
}

#left-smoother {
  width: 100%;
  height: 100%;
  background-color: #003da6;
  border-bottom-right-radius: 20px;
}

/* Homepage Tab */
#tab {
  width: 67%;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  background-color: #5a7cb3;
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
}

#homepage-tab {
  height: 47px;
  width: 30%;
  min-width: 280px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1;
  background-color: #f4f5f9;
  border-top-left-radius: 20px;
  margin: 0 auto;
}

#homepage-link {
  cursor: pointer;
  display: flex;
  align-items: center;
}

#ceam-img {
  height: 30px;
  margin: 0px;
  margin-left: 10px;
}

/* Smoother Tab */
#smoother-tab-bg {
  height: 47px;
  width: 20px;
  min-width: 10px;
  background-color: #345da1;
}

#smoother-tab-fg {
  height: 100%;
  width: 100%;
  background-color: #f4f5f9;
  border-top-right-radius: 20px;
}

#viewer-tab-bg {
  width: 30%;
  min-width: 240px;
  height: 47px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #f4f5f9;
  font-weight: normal;
  font-size: 20px;
  font-family: Onest, sans-serif;
  color: #ffffff;
  cursor: pointer;
  border-bottom-right-radius: 22px;
}
/* Viewer Tab */
#viewer-tab {
  width: 100%;
  min-width: 240px;
  height: 47px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #345da1;
  font-weight: normal;
  font-size: 20px;
  font-family: Onest, sans-serif;
  color: #ffffff;
  padding: 0 20px;
  border-bottom-left-radius: 20px;
  border-bottom-right-radius: 20px;
  cursor: pointer;
}

/* Smoother Tab 2*/
#smoother-tab-bg2 {
  height: 47px;
  width: 20px;
  min-width: 10px;
  background-color: #345da1;
}

#smoother-tab-fg2 {
  height: 100%;
  width: 100%;
  background-color: #5a7cb3;
  border-top-left-radius: 20px;
}

#divulgative-tab {
  height: 47px;
  width: 30%;
  min-width: 240px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1;
  background-color: #5a7cb3;
  border-top-right-radius: 20px;
  margin: 0 auto;
  padding-right: 20px;
  font-weight: normal;
  font-size: 20px;
  font-family: Onest, sans-serif;
  color: #f4f5f9;
  cursor: pointer;
}

/* GVA Text Section */
#gva-text {
  width: 33%;
  height: 55px;
  background-color: #5a7cb3;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

#gva-text a:first-child {
  width: 100%;
  height: 55px;
  display: flex;
  align-items: center;
  background-color: #003da6;
  border-bottom-left-radius: 20px;
  padding-right: 10px;
}

#gva-text img {
  background-color: #003da6;
  height: 100%;
  width: 100px;
  padding-left: 10px;
  margin-left: auto;
}

#gva-text a:last-child {
  width: 110%;
  padding-left: 10px;
  background-color: #003da6;
  height: inherit;
  display: flex;
  align-items: center;
  color: #f4f5f9;
  text-decoration: none;
  font-size: 11px;
  font-family: Onest, sans-serif;
}

#dtop-margin {
  width: auto;
  height: 14px;
  margin: 0px 0px;
  background-color: #f4f5f9;
  box-shadow: 0px 4px 6px -5px rgba(0, 0, 0, 0.5);
}

/* Main Container */

.full-container {
  position: relative;
  /* Position relative to the body */
  /* White margin */
  z-index: 1;
  /* Above video and overlay */
  padding: 20px;
  overflow-y: auto;
  /* Makes the container scrollable */
  height: calc(100vh - 32px);
  /* Take the full height minus margins */
  background: transparent;
  /* Transparent background */
  /* Hide scrollbar */
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */
}

.full-container::-webkit-scrollbar {
  display: none;
  /* For Chrome, Safari, and Opera */
}

.main-container {
  position: relative;
  background-color: rgba(255, 255, 255, 0);
  color: #ffffff;
  /* border-radius: 10px; */
  display: flex;
  flex-direction: column;
  margin: auto;
  margin-bottom: 20px;
  /* padding: 20px 40px; */
  gap: 30px;
  border-radius: 10px;
  max-width: 1200px;
}

.sub-container {
  color: #ffffff;
}

.sub-container-title {
  width: 100%;
  padding: 0px 50px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-radius: 10px;
}

.sub-container-title p {
  margin: 0;
  margin-bottom: 10px;
  text-align: justify;
}

.title {
  justify-content: center;
}

.sub-container-title h1 {
  text-align: center;
  color: #ffffff;
}

.sub-container-title img {
  /* background-color: rgba(255, 255, 255, 0.5); */
  width: 540px;
  opacity: 1;
  /* margin-top: 10px; */
  /* margin-bottom: 10px; */
  margin-left: 40px;
  border-radius: 10px;
}

.sub-container {
  display: flex;
  justify-content: space-around;
  padding: 5px;
  border-radius: 10px;
}

.main-content__title h2 {
  color: #ffffff;
  text-align: center;
  margin: 0px 0px;
}

/* Contact footer */
.ftr {
  height: auto;
  display: flex;
  flex-direction: column;
  align-items: start;
}

.ftr-addr {
  width: 100%;
}

.ftr-contact-list {
  width: 100%;
  /* Ensure the list spans the entire width */
  display: flex;
  justify-content: flex-start;
  /* Align items starting from the left */
  align-items: center;
  border-top: 1px solid #ffffff;
  list-style: none;
  padding: 0;
}

.ftr-contact-list li {
  margin-top: 10px;
  display: flex;
  align-items: center;
  margin-right: 20px;
  /* Add some space between items */
}

/* Adjust layout for the last item to push it to the far right */
.ftr-contact-list li:last-child {
  margin-left: auto;
  /* Push the last item to the far right */
}

.ftr-contact-list li a {
  display: block;
  text-decoration: none;
  color: #ffffff;
}

.ftr-contact-list li a:hover {
  color: #dadada;
}

.ftr-contact-list p {
  margin: 0;
}

.ftr-lnks {
  width: 100%;
  border-top: 1px solid #ffffff;
  padding: 20px 0px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 14px;
}

.ftr-lft {
  width: inherit;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
}

.copy-rights p {
  margin: 0;
}

.other-lnks ul {
  align-self: center;
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: 20px;
}

.other-lnks ul li a {
  color: #ffffff;
  text-decoration: none;
  font-size: 14px;
  transition: color 0.3s;
}

.other-lnks ul li a:hover {
  /* Lighter shade on hover */
  color: #dadada;
}

.scl-lnks ul {
  width: 215px;
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: 40px;
}

.scl-lnks ul li a {
  transition: opacity 0.3s;
}

.scl-lnks ul li a:hover {
  opacity: 0.8;
}

.scl-lnks img {
  display: flex;
  align-items: center;
  width: 24px;
  height: 24px;
  margin: 0px;
  transition: opacity 0.3s;
  border-radius: 0px;
  background-color: transparent;
  filter: invert(90%);
}

/* Cards style for the Card buttons */

:root {
  --bg-color: #345da1;
  --card-color: rgb(52, 93, 161);
}

#cards {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-around;
  gap: 20px;
  width: 100%;
}

#cards:hover > .card::after {
  opacity: 1;
}

.card {
  background-color: rgba(255, 255, 255, 0.1);
  border-radius: 10px;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  position: relative;
  width: 300px;
  height: 200px;
}

.card.new {
  width: 100%;
  height: 60px;
}

#cards.sectors {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  max-width: 600px;
}

#cards.sectors > .card {
  width: 140px;
  height: 90px;
}

.card-sub-group > .card {
  height: 90px;
}

.card:hover::before {
  opacity: 1;
}

.card::before,
.card::after {
  border-radius: inherit;
  content: "";
  height: 100%;
  left: 0px;
  opacity: 0;
  position: absolute;
  top: 0px;
  transition: opacity 500ms;
  width: 100%;
  pointer-events: none;
}

.card::before {
  background: radial-gradient(
    800px circle at var(--mouse-x) var(--mouse-y),
    rgba(255, 255, 255, 0.3),
    transparent 40%
  );
  z-index: 3;
}

.card::after {
  background: radial-gradient(
    600px circle at var(--mouse-x) var(--mouse-y),
    rgba(255, 255, 255, 0.7),
    transparent 40%
  );
  z-index: 1;
}

.card > .card-content {
  background-color: var(--card-color);
  border-radius: inherit;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  flex-grow: 1;
  inset: 1px;
  padding: 10px;
  position: absolute;
  z-index: 2;
  text-align: center;
}

.card-content img {
  filter: invert(1);
  width: 50px;
  height: 50px;
}

.card-content .material {
  width: 40px;
  height: 40px;
  margin-right: 10px;
}

/* .card-content span {
  max-width: 100px;
} */

.sectors img {
  margin: auto;
  width: 40px;
  height: 40px;
}

/* Cards 2 style for the language selector */

.cards2 {
  display: flex;
}

#cards2:hover > .card2::after {
  opacity: 1;
}

.card2 {
  background-color: rgba(255, 255, 255, 0.1);
  border-radius: 10px;
}

.card2:hover::before {
  opacity: 1;
  pointer-events: none;
}

.card2::before,
.card2::after {
  border-radius: inherit;
  content: "";
  height: 100%;
  left: 0px;
  opacity: 0;
  position: absolute;
  top: 0px;
  transition: opacity 500ms;
  width: 100%;
}

.card2::before {
  background: radial-gradient(
    800px circle at var(--mouse-x) var(--mouse-y),
    rgba(255, 255, 255, 0.15),
    transparent 40%
  );
  z-index: 3;
}

.card2::after {
  background: radial-gradient(
    600px circle at var(--mouse-x) var(--mouse-y),
    rgba(255, 255, 255, 0.5),
    transparent 40%
  );
  z-index: 1;
}

.card2 > .card-content2 {
  background-color: var(--bg-color);
  border-radius: inherit;
  display: flex;
  flex-grow: 1;
  inset: 1.2px;
  position: absolute;
  z-index: 2;
}

#materialDivulgatiuContainer > .sub-container {
  display: block;
  padding: 0px 50px;
}

#materialDivulgatiuContainer > .sub-container > p {
  text-align: justify;
}

.containerColumns {
  display: flex;
  flex-direction: row;
  align-items: start;
}

#materialDivulgatiuContainer
  > .sub-container
  > .containerColumns
  > #cards
  > .card {
  height: 50px;
}

#materialDivulgatiuContainer
  > .sub-container
  > .containerColumns
  > #cards
  > .card
  > .card-content {
  gap: 10px;
  justify-content: start;
}

#materialDivulgatiuContainer
  > .sub-container
  > .containerColumns
  > #cards
  > .card
  > .card-content
  > span {
  text-align: start;
  max-width: none;
  width: auto;
}

#materialDivulgatiuContainer
  > .sub-container
  > .containerColumns
  > #cards
  > .card
  > .card-content
  > img {
  width: 30px;
  height: 30px;
}

#mainPageContainer {
  display: flex;
  flex-direction: column;
  gap: 30px;
}

/* WIDGET */
/* Base styles for links */

:root {
  --widget-container-size: 250px;
  --widget-size: 500px;
  /* Reduced widget container size */
}

.widget__wrap {
  position: relative;
  width: var(--widget-container-size);
  height: var(--widget-container-size);
  top: calc(var(--widget-container-size) * -0.32); /* was -80px */
  margin: 0 auto;
  transform: scale(0.2) translateZ(0px);
  opacity: 0;
  transition: transform 0.5s, opacity 0.5s;
}

.widget__wrap > {
  display: block;
}

#cards.widget__inner {
  position: absolute;
  width: var(--widget-size);
  height: var(--widget-size);
  /* center this inner container within the outer widget */
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.widget__inner > .card {
  background-color: #345da1;
}

.widget__inner > .card > .card-content {
  flex-grow: 0px;
  inset: 0px;
}

.widget__link {
  position: absolute;
  left: 0;
  top: 0;
  width: calc(var(--widget-size) * 0.475);
  /* 47.5% of the widget size */
  height: calc(var(--widget-size) * 0.475);
  /* overflow: hidden; */
  transform: scale(0.5) translateZ(0px);
  background: #345da1;
  text-decoration: none;
  color: inherit;
  font-size: 16px;
  font-family: inherit;
}

.widget__link div {
  height: 100%;
  background-size: cover;
  opacity: 1;
  transition: opacity 0.5s;
  border-radius: inherit;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

/* Individual link styles */
.widget__link--1 {
  border-radius: 100% 0 0 0;
  transform-origin: 110% 110%;
  transition: transform 0.4s 0.15s;
}

.widget__link--1 div {
  background-color: #ffffff;
}

.widget__link--2 {
  border-radius: 0 100% 0 0;
  left: 52.5%;
  transform-origin: -10% 110%;
  transition: transform 0.4s 0.2s;
}

.widget__link--2 div {
  background-color: #ffffff;
}

.widget__link--3 {
  border-radius: 0 0 0 100%;
  top: 52.5%;
  transform-origin: 110% -10%;
  transition: transform 0.4s 0.25s;
}

.widget__link--3 div {
  background-color: #ffffff;
}

.widget__link--4 {
  border-radius: 0 0 100% 0;
  top: 52.5%;
  left: 52.5%;
  transform-origin: -10% -10%;
  transition: transform 0.4s 0.3s;
}

.widget__link--4 div {
  background-color: #ffffff;
}

.widget__link--center {
  width: calc(var(--widget-size) * 0.4);
  /* 55% of the widget size */
  height: calc(var(--widget-size) * 0.4);
  left: calc(var(--widget-size) * 0.3);
  /* 22.5% */
  top: calc(var(--widget-size) * 0.3);
  border-radius: 50%;
  box-shadow: 0 0 0 calc(var(--widget-size) * 0.05) #345da1;
  /* if 5vmin was used, adjust accordingly */
  transform: scale(1);
  background-color: #345da1;
}

.widget__link--center div {
  background-color: #ffffff;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  text-decoration: none;
  color: #345da1;
}

/* Trigger styling */
.widget__trigger {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin: 0 auto;
  top: calc(var(--widget-container-size) * 0.575);
  /* 62.5% of widget size */
  width: calc(var(--widget-size) * 0.4);
  /* 25% of widget size */
  height: calc(var(--widget-size) * 0.4);
  /* 25% of widget size */
  border-radius: 100%;
  background: white;
  transform: translateZ(0px);
  color: #345da1;
}

/* .widget__trigger span {
  position: absolute;
  width: 60%;
  height: 3px;
  background: #ffffff;
  left: 20%;
  top: 50%;
  border-radius: 0;
}

.widget__trigger span:after,
.widget__trigger span:before {
  content: '';
  position: absolute;
  left: 0;
  top: -1.5vmin;
  width: 100%;
  height: 100%;
  background: inherit;
}

.widget__trigger span:after {
  top: 1.5vmin;
} */

/* Hover effects */
.widget__trigger:hover + .widget__wrap,
.widget__wrap:hover {
  transform: scale(0.8) translateZ(0px);
  opacity: 1;
}

.widget__trigger:hover + .widget__wrap a,
.widget__wrap:hover a {
  transform: scale(1) translateZ(0px);
}

.widget__link div p {
  display: none;
}

.widget__link:hover div {
  opacity: 1;
  transform: translateZ(0px);
  background-color: #c9d7ee;
  transition: background-color 0.4s;
}

/* Tooltips computed relative to widget-size */
.widget__tooltip--1 {
  position: absolute;
  top: 0;
  /* Position below the container; adjust as needed */
  left: calc(var(--widget-size) * -1.5); /* -600px when widget-size is 400px */
  top: calc(var(--widget-size) * 0.0625); /* 25px when widget-size is 400px */
  /* You can change left/right for different placements */
  opacity: 0;
  /* Start hidden */
  width: calc(var(--widget-size) * 1.5); /* 600px */
  text-align: right;
  transition: opacity 0.4s;
  z-index: 1000;
  color: #ffffff;
}

/* When hovering, reveal the tooltip */
.widget__link--1:hover div .widget__tooltip--1 {
  opacity: 1;
  visibility: visible;
}

.widget__link div img {
  filter: brightness(0) saturate(100%) invert(30%) sepia(94%) saturate(406%)
    hue-rotate(179deg) brightness(95%) contrast(94%);
}

.widget__tooltip--2 {
  position: absolute;
  top: 0;
  /* Position below the container; adjust as needed */
  left: calc(var(--widget-size) * 0.5); /* 200px when widget-size is 400px */
  top: calc(var(--widget-size) * 0.0625); /* 25px */
  /* You can change left/right for different placements */
  opacity: 0;
  /* Start hidden */
  width: calc(var(--widget-size) * 1.5);
  transition: opacity 0.4s;
  z-index: 1000;
  color: #ffffff;
}

/* When hovering, reveal the tooltip */
.widget__link--2:hover div .widget__tooltip--2 {
  opacity: 1;
  visibility: visible;
}

.widget__tooltip--3 {
  position: absolute;
  /* Position below the container; adjust as needed */
  left: calc(var(--widget-size) * -1.5);
  top: calc(var(--widget-size) * 0.1875); /* 75px when widget-size is 400px */
  /* You can change left/right for different placements */
  opacity: 0;
  /* Start hidden */
  width: calc(var(--widget-size) * 1.5);
  text-align: right;
  transition: opacity 0.4s;
  z-index: 1000;
  color: #ffffff;
}

/* When hovering, reveal the tooltip */
.widget__link--3:hover div .widget__tooltip--3 {
  opacity: 1;
  visibility: visible;
}

.widget__tooltip--4 {
  position: absolute;
  /* Position below the container; adjust as needed */
  left: calc(var(--widget-size) * 0.5);
  top: calc(var(--widget-size) * 0.1875);
  /* You can change left/right for different placements */
  opacity: 0;
  /* Start hidden */
  width: calc(var(--widget-size) * 1.5);
  transition: opacity 0.4s;
  z-index: 1000;
  color: #ffffff;
}

/* When hovering, reveal the tooltip */
.widget__link--4:hover div .widget__tooltip--4 {
  opacity: 1;
  visibility: visible;
}

#mainPageContainer > div.main-content__title > h2 {
  margin-bottom: 80px;
}

.widget__tooltip--center {
  position: absolute;
  /* Position below the container; adjust as needed */
  left: calc(var(--widget-size) * -0.555); /* -222px */
  top: calc(var(--widget-size) * -0.5); /* -220px */
  /* You can change left/right for different placements */
  opacity: 0;
  /* Start hidden */
  width: calc(var(--widget-size) * 1.5);
  text-align: center;
  transition: opacity 0.4s;
  z-index: 1000;
  color: #ffffff;
}

/* When hovering, reveal the tooltip */
.widget__link--center:hover div .widget__tooltip--center {
  opacity: 1;
  visibility: visible;
}

#mainPageContainer > div:nth-child(3) > div > div {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: auto;
  height: 100%;
}

.card.backbutton {
  width: 200px;
  height: 40px;
  align-self: flex-start;
}

.card.backbutton .card-content {
  justify-content: start;
}

/* Mobile Header Styles */
@media screen and (max-width: 768px) {
  /* Hide desktop header on mobile */
  .dtop {
    display: none !important;
  }

  /* Show mobile header */
  .mobile-header {
    display: block !important;
  }

  /* Show mobile language selector */
  #mobile-lang-selector-container {
    display: block !important;
  }

  /* Hide desktop language selector */
  #lang-selector-container {
    display: none !important;
  }

  /* Adjust video background for mobile - start from top */
  .video-bg-container {
    top: 0px !important; /* Start from very top */
  }

  .overlay {
    top: 0px !important; /* Start from very top */
  }

  /* Adjust main container for mobile */
  .full-container {
    padding-top: 70px; /* Account for mobile header */
  }
}

/* Mobile Content Styles */
@media screen and (max-width: 768px) {
  /* Hide desktop header on mobile */
  .dtop {
    display: none !important;
  }

  /* Show mobile header */
  .mobile-header {
    display: block !important;
  }

  /* Show mobile language selector */
  #mobile-lang-selector-container {
    display: block !important;
  }

  /* Hide desktop language selector */
  #lang-selector-container {
    display: none !important;
  }

  /* Adjust video background for mobile - start from top */
  .video-bg-container {
    top: 0px !important;
  }

  .overlay {
    top: 0px !important;
  }

  /* Adjust main container for mobile */
  .full-container {
    padding: 10px;
    padding-top: 70px;
    height: calc(100vh - 60px);
  }

  .main-container {
    gap: 20px;
    padding: 10px;
  }

  /* Title adjustments */
  .sub-container-title {
    padding: 0 15px;
  }

  .sub-container h2 {
    text-align: center;
  }

  .sub-container-title h1 {
    font-size: 28px;
    margin: 10px 0;
  }

  .sub-container-title h2 {
    font-size: 22px;
    margin: 15px 0;
  }

  /* Description text - JUSTIFIED */
  .sub-container-title p,
  #materialDivulgatiuContainer > .sub-container > p {
    font-size: 14px;
    text-align: justify;
    line-height: 1.6;
  }

  /* Material Divulgativo - Stack columns */
  #materialDivulgatiuContainer > .sub-container {
    padding: 0 15px;
  }

  .containerColumns {
    flex-direction: column;
    gap: 20px;
  }

  #materialDivulgatiuContainer > .sub-container > .containerColumns > #cards {
    width: 100%;
  }

  #materialDivulgatiuContainer
    > .sub-container
    > .containerColumns
    > #cards
    > .card {
    width: 100%;
    min-height: 50px;
    height: auto;
  }

  #materialDivulgatiuContainer
    > .sub-container
    > .containerColumns
    > #cards
    > h2 {
    font-size: 20px;
    margin: 10px 0;
  }

  /* Footer adjustments - CENTERED */
  .ftr-addr {
    padding: 0;
  }

  .ftr-contact-list {
    flex-direction: column;
    align-items: center;
    gap: 15px;
    padding-top: 15px;
  }

  .ftr-contact-list li {
    margin: 0;
    width: 100%;
    justify-content: center;
    text-align: center;
  }

  .ftr-contact-list li:last-child p {
    margin-left: 0;
    justify-content: center;
    text-align: center;
  }

  .ftr-lnks {
    flex-direction: column;
    gap: 20px;
    align-items: center;
  }

  .ftr-lft {
    flex-direction: column;
    align-items: center;
    width: 100%;
    gap: 15px;
  }

  .other-lnks ul {
    flex-direction: column;
    gap: 10px;
    align-items: center;
  }

  .copy-rights p {
    font-size: 12px;
    text-align: center;
  }

  .other-lnks ul li a {
    font-size: 13px;
  }

  .scl-lnks ul {
    width: 100%;
    justify-content: center;
    gap: 20px;
  }

  /* General card adjustments */
  .card {
    width: 100%;
    max-width: 100%;
  }

  #cards {
    width: 100%;
    gap: 15px;
  }

  /* Sub-container padding */
  .sub-container {
    padding: 10px 0;
  }
}

@media (max-width: 768px) {
  /* 1. Force the wrapper to be visible and scaled up */
  .widget__wrap {
    transform: scale(0.8) translateZ(0px) !important;
    opacity: 1 !important;
    /* Adjust position if it overlaps other elements on mobile */
    top: 0; 
    margin-top: 50px;
    margin-bottom: 50px;
  }

  /* 2. Force the individual links to their "open" positions */
  .widget__wrap a, 
  .widget__link {
    transform: scale(1) translateZ(0px) !important;
  }

  /* 3. Optional: Make tooltips visible by default or adjust their behavior */
  /* Tooltips might crowd a mobile screen, so you might want to hide them 
     unless clicked, or style them differently. */
  
  /* 4. Adjust the trigger if it's no longer needed to 'open' the menu */
  .widget__trigger {
    display: none; /* Hide the trigger if the menu is always open */
  }

  .widget__tooltip--1, 
  .widget__tooltip--2, 
  .widget__tooltip--3, 
  .widget__tooltip--4,
  .widget__tooltip--center {
    width: 100%;
    left: 0 !important;
    text-align: center !important;
    position: relative; /* Stack them instead of absolute floating */
    top: 0 !important;
    opacity: 1 !important;
    display: block !important;
    visibility: visible !important;
    color:#345da1;
    font-size: 14px;
    padding: 5px 0;
    z-index: 1000;
  }
}