:root {
  --nvg-color-primary: #d10a11;
  --nvg-color-primary-hover: #363a3b;
  --nvg-color-secondary: #363a3b;
  --nvg-color-third: #363a3b;
  --nvg-color-on-surface: #363a3b;
  --nvg-color-border: #dbdbdb;
  --nvg-bg-light: #f5f5f5;
  --nvg-color-on-bg-light: #363a3b;
  --nvg-container-max: 1310px;
  --nvg-container-narrow: 1200px;
  --nvg-radius-small: 0;
  --nvg-radius-medium: 0;
  --nvg-radius-large: 0;
  --nvg-btn-radius: 0;
  --nvg-btn-padding-y: 12px;
  --nvg-btn-padding-x: 25px;
  --nvg-btn-text-transform: uppercase;
}

.wp-block-media-text {
  margin-block: var(--nvg-space-medium);
}

.wp-block-button.is-style-outline .wp-block-button__link.wp-element-button {
  background: none;
  box-shadow: none;
  color: var(--nvg-color-on-surface);
  padding: 7px 5px;
  border-radius: 0;
  letter-spacing: 0.05em;
  position: relative;
  transition: color 0.3s ease;
}
.wp-block-button.is-style-outline .wp-block-button__link.wp-element-button::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 80%;
  height: 1px;
  background: var(--nvg-color-on-surface);
  transition: all 0.3s ease;
}
.wp-block-button.is-style-outline .wp-block-button__link.wp-element-button:hover, .wp-block-button.is-style-outline .wp-block-button__link.wp-element-button:focus {
  background: none;
  color: var(--nvg-color-primary);
}
.wp-block-button.is-style-outline .wp-block-button__link.wp-element-button:hover::after, .wp-block-button.is-style-outline .wp-block-button__link.wp-element-button:focus::after {
  width: 100%;
  background: var(--nvg-color-primary);
}

.nvg-accordion.nvg-accordion {
  --nvg-accordion-radius: 0;
  --nvg-accordion-shadow: none;
  --nvg-accordion-shadow-hover: none;
  --nvg-accordion-bg: transparent;
  --nvg-accordion-trigger-hover-bg: transparent;
  --nvg-accordion-icon-bg: transparent;
  --nvg-accordion-icon-bg-open: transparent;
  --nvg-accordion-icon-color: var(--nvg-color-on-surface);
  --nvg-accordion-icon-color-open: var(--nvg-color-on-surface);
  margin-block: 0;
  border: 0;
  border-bottom: 1px solid var(--nvg-color-border);
}
.nvg-accordion.nvg-accordion:hover {
  border-color: var(--nvg-color-border);
}
.nvg-accordion.nvg-accordion .nvg-accordion__trigger {
  color: var(--nvg-color-on-surface);
}
.nvg-accordion.nvg-accordion .nvg-accordion__trigger[aria-expanded=true] {
  color: var(--nvg-color-primary);
}
.nvg-accordion.nvg-accordion.is-open .nvg-accordion__panel {
  border-top-color: var(--nvg-color-primary);
}

.wp-block-nvg-actu-list {
  --nvg-content-list-gap: var(--nvg-space-large);
}

.nvg-card.nvg-card {
  --nvg-card-bg: #ffffff;
  --nvg-card-accent-color: var(--nvg-color-border);
  --nvg-card-accent-width: 1px;
}

.nvg-card.nvg-card:not(.is-style-style-2):not(.is-style-style-3) .nvg-card__body .wp-block-heading {
  color: var(--nvg-color-primary);
  border-bottom: 1px solid var(--nvg-color-primary);
  padding-bottom: 0.5rem;
}

.nvg-contact-card {
  --nvg-contact-card-icon-color: var(--nvg-color-primary);
  --nvg-contact-card-icon-bg: rgba(209, 10, 17, 0.08);
}

.nvg-contenu-plus {
  --nvg-contenu-plus-number-fill: var(--nvg-color-primary);
}

.nvg-cta.nvg-cta--media-background {
  --nvg-cta-overlay-color: var(--nvg-color-secondary);
  --nvg-cta-overlay-opacity: 0.4;
  text-align: center;
  padding-block: var(--nvg-space-xlarge);
  padding-inline: var(--nvg-space-large);
  overflow: visible;
}
.nvg-cta.nvg-cta--media-background::after {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--nvg-cta-overlay-color);
  opacity: var(--nvg-cta-overlay-opacity);
  pointer-events: none;
  z-index: 0;
}
.nvg-cta.nvg-cta--media-background::before {
  content: "";
  position: absolute;
  left: 50%;
  top: -55px;
  transform: translateX(-50%);
  width: 25px;
  height: 150px;
  background: var(--nvg-color-primary);
  z-index: 2;
}
.nvg-cta.nvg-cta--media-background .nvg-cta__content {
  position: relative;
  z-index: 4;
}
.nvg-cta.nvg-cta--media-background .wp-block-buttons {
  justify-content: center;
}

