:root {
--z-global-color-primary: #2a065a;
--z-global-color-secondary: #80d8ff;
--z-global-color-text: #000000;
--z-global-color-accent: #fabb45;
--z-global-color-bg1: #ececee;
--z-global-color-pink: #f8b9f6;
}
:where(figure) {
margin: 0;
}
* {
box-sizing: border-box;
transition: all 0.3s;
}
body {
margin: 0;
color: var(--z-global-color-text);
font-family: "Outfit", Sans-serif;
font-size: 22px;
font-weight: 100;
}
@font-face {
font-family: "Outfit";
font-style: normal;
font-weight: 100;
font-display: swap;
src: url(https://static.zoan.fr/themes/zoan/fonts/Outfit-Thin.woff2)
format("woff2");
}
@font-face {
font-family: "Outfit";
font-style: normal;
font-weight: 300;
font-display: swap;
src: url(https://static.zoan.fr/themes/zoan/fonts/Outfit-Light.woff2)
format("woff2");
}
@font-face {
font-family: "Outfit";
font-style: normal;
font-weight: 500;
font-display: swap;
src: url(https://static.zoan.fr/themes/zoan/fonts/Outfit-Medium.woff2)
format("woff2");
}
h1 {
font-family: "Outfit", Sans-serif;
font-size: 48px;
font-weight: 500;
}
.screen-reader-text {
display: none;
}
.container {
display: flex;
flex-wrap: wrap;
flex-direction: column;
justify-content: center;
align-items: center;
}
@media (min-width: 1030px) {
h1 {
font-size: 70px;
}
.container {
flex-direction: row;
justify-content: space-between;
}
}
.strong {
font-weight: bold;
}
.bg-global-color-primary {
background-color: var(--z-global-color-primary);
color: white;
}
.bg-global-color-bg1 {
background-color: var(--z-global-color-bg1);
}
.padding {
padding: 5%;
}
.gap-0,
.wp-block-columns.gap-0 {
gap: 0;
}
.center,
.center .wp-block-group__inner-container {
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
text-align: center;
}
.fullwidth img {
width: 100%;
} body .is-layout-flex {
display: flex;
flex-direction: column;
}
body .is-layout-flex.wp-block-buttons {
flex-direction: row;
}
.is-layout-grid {
display: grid;
}
.has-text-align-center {
text-align: center;
}
.wp-block-columns {
align-items: stretch;
flex-direction: column;
gap: 20px;
}
.wp-block-column {
flex-basis: 100%;
align-content: center;
}
.wp-block-buttons {
width: 100%;
justify-content: center;
}
.wp-block-button {
text-align: center;
}
.wp-block-button__link,
.wp-block-navigation-item__content {
font-size: 14px;
font-weight: 300;
text-decoration: none;
color: var(--z-global-color-primary);
border-style: solid;
border-width: 2px;
border-color: var(--z-global-color-primary);
border-radius: 50px 50px 50px 50px;
background-color: transparent;
padding: 8px 12px;
display: inline-block;
}
.wp-block-button__link:hover,
.wp-block-navigation-item__content:hover {
background-color: var(--z-global-color-primary);
color: white;
}
@media (min-width: 1030px) {
.wp-block-button__link,
.wp-block-navigation-item__content {
font-size: 22px;
padding: 12px 24px;
}
.wp-block-columns {
flex-direction: row;
}
} section {
margin: 0 auto;
padding: 20px;
}
@media (min-width: 1030px) {
section,
.boxed {
padding: 80px 40px 80px;
}
}
@media (min-width: 1480px) {
section,
.boxed {
padding: 80px calc((100vw - 1400px) / 2) 80px;
}
}
.category article,
.tag article {
display: block;
width: 100%;
}
.category article > a,
.tag article > a {
box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.18);
background: white;
position: relative;
overflow: hidden;
display: block;
margin: 20px;
}
.category article .featured-image,
.tag article .featured-image {
overflow: hidden;
}
.category article img,
.tag article img {
width: 100%;
height: auto;
aspect-ratio: 16/9;
object-fit: cover;
transition: all 0.8s;
display: block;
}
.category article:hover img,
.tag article:hover img {
transform: scale(1.2);
}
.category article a,
.tag article a {
text-decoration: none;
color: var(--z-global-color-text);
}
.category article .container,
.tag article .container {
padding-bottom: 30px;
}
.category article .container .terms,
.tag article .container .terms {
background-color: var(--z-global-color-primary);
padding: 10px 20px 10px 20px;
color: white;
font-size: 24px;
}
.category article .container .date,
.tag article .container .date {
padding: 10px 20px 10px 20px;
font-size: 18px;
}
.category article .container h2,
.category article .container h3,
.category article .container p,
.tag article .container h2,
.tag article .container h3,
.tag article .container p {
padding: 20px 20px 0 20px;
margin: 0;
}
.category article .container h2,
.category article .container h3,
.tag article .container h2,
.tag article .container h3 {
font-size: 24px;
font-weight: 400;
text-align: left;
text-transform: none;
}
@media (min-width: 1030px) {
.category article,
.tag article {
width: calc(100% / 3);
}
} html.menu-opened {
overflow: hidden;
}
header[role="banner"] {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: flex-start;
position: relative;
}
header[role="banner"] > a {
margin: 40px 0 0 40px;
}
@media (min-width: 1030px) {
.menu-opened header[role="banner"] {
position: fixed;
width: 100%;
top: 0;
left: 0;
z-index: 100;
}
.menu-opened main {
padding-top: 176px;
}
}
header[role="banner"] .logo,
footer[role="contentinfo"] .logo {
height: 90px;
width: 90px;
}
header[role="banner"] .logo {
position: relative;
z-index: 10;
}
header[role="banner"] .logo,
header[role="banner"] .logo path {
transition: all 0.5s;
opacity: 1;
}
header[role="banner"] .logo:hover .z2,
header[role="banner"] .logo:hover .o2,
header[role="banner"] .logo:hover .a2,
header[role="banner"] .logo:hover .n2 {
opacity: 0;
}
.menu-opened header[role="banner"] .logo {
transform: translateX(calc(50vw - 90px));
}
.menu-opened header[role="banner"] .logo path {
fill: white;
}
#menu-toggle {
width: 35px;
height: 35px;
margin: 40px 40px 0 0;
border-radius: 50%;
cursor: pointer;
transition: all 0.3s;
z-index: 10;
}
.menu-opened #menu-toggle {
transform: rotate(45deg);
}
.menu-opened #menu-toggle path {
fill: var(--z-global-color-secondary);
}
@media (min-width: 1280px) {
body .is-layout-flex {
flex-direction: row;
}
.is-pinned #menu-toggle {
position: fixed;
top: 40px;
right: 40px;
transform: translateY(-1000px);
opacity: 0;
}
html:not(.menu-opened) .is-pinned #menu-toggle {
transform: scale(1.3);
}
html:not(.menu-opened) .is-pinned #menu-toggle { background: var(--z-global-color-primary);
z-index: 0;
}
html:not(.menu-opened) .is-pinned #menu-toggle {
z-index: 10;
}
html:not(.menu-opened) .is-pinned #menu-toggle path {
fill: white;
}
.is-pinned.animating #menu-toggle {
transform: translateY(0);
opacity: 1;
}
.menu-opened .is-pinned.animating #menu-toggle {
transform: rotate(45deg) translateY(0) scale(1.3);
}
}
#main-menu {
position: fixed;
width: 100vw;
height: 100vh;
left: 0;
top: 0;
z-index: 2;
display: flex;
justify-content: center;
align-items: center;
pointer-events: none;
transition: all 0.3s;
visibility: hidden;
opacity: 0;
background: linear-gradient(
-45deg,
#18082d,
var(--z-global-color-primary),
#18082d,
var(--z-global-color-primary)
);
background-size: 400% 400%;
animation: gradient 15s ease infinite;
}
.menu-opened #main-menu {
pointer-events: all;
visibility: visible;
opacity: 1;
}
@keyframes gradient {
0% {
background-position: 0% 50%;
}
50% {
background-position: 100% 50%;
}
100% {
background-position: 0% 50%;
}
}
#main-menu ul,
#footer-menu ul {
margin: 0;
padding: 0;
}
#main-menu ul li,
#footer-menu ul li {
list-style: none;
display: flex;
justify-content: center;
transition: all 0.8s ease;
}
#main-menu ul li {
transform: translateX(-100px);
opacity: 0;
}
#main-menu ul li a,
#footer-menu ul li a {
font-size: 32px;
font-weight: 500;
text-transform: uppercase;
padding: 10px 0;
color: #ffffff;
text-decoration: none;
transition: color 0.3s;
}
@media (min-width: 1030px) {
#main-menu ul li {
margin: 10px 0;
}
#main-menu ul li a {
font-size: 64px;
padding: 0;
}
}
#main-menu ul li a:hover,
#footer-menu ul li a:hover {
color: var(--z-global-color-secondary);
}
.menu-opened #main-menu ul li {
transform: translateX(0);
opacity: 1;
}
.menu-opened #main-menu ul li:nth-child(2) {
transition-delay: 200ms;
}
.menu-opened #main-menu ul li:nth-child(3) {
transition-delay: 400ms;
}
.menu-opened #main-menu ul li:nth-child(4) {
transition-delay: 600ms;
}
.menu-opened #main-menu ul li:nth-child(5) {
transition-delay: 800ms;
}
footer[role="contentinfo"] {
flex-wrap: wrap;
padding: 30px;
background: linear-gradient(
-45deg,
#18082d,
var(--z-global-color-primary),
#18082d,
var(--z-global-color-primary)
);
background-size: 400% 400%;
animation: gradient 15s ease infinite;
}
@media (min-width: 1140px) {
footer[role="contentinfo"] {
padding: 130px 40px 40px;
}
}
@media (min-width: 1750px) {
footer[role="contentinfo"] {
padding: 130px calc((100vw - 1750px) / 2) 40px
calc((100vw - 1750px) / 2);
}
}
footer[role="contentinfo"] > .container {
flex-direction: column;
margin-top: 40px;
}
footer[role="contentinfo"] .logo {
fill: white;
pointer-events: none;
}
#footer-menu ul li {
list-style: none;
}
footer[role="contentinfo"] p,
footer[role="contentinfo"] p a {
text-align: center;
font-size: 22px;
font-weight: 200;
line-height: 1.2em;
color: #ffffff;
text-decoration: none;
}
.social-links,
.copyright {
margin: 0;
padding: 0;
list-style: none;
}
.social-links li {
text-align: center;
}
.social-links a {
color: #ff00ff;
text-decoration: none;
transition: color 0.3s;
}
.social-links a:hover,
.social-links li:first-child a:hover,
.social-links li:last-child a:hover,
.copyright a:hover {
color: var(--z-global-color-accent);
}
.social-links li:first-child a {
color: var(--z-global-color-secondary);
}
.social-links li:last-child a {
color: #0ea7f8;
}
.copyright {
display: flex;
flex-direction: column;
justify-content: center;
text-align: center;
margin-top: 60px;
color: #ffffff;
font-size: 16px;
font-weight: 200;
}
.copyright li {
padding: 10px 0;
}
.copyright a {
color: #ffffff;
text-decoration: none;
transition: color 0.3s;
}
#error-404 {
font-size: 3em;
font-weight: bold;
text-align: center;
color: var(--z-global-color-primary);
}
@media (min-width: 1030px) {
footer[role="contentinfo"] > .container {
align-items: flex-end;
margin-top: 0;
}
#footer-menu ul li a {
font-size: 43px;
}
footer[role="contentinfo"] p,
footer[role="contentinfo"] p a {
text-align: right;
}
#footer-menu ul li {
justify-content: flex-start;
}
.social-links li {
text-align: right;
}
.copyright {
width: 100%;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
.copyright li:not(:last-child)::after {
content: "|";
margin: 0 10px;
}
.copyright li:nth-child(3)::after {
content: "";
margin: 0;
}
.copyright li:last-child {
margin-left: auto;
padding: 0;
}
}.cta-contact {
position: relative;
background: url(https://static.zoan.fr/themes/zoan/img/bg-contact.webp)
no-repeat;
background-size: cover;
background-position: top right;
padding: 40px;
gap: 60px;
}
.cta-contact::before {
content: "";
mix-blend-mode: multiply;
background-color: var(--z-global-color-primary);
opacity: 0.3;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1;
}
.cta-contact .wp-block-column {
z-index: 10;
}
.cta-contact .wp-block-column:first-child {
justify-content: center;
display: flex;
}
.cta-contact svg {
fill: white;
width: 80px;
height: 80px;
}
.cta-contact p {
font-size: 24px;
line-height: 1.4em;
font-weight: 500;
text-transform: uppercase;
margin: 0;
color: white;
}
.cta-contact .wp-block-button {
margin: 20px 0 0;
}
.cta-contact .wp-block-button__link {
margin: 0;
font-size: 28px;
font-weight: 500;
text-transform: uppercase;
background-color: white;
color: var(--z-global-color-primary);
}
.cta-contact .wp-block-button__link:hover {
background-color: var(--z-global-color-accent);
}
@media (min-width: 1030px) {
.cta-contact {
padding: 50px calc((100vw - 1140px) / 2);
}
.cta-contact p {
font-size: 40px;
}
.cta-contact svg {
width: 165px;
height: 165px;
}
.cta-contact .wp-block-column:first-child {
width: 165px;
flex-basis: initial;
}
.cta-contact .wp-block-column:last-child {
width: calc(100% - 165px);
}
}
section#team {
display: flex;
flex-direction: column;
}
section#team > .wp-block-group:first-child {
padding: 20px 20px 60px;
}
section#team > .wp-block-group:first-child .wp-block-group__inner-container {
display: flex;
align-items: center;
flex-direction: column;
}
section#team > .wp-block-group:first-child svg {
fill: #f3f3f3;
width: 84px;
}
.wp-block-heading {
margin: 0;
font-size: 38px;
line-height: 1.2em;
font-weight: 500;
text-transform: uppercase;
text-align: center;
}
section#team .team {
grid-template-columns: repeat(2, calc(50% - 10px));
grid-template-rows: repeat(2, 1fr);
gap: 20px;
}
section#team .team figure {
position: relative;
display: flex;
opacity: 0;
}
section#team .team > figure:nth-child(3),
section#team .team > figure:nth-child(4),
section#team .team > figure:last-child {
display: none;
}
section#team .team > figure img {
width: 100%;
height: auto;
object-fit: cover;
}
section#team .team figcaption {
display: flex;
flex-direction: column;
justify-content: center;
text-align: center;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
padding: 20px;
color: #fff !important;
background-color: #5d0c65d8;
font-size: 18px !important;
line-height: 1em;
font-style: italic;
transition: all 0.5s;
opacity: 0;
cursor: default;
}
section#team .team figcaption strong {
font-size: 1.3em;
font-style: normal;
display: block;
margin-bottom: 5px;
}
section#team .team figure:hover figcaption {
opacity: 1;
}
section#about figure {
display: flex;
align-items: flex-start;
}
section#about figure img {
max-width: 100%;
height: auto;
}
section#about > .wp-block-group:first-child > figure:first-child {
margin-bottom: 10%;
}
section#about > .wp-block-group:first-child > figure:nth-child(2),
section#about > .wp-block-group:first-child > figure:last-child {
display: none;
}
section#values {
padding: 0;
}
section#values figure {
overflow: hidden;
}
section#values img {
width: 100%;
height: 100%;
object-fit: cover;
}
section#values > .wp-block-group:first-child {
background-color: #225f7b;
color: white;
}
section#values .wp-block-heading {
text-align: center;
}
section#values .wp-block-group.is-layout-grid {
display: flex;
justify-content: center;
flex-direction: column;
padding: 10%;
}
section#values > .grid-item:first-child {
order: 2;
}
section#values > .grid-item:nth-child(2) {
order: 1;
}
section#values > .grid-item:nth-child(3) {
order: 3;
}
section#values > .grid-item:nth-child(4) {
order: 4;
}
section#values > .grid-item:nth-child(5) {
order: 6;
}
section#values > .grid-item:last-child {
order: 5;
}
@media (min-width: 1030px) {
section#team {
padding: 80px calc((100vw - 1280px) / 2) 80px;
flex-direction: row;
}
section#team > .wp-block-group:first-child {
width: 40%;
transform: translateY(100px);
opacity: 0;
}
section#team
> .wp-block-group:first-child
.wp-block-group__inner-container {
align-items: flex-start;
}
section#team > .wp-block-group:first-child svg {
width: 188px;
margin-top: 20px;
}
section#team
> .wp-block-group:first-child
.wp-block-group__inner-container {
padding-right: 40px;
}
.wp-block-heading {
font-size: 56px;
text-align: left;
}
section#team .team {
width: 60%;
grid-template-columns: repeat(4, calc(25% - 15px));
grid-template-rows: repeat(3, 250px);
}
section#team .team > figure:nth-child(3) {
display: flex;
grid-column: span 2 / span 2;
}
section#team .team > figure:nth-child(4) {
display: flex;
grid-column: span 2 / span 2;
grid-row: span 2 / span 2;
grid-row-start: 2;
}
section#team .team > figure:nth-child(5) {
grid-column-start: 3;
grid-row-start: 2;
}
section#team .team > figure:nth-child(6) {
grid-column-start: 4;
grid-row-start: 2;
}
section#team .team > figure:last-child {
display: flex;
grid-column: span 2 / span 2;
grid-column-start: 3;
grid-row-start: 3;
}
section#about {
padding: 80px calc((100vw - 1280px) / 2) 80px;
grid-template-columns: repeat(2, calc(50% - 30px));
grid-template-rows: repeat(1, 1fr);
align-items: start;
gap: 60px;
}
section#about > .wp-block-group:first-child {
grid-template-columns: repeat(3, 1fr);
grid-template-rows: repeat(2, 1fr);
gap: 20px;
transform: translateY(100px);
}
section#about > .wp-block-group:first-child > figure:first-child {
grid-column: span 3 / span 3;
margin-bottom: 0;
}
section#about > .wp-block-group:first-child > figure:nth-child(2) {
display: flex;
grid-row-start: 2;
}
section#about > .wp-block-group:first-child > figure:last-child {
display: flex;
grid-column: span 2 / span 2;
grid-row-start: 2;
}
section#about > .wp-block-group:first-child > figure:last-child img {
max-width: 270px;
}
section#values {
grid-template-columns: repeat(2, 50%);
grid-template-rows: repeat(3, auto);
}
section#values > .grid-item:nth-child(2) img,
section#values > .grid-item:last-child img {
transform: scale(2);
}
section#values > .grid-item:first-child {
order: 1;
}
section#values > .grid-item:nth-child(2) {
order: 2;
}
section#values > .grid-item:nth-child(5) {
order: 5;
}
section#values > .grid-item:last-child {
order: 6;
}
}