:root {
  --fisel-teal: #2E8B8F;
  --fisel-teal-dark: #123B43;
  --fisel-orange: #F47C20;
  --fisel-yellow: #F5B642;
  --fisel-text: #252525;
  --fisel-light: #F8F5EF;
}

.home-fiselerie {
  background: #fff;
}

.container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}
/* Blocksy : retirer uniquement le titre textuel sous le logo du header. */
#header .site-branding[data-id="logo"] > .site-title-container {
  display: none;
}

/* Header Blocksy : couleurs communes aux états normal, transparent et sticky. */
#header,
#header [data-row] {
  background: var(--fisel-teal-dark) !important;
  --background-color: var(--fisel-teal-dark);
}
#header .menu-container,
#offcanvas .mobile-menu {
  --theme-link-initial-color: var(--fisel-light);
  --theme-link-hover-color: var(--fisel-orange);
  --theme-link-active-color: var(--fisel-orange);
}
#header .ct-menu-link,
#offcanvas .mobile-menu .ct-menu-link {
  color: var(--fisel-light) !important;
}
#header .ct-menu-link:hover,
#header .ct-menu-link:focus-visible,
#header .current-menu-item > .ct-menu-link,
#header .current-menu-ancestor > .ct-menu-link,
#header .ct-menu-link[aria-current="page"],
#offcanvas .mobile-menu .ct-menu-link:hover,
#offcanvas .mobile-menu .ct-menu-link:focus-visible,
#offcanvas .mobile-menu .current-menu-item > .ct-menu-link,
#offcanvas .mobile-menu .ct-menu-link[aria-current="page"] {
  color: var(--fisel-orange) !important;
}
#header .menu > .current-menu-item > .ct-menu-link,
#header .menu > .current-menu-ancestor > .ct-menu-link {
  background-image: linear-gradient(var(--fisel-orange), var(--fisel-orange));
  background-repeat: no-repeat;
  background-size: 24px 2px;
  background-position: center calc(100% - 12px);
}
#header .sub-menu,
#offcanvas .ct-panel-inner {
  background: var(--fisel-teal-dark) !important;
  --background-color: var(--fisel-teal-dark);
}
#header .sub-menu {
  --dropdown-background-color: var(--fisel-teal-dark);
  --dropdown-divider: 1px solid rgba(248,245,239,.15);
}
#header :is(.ct-header-search, .ct-header-trigger, .ct-header-socials a),
#offcanvas :is(.ct-toggle-close, .ct-toggle-dropdown-mobile) {
  color: var(--fisel-light) !important;
  --theme-icon-color: var(--fisel-light);
  --theme-icon-hover-color: var(--fisel-orange);
}
#header :is(.ct-header-search, .ct-header-trigger, .ct-header-socials a):is(:hover, :focus-visible),
#offcanvas :is(.ct-toggle-close, .ct-toggle-dropdown-mobile):is(:hover, :focus-visible) {
  color: var(--fisel-orange) !important;
}
#header :is(.ct-header-search, .ct-header-trigger, .ct-header-socials a, .ct-menu-link) .ct-icon,
#offcanvas :is(.ct-toggle-close, .ct-toggle-dropdown-mobile) .ct-icon {
  fill: currentColor !important;
}
#header :is(.ct-menu-link, .ct-header-search, .ct-header-trigger, .ct-header-socials a):focus-visible,
#offcanvas :is(.ct-menu-link, .ct-toggle-close, .ct-toggle-dropdown-mobile):focus-visible {
  outline: 2px solid var(--fisel-orange);
  outline-offset: 3px;
}

/* Header global : conserver sa hauteur naturelle dans le flux. */
#header.ct-header {
  position: sticky;
  top: var(--admin-bar, 0px);
  z-index: 100;
}

/* Ancres : hauteur Blocksy si disponible, sinon hauteur configurée du header. */
body {
  --fisel-header-anchor-height: var(--header-height, 120px);
}
#main :where([id]) {
  scroll-margin-top: calc(var(--fisel-header-anchor-height) + var(--admin-bar, 0px) + 16px);
}
@media (max-width: 999.98px) {
  body { --fisel-header-anchor-height: var(--header-height, 70px); }
}
