This commit is contained in:
parent
4642425f43
commit
dc223ae1b8
24 changed files with 1199 additions and 492 deletions
|
|
@ -35,4 +35,17 @@ body{
|
|||
|
||||
img{
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
.link-block{
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
display: block;
|
||||
cursor: pointer;
|
||||
// &:hover{
|
||||
// background-color: rgba(255, 0, 0, 0.244);
|
||||
// }
|
||||
}
|
||||
|
|
@ -4,6 +4,7 @@ $medium-up: "screen and (min-width: 1080px)";
|
|||
|
||||
$small-up: "screen and (min-width: 768px)";
|
||||
$small: "screen and (max-width: 768px)";
|
||||
$x-small-up: "screen and (min-width: 560px)";
|
||||
$x-small: "screen and (max-width: 560px)";
|
||||
$paysage: "screen and (max-height: 670px) and (min-width: 1080px)";
|
||||
|
||||
|
|
|
|||
|
|
@ -52,6 +52,7 @@
|
|||
|
||||
|
||||
--border: 1px solid var(--color-txt);
|
||||
--border-medium: 1px solid var(--grey-600);
|
||||
--border-light: 1px solid var(--grey-800);
|
||||
|
||||
|
||||
|
|
@ -79,7 +80,7 @@
|
|||
@media #{$small}{
|
||||
:root {
|
||||
--fs-xsmall: 10px;
|
||||
--fs-small: 11px;
|
||||
--fs-small: 12px;
|
||||
--fs-normal: 14px;
|
||||
--fs-medium: 18px;
|
||||
--fs-big: 28px;
|
||||
|
|
|
|||
|
|
@ -1,157 +1,178 @@
|
|||
button {
|
||||
cursor: pointer;
|
||||
font-family: var(--font);
|
||||
font-size: var(--fons-normal);
|
||||
color: var(--color-txt);
|
||||
&:hover {
|
||||
color: var(--grey-100);
|
||||
}
|
||||
|
||||
a {
|
||||
text-decoration: none;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
button:disabled {
|
||||
cursor: auto;
|
||||
}
|
||||
|
||||
.soutenir {
|
||||
a {
|
||||
color: var(--color-accent);
|
||||
&:hover {
|
||||
color: var(--color-accent) !important;
|
||||
text-decoration: underline !important;
|
||||
button{
|
||||
cursor: pointer;
|
||||
font-family: var(--font);
|
||||
font-size: var(--fons-normal);
|
||||
color: var(--color-txt);
|
||||
&:hover{
|
||||
color: var(--grey-100);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.btn--bold,
|
||||
.btn--bold-inline {
|
||||
display: block;
|
||||
height: calc(var(--h-block) * 1);
|
||||
border: var(--border);
|
||||
border-radius: var(--radius-btn);
|
||||
font-size: var(--fs-small);
|
||||
text-transform: uppercase;
|
||||
line-height: 1;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
a {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
padding: 0 2ch;
|
||||
padding-top: 4px;
|
||||
}
|
||||
&.no-link {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
padding: 0 2ch;
|
||||
padding-top: 4px;
|
||||
}
|
||||
}
|
||||
|
||||
.btn--bold {
|
||||
background-color: var(--color-txt);
|
||||
color: var(--color-bg);
|
||||
&:hover {
|
||||
background-color: var(--color-accent);
|
||||
border-color: var(--color-accent);
|
||||
a {
|
||||
color: var(--color-bg);
|
||||
a{
|
||||
text-decoration: none;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.btn--bold-inline {
|
||||
background-color: var(--color-bg);
|
||||
button:disabled{
|
||||
cursor: auto;
|
||||
|
||||
}
|
||||
|
||||
.btn--bold-inline:hover {
|
||||
background-color: var(--grey-800);
|
||||
color: var(--color-txt);
|
||||
a {
|
||||
.soutenir{
|
||||
a{
|
||||
color: var(--color-accent);
|
||||
&:hover{
|
||||
color: var(--color-accent)!important;
|
||||
text-decoration: underline!important;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
.btn--bold,
|
||||
.btn--bold-inline{
|
||||
display: block;
|
||||
height: calc(var(--h-block)*1);
|
||||
border: var(--border);
|
||||
border-radius: var(--radius-btn);
|
||||
font-size: var(--fs-small);
|
||||
text-transform: uppercase;
|
||||
line-height: 1;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
a{
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
padding: 0 2ch;
|
||||
padding-top: 4px;
|
||||
}
|
||||
&.no-link{
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
padding: 0 2ch;
|
||||
padding-top: 4px;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
.btn--bold{
|
||||
background-color: var(--color-txt);
|
||||
color: var(--color-bg);
|
||||
&:hover{
|
||||
background-color: var(--color-accent);
|
||||
border-color: var(--color-accent);
|
||||
a{
|
||||
color: var(--color-bg);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.btn--bold-inline{
|
||||
background-color: var(--color-bg);
|
||||
}
|
||||
|
||||
.btn--bold-inline:hover{
|
||||
background-color: var(--grey-800);
|
||||
color: var(--color-txt);
|
||||
}
|
||||
a{
|
||||
background-color: var(--grey-800);
|
||||
color: var(--color-txt);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// DELETE ?
|
||||
|
||||
.btn__default {
|
||||
--size: calc(var(--h-block) - 8px);
|
||||
font-size: var(--fs-normal);
|
||||
font-weight: var(--fw-normal);
|
||||
height: var(--size);
|
||||
padding-right: 1.5ch;
|
||||
.btn__default{
|
||||
|
||||
position: relative;
|
||||
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 0ch;
|
||||
// padding-right: 0.5ch;
|
||||
color: var(--color-accent);
|
||||
font-weight: var(--fw-medium);
|
||||
text-decoration: none;
|
||||
|
||||
cursor: pointer;
|
||||
|
||||
.icon,
|
||||
.txt {
|
||||
z-index: 10;
|
||||
}
|
||||
|
||||
.icon {
|
||||
width: var(--size);
|
||||
|
||||
--size: calc(var(--h-block) - 8px);
|
||||
font-size: var(--fs-normal);
|
||||
font-weight: var(--fw-normal);
|
||||
height: var(--size);
|
||||
padding-right: 1.5ch;
|
||||
|
||||
position: relative;
|
||||
|
||||
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
color: var(--color-bg);
|
||||
text-align: center;
|
||||
|
||||
svg {
|
||||
fill: var(--color-bg);
|
||||
width: 80%;
|
||||
}
|
||||
}
|
||||
|
||||
.txt {
|
||||
font-family: var(--font-title);
|
||||
gap: 0ch;
|
||||
// padding-right: 0.5ch;
|
||||
color: var(--color-accent);
|
||||
font-size: var(--fs-normal);
|
||||
font-weight: var(--fw-bold);
|
||||
padding-left: 1ch;
|
||||
}
|
||||
font-weight: var(--fw-medium);
|
||||
text-decoration: none;
|
||||
|
||||
&::after {
|
||||
content: "";
|
||||
display: block;
|
||||
background-color: var(--color-accent);
|
||||
border-radius: calc(var(--size) / 2);
|
||||
width: var(--size);
|
||||
height: var(--size);
|
||||
position: absolute;
|
||||
left: 0;
|
||||
z-index: 0;
|
||||
transition: width 0.2s;
|
||||
}
|
||||
cursor: pointer;
|
||||
|
||||
&:hover {
|
||||
//
|
||||
.txt {
|
||||
color: var(--color-bg);
|
||||
display: block;
|
||||
|
||||
.icon, .txt{ z-index: 10; }
|
||||
|
||||
.icon{
|
||||
width: var(--size);
|
||||
height: var(--size);
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
color: var(--color-bg);
|
||||
text-align: center;
|
||||
|
||||
svg{
|
||||
fill: var(--color-bg);
|
||||
width: 80%;
|
||||
}
|
||||
}
|
||||
&::after {
|
||||
width: 100%;
|
||||
|
||||
.txt{
|
||||
font-family: var(--font-title);
|
||||
color: var(--color-accent);
|
||||
font-size: var(--fs-normal);
|
||||
font-weight: var(--fw-bold);
|
||||
padding-left: 1ch;
|
||||
}
|
||||
}
|
||||
|
||||
&::after{
|
||||
content: '';
|
||||
display: block;
|
||||
background-color: var(--color-accent);
|
||||
border-radius: calc(var(--size)/2);
|
||||
width: var(--size);
|
||||
height: var(--size);
|
||||
position: absolute;
|
||||
left: 0;
|
||||
z-index: 0;
|
||||
transition: width .2s
|
||||
}
|
||||
|
||||
&:hover{
|
||||
//
|
||||
.txt{
|
||||
color: var(--color-bg);
|
||||
display: block;
|
||||
}
|
||||
&::after{
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
81
assets/css/components/_card-impact.scss
Normal file
81
assets/css/components/_card-impact.scss
Normal file
|
|
@ -0,0 +1,81 @@
|
|||
.card--impact{
|
||||
display: grid;
|
||||
grid-gap: var(--padding-inner);
|
||||
grid-template-columns: 2fr 3fr;
|
||||
padding: calc(var(--spacing)*0.5) 0;
|
||||
border-bottom: var(--border-light);
|
||||
&:first-of-type{
|
||||
border-top: var(--border-light);
|
||||
}
|
||||
|
||||
.content{
|
||||
grid-column: 2;
|
||||
}
|
||||
&:not([data-impact-type="media"]) .content{
|
||||
@media #{$x-small}{ grid-column: span 2; }
|
||||
}
|
||||
|
||||
.tag{
|
||||
|
||||
width: auto;
|
||||
justify-self: start;
|
||||
position: relative;
|
||||
top: -5px;
|
||||
|
||||
}
|
||||
|
||||
.content{
|
||||
.see-more{
|
||||
color: var(--color-txt-light);
|
||||
text-decoration: none;
|
||||
white-space: nowrap;
|
||||
&::after{
|
||||
content: ' +'
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.open-graph__details{
|
||||
grid-column: span 2;
|
||||
@include details-summary();
|
||||
summary{
|
||||
color: var(--color-txt-light);
|
||||
.arrow-details svg{ fill: var(--color-txt-light);}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// @media #{$x-small-up}{
|
||||
|
||||
.open-graph__details{
|
||||
summary{
|
||||
display: grid;
|
||||
grid-template-columns: 2fr 3fr;
|
||||
grid-gap: var(--padding-inner);
|
||||
.summary-inner{
|
||||
grid-column: 2;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
.open-graph__inner{
|
||||
margin-top: calc(var(--spacing)*0.5);
|
||||
margin-bottom: calc(var(--spacing)*1);
|
||||
@media #{$small-up}{
|
||||
margin-bottom: calc(var(--spacing)*2);
|
||||
}
|
||||
.card--open-graph{
|
||||
margin-bottom: calc(var(--spacing)*0.5);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
// }
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
66
assets/css/components/_card-open-graph.scss
Normal file
66
assets/css/components/_card-open-graph.scss
Normal file
|
|
@ -0,0 +1,66 @@
|
|||
.card--open-graph{
|
||||
|
||||
display: grid;
|
||||
grid-template-columns: 2fr 3fr;
|
||||
grid-gap: var(--padding-inner);
|
||||
|
||||
|
||||
border: var(--border-light);
|
||||
border-radius: var(--radius-small);
|
||||
position: relative;
|
||||
|
||||
figure{
|
||||
grid-column: 1;
|
||||
grid-row: 1;
|
||||
|
||||
|
||||
}
|
||||
|
||||
@include figure-16-9();
|
||||
|
||||
|
||||
@media #{$x-small}{
|
||||
figure{
|
||||
height: 100%;
|
||||
aspect-ratio: auto;
|
||||
}
|
||||
}
|
||||
|
||||
.content{
|
||||
padding: var(--padding-inner);
|
||||
padding-left: 0;
|
||||
grid-column: 2;
|
||||
grid-row: 1;
|
||||
}
|
||||
|
||||
.site-name{
|
||||
color: var(--color-txt-light);
|
||||
font-size: var(--fs-small);
|
||||
}
|
||||
|
||||
.title{
|
||||
font-size: var(--fs-normal);
|
||||
font-weight: normal;
|
||||
display: -webkit-box;
|
||||
-webkit-line-clamp: 2;
|
||||
-webkit-box-orient: vertical;
|
||||
overflow: hidden;
|
||||
margin-bottom: 0.5em;
|
||||
a{
|
||||
text-decoration: none;
|
||||
}
|
||||
}
|
||||
|
||||
.description{
|
||||
font-size: var(--fs-small);
|
||||
display: -webkit-box;
|
||||
-webkit-line-clamp: 3;
|
||||
-webkit-box-orient: vertical;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
&:hover{
|
||||
.title{ text-decoration: underline;}
|
||||
|
||||
}
|
||||
}
|
||||
67
assets/css/components/_card-small.scss
Normal file
67
assets/css/components/_card-small.scss
Normal file
|
|
@ -0,0 +1,67 @@
|
|||
|
||||
|
||||
.card--small{
|
||||
display: grid;
|
||||
grid-gap: var(--padding-inner);
|
||||
grid-template-columns: 2fr 3fr;
|
||||
margin-bottom: var(--spacing);
|
||||
position: relative;
|
||||
|
||||
@include figure-16-9();
|
||||
|
||||
.content{
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
padding-top: calc(var(--spacing)*0.25);
|
||||
|
||||
}
|
||||
|
||||
.title{
|
||||
font-weight: normal;
|
||||
font-size: var(--fs-medium);
|
||||
margin-bottom: 0.25em;
|
||||
a{ text-decoration: none;}
|
||||
|
||||
}
|
||||
|
||||
time{
|
||||
flex-grow: 1;
|
||||
color: var(--color-txt-light);
|
||||
}
|
||||
.keywords{
|
||||
margin-top: 1.5em;
|
||||
padding-bottom: calc(var(--spacing)*0.25);
|
||||
color: var(--color-txt-light);
|
||||
}
|
||||
|
||||
&:hover{
|
||||
.title{ text-decoration: underline;}
|
||||
}
|
||||
|
||||
@media #{$medium}{
|
||||
.title{
|
||||
font-size: var(--fs-normal);
|
||||
margin-bottom: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@media #{$x-small}{
|
||||
.content{
|
||||
padding: 0;
|
||||
}
|
||||
.title{
|
||||
margin-bottom: 0;
|
||||
}
|
||||
time{
|
||||
font-size: var(--fs-small);
|
||||
margin-top: 0.25em;
|
||||
}
|
||||
.keywords{
|
||||
margin-top: 0.5em;
|
||||
padding-bottom: 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
39
assets/css/components/_details-summary.scss
Normal file
39
assets/css/components/_details-summary.scss
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
|
||||
|
||||
|
||||
@mixin details-summary(){
|
||||
|
||||
|
||||
summary,
|
||||
.summary-inner{
|
||||
display: flex;
|
||||
align-items: center;
|
||||
cursor: pointer;
|
||||
gap: 0.5ch;
|
||||
}
|
||||
|
||||
.arrow-details{
|
||||
line-height: 0;
|
||||
--size: 11px;
|
||||
height: var(--size);
|
||||
width: var(--size);
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
position: relative;
|
||||
top: -2px;
|
||||
|
||||
svg{
|
||||
transition: transform 0.2s ease-in;
|
||||
width: 100%;
|
||||
fill: var(--color-txt);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
&[open]{
|
||||
.arrow-details svg{
|
||||
transform: rotate(90deg);
|
||||
}
|
||||
}
|
||||
}
|
||||
18
assets/css/components/_figures.scss
Normal file
18
assets/css/components/_figures.scss
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
|
||||
@mixin figure-16-9{
|
||||
figure{
|
||||
aspect-ratio: 16/9;
|
||||
display: flex;
|
||||
overflow: hidden;
|
||||
img{
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
object-fit: cover;
|
||||
transition: cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.5s;
|
||||
|
||||
}
|
||||
}
|
||||
&:hover{
|
||||
figure img{ transform: scale(1.05); }
|
||||
}
|
||||
}
|
||||
|
|
@ -1,34 +1,14 @@
|
|||
.keywords{
|
||||
list-style: none;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
gap: 1ch;
|
||||
|
||||
li{
|
||||
height: var(--h-block);
|
||||
border-radius: calc(var(--h-block)*0.5);
|
||||
border: var(--border-light);
|
||||
font-size: var(--fs-normal);
|
||||
overflow: hidden;
|
||||
|
||||
display: inline-block;
|
||||
padding-right: 0.75ch;
|
||||
a{
|
||||
text-decoration: none;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
padding: 0 1.5ch;
|
||||
line-height: 1;
|
||||
padding-top: 2px;
|
||||
|
||||
}
|
||||
|
||||
&:hover{
|
||||
border-color: var(--color-txt);
|
||||
a{
|
||||
color: currentColor;
|
||||
&::before{
|
||||
content: "#";
|
||||
padding-right: 0.25ch;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
21
assets/css/components/_tags.scss
Normal file
21
assets/css/components/_tags.scss
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
.tag{
|
||||
height: calc(var(--h-block)*0.75);
|
||||
border-radius: calc(var(--h-block)*0.75/2);
|
||||
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
padding: 0 1.5ch;
|
||||
padding-top: 3px;
|
||||
|
||||
font-size: var(--fs-small);
|
||||
line-height: 1;
|
||||
|
||||
background-color: var(--color-txt);
|
||||
color: var(--color-bg);
|
||||
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -1,12 +1,14 @@
|
|||
body {
|
||||
min-height: 100dvh;
|
||||
min-height: 100vh;
|
||||
body{
|
||||
min-height: 100dvh;
|
||||
min-height: 100vh;
|
||||
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
|
||||
main {
|
||||
flex-grow: 1;
|
||||
padding: 0 var(--padding-body);
|
||||
}
|
||||
}
|
||||
|
||||
main{
|
||||
flex-grow: 1;
|
||||
padding: 0 var(--padding-body);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -74,7 +74,7 @@
|
|||
margin: 0 auto;
|
||||
}
|
||||
|
||||
.footer__socials .socials{
|
||||
.footer__socials .container{
|
||||
max-width: 400px;
|
||||
columns: 2;
|
||||
margin-top: calc(var(--spacing)*1);
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
#site-menu{
|
||||
position: fixed;
|
||||
width: var(--menu-w);
|
||||
@media #{$small}{ width: 100vw; }
|
||||
height: calc(100dvh - var(--header-h));
|
||||
height: calc(100vh - var(--header-h));
|
||||
top: var(--header-h);
|
||||
|
|
@ -12,13 +11,14 @@
|
|||
padding: var(--padding-body);
|
||||
z-index: 1000;
|
||||
|
||||
@media #{$x-small}{
|
||||
width: 100vw;
|
||||
right: -100vw;
|
||||
}
|
||||
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
// display: none;
|
||||
|
||||
// .baseline{
|
||||
// font-size: var(--fs-medium);
|
||||
// }
|
||||
|
||||
form{
|
||||
margin-top: calc(var(--spacing)*1);
|
||||
|
|
@ -77,7 +77,6 @@
|
|||
padding: 0.5em 0;
|
||||
&:hover{
|
||||
text-decoration: underline;
|
||||
// color: var(--grey-200);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
--color-accent-100: #d8fdd8;
|
||||
--dark: black;
|
||||
--border: 1px solid var(--color-txt);
|
||||
--border-medium: 1px solid var(--grey-600);
|
||||
--border-light: 1px solid var(--grey-800);
|
||||
--header-h: 80px;
|
||||
--header-h-shrinked: 50px;
|
||||
|
|
@ -52,7 +53,7 @@
|
|||
@media screen and (max-width: 768px) {
|
||||
:root {
|
||||
--fs-xsmall: 10px;
|
||||
--fs-small: 11px;
|
||||
--fs-small: 12px;
|
||||
--fs-normal: 14px;
|
||||
--fs-medium: 18px;
|
||||
--fs-big: 28px;
|
||||
|
|
@ -99,6 +100,16 @@ img {
|
|||
max-width: 100%;
|
||||
}
|
||||
|
||||
.link-block {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
display: block;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
@keyframes add-border {
|
||||
from {
|
||||
border-bottom-color: transparent;
|
||||
|
|
@ -326,8 +337,7 @@ button:disabled {
|
|||
text-decoration: none;
|
||||
cursor: pointer;
|
||||
}
|
||||
.btn__default .icon,
|
||||
.btn__default .txt {
|
||||
.btn__default .icon, .btn__default .txt {
|
||||
z-index: 10;
|
||||
}
|
||||
.btn__default .icon {
|
||||
|
|
@ -370,34 +380,35 @@ button:disabled {
|
|||
width: 100%;
|
||||
}
|
||||
|
||||
.tag {
|
||||
height: calc(var(--h-block) * 0.75);
|
||||
border-radius: calc(var(--h-block) * 0.75 / 2);
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
padding: 0 1.5ch;
|
||||
padding-top: 3px;
|
||||
font-size: var(--fs-small);
|
||||
line-height: 1;
|
||||
background-color: var(--color-txt);
|
||||
color: var(--color-bg);
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.keywords {
|
||||
list-style: none;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
gap: 1ch;
|
||||
}
|
||||
.keywords li {
|
||||
height: var(--h-block);
|
||||
border-radius: calc(var(--h-block) * 0.5);
|
||||
border: var(--border-light);
|
||||
font-size: var(--fs-normal);
|
||||
overflow: hidden;
|
||||
display: inline-block;
|
||||
padding-right: 0.75ch;
|
||||
}
|
||||
.keywords li a {
|
||||
text-decoration: none;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
padding: 0 1.5ch;
|
||||
line-height: 1;
|
||||
padding-top: 2px;
|
||||
}
|
||||
.keywords li:hover {
|
||||
border-color: var(--color-txt);
|
||||
}
|
||||
.keywords li:hover a {
|
||||
color: currentColor;
|
||||
.keywords li a::before {
|
||||
content: "#";
|
||||
padding-right: 0.25ch;
|
||||
}
|
||||
|
||||
.form__newsletter {
|
||||
|
|
@ -725,6 +736,230 @@ button:disabled {
|
|||
margin-bottom: 0.5em;
|
||||
}
|
||||
|
||||
.card--small {
|
||||
display: grid;
|
||||
grid-gap: var(--padding-inner);
|
||||
grid-template-columns: 2fr 3fr;
|
||||
margin-bottom: var(--spacing);
|
||||
position: relative;
|
||||
}
|
||||
.card--small figure {
|
||||
aspect-ratio: 16/9;
|
||||
display: flex;
|
||||
overflow: hidden;
|
||||
}
|
||||
.card--small figure img {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
-o-object-fit: cover;
|
||||
object-fit: cover;
|
||||
transition: cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.5s;
|
||||
}
|
||||
.card--small:hover figure img {
|
||||
transform: scale(1.05);
|
||||
}
|
||||
.card--small .content {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
padding-top: calc(var(--spacing) * 0.25);
|
||||
}
|
||||
.card--small .title {
|
||||
font-weight: normal;
|
||||
font-size: var(--fs-medium);
|
||||
margin-bottom: 0.25em;
|
||||
}
|
||||
.card--small .title a {
|
||||
text-decoration: none;
|
||||
}
|
||||
.card--small time {
|
||||
flex-grow: 1;
|
||||
color: var(--color-txt-light);
|
||||
}
|
||||
.card--small .keywords {
|
||||
margin-top: 1.5em;
|
||||
padding-bottom: calc(var(--spacing) * 0.25);
|
||||
color: var(--color-txt-light);
|
||||
}
|
||||
.card--small:hover .title {
|
||||
text-decoration: underline;
|
||||
}
|
||||
@media screen and (max-width: 1080px) {
|
||||
.card--small .title {
|
||||
font-size: var(--fs-normal);
|
||||
margin-bottom: 0;
|
||||
}
|
||||
}
|
||||
@media screen and (max-width: 560px) {
|
||||
.card--small .content {
|
||||
padding: 0;
|
||||
}
|
||||
.card--small .title {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
.card--small time {
|
||||
font-size: var(--fs-small);
|
||||
margin-top: 0.25em;
|
||||
}
|
||||
.card--small .keywords {
|
||||
margin-top: 0.5em;
|
||||
padding-bottom: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.card--impact {
|
||||
display: grid;
|
||||
grid-gap: var(--padding-inner);
|
||||
grid-template-columns: 2fr 3fr;
|
||||
padding: calc(var(--spacing) * 0.5) 0;
|
||||
border-bottom: var(--border-light);
|
||||
}
|
||||
.card--impact:first-of-type {
|
||||
border-top: var(--border-light);
|
||||
}
|
||||
.card--impact .content {
|
||||
grid-column: 2;
|
||||
}
|
||||
@media screen and (max-width: 560px) {
|
||||
.card--impact:not([data-impact-type=media]) .content {
|
||||
grid-column: span 2;
|
||||
}
|
||||
}
|
||||
.card--impact .tag {
|
||||
width: auto;
|
||||
justify-self: start;
|
||||
position: relative;
|
||||
top: -5px;
|
||||
}
|
||||
.card--impact .content .see-more {
|
||||
color: var(--color-txt-light);
|
||||
text-decoration: none;
|
||||
white-space: nowrap;
|
||||
}
|
||||
.card--impact .content .see-more::after {
|
||||
content: " +";
|
||||
}
|
||||
.card--impact .open-graph__details {
|
||||
grid-column: span 2;
|
||||
}
|
||||
.card--impact .open-graph__details summary,
|
||||
.card--impact .open-graph__details .summary-inner {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
cursor: pointer;
|
||||
gap: 0.5ch;
|
||||
}
|
||||
.card--impact .open-graph__details .arrow-details {
|
||||
line-height: 0;
|
||||
--size: 11px;
|
||||
height: var(--size);
|
||||
width: var(--size);
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
position: relative;
|
||||
top: -2px;
|
||||
}
|
||||
.card--impact .open-graph__details .arrow-details svg {
|
||||
transition: transform 0.2s ease-in;
|
||||
width: 100%;
|
||||
fill: var(--color-txt);
|
||||
}
|
||||
.card--impact .open-graph__details[open] .arrow-details svg {
|
||||
transform: rotate(90deg);
|
||||
}
|
||||
.card--impact .open-graph__details summary {
|
||||
color: var(--color-txt-light);
|
||||
}
|
||||
.card--impact .open-graph__details summary .arrow-details svg {
|
||||
fill: var(--color-txt-light);
|
||||
}
|
||||
.card--impact .open-graph__details summary {
|
||||
display: grid;
|
||||
grid-template-columns: 2fr 3fr;
|
||||
grid-gap: var(--padding-inner);
|
||||
}
|
||||
.card--impact .open-graph__details summary .summary-inner {
|
||||
grid-column: 2;
|
||||
}
|
||||
.card--impact .open-graph__inner {
|
||||
margin-top: calc(var(--spacing) * 0.5);
|
||||
margin-bottom: calc(var(--spacing) * 1);
|
||||
}
|
||||
@media screen and (min-width: 768px) {
|
||||
.card--impact .open-graph__inner {
|
||||
margin-bottom: calc(var(--spacing) * 2);
|
||||
}
|
||||
}
|
||||
.card--impact .open-graph__inner .card--open-graph {
|
||||
margin-bottom: calc(var(--spacing) * 0.5);
|
||||
}
|
||||
|
||||
.card--open-graph {
|
||||
display: grid;
|
||||
grid-template-columns: 2fr 3fr;
|
||||
grid-gap: var(--padding-inner);
|
||||
border: var(--border-light);
|
||||
border-radius: var(--radius-small);
|
||||
position: relative;
|
||||
}
|
||||
.card--open-graph figure {
|
||||
grid-column: 1;
|
||||
grid-row: 1;
|
||||
}
|
||||
.card--open-graph figure {
|
||||
aspect-ratio: 16/9;
|
||||
display: flex;
|
||||
overflow: hidden;
|
||||
}
|
||||
.card--open-graph figure img {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
-o-object-fit: cover;
|
||||
object-fit: cover;
|
||||
transition: cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.5s;
|
||||
}
|
||||
.card--open-graph:hover figure img {
|
||||
transform: scale(1.05);
|
||||
}
|
||||
@media screen and (max-width: 560px) {
|
||||
.card--open-graph figure {
|
||||
height: 100%;
|
||||
aspect-ratio: auto;
|
||||
}
|
||||
}
|
||||
.card--open-graph .content {
|
||||
padding: var(--padding-inner);
|
||||
padding-left: 0;
|
||||
grid-column: 2;
|
||||
grid-row: 1;
|
||||
}
|
||||
.card--open-graph .site-name {
|
||||
color: var(--color-txt-light);
|
||||
font-size: var(--fs-small);
|
||||
}
|
||||
.card--open-graph .title {
|
||||
font-size: var(--fs-normal);
|
||||
font-weight: normal;
|
||||
display: -webkit-box;
|
||||
-webkit-line-clamp: 2;
|
||||
-webkit-box-orient: vertical;
|
||||
overflow: hidden;
|
||||
margin-bottom: 0.5em;
|
||||
}
|
||||
.card--open-graph .title a {
|
||||
text-decoration: none;
|
||||
}
|
||||
.card--open-graph .description {
|
||||
font-size: var(--fs-small);
|
||||
display: -webkit-box;
|
||||
-webkit-line-clamp: 3;
|
||||
-webkit-box-orient: vertical;
|
||||
overflow: hidden;
|
||||
}
|
||||
.card--open-graph:hover .title {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
@keyframes add-border {
|
||||
from {
|
||||
border-bottom-color: transparent;
|
||||
|
|
@ -869,9 +1104,10 @@ button:disabled {
|
|||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
@media screen and (max-width: 768px) {
|
||||
@media screen and (max-width: 560px) {
|
||||
#site-menu {
|
||||
width: 100vw;
|
||||
right: -100vw;
|
||||
}
|
||||
}
|
||||
#site-menu form {
|
||||
|
|
@ -1019,7 +1255,7 @@ body.menu-open #menu-toggle .close {
|
|||
max-width: 1200px;
|
||||
margin: 0 auto;
|
||||
}
|
||||
#site-footer .footer__socials .socials {
|
||||
#site-footer .footer__socials .container {
|
||||
max-width: 400px;
|
||||
-moz-columns: 2;
|
||||
columns: 2;
|
||||
|
|
@ -1074,6 +1310,11 @@ body main {
|
|||
font-size: var(--fs-small);
|
||||
padding-top: calc(var(--spacing) * 0.5);
|
||||
}
|
||||
@media screen and (max-width: 560px) {
|
||||
.page-enquete #hero figcaption {
|
||||
font-size: var(--fs-xsmall);
|
||||
}
|
||||
}
|
||||
.page-enquete #hero.hero-video figure {
|
||||
width: 100%;
|
||||
}
|
||||
|
|
@ -1104,7 +1345,7 @@ body main {
|
|||
}
|
||||
.page-enquete #section__dl .dl__group {
|
||||
display: grid;
|
||||
grid-template-columns: 40% 1fr;
|
||||
grid-template-columns: 2fr 3fr;
|
||||
border-top: var(--border-light);
|
||||
padding: calc(var(--spacing) * 0.5) 0;
|
||||
}
|
||||
|
|
@ -1156,8 +1397,7 @@ body main {
|
|||
.page-enquete .section__article {
|
||||
margin: calc(var(--spacing) * 1.5) 0;
|
||||
}
|
||||
.page-enquete #section__impacts,
|
||||
.page-enquete #section__en-lien {
|
||||
.page-enquete #section__impacts, .page-enquete #section__en-lien {
|
||||
margin-top: 0px;
|
||||
}
|
||||
.page-enquete #hero {
|
||||
|
|
@ -1208,9 +1448,10 @@ body main {
|
|||
}
|
||||
@media screen and (max-width: 560px) {
|
||||
.page-enquete #section__dl .dl__group {
|
||||
grid-template-columns: 32% 1fr;
|
||||
-moz-column-gap: 1ch;
|
||||
column-gap: 1ch;
|
||||
font-size: var(--fs-small);
|
||||
padding: calc(var(--spacing) * 0.25) 0;
|
||||
}
|
||||
}
|
||||
@media screen and (min-width: 768px) {
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -8,11 +8,18 @@
|
|||
// @import 'components/nav-tabs';
|
||||
// @import 'components/btn--default';
|
||||
@import 'components/buttons';
|
||||
@import 'components/tags';
|
||||
@import 'components/keywords';
|
||||
@import 'components/details-summary';
|
||||
|
||||
@import 'components/figures';
|
||||
@import 'components/form-newsletter';
|
||||
@import 'components/list-socials';
|
||||
@import 'components/modal-share';
|
||||
@import 'components/text';
|
||||
@import 'components/card-small';
|
||||
@import 'components/card-impact';
|
||||
@import 'components/card-open-graph';
|
||||
|
||||
|
||||
@import 'partials/site-header';
|
||||
|
|
|
|||
|
|
@ -1,129 +1,142 @@
|
|||
.page-enquete {
|
||||
position: relative;
|
||||
|
||||
header {
|
||||
.page-type {
|
||||
text-transform: uppercase;
|
||||
color: var(--color-txt-light);
|
||||
margin-bottom: calc(var(--spacing) * 0.5);
|
||||
}
|
||||
h2 {
|
||||
font-size: var(--fs-xbig);
|
||||
line-height: var(--leading-tight);
|
||||
}
|
||||
}
|
||||
|
||||
.section__article {
|
||||
a:hover {
|
||||
color: var(--grey-200);
|
||||
}
|
||||
.section__title {
|
||||
font-weight: normal;
|
||||
text-transform: uppercase;
|
||||
margin-bottom: calc(var(--spacing) * 0.5);
|
||||
}
|
||||
}
|
||||
|
||||
#hero {
|
||||
width: 100vw;
|
||||
.page-enquete{
|
||||
position: relative;
|
||||
left: calc(var(--padding-body) * -1);
|
||||
|
||||
figcaption {
|
||||
color: var(--color-txt-light);
|
||||
font-size: var(--fs-small);
|
||||
padding-top: calc(var(--spacing) * 0.5);
|
||||
}
|
||||
|
||||
&.hero-video {
|
||||
figure {
|
||||
width: 100%;
|
||||
|
||||
img {
|
||||
width: 100%;
|
||||
aspect-ratio: 16/9;
|
||||
object-fit: cover;
|
||||
header{
|
||||
.page-type{
|
||||
text-transform: uppercase;
|
||||
color: var(--color-txt-light);
|
||||
margin-bottom: calc(var(--spacing)*0.5);
|
||||
}
|
||||
}
|
||||
h2{
|
||||
font-size: var(--fs-xbig);
|
||||
line-height: var(--leading-tight);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#nav--page {
|
||||
ul {
|
||||
list-style: none;
|
||||
li {
|
||||
text-align: center;
|
||||
color: var(--color-txt-light);
|
||||
a {
|
||||
display: block;
|
||||
padding: 0.3em 0;
|
||||
text-decoration: none;
|
||||
.section__article{
|
||||
a:hover{
|
||||
color: var(--grey-200);
|
||||
}
|
||||
.section__title{
|
||||
font-weight: normal;
|
||||
text-transform: uppercase;
|
||||
margin-bottom: calc(var(--spacing)*0.5)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#section__short {
|
||||
font-size: var(--fs-medium);
|
||||
}
|
||||
|
||||
#section__dl {
|
||||
margin-top: calc(var(--spacing) * 1.5);
|
||||
border-bottom: var(--border-light);
|
||||
|
||||
.dl__group {
|
||||
display: grid;
|
||||
grid-template-columns: 40% 1fr;
|
||||
border-top: var(--border-light);
|
||||
padding: calc(var(--spacing) * 0.5) 0;
|
||||
}
|
||||
|
||||
dt {
|
||||
color: var(--color-txt-light);
|
||||
padding-right: 1ch;
|
||||
#hero{
|
||||
width: 100vw;
|
||||
position: relative;
|
||||
left: calc(var(--padding-body)*-1);
|
||||
|
||||
figcaption{
|
||||
color: var(--color-txt-light);
|
||||
font-size: var(--fs-small);
|
||||
@media #{$x-small}{ font-size: var(--fs-xsmall); }
|
||||
padding-top: calc(var(--spacing)*0.5);
|
||||
|
||||
|
||||
}
|
||||
|
||||
&.hero-video{
|
||||
figure{
|
||||
width: 100%;
|
||||
|
||||
img{
|
||||
width: 100%;
|
||||
aspect-ratio: 16/9;
|
||||
object-fit: cover;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
ul:not(.keywords) {
|
||||
list-style: none;
|
||||
li {
|
||||
padding-bottom: 0.2em;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#section__synthese {
|
||||
p + p {
|
||||
margin-top: 0.5em;
|
||||
#nav--page{
|
||||
ul{
|
||||
list-style: none;
|
||||
li{
|
||||
text-align: center;
|
||||
color: var(--color-txt-light);
|
||||
a{
|
||||
display: block;
|
||||
padding: 0.3em 0;
|
||||
text-decoration: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
h4 {
|
||||
margin-top: 2em;
|
||||
margin-bottom: 1em;
|
||||
font-size: var(--fs-normal);
|
||||
font-weight: normal;
|
||||
text-decoration: 1px underline var(--color-txt-light);
|
||||
text-underline-offset: 3px;
|
||||
#section__short{
|
||||
font-size: var(--fs-medium);
|
||||
}
|
||||
}
|
||||
|
||||
#section__dl{
|
||||
margin-top: calc(var(--spacing)*1.5);
|
||||
border-bottom: var(--border-light);
|
||||
|
||||
.dl__group{
|
||||
display: grid;
|
||||
grid-template-columns: 2fr 3fr;
|
||||
border-top: var(--border-light);
|
||||
padding: calc(var(--spacing)*0.5) 0;
|
||||
}
|
||||
|
||||
dt{
|
||||
color: var(--color-txt-light);
|
||||
padding-right: 1ch;
|
||||
}
|
||||
|
||||
ul:not(.keywords){
|
||||
list-style: none;
|
||||
li{
|
||||
padding-bottom: 0.2em;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#section__synthese{
|
||||
p + p{
|
||||
margin-top: 0.5em;
|
||||
}
|
||||
|
||||
h4{
|
||||
margin-top: 2em;
|
||||
margin-bottom: 1em;
|
||||
font-size: var(--fs-normal);
|
||||
font-weight: normal;
|
||||
text-decoration: 1px underline var(--color-txt-light);
|
||||
text-underline-offset: 3px;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
// SHARE ACTIONS --------------------------------------------------
|
||||
// ----------------------------------------------------------------
|
||||
|
||||
#share-banner__desktop {
|
||||
display: none;
|
||||
}
|
||||
#share-banner__desktop ~ .modal--share {
|
||||
opacity: 0;
|
||||
pointer-events: none;
|
||||
transition: opacity 0.2s ease-in;
|
||||
#share-banner__desktop{ display: none; }
|
||||
#share-banner__desktop ~ .modal--share{
|
||||
opacity: 0;
|
||||
pointer-events: none;
|
||||
transition: opacity .2s ease-in;
|
||||
}
|
||||
|
||||
#share-banner__desktop:checked ~ .modal--share {
|
||||
opacity: 1;
|
||||
pointer-events: auto;
|
||||
#share-banner__desktop:checked ~ .modal--share{
|
||||
opacity: 1;
|
||||
pointer-events: auto;
|
||||
}
|
||||
|
||||
|
||||
// .page-enquete{
|
||||
// #banner--page.is-sticky {
|
||||
// position: fixed;
|
||||
|
|
@ -134,191 +147,224 @@
|
|||
// }
|
||||
// }
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// SMALL ----------------------------------------------------------
|
||||
// ----------------------------------------------------------------
|
||||
|
||||
@media #{$small} {
|
||||
.page-enquete {
|
||||
header {
|
||||
padding-top: calc(var(--spacing) * 1.5);
|
||||
.page-type {
|
||||
font-size: var(--fs-small);
|
||||
}
|
||||
}
|
||||
|
||||
.section__article {
|
||||
margin: calc(var(--spacing) * 1.5) 0;
|
||||
}
|
||||
@media #{$small}{
|
||||
|
||||
#section__impacts,
|
||||
#section__en-lien {
|
||||
margin-top: 0px;
|
||||
}
|
||||
.page-enquete{
|
||||
|
||||
#hero {
|
||||
margin: calc(var(--spacing) * 1.5) 0;
|
||||
figcaption {
|
||||
margin: 0 var(--padding-body);
|
||||
}
|
||||
}
|
||||
header{
|
||||
padding-top: calc(var(--spacing)*1.5);
|
||||
.page-type{
|
||||
font-size: var(--fs-small);
|
||||
}
|
||||
}
|
||||
|
||||
.modal--share {
|
||||
position: absolute;
|
||||
width: calc(100% - var(--padding-body) * 2);
|
||||
bottom: calc(var(--spacing) * 2);
|
||||
}
|
||||
.section__article{
|
||||
margin: calc(var(--spacing)*1.5) 0;
|
||||
}
|
||||
|
||||
#banner--page {
|
||||
padding: calc(var(--spacing) * 0.5) 0;
|
||||
|
||||
position: fixed;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
width: 100vw;
|
||||
padding: calc(var(--spacing) * 0.75) var(--padding-body);
|
||||
padding-top: var(--spacing);
|
||||
background-color: var(--color-bg);
|
||||
background: linear-gradient(
|
||||
0deg,
|
||||
var(--color-bg) 0%,
|
||||
var(--color-bg) 64%,
|
||||
transparent 100%
|
||||
);
|
||||
z-index: 800;
|
||||
|
||||
#nav--page {
|
||||
display: none;
|
||||
}
|
||||
.btn--group {
|
||||
display: flex;
|
||||
gap: calc(var(--spacing) * 0.25);
|
||||
position: relative;
|
||||
|
||||
> button,
|
||||
> label {
|
||||
width: 50%;
|
||||
cursor: pointer;
|
||||
#section__impacts, #section__en-lien{
|
||||
margin-top: 0px;
|
||||
}
|
||||
}
|
||||
|
||||
#hero{
|
||||
margin: calc(var(--spacing)*1.5) 0;
|
||||
figcaption{
|
||||
margin: 0 var(--padding-body);
|
||||
}
|
||||
}
|
||||
|
||||
.modal--share{
|
||||
position: absolute;
|
||||
width: calc(100% - var(--padding-body)*2);
|
||||
bottom: calc(var(--spacing) * 2);
|
||||
}
|
||||
|
||||
|
||||
#banner--page {
|
||||
padding: calc(var(--spacing)*0.5) 0;
|
||||
|
||||
position: fixed;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
width: 100vw;
|
||||
padding: calc(var(--spacing)*0.75) var(--padding-body);
|
||||
padding-top: var(--spacing);
|
||||
background-color: var(--color-bg);
|
||||
background: linear-gradient(0deg,var(--color-bg) 0%, var(--color-bg) 64%, transparent 100%);
|
||||
z-index: 800;
|
||||
|
||||
#nav--page{
|
||||
display: none;
|
||||
}
|
||||
.btn--group{
|
||||
|
||||
display: flex;
|
||||
gap: calc(var(--spacing)*0.25);
|
||||
position: relative;
|
||||
|
||||
> button,
|
||||
> label {
|
||||
width: 50%;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
// action
|
||||
|
||||
#banner--page{
|
||||
opacity: 0;
|
||||
pointer-events: none;
|
||||
transition: opacity .2s ease-in;
|
||||
}
|
||||
|
||||
#banner--page.is-visible{
|
||||
opacity: 1;
|
||||
pointer-events: auto;
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
// action
|
||||
|
||||
#banner--page {
|
||||
opacity: 0;
|
||||
pointer-events: none;
|
||||
transition: opacity 0.2s ease-in;
|
||||
}
|
||||
|
||||
#banner--page.is-visible {
|
||||
opacity: 1;
|
||||
pointer-events: auto;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@media #{$x-small} {
|
||||
.page-enquete {
|
||||
#section__dl .dl__group {
|
||||
grid-template-columns: 32% 1fr;
|
||||
column-gap: 1ch;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@media #{$x-small}{
|
||||
.page-enquete{
|
||||
#section__dl .dl__group{
|
||||
|
||||
column-gap: 1ch;
|
||||
font-size: var(--fs-small);
|
||||
padding: calc(var(--spacing)*0.25) 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// DESKTOP ----------------------------------------------------------
|
||||
// ----------------------------------------------------------------
|
||||
|
||||
@media #{$small-up} {
|
||||
.page-enquete {
|
||||
#banner--page {
|
||||
height: calc(100vh - var(--header-h));
|
||||
height: calc(100dvh - var(--header-h));
|
||||
margin-bottom: calc((100vh - var(--header-h)) * -1);
|
||||
margin-bottom: calc((100dvh - var(--header-h)) * -1);
|
||||
padding: var(--padding-body);
|
||||
padding-left: 0px;
|
||||
position: sticky;
|
||||
top: var(--header-h);
|
||||
width: var(--banner-medium);
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
#banner--page .btn--group {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
gap: calc(var(--spacing) * 0.25);
|
||||
@media #{$small-up}{
|
||||
|
||||
> button,
|
||||
> label {
|
||||
width: 100%;
|
||||
max-width: 160px;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
.page-enquete{
|
||||
|
||||
#hero {
|
||||
margin: calc(var(--spacing) * 3) 0;
|
||||
}
|
||||
#banner--page{
|
||||
height: calc(100vh - var(--header-h));
|
||||
height: calc(100dvh - var(--header-h));
|
||||
margin-bottom: calc((100vh - var(--header-h))*-1);
|
||||
margin-bottom: calc((100dvh - var(--header-h))*-1);
|
||||
padding: var(--padding-body);
|
||||
padding-left: 0px;
|
||||
position: sticky;
|
||||
top: var(--header-h);
|
||||
width: var(--banner-medium);
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.section__article {
|
||||
margin-left: var(--banner-medium);
|
||||
margin-top: calc(var(--spacing) * 3);
|
||||
margin-bottom: calc(var(--spacing) * 3);
|
||||
}
|
||||
#banner--page .btn--group{
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
gap: calc(var(--spacing)*0.25);
|
||||
|
||||
> button,
|
||||
> label {
|
||||
width: 100%;
|
||||
max-width: 160px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#section__short {
|
||||
margin-top: var(--padding-body);
|
||||
}
|
||||
#hero{
|
||||
margin: calc(var(--spacing)*3) 0;
|
||||
|
||||
header {
|
||||
max-width: var(--max-w-content);
|
||||
margin: calc(var(--spacing) * 2) auto;
|
||||
}
|
||||
}
|
||||
|
||||
.section__article {
|
||||
.section__title {
|
||||
font-size: var(--fs-medium);
|
||||
margin-bottom: var(--spacing);
|
||||
}
|
||||
}
|
||||
.section__article{
|
||||
margin-left: var(--banner-medium);
|
||||
margin-top: calc(var(--spacing)*3);
|
||||
margin-bottom: calc(var(--spacing)*3);
|
||||
}
|
||||
|
||||
#section__synthese {
|
||||
font-size: var(--fs-medium);
|
||||
}
|
||||
}
|
||||
.modal--share {
|
||||
position: absolute;
|
||||
bottom: calc(var(--padding-body) + var(--h-block) + var(--spacing) * 0.25);
|
||||
width: calc(100% - var(--padding-body));
|
||||
}
|
||||
}
|
||||
#section__short{
|
||||
margin-top: var(--padding-body);
|
||||
}
|
||||
|
||||
@media #{$medium-up} {
|
||||
.page-enquete {
|
||||
#banner--page {
|
||||
width: calc((100% - var(--max-w-content)) / 2);
|
||||
}
|
||||
header{
|
||||
max-width: var(--max-w-content);
|
||||
margin: calc(var(--spacing)*2) auto;
|
||||
}
|
||||
|
||||
#hero {
|
||||
margin: calc(var(--spacing) * 3) 0;
|
||||
figcaption {
|
||||
max-width: var(--max-w-content);
|
||||
margin: 0 auto;
|
||||
}
|
||||
}
|
||||
.section__article{
|
||||
.section__title{
|
||||
font-size: var(--fs-medium);
|
||||
margin-bottom: var(--spacing);
|
||||
}
|
||||
}
|
||||
|
||||
header {
|
||||
max-width: var(--max-w-content);
|
||||
margin: calc(var(--spacing) * 2) auto;
|
||||
#section__synthese{
|
||||
font-size: var(--fs-medium);
|
||||
}
|
||||
}
|
||||
.modal--share{
|
||||
position: absolute;
|
||||
bottom: calc(var(--padding-body) + var(--h-block) + var(--spacing) * 0.25);
|
||||
width: calc(100% - var(--padding-body));
|
||||
}
|
||||
}
|
||||
|
||||
.section__article {
|
||||
max-width: var(--max-w-content);
|
||||
margin: calc(var(--spacing) * 3) auto;
|
||||
|
||||
|
||||
|
||||
@media #{$medium-up}{
|
||||
|
||||
.page-enquete{
|
||||
|
||||
#banner--page{
|
||||
width: calc((100% - var(--max-w-content))/2);
|
||||
}
|
||||
|
||||
#hero{
|
||||
margin: calc(var(--spacing)*3) 0;
|
||||
figcaption{
|
||||
max-width: var(--max-w-content);
|
||||
margin: 0 auto;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
header{
|
||||
max-width: var(--max-w-content);
|
||||
margin: calc(var(--spacing)*2) auto;
|
||||
}
|
||||
|
||||
.section__article{
|
||||
max-width: var(--max-w-content);
|
||||
margin: calc(var(--spacing)*3) auto;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
1
assets/icons/arrow-details.svg
Normal file
1
assets/icons/arrow-details.svg
Normal file
|
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M7.33 24l-2.83-2.829 9.339-9.175-9.339-9.167 2.83-2.829 12.17 11.996z"/></svg>
|
||||
|
After Width: | Height: | Size: 170 B |
|
|
@ -1,7 +0,0 @@
|
|||
<svg width="34px" height="34px" viewBox="0 0 34 34" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
|
||||
<g transform="matrix(0.999997,0,0,1,-0.499614,-0.41986)">
|
||||
<g id="facebook">
|
||||
<path d="M17.5,2.099C8.995,2.099 2.1,8.994 2.1,17.499C2.1,25.22 7.787,31.595 15.198,32.708L15.198,21.58L11.388,21.58L11.388,17.532L15.198,17.532L15.198,14.839C15.198,10.379 17.371,8.421 21.077,8.421C22.853,8.421 23.791,8.553 24.236,8.613L24.236,12.146L21.707,12.146C20.134,12.146 19.584,13.638 19.584,15.32L19.584,17.532L24.196,17.532L23.57,21.58L19.584,21.58L19.584,32.741C27.101,31.721 32.9,25.295 32.9,17.499C32.9,8.994 26.005,2.099 17.5,2.099Z" style="fill-rule:nonzero;"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 896 B |
1
assets/icons/link.svg
Normal file
1
assets/icons/link.svg
Normal file
|
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" style="fill: var(--color-txt)" width="24" height="24" viewBox="0 0 24 24"><path d="M13.723 18.654l-3.61 3.609c-2.316 2.315-6.063 2.315-8.378 0-1.12-1.118-1.735-2.606-1.735-4.188 0-1.582.615-3.07 1.734-4.189l4.866-4.865c2.355-2.355 6.114-2.262 8.377 0 .453.453.81.973 1.089 1.527l-1.593 1.592c-.18-.613-.5-1.189-.964-1.652-1.448-1.448-3.93-1.51-5.439-.001l-.001.002-4.867 4.865c-1.5 1.499-1.5 3.941 0 5.44 1.517 1.517 3.958 1.488 5.442 0l2.425-2.424c.993.284 1.791.335 2.654.284zm.161-16.918l-3.574 3.576c.847-.05 1.655 0 2.653.283l2.393-2.389c1.498-1.502 3.94-1.5 5.44-.001 1.517 1.518 1.486 3.959 0 5.442l-4.831 4.831-.003.002c-1.438 1.437-3.886 1.552-5.439-.002-.473-.474-.785-1.042-.956-1.643l-.084.068-1.517 1.515c.28.556.635 1.075 1.088 1.528 2.245 2.245 6.004 2.374 8.378 0l4.832-4.831c2.314-2.316 2.316-6.062-.001-8.377-2.317-2.321-6.067-2.313-8.379-.002z"/></svg>
|
||||
|
After Width: | Height: | Size: 911 B |
|
|
@ -1,7 +0,0 @@
|
|||
<svg width="34px" height="34px" viewBox="0 0 34 34" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
|
||||
<g transform="matrix(1.22222,0,0,1.22222,0.500004,0.500006)">
|
||||
<g id="linkedin">
|
||||
<path d="M23.786,0L3.214,0C1.44,0 0,1.44 0,3.214L0,23.786C0,25.56 1.44,27 3.214,27L23.786,27C25.56,27 27,25.56 27,23.786L27,3.214C27,1.44 25.56,0 23.786,0ZM8.357,10.286L8.357,22.5L4.5,22.5L4.5,10.286L8.357,10.286ZM4.5,6.731C4.5,5.831 5.271,5.143 6.429,5.143C7.586,5.143 8.312,5.831 8.357,6.731C8.357,7.631 7.637,8.357 6.429,8.357C5.271,8.357 4.5,7.631 4.5,6.731ZM22.5,22.5L18.643,22.5L18.643,16.071C18.643,14.786 18,13.5 16.393,13.474L16.341,13.474C14.786,13.474 14.143,14.799 14.143,16.071L14.143,22.5L10.286,22.5L10.286,10.286L14.143,10.286L14.143,11.931C14.143,11.931 15.384,10.286 17.878,10.286C20.43,10.286 22.5,12.041 22.5,15.596L22.5,22.5Z" style="fill-rule:nonzero;"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.1 KiB |
108
site/snippets/card-open-graph.php
Normal file
108
site/snippets/card-open-graph.php
Normal file
|
|
@ -0,0 +1,108 @@
|
|||
<?php
|
||||
// URL à scraper (remplacez par l'URL souhaitée)
|
||||
$url = 'https://www.lemonde.fr/societe/article/2025/07/16/au-c-ur-des-emeutes-de-nouvelle-caledonie-quand-la-mort-de-banane-abattu-par-le-gign-lance-le-siege-de-saint-louis_6621496_3224.html';
|
||||
|
||||
// Fonction pour récupérer les données Open Graph
|
||||
function getOpenGraphData($url) {
|
||||
$ogData = [
|
||||
'title' => '',
|
||||
'description' => '',
|
||||
'image' => '',
|
||||
'site_name' => '',
|
||||
'url' => $url
|
||||
];
|
||||
|
||||
// Configuration du contexte pour éviter les erreurs SSL
|
||||
$context = stream_context_create([
|
||||
'http' => [
|
||||
'method' => 'GET',
|
||||
'header' => 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36',
|
||||
'timeout' => 10
|
||||
],
|
||||
'ssl' => [
|
||||
'verify_peer' => false,
|
||||
'verify_peer_name' => false
|
||||
]
|
||||
]);
|
||||
|
||||
// Récupérer le HTML
|
||||
$html = @file_get_contents($url, false, $context);
|
||||
|
||||
if ($html === false) {
|
||||
return $ogData;
|
||||
}
|
||||
|
||||
// Parser les meta tags Open Graph
|
||||
preg_match_all('/<meta\s+property=["\']og:([^"\']+)["\']\s+content=["\']([^"\']+)["\']/i', $html, $matches);
|
||||
|
||||
if (!empty($matches[1])) {
|
||||
foreach ($matches[1] as $index => $property) {
|
||||
$content = $matches[2][$index];
|
||||
switch ($property) {
|
||||
case 'title':
|
||||
$ogData['title'] = htmlspecialchars($content);
|
||||
break;
|
||||
case 'description':
|
||||
$ogData['description'] = htmlspecialchars($content);
|
||||
break;
|
||||
case 'image':
|
||||
$ogData['image'] = $content;
|
||||
break;
|
||||
case 'site_name':
|
||||
$ogData['site_name'] = htmlspecialchars($content);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Fallback: si pas de og:title, utiliser <title>
|
||||
if (empty($ogData['title'])) {
|
||||
preg_match('/<title>([^<]+)<\/title>/i', $html, $titleMatch);
|
||||
if (!empty($titleMatch[1])) {
|
||||
$ogData['title'] = htmlspecialchars($titleMatch[1]);
|
||||
}
|
||||
}
|
||||
|
||||
// Fallback: si pas de site_name, utiliser le domaine
|
||||
if (empty($ogData['site_name'])) {
|
||||
$parsed = parse_url($url);
|
||||
$ogData['site_name'] = $parsed['host'] ?? '';
|
||||
}
|
||||
|
||||
return $ogData;
|
||||
}
|
||||
|
||||
$ogData = getOpenGraphData($url);
|
||||
|
||||
// Toujours utiliser le domaine de l'URL pour site_name
|
||||
$parsed = parse_url($url);
|
||||
$ogData['site_name'] = $parsed['host'] ?? '';
|
||||
?>
|
||||
|
||||
<div class="card--open-graph">
|
||||
<?php if (!empty($ogData['image'])): ?>
|
||||
<figure>
|
||||
<img src="<?= $ogData['image'] ?>" alt="<?= $ogData['title'] ?>">
|
||||
</figure>
|
||||
<?php endif; ?>
|
||||
|
||||
<div class="content">
|
||||
<?php if (!empty($ogData['site_name'])): ?>
|
||||
<span class="site-name"><?= $ogData['site_name'] ?></span>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if (!empty($ogData['title'])): ?>
|
||||
|
||||
<h3 class="title">
|
||||
<a href="<?= $ogData['url'] ?>" target="_blank">
|
||||
<?= $ogData['title'] ?>
|
||||
</a>
|
||||
</h3>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if (!empty($ogData['description'])): ?>
|
||||
<p class="description"><?= $ogData['description'] ?></p>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
<a class="link-block" href="<?= $ogData['url'] ?>" target="_blank"></a>
|
||||
</div>
|
||||
|
|
@ -31,7 +31,7 @@
|
|||
</div>
|
||||
|
||||
<input type="checkbox" id="share-banner__desktop">
|
||||
<div class="modal--share"><?php snippet('modal-share') ?></div>
|
||||
<?php snippet('modal-share') ?>
|
||||
|
||||
</div>
|
||||
|
||||
|
|
@ -60,7 +60,6 @@
|
|||
<li><a href="#" target="_blank">Occupation</a></li>
|
||||
<li><a href="#" target="_blank">Colonialité</a></li>
|
||||
<li><a href="#" target="_blank">Forces armées</a></li>
|
||||
<li><a href="#" target="_blank">Mot-clé</a></li>
|
||||
<li><a href="#" target="_blank">Colonialité</a></li>
|
||||
|
||||
</ul>
|
||||
|
|
@ -115,12 +114,21 @@
|
|||
<h3 class="section__title">Impacts</h3>
|
||||
|
||||
<div class="card--impact" data-impact-type="media">
|
||||
<p class="type">Médiatique</p>
|
||||
|
||||
<p class="tag">Médiatique</p>
|
||||
<div class="content">
|
||||
<p>12 articles et reprises</p>
|
||||
<p>1.5M de vues cumulées</p>
|
||||
</div>
|
||||
<details class="open-graph__details">
|
||||
<summary><p class="summary-inner">Détails <span class="arrow-details"><?= svg('assets/icons/arrow-details.svg') ?></span><p></summary>
|
||||
<div class="open-graph__inner">
|
||||
<?php snippet('card-open-graph') ?>
|
||||
</div>
|
||||
</details>
|
||||
</div>
|
||||
|
||||
<div class="card--impact" data-impact-type="judiciaire">
|
||||
<p class="type">Judiciaire</p>
|
||||
<p class="tag">Judiciaire</p>
|
||||
<p class="date">12 Dec 2025</p>
|
||||
<div class="content">
|
||||
<p >La justice israélienne déclare ouvrir une enquête sur “les circonstances de la mort de Nidal et Khaled Amirah”.
|
||||
|
|
@ -129,7 +137,7 @@
|
|||
</div>
|
||||
|
||||
<div class="card--impact" data-impact-type="judiciaire">
|
||||
<p class="type">Judiciaire</p>
|
||||
<p class="tag">Judiciaire</p>
|
||||
<p class="date">12 Dec 2025</p>
|
||||
<div class="content">
|
||||
<p >La justice israélienne déclare ouvrir une enquête sur “les circonstances de la mort de Nidal et Khaled Amirah”
|
||||
|
|
@ -139,7 +147,7 @@
|
|||
</div>
|
||||
|
||||
<div class="card--impact" data-impact-type="public">
|
||||
<p class="type">Judiciaire</p>
|
||||
<p class="tag">Judiciaire</p>
|
||||
<p class="date">12 Dec 2025</p>
|
||||
<div class="content">
|
||||
<p>Index présente une série d’enquêtes récentes au Festival du Réel 2025. <a class="see-more" href="#">Voir plus</a>
|
||||
|
|
@ -159,7 +167,7 @@
|
|||
<div class="content">
|
||||
<h4 class="title"><a href="/page-enquete" target="_blank">L’homicide de Nahel Merzouk</a></h4>
|
||||
<time datetime="2024-06-27">27 Jun 2024</time>
|
||||
<ul class="keywords keywords--small">
|
||||
<ul class="keywords">
|
||||
<li><a href="#" target="_blank">Occupation</a></li>
|
||||
<li><a href="#" target="_blank">Colonialité</a></li>
|
||||
<li><a href="#" target="_blank">Forces armées</a></li>
|
||||
|
|
@ -176,7 +184,7 @@
|
|||
<div class="content">
|
||||
<h4 class="title"><a href="/page-enquete" target="_blank">La mort par noyade de Jumaa al-Hasan</a></h4>
|
||||
<time datetime="2024-06-27">27 Jun 2024</time>
|
||||
<ul class="keywords keywords--small">
|
||||
<ul class="keywords">
|
||||
<li><a href="#" target="_blank">Occupation</a></li>
|
||||
<li><a href="#" target="_blank">Colonialité</a></li>
|
||||
<li><a href="#" target="_blank">Forces armées</a></li>
|
||||
|
|
@ -193,7 +201,7 @@
|
|||
<div class="content">
|
||||
<h4 class="title"><a href="/page-enquete" target="_blank">Trois morts a Saint-Louis, Kanaky/Nouvelle-Caledonie</a></h4>
|
||||
<time datetime="2024-06-27">27 Jun 2024</time>
|
||||
<ul class="keywords keywords--small">
|
||||
<ul class="keywords">
|
||||
<li><a href="#" target="_blank">Occupation</a></li>
|
||||
<li><a href="#" target="_blank">Colonialité</a></li>
|
||||
<li><a href="#" target="_blank">Forces armées</a></li>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue