/*
Theme Name:     fhuFRAME
Theme URI:      http://laurent-angeli/wp-themes/
Description:    Twentytwentyfive child theme.
Author:         Laurent ANGELI
Author URI:     http://laurent-angeli.fr
Template:       twentytwentyfive
Version:        0.1.0
*/

/* Classes utilitaires */
:root{
  --gradient-frame: linear-gradient(90deg,rgb(69,135,196) 0%,rgb(248,197,46) 50%,rgb(227,6,19) 100%);
  --gradient-frame-large: linear-gradient(90deg,rgb(69,135,196) 0%,rgb(69,135,196) 5%,rgb(248,197,46) 50%,rgb(227,6,19) 95%,rgb(227,6,19) 100%);
  --gradient-frame-condensed: linear-gradient(90deg,rgb(69,135,196) 0%,rgb(69,135,196) 30%,rgb(248,197,46) 50%,rgb(227,6,19) 70%,rgb(227,6,19) 100%);
}

.inlined-left-image img {
  width: 160px;
  float:left;
  padding-top: 0.3rem;
  padding-right: 0.7rem;
}
.inlined-right-image img {
  width: 160px;
  float:right;
  padding-top: 0.3rem;
  padding-left: 0.7rem;
}
.inlined-middle-image img {
  vertical-align:middle;
  padding-right:1rem;
}
strong { font-weight:600; }
/*strong { font-weight:700; }*/

.overflow-hidden { overflow: hidden; }

.blink { animation: blinker 1.7s cubic-bezier(.5, 0, 1, 1) infinite alternate; }
@keyframes blinker { to { opacity: 0; } }
@keyframes simpleFade {
  from { opacity: 0; }
  to   { opacity: 1; }
}


.align-items-baseline { align-items: baseline; }

a:where(:not(.wp-element-button)) {
  color: currentColor;
}
a:where(:not(.wp-element-button)):hover {
    text-decoration: none;
    /*text-decoration-color: var(--wp--preset--color--accent-1) !important;*/
}

figure.img-contain img {
  object-fit: contain !important;
}

/* Les listes sont décorées avec le rond FHU FRAME */
.entry-content ul li { list-style-type: none; }
.entry-content ul:not(.is-layout-grid) li:before {
  content:"";
  display:inline-block;
  background:url('/wp-content/themes/fhuFRAME/assets/imgs/Rond_couleurs_41.webp') top left no-repeat;
  background-size:contain;
  width:0.8rem;
  height:0.8rem;
  margin-right:0.5rem;
}

/* Block Titre avec le rond FHU FRAME devant */
.is-style-framecolored { position:relative;}
.is-style-framecolored:before {
  content:"";
  background:url('/wp-content/themes/fhuFRAME/assets/imgs/Rond_couleurs_41.webp') top left no-repeat;
  background-size:contain;
  height: 41px;
  width:41px;
  display:block;
  position:absolute;
  left:-50px;
  top:0.4rem;
}


/* Block Separator avec les couleurs dégradées du logo FHU Frame */
hr.is-style-fhuframecolors,
hr.has-fhu-frame-logo-gradient-background {
  background:var(--wp--preset--gradient--fhu-frame-logo);
}
hr.is-style-fhuframecolors,
hr.has-fhu-frame-logo-gradient-background {
  border:0;
  margin: 0;
  height:2px;
}

/* Décoration des boutons aux couleurs de la FHU FRAME */
.wp-block-button.is-style-fhuframecolors a {
  background:var(--gradient-frame-condensed) !important;
}
.wp-block-button.is-style-fhuframecolors:hover a {
  background:var(--gradient-frame-large) !important;
}

/* Le texte des cellules de tableau commencent en haut de la case */
.wp-block-table td { vertical-align:top; }


/**********/
/* HEADER */
/**********/


/* Donate button on Header */
.wp-block-button .wp-block-button__link,
.button-donate .wp-block-button__link {
  transition:.3s;
}

.wp-block-button:hover .wp-block-button__link,
.button-donate:hover .wp-block-button__link {
  background:var(--wp--preset--color--accent-1) !important;
  color:var(--wp--preset--color--base) !important;
  /*color:#fff !important;*/
}


/* search form on header */
/*.header-search { margin-right: 1rem !important; }*/
.header-search .wp-block-search__button { margin: 0; padding:0; }
.header-search .wp-block-search__inside-wrapper {
  width: 9rem !important;
  padding: 2px 4px 2px 2px;
  flex-direction: row-reverse;
}
.header-search .wp-block-search__input::placeholder {
  color:var(--wp--preset--color--accent-3);
}
.header-search .wp-block-search__input {
  font-size: 13px;
  line-height:1.4;
  border-radius: 25px;
  padding-left: 0.2rem;
  padding-right: 0.2rem;
}
.header-search .search-icon {
  min-height: 20px;
  min-width: 20px;
  height: 20px;
}

