@font-face {
  font-family: "Geist";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../fonts/geist-latin.woff2") format("woff2");
}
@font-face {
  font-family: "Cormorant Garamond";
  font-style: normal;
  font-weight: 500 600;
  font-display: swap;
  src: url("../fonts/cormorant-garamond-normal-latin.woff2") format("woff2");
}

body.ft-global-chrome-active {
  --ft-ink: #171821;
  --ft-muted: #666873;
  --ft-paper: #f7f5f1;
  --ft-line: rgba(23,24,33,.13);
  --ft-violet: #8d35e8;
  --ft-gradient: linear-gradient(105deg,#5267ff 0%,#8d35e8 38%,#d51d9d 69%,#ff7446 100%);
}

/* Exit Uncode : on conserve son moteur de contenu, mais plus son header/footer visuels. */
body.ft-global-chrome-active header#masthead,
body.ft-global-chrome-active #masthead,
body.ft-global-chrome-active .menu-wrapper,
body.ft-global-chrome-active .menu-container,
body.ft-global-chrome-active #colophon,
body.ft-global-chrome-active footer.site-footer:not(.ft-global-footer),
body.ft-global-chrome-active .footer-scroll-top,
body.ft-global-chrome-active .footer-last,
body.ft-global-chrome-active .footer-center,
body.ft-global-chrome-active .footer-main {
  display: none !important;
}

.ft-global-header,
.ft-global-header *,
.ft-global-footer,
.ft-global-footer * { box-sizing: border-box; }

.ft-global-header {
  position: sticky;
  top: 0;
  z-index: 99990;
  height: 96px;
  padding: 8px 34px;
  display: grid;
  grid-template-columns: 290px 1fr auto;
  align-items: center;
  gap: 32px;
  color: var(--ft-ink);
  background: rgba(247,245,241,.92);
  border-bottom: 1px solid rgba(23,24,33,.08);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  font-family: "Geist", Arial, sans-serif;
}
body.admin-bar .ft-global-header { top: 32px; }

.ft-global-brand { display:flex; align-items:center; width:285px; height:78px; overflow:hidden; text-decoration:none !important; }
.ft-global-brand img { width:280px; height:76px; object-fit:contain; object-position:left center; display:block; }
.ft-global-nav { display:flex; justify-content:center; gap:clamp(18px,2.4vw,40px); }
.ft-global-nav a {
  position:relative; padding:14px 0 12px; color:var(--ft-ink) !important;
  font-size:15px; font-weight:640; letter-spacing:-.015em; text-decoration:none !important;
  transition:color .25s ease;
}
.ft-global-nav a::after {
  content:""; position:absolute; left:0; right:0; bottom:6px; height:2px; border-radius:999px;
  background:var(--ft-gradient); box-shadow:0 3px 11px rgba(141,53,232,.22);
  transform:scaleX(0); transform-origin:right center; transition:transform .34s cubic-bezier(.22,1,.36,1);
}
.ft-global-nav a:hover,.ft-global-nav a:focus-visible { color:var(--ft-violet) !important; }
.ft-global-nav a:hover::after,.ft-global-nav a:focus-visible::after { transform:scaleX(1); transform-origin:left center; }
.ft-global-header-cta {
  min-height:44px; padding:0 20px; display:inline-flex; align-items:center; justify-content:center; gap:12px;
  border-radius:999px; color:#fff !important; background:var(--ft-gradient); text-decoration:none !important;
  font-size:12px; font-weight:700; box-shadow:0 14px 36px rgba(132,45,215,.20); transition:.25s ease;
}
.ft-global-header-cta:hover { transform:translateY(-2px); box-shadow:0 18px 45px rgba(132,45,215,.30); }
.ft-global-mobile-menu { display:none; }

.ft-global-footer {
  position: relative;
  z-index: 2;
  padding: 0 0 25px;
  border-top: 1px solid var(--ft-line);
  color: var(--ft-ink);
  background: #ebe8e2;
  font-family: "Geist", Arial, sans-serif;
}
.ft-global-footer-shell { width:min(1300px,calc(100% - 64px)); margin-inline:auto; }
.ft-global-footer-grid { display:grid; grid-template-columns:1.5fr repeat(3,1fr); gap:7vw; padding-top:65px; }
.ft-global-footer-brand { overflow:hidden; }
.ft-global-footer-brand img { width:240px; display:block; }
.ft-global-footer-brand p { margin:10px 0 0; color:var(--ft-muted); font-size:10px; letter-spacing:.16em; text-transform:uppercase; }
.ft-global-footer-title { margin:0 0 18px !important; color:#9e36d6 !important; font-size:10px !important; font-weight:700 !important; letter-spacing:.13em; text-transform:uppercase; }
.ft-global-footer-grid > div:not(:first-child) { display:flex; flex-direction:column; align-items:flex-start; gap:10px; }
.ft-global-footer-grid a,
.ft-global-footer-grid > div:not(:first-child) > p:not(.ft-global-footer-title) { margin:0; color:var(--ft-muted) !important; font-size:11px; line-height:1.5; text-decoration:none !important; }
.ft-global-footer-grid a:hover { color:var(--ft-violet) !important; }
.ft-global-footer-grid strong { margin-top:12px; font-family:"Cormorant Garamond",Georgia,serif; font-size:18px; }
.ft-global-footer-bottom { display:flex; justify-content:space-between; margin-top:60px; padding-top:22px; border-top:1px solid var(--ft-line); color:#81818a; font-size:9px; }

@media (max-width:1100px) {
  .ft-global-header { grid-template-columns:250px 1fr auto; padding-inline:24px; }
  .ft-global-brand { width:245px; }
  .ft-global-brand img { width:240px; }
  .ft-global-nav { gap:14px; }
  .ft-global-nav a { font-size:13px; }
}
@media (max-width:800px) {
  body.admin-bar .ft-global-header { top:46px; }
  .ft-global-header { height:78px; grid-template-columns:1fr auto; padding-inline:18px; }
  .ft-global-brand { width:225px; height:60px; }
  .ft-global-brand img { width:220px; height:60px; }
  .ft-global-nav,.ft-global-header-cta { display:none; }
  .ft-global-mobile-menu { display:block; position:relative; margin:0; }
  .ft-global-mobile-menu summary { width:44px; height:44px; display:grid; place-content:center; gap:7px; border:1px solid var(--ft-line); border-radius:50%; cursor:pointer; list-style:none; }
  .ft-global-mobile-menu summary::-webkit-details-marker { display:none; }
  .ft-global-mobile-menu summary span { width:18px; height:1px; background:var(--ft-ink); }
  .ft-global-mobile-menu nav { position:absolute; right:0; top:54px; width:min(320px,calc(100vw - 36px)); padding:18px; display:flex; flex-direction:column; border-radius:16px; background:#fff; box-shadow:0 20px 60px rgba(23,24,33,.15); }
  .ft-global-mobile-menu nav a { padding:15px 10px; border-bottom:1px solid var(--ft-line); color:var(--ft-ink) !important; font-size:16px; font-weight:620; text-decoration:none !important; }
  .ft-global-footer-shell { width:min(100% - 36px,660px); }
  .ft-global-footer-grid { grid-template-columns:1fr 1fr; gap:45px; }
}
@media (max-width:560px) {
  .ft-global-footer-grid { grid-template-columns:1fr; }
  .ft-global-footer-bottom { align-items:flex-start; flex-direction:column; gap:8px; }
}

/* V32 — chrome global aligné sur 1300px */
:root{--ft-content-width:1300px}
.ft-global-footer-shell{width:min(var(--ft-content-width),calc(100% - 64px))!important;max-width:var(--ft-content-width)!important}
@media(max-width:800px){.ft-global-footer-shell{width:min(660px,calc(100% - 36px))!important}}


/* V33 — header/footer chrome alignés exactement sur 1300px */
@media (min-width: 1365px) {
  .ft-global-header,
  .ft-global-footer-shell {
    box-sizing: border-box !important;
  }
  .ft-global-header {
    width: 1300px !important;
    max-width: 1300px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .ft-global-footer-shell {
    width: 1300px !important;
    max-width: 1300px !important;
  }
}
