/* =========================
   ZIOW – Custom CSS propre
   ========================= */

:root{
  --z-bg: #101010;
  --z-bg-deep: #0b0f13;
  --z-text: #ededed;
  --z-text-soft: #b3b3b3;
  --z-icon: #acacac;
  --z-icon-hover: #cfcfcf;
  --z-border: rgba(237,237,237,.12);
  --z-border-soft: rgba(237,237,237,.08);
  --z-line: rgba(122,130,139,.35);
  --z-dot: #6b7785;
  --z-green: #22c55e;
}

/* =========================================
   1) Cartes
   ========================================= */
.ziow-card{
  transition: transform .25s ease, box-shadow .25s ease;
}

.ziow-card:hover{
  transform: translateY(-1.2rem);
  box-shadow: none;
  position: relative;
  z-index: 2;
}

/* =========================================
   2) Titre défilant
   ========================================= */
.ziow-title-scroll{
  overflow: hidden;
  position: relative;
  max-width: 100%;
  clip-path: inset(0);
  -webkit-clip-path: inset(0);
  -webkit-mask-image: linear-gradient(to right, transparent 0, #000 40px, #000 calc(100% - 40px), transparent 100%);
          mask-image: linear-gradient(to right, transparent 0, #000 40px, #000 calc(100% - 40px), transparent 100%);
}

.ziow-title-scroll .wp-block-getwid-advanced-heading__content{
  display: inline-block;
  white-space: nowrap;
  will-change: transform;
  backface-visibility: hidden;
  transform: translateZ(0);
  animation: ziow-scroll-left 10s linear infinite;
}

@keyframes ziow-scroll-left{
  from{ transform: translateX(100%); }
  to{ transform: translateX(-100%); }
}

/* =========================================
   3) Palette graphite
   ========================================= */
.alignfull{
  background: var(--z-bg) !important;
  color: var(--z-text) !important;
}

.alignfull p{
  color: var(--z-text-soft) !important;
}

.alignfull a,
.alignfull svg{
  color: var(--z-icon) !important;
  fill: var(--z-icon) !important;
}

.alignfull a:hover{
  color: var(--z-icon-hover) !important;
}

/* =========================================
   4) Getwid Icon Box
   ========================================= */
.alignfull .wp-block-getwid-icon-box :is(
  i,
  i::before,
  .dashicons,
  [class*="fa"],
  .wp-block-getwid-icon-box__icon,
  .getwid-icon-box__icon
){
  color: var(--z-icon) !important;
}

.alignfull .wp-block-getwid-icon-box :is(svg, svg *){
  fill: var(--z-icon) !important;
  stroke: var(--z-icon) !important;
}

.alignfull .wp-block-getwid-icon-box a:hover :is(i, i::before, svg, svg *){
  color: var(--z-icon-hover) !important;
  fill: var(--z-icon-hover) !important;
  stroke: var(--z-icon-hover) !important;
}

/* =========================================
   5) Roadmap
   ========================================= */
.ziow-roadmap-card{
  width: min(980px, calc(100% - 48px));
  margin: 0 auto !important;
  padding: 44px 44px 40px !important;
  border: 1px solid var(--z-border);
  border-radius: 24px;
  background: transparent !important;
  backdrop-filter: none !important;
}

.ziow-roadmap-header,
.ziow-roadmap-header .wp-block-heading,
.ziow-roadmap-header p{
  width: 100% !important;
  text-align: center !important;
}

.ziow-roadmap-items{
  width: min(620px, 100%);
  margin: 26px auto 0 !important;
  padding: 26px 26px 18px 90px !important;
  border: 1px solid var(--z-border);
  border-radius: 18px;
  background: rgba(16,16,16,.22);
  position: relative;
}

.ziow-roadmap-items::before{
  content: "";
  position: absolute;
  left: 40px;
  top: 22px;
  bottom: 22px;
  width: 2px;
  border-radius: 2px;
  background: var(--z-line);
  pointer-events: none;
}

.ziow-roadmap-item{
  display: flex !important;
  align-items: center !important;
  gap: 14px;
  min-height: 44px;
  margin: 0 0 18px !important;
  position: relative;
}

.ziow-roadmap-item:last-child{
  margin-bottom: 0 !important;
}

.ziow-roadmap-item p,
.ziow-roadmap-item .wp-block-paragraph{
  margin: 0 !important;
}

.ziow-roadmap-item p:first-child,
.ziow-roadmap-item .wp-block-paragraph:first-child{
  width: 26px;
  min-width: 26px;
  text-align: center;
  line-height: 1;
  transform: translateY(1px);
}

.ziow-roadmap-item p:last-child,
.ziow-roadmap-item .wp-block-paragraph:last-child{
  flex: 1;
}

.ziow-roadmap-item::before{
  content: "";
  position: absolute;
  left: -55px;
  top: 50%;
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--z-dot);
  box-shadow: 0 0 0 5px rgba(107,119,133,.16);
  transform: translateY(-50%);
  pointer-events: none;
}

/* Premier point vert + pulse */
.ziow-roadmap-items .ziow-roadmap-item:first-child::before{
  background: var(--z-green) !important;
  box-shadow:
    0 0 0 5px rgba(34,197,94,.18),
    0 0 10px rgba(34,197,94,.55),
    0 0 20px rgba(34,197,94,.30) !important;
}

.ziow-roadmap-items .ziow-roadmap-item:first-child::after{
  content: "";
  position: absolute;
  left: -59px;
  top: 50%;
  width: 18px;
  height: 18px;
  border-radius: 999px;
  background: rgba(34,197,94,.24);
  transform: translateY(-50%) scale(1);
  pointer-events: none;
  animation: ziow-roadmap-pulse 2.2s ease-out infinite;
}

@keyframes ziow-roadmap-pulse{
  0%{
    opacity: .75;
    transform: translateY(-50%) scale(.75);
  }
  70%,100%{
    opacity: 0;
    transform: translateY(-50%) scale(1.5);
  }
}

/* =========================================
   6) Section Spline
   ========================================= */
.alignfull.ziow-spline-section{
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate;
  background: var(--z-bg-deep) !important;
  width: 100% !important;
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.alignfull.ziow-spline-section .wp-block-html{
  position: static !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.alignfull.ziow-spline-section .ziow-spline-bg{
  position: absolute !important;
  inset: -2px !important;
  z-index: 0 !important;
  pointer-events: none !important;
  background: var(--z-bg-deep) !important;
}

.alignfull.ziow-spline-section .ziow-spline-bg spline-viewer{
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  transform: scale(1.30) translateY(-8%);
  transform-origin: center;
}

.alignfull.ziow-spline-section .ziow-spline-content{
  position: relative !important;
  z-index: 2 !important;
}

html,
body{
  overflow-x: hidden;
}

/* =========================================
   7) Useful links
   ========================================= */
.ziow-useful-links{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 18px;
}

.ziow-useful-links a{
  display: inline-block;
  text-decoration: none;
}

.ziow-useful-links a:hover{
  text-decoration: underline;
}

/* =========================================
   8) Store badges
   ========================================= */
.ziow-store-badges{
  width: fit-content;
  margin-inline: auto !important;
  justify-content: center !important;
  gap: 28px !important;
}

.ziow-store-badges > .wp-block-column{
  flex: 0 0 auto !important;
  margin: 0 !important;
}

.ziow-store-badges img{
  display: block;
}

/* =========================================
   9) Socials
   ========================================= */
.ziow-socials{
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 24px;
}

.ziow-socials a{
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  flex: 0 0 24px;
  line-height: 1;
  color: #bfc7d1;
  text-decoration: none;
  opacity: .92;
  transition: transform .2s ease, color .2s ease, opacity .2s ease;
}

.ziow-socials a:hover{
  color: #fff;
  opacity: 1;
  transform: translateY(-2px);
}

.ziow-socials svg{
  display: block;
  width: 24px !important;
  height: 24px !important;
  min-width: 24px;
  min-height: 24px;
  max-width: 24px;
  max-height: 24px;
  fill: currentColor;
}

/* =========================================
   10) Links section hover reveal
   ========================================= */
.ziow-links-section{
  position: relative;
  overflow: visible !important;
  isolation: isolate;
  padding: 0 !important;
  background:
    radial-gradient(70% 120% at 10% 20%, rgba(74,118,255,.10), transparent 46%),
    radial-gradient(50% 80% at 88% 20%, rgba(255,255,255,.04), transparent 30%),
    linear-gradient(115deg, #01050b 0%, #050c16 35%, #09111d 62%, #02060c 100%) !important;
}

.ziow-links-section::before,
.ziow-links-section::after,
.ziow-links-section.ziow-fixed-bg::before{
  content: none !important;
  background: none !important;
}

.ziow-links-section > *,
.ziow-links-section .wp-block-columns,
.ziow-links-section .wp-block-column{
  position: relative;
  z-index: 1;
  overflow: visible !important;
}

.ziow-link-card{
  position: relative;
  text-align: center;
  overflow: visible !important;
  padding: 24px 18px 20px !important;
  border-radius: 0 !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  transition: transform .28s ease;
}

.ziow-link-card:hover{
  transform: translateY(-6px);
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
}

.ziow-link-card :is(h1, h2, h3, h4){
  margin-top: 14px !important;
  margin-bottom: 10px !important;
  color: #f2f4f8 !important;
}

.ziow-link-card p{
  color: rgba(255,255,255,.72) !important;
}

.ziow-link-card :is(img, svg, i){
  transition: transform .28s ease, opacity .28s ease, filter .28s ease;
}

.ziow-link-card:hover :is(img, svg, i){
  transform: scale(1.04);
  filter: drop-shadow(0 6px 18px rgba(88,131,255,.16));
}

.ziow-hover-note{
  width: min(340px, calc(100% - 16px));
  margin: 0 auto !important;
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transform: translateY(-10px) scale(.96);
  transform-origin: center top;
  white-space: normal !important;
  line-height: 1.45;
  padding: 0 16px;
  border-radius: 18px;
  border: 1px solid transparent;
  background: transparent;
  box-shadow: none;
  color: #eef2f7 !important;
  font-size: .98rem;
  transition:
    max-height .38s ease,
    opacity .24s ease,
    transform .34s cubic-bezier(.22,1,.36,1),
    padding .28s ease,
    margin .28s ease,
    background .28s ease,
    border-color .28s ease,
    box-shadow .28s ease;
}

.ziow-link-card:hover .ziow-hover-note{
  max-height: 180px !important;
  overflow: visible !important;
  opacity: 1;
  transform: translateY(0) scale(1);
  margin: 10px auto 4px !important;
  padding: 12px 16px;
  border-color: rgba(255,255,255,.10);
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  box-shadow: 0 8px 20px rgba(0,0,0,.14);
}

/* =========================================
   11) Page À propos
   ========================================= */
.ziow-about-page{
  background: #ececec;
  padding: 16px;
}

.ziow-about-page,
.ziow-about-page.alignfull{
  width: 100%;
  max-width: none !important;
  margin: 0 !important;
}

.ziow-about-shell{
  width: min(1400px, calc(100% - 32px));
  max-width: 1400px;
  margin: 0 auto !important;
  background: #050505;
  border-radius: 36px;
  overflow: hidden;
  box-shadow: 0 24px 80px rgba(0,0,0,.22);
  position: relative;
}

.ziow-about-hero,
.ziow-about-duo,
.ziow-about-pillars,
.ziow-about-cta{
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.ziow-about-hero{
  position: relative;
  overflow: hidden;
  padding: 20px 20px 28px;
}

.ziow-about-hero::before{
  content: "";
  position: absolute;
  left: -120px;
  bottom: -120px;
  width: 460px;
  height: 460px;
  border-radius: 50%;
  background: radial-gradient(circle,
    rgba(210,255,0,.55) 0%,
    rgba(210,255,0,.20) 35%,
    rgba(210,255,0,.04) 65%,
    transparent 75%);
  filter: blur(28px);
  animation: ziowHaloFloat 11s ease-in-out infinite;
}

.ziow-about-hero::after{
  content: "";
  position: absolute;
  width: 320px;
  height: 320px;
  border-radius: 50%;
  background: radial-gradient(circle,
    rgba(91,154,255,.22) 0%,
    rgba(91,154,255,.08) 42%,
    transparent 72%);
  filter: blur(28px);
  animation: ziowSoftGlowA 12s ease-in-out infinite;
}

.ziow-about-hero-grid.wp-block-columns,
.ziow-about-duo-grid.wp-block-columns{
  width: 100%;
  max-width: none !important;
  margin: 0 !important;
}

.ziow-about-hero-grid.wp-block-columns{
  position: relative;
  z-index: 2;
  display: grid !important;
  grid-template-columns: 1.08fr .92fr;
  gap: 32px;
  align-items: stretch;
}

.ziow-about-duo-grid.wp-block-columns{
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}

.ziow-about-hero-grid > .wp-block-column,
.ziow-about-duo-grid > .wp-block-column{
  margin: 0 !important;
}

.ziow-about-hero-left{
  position: relative;
  overflow: hidden;
  min-height: 660px;
  border-radius: 30px;
  border: 1px solid rgba(255,255,255,.10);
  background: linear-gradient(180deg, rgba(27,27,27,.96) 0%, rgba(16,16,16,.88) 100%);
  padding: 32px;
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
  backdrop-filter: blur(8px);
}

.ziow-about-hero-left::before{
  content: "";
  position: absolute;
  right: -40px;
  top: -30px;
  width: 180px;
  height: 180px;
  border-radius: 50%;
  background: radial-gradient(circle,
    rgba(120,166,255,.16) 0%,
    rgba(120,166,255,.05) 46%,
    transparent 74%);
  filter: blur(24px);
}

.ziow-about-hero-left::after{
  content: "";
  position: absolute;
  left: 20%;
  bottom: 12%;
  width: 160px;
  height: 160px;
  border-radius: 50%;
  background: radial-gradient(circle,
    rgba(173,102,255,.12) 0%,
    rgba(173,102,255,.04) 44%,
    transparent 72%);
  filter: blur(24px);
}

.ziow-about-hero-right{
  position: relative;
  overflow: hidden;
  min-height: 660px;
  border-radius: 30px;
  background: rgba(245,245,245,.98);
  padding: 32px;
  color: #111;
  box-shadow:
    0 18px 48px rgba(0,0,0,.18),
    inset 0 1px 0 rgba(255,255,255,.75);
}

.ziow-about-hero-right::before{
  content: "";
  position: absolute;
  right: -30px;
  top: -20px;
  width: 150px;
  height: 150px;
  border-radius: 50%;
  background: radial-gradient(circle,
    rgba(98,176,255,.18) 0%,
    rgba(98,176,255,.07) 45%,
    transparent 72%);
  filter: blur(24px);
}

.ziow-about-hero-right::after{
  content: "";
  position: absolute;
  left: -20px;
  bottom: 8%;
  width: 140px;
  height: 140px;
  border-radius: 50%;
  background: radial-gradient(circle,
    rgba(208,255,0,.12) 0%,
    rgba(208,255,0,.05) 42%,
    transparent 72%);
  filter: blur(22px);
}

.ziow-about-kicker,
.ziow-about-kicker-center{
  display: inline-flex;
  align-items: center;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.05);
  color: rgba(255,255,255,.60);
  padding: 8px 16px;
  border-radius: 999px;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .22em;
  margin: 0 0 16px;
}

.ziow-about-kicker-center{
  margin: 0 auto 16px;
}

.ziow-about-kicker-dark{
  color: rgba(17,17,17,.45);
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .22em;
  margin: 0 0 22px;
}

.ziow-about-main-title{
  margin: 0;
  max-width: 11ch;
  font-size: clamp(3rem, 7vw, 5.4rem);
  line-height: .98;
  letter-spacing: -.05em;
  font-weight: 600;
  color: #fff;
}

.ziow-about-section-title{
  margin: 0;
  font-size: clamp(2rem, 4vw, 3.1rem);
  line-height: 1.05;
  letter-spacing: -.04em;
  font-weight: 600;
  color: #111;
}

.ziow-about-text{
  margin: 24px 0 0;
  max-width: 720px;
  font-size: 16px;
  line-height: 1.9;
  color: rgba(255,255,255,.72);
}

.ziow-about-text-dark{
  margin: 18px 0 0;
  font-size: 15px;
  line-height: 1.9;
  color: rgba(17,17,17,.65);
}

.ziow-about-logo-zone{
  position: relative;
  min-height: 220px;
  margin-top: 40px;
  overflow: hidden;
}

.ziow-about-logo-zone::before{
  content: "";
  position: absolute;
  left: 46%;
  top: 8%;
  width: 120px;
  height: 120px;
  border-radius: 50%;
  background: radial-gradient(circle,
    rgba(255,255,255,.12) 0%,
    rgba(255,255,255,.04) 40%,
    transparent 72%);
  filter: blur(22px);
}

.ziow-about-logo-image{
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 2;
}

.ziow-about-logo-image img{
  width: auto;
  height: 56px;
  object-fit: contain;
  opacity: .95;
}

.ziow-about-chip{
  margin: 14px 0 0 !important;
  padding: 16px 18px;
  border-radius: 18px;
  border: 1px solid rgba(0,0,0,.10);
  background: rgba(0,0,0,.035);
  color: rgba(0,0,0,.80);
  font-size: 15px;
  line-height: 1.5;
}

.ziow-about-btn-row{
  margin-top: 28px;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.ziow-about-btn-row .wp-block-button{
  margin: 0 !important;
}

.ziow-btn-primary .wp-block-button__link,
.ziow-btn-primary a{
  border-radius: 18px !important;
  border: 1px solid rgba(0,0,0,.10) !important;
  background: #a3a3a3 !important;
  color: #111 !important;
  padding: 16px 24px !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  box-shadow: 0 14px 28px rgba(0,0,0,.08);
  transition: transform .3s ease, box-shadow .3s ease !important;
  animation: ziowButtonBreath 4.8s ease-in-out infinite;
}

.ziow-btn-primary .wp-block-button__link:hover,
.ziow-btn-primary a:hover{
  transform: translateY(-2px);
  box-shadow: 0 18px 34px rgba(0,0,0,.12);
}

.ziow-btn-secondary .wp-block-button__link,
.ziow-btn-secondary a{
  border-radius: 18px !important;
  border: 1px solid rgba(0,0,0,.10) !important;
  background: #fff !important;
  color: rgba(0,0,0,.75) !important;
  padding: 16px 24px !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  transition: transform .3s ease, box-shadow .3s ease !important;
}

.ziow-btn-secondary .wp-block-button__link:hover,
.ziow-btn-secondary a:hover{
  transform: translateY(-2px);
  box-shadow: 0 14px 28px rgba(0,0,0,.08);
}

.ziow-about-duo{
  padding: 0 20px 28px;
}

.ziow-about-card{
  position: relative;
  overflow: hidden;
  border-radius: 28px;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.03);
  padding: 32px;
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
  backdrop-filter: blur(8px);
  transition: transform .3s ease, box-shadow .3s ease;
}

.ziow-about-card:hover{
  transform: translateY(-4px);
}

.ziow-about-card-blue:hover{
  box-shadow: 0 24px 60px rgba(72,194,255,.10), inset 0 1px 0 rgba(255,255,255,.05);
}

.ziow-about-card-purple:hover{
  box-shadow: 0 24px 60px rgba(179,104,255,.10), inset 0 1px 0 rgba(255,255,255,.05);
}

.ziow-about-card-blue::before{
  content: "";
  position: absolute;
  right: -30px;
  top: -10px;
  width: 150px;
  height: 150px;
  border-radius: 50%;
  background: radial-gradient(circle,
    rgba(88,188,255,.18) 0%,
    rgba(88,188,255,.06) 46%,
    transparent 74%);
  filter: blur(24px);
}

.ziow-about-card-purple::before{
  content: "";
  position: absolute;
  left: -20px;
  bottom: -10px;
  width: 150px;
  height: 150px;
  border-radius: 50%;
  background: radial-gradient(circle,
    rgba(179,104,255,.16) 0%,
    rgba(179,104,255,.05) 46%,
    transparent 74%);
  filter: blur(24px);
}

.ziow-about-card h3{
  margin: 16px 0 0;
  font-size: clamp(1.8rem, 3vw, 2.6rem);
  line-height: 1.1;
  letter-spacing: -.04em;
  color: #fff;
}

.ziow-about-card p{
  margin: 20px 0 0;
  max-width: 640px;
  font-size: 15px;
  line-height: 1.9;
  color: rgba(255,255,255,.68);
}

.ziow-about-pillars{
  padding: 0 20px 28px;
  text-align: center;
}

.ziow-about-aurora-title{
  position: relative;
  display: inline-block;
  margin: 0 auto 30px !important;
  padding: 0 18px;
  font-size: clamp(2rem, 5vw, 4.2rem);
  line-height: 1.05;
  letter-spacing: -.05em;
  font-weight: 600;
  color: transparent;
  background: linear-gradient(90deg,
    #7dd3fc 0%,
    #60a5fa 18%,
    #c084fc 38%,
    #f9a8d4 60%,
    #fbbf24 82%,
    #fde047 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  animation: ziowAuroraShift 9s ease-in-out infinite;
}

.ziow-about-aurora-title::before,
.ziow-about-aurora-title::after{
  content: "";
  position: absolute;
  border-radius: 999px;
  filter: blur(18px);
  z-index: -1;
  opacity: .55;
}

.ziow-about-aurora-title::before{
  left: 6%;
  top: 10%;
  width: 120px;
  height: 60px;
  background: rgba(111,216,255,.30);
  animation: ziowAuroraBlobA 7.5s ease-in-out infinite;
}

.ziow-about-aurora-title::after{
  right: 8%;
  top: 18%;
  width: 120px;
  height: 60px;
  background: rgba(255,210,77,.22);
  animation: ziowAuroraBlobB 7.9s ease-in-out infinite;
}

.ziow-about-pillars-grid,
.ziow-about-pillars-grid.wp-block-columns{
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
  width: 100%;
  margin: 0;
}

.ziow-about-pillars-grid > .wp-block-column,
.ziow-about-pillars-grid > .wp-block-group{
  margin: 0 !important;
}

.ziow-about-pillar-card{
  position: relative;
  overflow: hidden;
  border-radius: 26px;
  border: 1px solid rgba(255,255,255,.08);
  background: linear-gradient(180deg, rgba(24,24,24,.9) 0%, rgba(13,13,13,.84) 100%);
  padding: 28px;
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
  transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}

.ziow-about-pillar-card:hover{
  transform: translateY(-4px);
  border-color: rgba(255,255,255,.12);
  box-shadow: 0 18px 36px rgba(124,88,255,.08), inset 0 1px 0 rgba(255,255,255,.05);
}

.ziow-about-pillar-card h4{
  margin: 0;
  font-size: 1.35rem;
  letter-spacing: -.03em;
  color: #fff;
}

.ziow-about-pillar-card p{
  margin: 16px 0 0;
  font-size: 15px;
  line-height: 1.85;
  color: rgba(255,255,255,.65);
}

.ziow-about-cta{
  position: relative;
  padding: 0 20px 32px;
}

.ziow-about-cta-grid.wp-block-columns{
  margin: 0;
}

.ziow-about-cta > .wp-block-columns{
  position: relative;
  overflow: hidden;
  border-radius: 32px;
  border: 1px solid rgba(255,255,255,.08);
  background: linear-gradient(180deg, rgba(238,238,238,.96) 0%, rgba(228,228,228,.92) 100%);
  padding: 32px;
  box-shadow: 0 18px 48px rgba(0,0,0,.14);
}

.ziow-about-cta > .wp-block-columns::before{
  content: "";
  position: absolute;
  right: -40px;
  top: -40px;
  width: 180px;
  height: 180px;
  border-radius: 50%;
  background: radial-gradient(circle,
    rgba(101,170,255,.14) 0%,
    rgba(101,170,255,.05) 44%,
    transparent 74%);
  filter: blur(24px);
}

.ziow-about-cta > .wp-block-columns::after{
  content: "";
  position: absolute;
  left: -30px;
  bottom: -40px;
  width: 170px;
  height: 170px;
  border-radius: 50%;
  background: radial-gradient(circle,
    rgba(208,255,0,.10) 0%,
    rgba(208,255,0,.04) 40%,
    transparent 72%);
  filter: blur(24px);
}

.ziow-about-cta h3{
  margin: 16px 0 0;
  font-size: clamp(2rem, 4vw, 4rem);
  line-height: 1.05;
  letter-spacing: -.05em;
  color: #111;
}

.ziow-about-cta p{
  margin: 20px 0 0;
  max-width: 760px;
  font-size: 15px;
  line-height: 1.9;
  color: rgba(0,0,0,.65);
}

.ziow-about-cta .wp-block-buttons{
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.ziow-about-cta .wp-block-button{
  margin: 0 !important;
}

/* =========================================
   12) Correctifs Gutenberg / Blocksy Free
   ========================================= */
body.page-id-9{
  background: #0b0b0d !important;
}

body.page-id-9 :is(.site-main, .ct-container, article, .entry-content){
  background: transparent !important;
  box-shadow: none !important;
}

body.page-id-9 .entry-content > *{
  margin-left: 0 !important;
  margin-right: 0 !important;
}

body.page-id-9 .ziow-about-page{
  background: transparent !important;
  padding: 16px !important;
}

body.page-id-9 .ziow-about-shell{
  margin: 0 auto !important;
  background: #050505 !important;
  box-shadow: none !important;
}

body.page-id-9 .ct-page-title,
body.page-id-9 .hero-section[data-type]{
  max-width: 1400px;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 16px !important;
  padding-right: 16px !important;
}

body.page-id-9 .ct-page-title [class*="ct-container"],
body.page-id-9 .hero-section[data-type] [class*="ct-container"]{
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
}

body.page-id-9 :is(.ct-breadcrumbs, .entry-meta, .ct-meta-label, .ct-meta-button){
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 0 !important;
}

body.logged-in.page-id-9 .ziow-about-shell{
  margin-top: 8px !important;
}

body.page-id-9 .ziow-about-hero{
  border-bottom-left-radius: 48px !important;
  overflow: hidden !important;
}

body.page-id-9 .ziow-about-main-title,
body.page-id-9 .ziow-about-text{
  position: relative;
  transform: translateY(100px);
}

body.page-id-9 .ziow-about-main-title{
  text-align: left !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  width: 100% !important;
}

/* =========================================
   13) Perf douce
   ========================================= */
.ziow-about-hero-left,
.ziow-about-hero-right,
.ziow-about-card,
.ziow-about-pillar-card,
.ziow-about-cta > .wp-block-columns,
.ziow-roadmap-card,
.ziow-roadmap-items,
.ziow-link-card{
  contain: layout paint;
}

@media (prefers-reduced-motion: reduce){
  *,
  *::before,
  *::after{
    animation: none !important;
    transition: none !important;
    scroll-behavior: auto !important;
  }
}

/* =========================================
   14) Animations
   ========================================= */
@keyframes ziowHaloFloat{
  0%{ transform: translate3d(0,0,0) scale(1); opacity: .92; }
  50%{ transform: translate3d(18px,-14px,0) scale(1.05); opacity: 1; }
  100%{ transform: translate3d(0,0,0) scale(1); opacity: .92; }
}

@keyframes ziowButtonBreath{
  0%{ transform: translateY(0); }
  50%{ transform: translateY(-1px); }
  100%{ transform: translateY(0); }
}

@keyframes ziowAuroraShift{
  0%{ background-position: 0% 50%; filter: hue-rotate(0deg); }
  50%{ background-position: 100% 50%; filter: hue-rotate(12deg); }
  100%{ background-position: 0% 50%; filter: hue-rotate(0deg); }
}

@keyframes ziowAuroraBlobA{
  0%{ transform: translate3d(0,0,0) scale(1); opacity: .55; }
  50%{ transform: translate3d(18px,-8px,0) scale(1.08); opacity: .72; }
  100%{ transform: translate3d(0,0,0) scale(1); opacity: .55; }
}

@keyframes ziowAuroraBlobB{
  0%{ transform: translate3d(0,0,0) scale(1); opacity: .42; }
  50%{ transform: translate3d(-16px,10px,0) scale(1.06); opacity: .6; }
  100%{ transform: translate3d(0,0,0) scale(1); opacity: .42; }
}

@keyframes ziowSoftGlowA{
  0%{ transform: translate3d(0,0,0); opacity: .26; }
  50%{ transform: translate3d(10px,-8px,0); opacity: .4; }
  100%{ transform: translate3d(0,0,0); opacity: .26; }
}

/* =========================================
   15) Responsive
   ========================================= */
@media (max-width: 1100px){
  .ziow-about-hero-grid.wp-block-columns,
  .ziow-about-duo-grid.wp-block-columns,
  .ziow-about-pillars-grid,
  .ziow-about-pillars-grid.wp-block-columns{
    grid-template-columns: 1fr !important;
  }

  .ziow-about-hero-left,
  .ziow-about-hero-right{
    min-height: auto;
  }

  .ziow-about-pillars-grid,
  .ziow-about-pillars-grid.wp-block-columns{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 1024px){
  .ziow-about-hero-left,
  .ziow-about-card{
    backdrop-filter: blur(6px);
  }

  .ziow-about-hero::before,
  .ziow-about-hero::after,
  .ziow-about-hero-left::before,
  .ziow-about-hero-left::after,
  .ziow-about-hero-right::before,
  .ziow-about-hero-right::after,
  .ziow-about-card-blue::before,
  .ziow-about-card-purple::before,
  .ziow-about-aurora-title::before,
  .ziow-about-aurora-title::after,
  .ziow-about-cta > .wp-block-columns::before,
  .ziow-about-cta > .wp-block-columns::after{
    filter: blur(20px) !important;
  }

  .ziow-btn-primary .wp-block-button__link,
  .ziow-btn-primary a,
  .ziow-about-aurora-title,
  .ziow-about-hero::before,
  .ziow-about-hero::after{
    animation-duration: 14s !important;
  }
}

@media (max-width: 780px){
  .ziow-about-page{
    padding: 10px;
  }

  .ziow-about-shell{
    width: calc(100% - 20px);
    border-radius: 24px;
  }

  .ziow-about-hero,
  .ziow-about-duo,
  .ziow-about-pillars,
  .ziow-about-cta{
    padding-left: 12px;
    padding-right: 12px;
  }

  .ziow-about-hero-left,
  .ziow-about-hero-right,
  .ziow-about-card,
  .ziow-about-cta > .wp-block-columns,
  .ziow-about-pillar-card{
    padding: 22px;
    border-radius: 22px;
  }

  .ziow-about-pillars-grid,
  .ziow-about-pillars-grid.wp-block-columns{
    grid-template-columns: 1fr !important;
  }

  .ziow-about-logo-image img{
    height: 46px;
  }

  .ziow-hover-note{
    width: min(230px, 100%);
    font-size: .92rem;
  }
}

@media (max-width: 768px){
  .alignfull.ziow-spline-section .ziow-spline-bg spline-viewer{
    transform: scale(1.15) translateY(-5%);
  }

  .ziow-links-section{
    padding: 0 !important;
  }

  .ziow-link-card{
    padding: 22px 14px 18px !important;
  }

  .ziow-link-card:hover{
    transform: none;
  }

  .ziow-hero .wp-block-getwid-section__background-video-wrapper,
  .ziow-hero .wp-block-getwid-section__background-video{
    display: none !important;
  }

  .ziow-hero{
    background-image: url("https://ziow.ca/wp-content/uploads/2026/03/ziow-bg-4k-scaled.jpg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
}