/* Image links */
.inline-image-align-middle a img { padding: 3px; } /* Youtube link inside home page */
.inline-image-align-middle a img,
.socials a {
  border: 2px solid transparent;
  transition:.3s;
}
.inline-image-align-middle a:hover img,
.socials a:hover {
  border-color: var(--wp--preset--color--accent-1);
}

/* WPML */
.wpml-ls-link br { display:none; }

.wpml-ls-statics-shortcode_actions {
  margin: 0;
  padding: 0;
}

.wpml-ls-statics-shortcode_actions a {
  background-color: transparent !important;
}

.wpml-ls-legacy-list-horizontal a {
  padding: 5px;
}


/* Menu principal */

.wp-block-navigation .has-child .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content:before {
  content:"";
  background:url('/wp-content/themes/fhuFRAME/assets/imgs/Rond_couleurs_41.webp') top left no-repeat;
  background-size:contain;
  height: 20px;
  width:20px;
  margin-right:0.5rem;
  display:block;
  opacity: 0;
}
.wp-block-navigation .has-child .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content:hover:before {
  animation: simpleFade 0.5s ease-out forwards;
  opacity: 1;
}

/* Sous-menu : items sur 1 seule ligne avec max 25 chars */
.wp-block-navigation .has-child .wp-block-navigation-submenu__toggle[aria-expanded="true"] ~ .wp-block-navigation__submenu-container,
.wp-block-navigation .has-child:not(.open-on-click):hover > .wp-block-navigation__submenu-container,
.wp-block-navigation .has-child:not(.open-on-click):not(.open-on-hover-click):focus-within > .wp-block-navigation__submenu-container {
  width: max-content;
  max-width:25rem;
}

/* Décoration des items de menu pour la page courante */
.page-id-2299 .link-publications > a, /* page publications */
.current-menu-item  > a,
.current-menu-ancestor > a {
  font-weight:bold;
}

/* items de sous-menu avec moins d'espace vertical (0.3em au lieu de 0.5em) */
:where(.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item a:not(.wp-element-button)),
:where(.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-submenu a:not(.wp-element-button)),
:where(.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-submenu button.wp-block-navigation-item__content),
:where(.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-pages-list__item button.wp-block-navigation-item__content) {
  padding: 0.3em 1em;
}

/*************/
/* Home Page */
/*************/

.home .home-hidden { display:none; }

p.yellow-arrow-link a,
a.yellow-arrow-link {
  text-decoration:none;
  transition:.3s;

}
p.yellow-arrow-link:hover a img,
a.yellow-arrow-link:hover img {
    padding-left: 3px;
}

p.inline-image-align-middle img {
vertical-align: middle;
}

/* Block Cover avec FadeIn sur l'image */
.is-style-bannerFadeIn > img.wp-block-cover__image-background {
  opacity:0;
  animation: simpleFade 4s ease-out 0.5s forwards;
}

main > .wp-block-group > .wp-block-cover,
.entry-content > .wp-block-group > .wp-block-cover,
.home .wp-block-cover {
  min-height: clamp(180px, calc(58.571px + 24.286vw), 350px) !important;
}

/* Actualités */
.home .actualites ul {
  /*gap:90px;*/
  gap:clamp(20px, calc(-50px + 11.667vw), 90px);
}
.home .actualites ul li {
  max-width: 275px;
  margin: 0 auto;
}

.home .actualites ul li .wp-block-post-title,
.home .actualites ul li .wp-block-post-excerpt__excerpt {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
}
.home .actualites ul li .wp-block-post-title {
  -webkit-line-clamp: 3;
}
.home .actualites ul li .wp-block-post-excerpt__excerpt {
  -webkit-line-clamp: 5;
}



/* Actualités Corner boxes */
/* Block Group avec 2 coins arrondis */
.is-style-border-corner {
  --b: 3px;   /* thickness of the border */
  --c: var(--wp--preset--color--accent-6);   /* color of the border */
  --w: 40px;  /* width of border */
  --r: 25px;  /* radius */

  padding: var(--b); /* space for the border */
  position:relative;
}

.is-style-border-corner::before {
  content: "";
  position: absolute;
  inset: 0;
  background: transparent;
}

/* coin haut-gauche */
.is-style-border-corner::before,
.is-style-border-corner::after {
  content: "";
  position: absolute;
  /*background: var(--c);*/
  background:transparent;
}

/* haut-gauche horizontal */
.is-style-border-corner::before {
  top: 0;
  left: 0;
  width: var(--w);
  height: var(--w);
  border-top: var(--b) solid var(--c);
  border-left: var(--b) solid var(--c);
  border-top-left-radius: var(--r);
}

