diff --git a/index.html b/index.html
index 72b2cfb..e97b555 100644
--- a/index.html
+++ b/index.html
@@ -553,6 +553,145 @@
max-width: 64ch;
}
+ /* ── FORMATION ── */
+ .formation { background: var(--page); }
+ .formation .timeline { border-left-color: var(--g100); }
+ .formation .timeline-item::before { box-shadow: 0 0 0 4px var(--page); }
+
+ .formation-school-desc {
+ font-family: var(--serif);
+ font-style: italic;
+ font-weight: 300;
+ color: var(--ink-2);
+ line-height: 1.55;
+ max-width: 64ch;
+ margin-bottom: 20px;
+ }
+
+ .formation-themes {
+ display: grid;
+ grid-template-columns: 1fr;
+ gap: 18px;
+ margin-top: 24px;
+ }
+ @media (min-width: 768px) { .formation-themes { grid-template-columns: repeat(2, 1fr); } }
+ @media (min-width: 1200px) { .formation-themes { grid-template-columns: repeat(3, 1fr); } }
+
+ .theme-card {
+ background: #fff;
+ border: 1px solid var(--rule);
+ border-radius: var(--r-md);
+ padding: 22px;
+ transition: border-color .25s ease, transform .25s ease, box-shadow .25s ease;
+ display: flex;
+ flex-direction: column;
+ }
+ .theme-card:hover {
+ border-color: var(--g300);
+ transform: translateY(-2px);
+ box-shadow: var(--shadow-md);
+ }
+ .theme-card-head {
+ display: flex;
+ align-items: baseline;
+ justify-content: space-between;
+ gap: 12px;
+ margin-bottom: 12px;
+ padding-bottom: 10px;
+ border-bottom: 1px dashed var(--rule);
+ }
+ .theme-card h4 {
+ font-family: var(--serif);
+ font-weight: 600;
+ font-size: 18px;
+ color: var(--ink-1);
+ letter-spacing: -0.01em;
+ line-height: 1.2;
+ }
+ .theme-card-tag {
+ font-family: var(--mono);
+ font-size: 11px;
+ color: var(--g500);
+ letter-spacing: 0.1em;
+ flex-shrink: 0;
+ }
+ .theme-quote {
+ font-family: var(--serif);
+ font-style: italic;
+ font-weight: 300;
+ color: var(--ink-2);
+ font-size: 14px;
+ line-height: 1.5;
+ padding-left: 12px;
+ border-left: 2px solid var(--g500);
+ margin-bottom: 16px;
+ }
+ .theme-list {
+ list-style: none;
+ display: flex;
+ flex-direction: column;
+ gap: 10px;
+ }
+ .theme-list li {
+ font-size: 13.5px;
+ line-height: 1.55;
+ color: var(--ink-2);
+ }
+ .theme-list code {
+ font-family: var(--mono);
+ font-size: 12px;
+ font-weight: 500;
+ color: var(--g700);
+ background: var(--g050);
+ border: 1px solid var(--g100);
+ padding: 1px 7px;
+ border-radius: var(--r-sm);
+ }
+
+ .formation-tsrit-list {
+ list-style: none;
+ display: flex;
+ flex-direction: column;
+ gap: 10px;
+ margin-top: 12px;
+ max-width: 64ch;
+ }
+ .formation-tsrit-list li {
+ color: var(--ink-2);
+ line-height: 1.55;
+ padding-left: 18px;
+ position: relative;
+ }
+ .formation-tsrit-list li::before {
+ content: "";
+ position: absolute;
+ left: 0; top: 0.65em;
+ width: 8px; height: 1px;
+ background: var(--g500);
+ }
+ .formation-tsrit-list li strong { color: var(--ink-1); font-weight: 600; }
+
+ .honors {
+ display: inline-flex;
+ align-items: center;
+ gap: 8px;
+ font-family: var(--mono);
+ font-size: 12px;
+ font-weight: 600;
+ color: var(--g700);
+ background: var(--g100);
+ border: 1px solid var(--g300);
+ padding: 6px 14px;
+ border-radius: var(--r-pill);
+ letter-spacing: 0.04em;
+ margin: 4px 0 14px;
+ }
+ .honors::before {
+ content: "★";
+ color: var(--g500);
+ font-size: 13px;
+ }
+
/* ── CONTACT ── */
.contact {
background: var(--dark);
@@ -619,40 +758,8 @@
word-break: break-word;
}
- .contact-side {
- border: 1px solid rgba(106,185,138,0.2);
- border-radius: var(--r-md);
- padding: 24px;
- background: rgba(13, 27, 18, 0.5);
- }
- .contact-side h3 {
- font-family: var(--serif);
- font-size: 20px;
- color: #fff;
- margin-bottom: 10px;
- }
- .contact-side p {
- color: rgba(223, 240, 231, 0.85);
- font-size: 14px;
- line-height: 1.6;
- margin-bottom: 16px;
- }
- .contact-side .education {
- list-style: none;
- border-top: 1px solid rgba(106,185,138,0.15);
- padding-top: 16px;
- margin-top: 16px;
- }
- .contact-side .education li {
- font-family: var(--mono);
- font-size: 12px;
- color: rgba(223, 240, 231, 0.7);
- margin-bottom: 6px;
- }
- .contact-side .education strong { color: var(--g100); font-weight: 600; }
-
@media (min-width: 768px) {
- .contact-grid { grid-template-columns: 1.4fr 1fr; gap: 48px; }
+ .contact-list { grid-template-columns: repeat(2, 1fr); }
}
/* ── FOOTER ── */
@@ -708,6 +815,7 @@
À propos
Stack
Parcours
+ Formation
Contact
@@ -912,6 +1020,92 @@
+
+
+