.nvg-cta.nvg-cta--media-background:not(.has-background) {
  --nvg-btn-bg: var(--nvg-color-primary);
  --nvg-btn-color: var(--nvg-color-on-primary);
  --nvg-btn-bg-hover: var(--nvg-color-primary-hover);
  --nvg-btn-color-hover: var(--nvg-color-on-primary);
}

.nvg-focus.nvg-focus {
  --nvg-focus-radius: 0;
  --nvg-focus-bg: var(--nvg-bg-light);
  position: relative;
  border: 1px solid var(--nvg-color-border);
}
.nvg-focus.nvg-focus::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 14px;
  height: 94px;
  background: var(--nvg-color-primary);
}

.nvg-focus.nvg-focus.is-style-style-2 {
  --nvg-focus-bg: #ffffff;
}

.nvg-frise {
  --nvg-frise-accent: var(--nvg-color-primary);
  --nvg-frise-line: var(--nvg-color-border);
}

.nvg-frise-periode {
  --nvg-frise-arrow-hover-bg: var(--nvg-color-primary);
  --nvg-frise-arrow-hover-color: #ffffff;
}

.nvg-gallery-fancybox {
  --nvg-gallery-fancybox-arrow-bg: var(--nvg-color-primary);
  --nvg-gallery-fancybox-arrow-color: #ffffff;
  --nvg-gallery-fancybox-arrow-bg-hover: var(--nvg-color-primary-hover);
  --nvg-gallery-fancybox-arrow-color-hover: #ffffff;
}

.nvg-grid-flex {
  --nvg-grid-flex-gap: var(--nvg-space-large);
}

.nvg-icon {
  color: var(--nvg-color-accent);
}

.nvg-key-figure {
  --nvg-key-figure-value-weight: 800;
}

.nvg-list.nvg-list {
  --nvg-list-accent-color: var(--nvg-color-primary);
}

.nvg-page-card {
  --nvg-page-card-overlay-hover: rgba(209, 10, 17, 0.55);
  --nvg-page-card-arrow-bg: var(--nvg-color-primary);
  --nvg-page-card-arrow-color: #ffffff;
  --nvg-page-card-arrow-bg-hover: #ffffff;
  --nvg-page-card-arrow-color-hover: var(--nvg-color-primary);
}

.wp-block-nvg-page-list {
  --nvg-content-list-gap: var(--nvg-space-large);
}

.nvg-section {
  padding-block: var(--nvg-space-medium);
}

.nvg-section.is-style-style-1 {
  padding: var(--nvg-space-large) var(--nvg-space-medium);
  background-color: var(--nvg-color-primary);
  color: #ffffff;
  --nvg-color-text: #ffffff;
  --nvg-color-accent: #ffffff;
  --nvg-color-on-accent: var(--nvg-color-primary);
}
.nvg-section.is-style-style-1 p a,
.nvg-section.is-style-style-1 li a {
  color: #ffffff;
  border-bottom-color: rgba(255, 255, 255, 0.4);
}
.nvg-section.is-style-style-1 p a:hover,
.nvg-section.is-style-style-1 li a:hover {
  border-bottom-color: #ffffff;
}

.nvg-section.is-style-style-2 {
  padding: var(--nvg-space-large) var(--nvg-space-medium);
  background-color: var(--nvg-color-secondary);
  color: #ffffff;
  --nvg-color-text: #ffffff;
  --nvg-color-accent: var(--nvg-color-primary);
  --nvg-color-on-accent: #ffffff;
}

.nvg-section.is-style-style-3 {
  background-color: var(--nvg-bg-light);
}

.nvg-section.is-style-style-4 {
  position: relative;
  padding-top: calc(100px + var(--nvg-space-medium));
}
.nvg-section.is-style-style-4::before {
  content: "";
  position: absolute;
  left: var(--nvg-space-medium);
  top: 0;
  width: 25px;
  height: 100px;
  background: var(--nvg-color-primary);
}

.nvg-testimonial {
  --nvg-testimonial-star-color: var(--nvg-color-primary);
}

.nvg-titre-label.nvg-titre-label {
  color: var(--nvg-color-accent);
  border-bottom: 1px solid var(--nvg-color-accent);
  padding-bottom: 8px;
}
.nvg-titre-label.nvg-titre-label .nvg-titre-label__text {
  text-transform: uppercase;
  letter-spacing: 0.03em;
}