/* bas-droit vertical */
.is-style-border-corner::after {
  right: 0;
  bottom: 0;
  width: var(--w);
  height: var(--w);
  border-bottom: var(--b) solid var(--c);
  border-right: var(--b) solid var(--c);
  border-bottom-right-radius: var(--r);
}

/* Home : publications */
.home .publications .teachpress_pub_list {
  max-width:535px;
}
.home .publications .wp-block-column:has(figure) {
  flex-basis: clamp(300px, calc(-297.188px + 76.563vw), 545px) !important;
}

/* page What is an FHU */

.fc-otherfhu-inner {
  border: 1px solid var(--wp--preset--color--accent-4);
  padding: 0 1rem 1rem 1rem;
  align-items:flex-start !important;
}
.fc-otherfhu-inner h2 {
  padding-top:0;
  font-size: var(--wp--preset--font-size--large);
}
.fc-otherfhu-inner .fc-otherfhu-leader {
  padding-top:1rem;
  font-weight: 600;
}

.fc-otherfhu-manager img,
.fc-otherfhu-leader img {
  max-width:20px;
  vertical-align:top;
}
.fc-otherfhu-manager img {
  opacity:0.7;
}



/* Home : Partenaires */

.home #partenaires { border : none; }
#partenaires .wp-block-gallery {
  flex-wrap: nowrap;
}
#partenaires .wp-block-gallery figure {
  width:auto !important;
}
#partenaires .wp-block-gallery figure img {
  max-height: 80px;
}

/***********************/
/* Page News and Event */
/***********************/
ul li .has-border-color {
  height:100%;
  position:relative;
}
.news-events-grid ul li .has-border-color {
  height:100%;
  position:relative;
}
/*.news-events-grid ul li .has-border-color .event-infos {*/
ul li .has-border-color .event-infos {
  position:absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}
/*.news-events-grid ul li .has-border-color .event-infos p + p {*/
ul li .has-border-color .event-infos p + p {
  max-width: 13rem;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.event-infos .wp-block-post-excerpt__excerpt {
  line-height:1.2rem;
  max-height:3.6rem;
  max-width: 16rem;
  overflow: hidden;
  text-overflow: ellipsis;
}
.event-infos { min-height: 4.9rem; }

header .wp-block-buttons { flex-grow:0; }


/**********/
/* SEARCH */
/**********/
:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) {
  border: 1px solid var(--wp--preset--color--accent-3);
  box-sizing: border-box;
  padding: 0;
  border-radius: 40px;
}


/***********/
/* Contact */
/***********/
.wpcf7 {
    --button-frame: linear-gradient(90deg,rgb(69,135,196) 0%,rgb(69,135,196) 30%,rgb(248,197,46) 50%,rgb(227,6,19) 70%,rgb(227,6,19) 100%);
}

.wpcf7-form-control:not(.wpcf7-submit) {
  display: block;
  width: 70%;
  padding: .375rem .75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  background-color: var(--wp--preset--color--base);
  background-clip: padding-box;
  appearance: none;
  transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}
.wpcf7-form-control:not(.wpcf7-submit):not(.wpcf7-acceptance) {
  border: 1px solid var(--wp--preset--color--accent-3);
}

.wpcf7 input,
.wpcf7 textarea,
.wpcf7 p {
    font-size: 18px !important;
    line-height:1.4;
}


:where(.wp-site-blocks .wpcf7-textarea:focus),
:where(.wp-site-blocks .wpcf7-text:focus),
.wpcf7-textarea:hover,
.wpcf7-text:hover,
.wpcf7-textarea:active,
.wpcf7-text:active {
    outline-width: 2px;
    outline-style: solid;
    outline-color: var(--wp--preset--color--accent-3);
}
.wpcf7-acceptance { border:none; }
.wpcf7-acceptance .wpcf7-list-item { margin:0; }
.wpcf7-acceptance .wpcf7-list-item label {
  display:flex;
  align-items:flex-start;
}
.wpcf7-acceptance .wpcf7-list-item label input {
  margin-right:1rem;
}
.wpcf7-acceptance .wpcf7-list-item-label {
  font-size: 13px;
  line-height:1.1;
  text-align:justify;
  /*max-width:400px;*/
}


.wpcf7-submit {
    color: var(--wp--preset--color--base);
    font-size: 25px;
    font-weight:bold;
    /*background-color: var(--wp--preset--color--accent-3);*/
    background: var(--button-frame);
    padding: 1rem 2rem;
    border:1px solid var(--wp--preset--color--base);
    border-radius: 25px 0 25px 0;
}
.wp-block-button:hover .wp-block-button__link.has-frame-condensed-gradient-background ,
.wpcf7-submit:active,
.wpcf7-submit:focus,
.wpcf7-submit:hover {
    cursor: pointer;
    background: var(--gradient-frame-large) !important;
}


