:root {
  --fse-navy: #1b2540;
  --fse-yellow: #f2b400;
  --fse-teal: #3f9f9c;
  --fse-pale-mint:#D1F5BD;
}

.navy-bg {
  background: var(--fse-navy);
}

/* Top strip */
.fse-strip {
  background: var(--fse-navy);
  color: #fff;
  font-size: .875rem;
  padding: .5rem 0;
}

.fse-strip__link {
  color: #fff;
  text-decoration: none;
}

.fse-strip__link:hover {
  color: #fff;
  text-decoration: underline;
}

.it-header-navbar-wrapper {
  background: white;
}

/* Brand images */
.fse-brand__crest {
  height: 56px;
  object-fit: contain;
}

.fse-footer__crest {
  height: 56px;
  object-fit: contain;
}

.fse-brand__fse {
  height: 44px;
  width: auto;
  object-fit: contain;
}

.fse-footer__fse {
  height: 38px;
  width: auto;
  object-fit: contain;
}

/* Accedi button look (border + yellow drop) */
.fse-btn-accedi {
  color: var(--fse-navy);
  background: #fff;
  font-weight: 700;
  border: 2px solid var(--fse-navy);
  border-radius: 8px;
  -webkit-box-shadow: 5px 5px 0px 0px var(--fse-yellow);
  -moz-box-shadow: 5px 5px 0px 0px var(--fse-yellow);
  box-shadow: 5px 5px 0px 0px var(--fse-yellow);
  transition: all .2s ease;
}

.fse-btn-accedi:hover {
  text-decoration: underline;
  color: var(--fse-navy);
  border: 2px solid var(--fse-navy);
  border-radius: 8px;
  -webkit-box-shadow: 5px 5px 0px 0px var(--fse-yellow);
  -moz-box-shadow: 5px 5px 0px 0px var(--fse-yellow);
  box-shadow: 5px 5px 0px 0px var(--fse-yellow);
}

.fse-btn-accedi:active {
  transform: translateY(1px);
}

.fse-btn-accedi--lg {
  padding: .75rem 2rem;
}

/* Hero with IMG (not background) */
.fse-hero {
  position: relative;
  max-height: 640px;
  overflow: hidden;
}

.fse-hero__media {
  width: 100%;
  height: 100%;
}

.fse-hero__img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}



/* Intro */
.fse-intro__text {
  max-width: 860px;
  margin: 0 auto;
  font-size: 2rem;
  line-height: 2.25rem;
}

/* Notice */
.fse-notice {
  background: var(--fse-pale-mint) url('images/pittogramma-home-page-teal.png') no-repeat top right/contain;
  color: var(--fse-navy);
  border-radius: .75rem;
  padding: 2rem;
  position: relative;
  overflow: hidden;
  padding-right: 100px;
  -webkit-box-shadow: 10px 10px 0px 0px #cbd4ff;
  -moz-box-shadow: 10px 10px 0px 0px #cbd4ff;
  box-shadow: 10px 10px 0px 0px #cbd4ff;
}

/* Cards */
.fse-card__icon {
  height: 56px;
  object-fit: contain;
  display: block;
}

.fse-card__link {
  font-weight: 700;
  text-transform: uppercase;
  font-size: .75rem;
  letter-spacing: .04em;
  text-decoration: none;
  color: var(--fse-navy);
}

.fse-card__link:hover {
  text-decoration: underline;
}

.fse-card__link span {
  margin-right: .5rem;
}

/* Footer */
.it-footer-main {
  background: white;
}

.fse-footer-line {
  height: 3px;
  background: var(--fse-yellow);
}

.fse-footer-links {
  gap: 1rem;
}

.fse-footer-links__a {
  color: #fff;
  text-decoration: none;
}

.fse-footer-links__a:hover {
  text-decoration: underline;
}

.fse-card {
  border: 1px solid #e5e5e5;
  border-radius: 16px;
  -webkit-box-shadow: 10px 10px 0px 0px #cbd4ff;
  -moz-box-shadow: 10px 10px 0px 0px #cbd4ff;
  box-shadow: 10px 10px 0px 0px #cbd4ff;
}

.pl-5 {
  padding-left: 2rem;
}
/* Responsive hero overlay for smaller screens */
@media (max-width: 991.98px) {
  .fse-hero {
    width: 100%;
  }
}
@media (max-width: 776.98px) {
  .fse-hero {
    width: 100%;
    max-height: initial;
  }
  .fse-brand__crest {
    height: auto;
    width: 100%;
  }
}