/**********/
/* FOOTER */
/**********/
#partenaires {
  justify-content:space-evenly;
}
#footer-menu ul {
  gap:0.5rem;
}
#footer-menu ul li:not(:first-child) {
  border-left: 2px solid white;
  line-height:0.9;
  padding-left: calc(0.5rem - 2px);
}
#footer-menu ul li a {
  padding-bottom: 1px;
}

/**************/
/* RESPONSIVE */
/**************/

/* Desktop */
@media all and (max-width: 1250px) {
  .is-style-framecolored::before {
    display: inline-block;
    position: relative;
    left:0;
    margin-right: 1rem;
  }
}
@media all and (max-width: 1220px) {
  .latest-news .is-layout-grid {
    grid-column-gap: 10px;
  }
}
@media all and (max-width: 1098px) {
  /* Footer Part 1*/
  .wp-container-core-group-is-layout-42cde3c4 {
    justify-content: center;
  }
  #partenaires .wp-block-gallery {
    flex-wrap: wrap;
  }
  #partenaires .wp-block-gallery figure {
    flex-basis: 30%;
    text-align: center;
    margin: 0 !important;
  }
}
/* Tablet */
@media all and (max-width: 950px) {
  #footer-menu {
    padding-top: 1rem;
  }
  #footer-menu > .is-content-justification-space-between {
    flex-direction: column;
    justify-content: center;
  }
  #footer-menu .logo-fhu,
  #footer-menu .socials {
    flex-basis: auto;
    margin-bottom: 2rem !important;
  }
  #footer-menu .logo-fhu img {
    width:140px !important;
  }
  #footer-menu nav {
    margin-bottom: 2rem;
  }

}

/* MOBILE */
@media all and (max-width: 790px) {
  .has-global-padding {
    padding-right: 10px;
    padding-left: 10px;
  }
  .has-global-padding > .alignfull {
    margin-right: -10px;
    margin-left: -10px;
  }
  header .wp-block-site-logo,
  header .wp-block-site-logo + .wp-block-group {
    width:100%;
    text-align:center;
    margin-bottom: 0.3rem !important;
    justify-content:  center;
  }
  header .wp-block-site-logo + .wp-block-group {
    /*flex-direction:column;*/
  }

  .menu-container,
  .menu-container .menu-rangee { padding: 0 !important; }
  .menu-container .menu-rangee .main-menu {
    justify-content: center;
    gap: 0.7rem;
    max-width: 550px;
    margin: 0.2rem auto;
  }
  .menu-container .menu-rangee .main-menu .wp-block-navigation__responsive-container-open { width:100%; padding: 1rem 0; }


  /* decoration d'une ancre ciblée par un lien */
  #target-section .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
    flex-basis: 45% !important;
  }

  .post-type-archive-publication { grid-template-columns:repeat(1,1fr) !important; }

  /* home */
  .section-baseline {
    padding: 10px;
  }
  .section-baseline .col-baseline p {
    width: fit-content; margin:0 auto; padding:0 !important;
  }
  .section-baseline .col-image { text-align:center;}
  .section-baseline .col-textes > .wp-block-group {
    margin: 0 auto;
    padding: 0;
  }
  .section-baseline .col-textes > .wp-block-group p {
    width:310px;
  }

  .home .actualites figure {
    display:none;
  }

  .home .publications .teachpress_pub_list {
    margin: 0 auto;
  }
  .home .publications .wp-block-column figure {
    text-align:center;
  }




}

@media all and (max-width: 630px) {
  #footer-menu nav ul {
    flex-wrap:wrap;
    justify-content: space-evenly;
  }

}
@media all and (max-width: 540px) {
  .wp-container-core-group-is-layout-df81c40a {
    flex-wrap: wrap;
    justify-content: center;
  }
  footer .actions { padding: 0 !important; border: 0; }
  footer .actions .socials { width:100%; padding-top: 1rem !important; }
}

@media all and (max-width: 450px) {
  .partner-etabl {
    font-size: 14px !important;
  }
}
@media all and (max-width: 310px) {
  .section-baseline .col-textes > .wp-block-group p {
    width:100%;
  }
}



/**************************************/
/* Change breaking point of Wordpress */
/**************************************/
/*
body .wp-block-navigation__responsive-container-open:not(.always-shown) {
  display: block !important;
}
body .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
  display: none !important;
}

@media (min-width: 700px) {
  body .wp-block-navigation__responsive-container-open:not(.always-shown) {
    display: none !important;;
  }
  body .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
    display: block !important;
  }
}
*/

.wp-block-navigation__responsive-container-open svg {
  display: inline-block;
  vertical-align: bottom;
}
.wp-block-navigation__responsive-container-open::after {
  content:"MENU";
  line-height:1.5;
}

