@font-face{font-family:'Review Sans Note';src:url('fonts/directors-note-sans.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap;unicode-range:U+5149,U+59CB,U+5B58,U+6697,U+671B,U+67D4,U+6E29,U+751C,U+7ACB,U+7EC8,U+800C,U+8292,U+82E6,U+871C,U+96BE,U+9ED1}
/* SFS-approved consolidated revisions, 2026-10-17. HOME HERO is protected. */
:root { --editorial-sans:'Review Condensed','Review Sans','Arial Narrow',sans-serif; }
/* B-2 desktop: brand anchored left, navigation centered on header, search anchored right.
   Exact existing header padding, height, brand metrics and search dimensions are retained. */
@media(min-width:1101px) {
 body[data-visual-review] header {display:grid;grid-template-columns:1fr auto 1fr;column-gap:24px;row-gap:0;align-items:center;}
 body[data-visual-review] header .header-navigation {display:contents;}
 body[data-visual-review] header .brand {grid-column:1;grid-row:1;justify-self:start;}
 body[data-visual-review] header nav {grid-column:2;grid-row:1;justify-self:center;gap:clamp(16px,calc(20vw - 224px),64px);}
 body[data-visual-review] header .header-search {grid-column:3;grid-row:1;justify-self:end;}
 /* Keep the global header aligned to the same 56px site edge; the P2 content stays at 10%. */
 body[data-projects-index] header {width:calc(125% - 112px);margin-inline:calc(56px - 12.5%);}
}
/* Existing tablet/mobile arrangement and sizes stay intact, including language placement. */
body[data-visual-review] main :is(#about,#sifan-shao,#contact),
body[data-visual-review] main :is(#about,#sifan-shao,#contact) :is(h1,h2,h3,p,a,span,em,strong,dt,dd) {
 font-family:var(--editorial-sans);
}
body[data-projects-index] .project-cover img { object-fit:cover;object-position:var(--cover-position,50% 50%); }

body[data-projects-index] [id="2026-terre-ville"] .project-cover img { --cover-position:50% 50%; }
body[data-projects-index] [id="2026-the-maids"] .project-cover img { --cover-position:50% 50%; }
body[data-projects-index] [id="2025-the-maids"] .project-cover img { --cover-position:50% 50%; }
body[data-projects-index] [id="2024-my-little-prince"] .project-cover img { --cover-position:50% 50%; }
body[data-projects-index] [id="2023-io"] .project-cover img { --cover-position:50% 70%; }
body[data-projects-index] [id="2021-happy-birthday"] .project-cover img { --cover-position:50% 50%; }
body[data-projects-index] [id="2021-i-shenzhen"] .project-cover img { --cover-position:100% 50%; }
body[data-projects-index] [id="2020-sunny"] .project-cover img { --cover-position:85% 50%; }
body[data-projects-index] [id="2019-66-5-n"] .project-cover img { --cover-position:50% 50%; }
body[data-projects-index] [id="2018-juste-la-fin-du-monde"] .project-cover img { --cover-position:50% 50%; }
body[data-projects-index] [id="2017-music-hall"] .project-cover img { --cover-position:50% 50%; }
body[data-projects-index] [id="2016-caeiro"] .project-cover img { --cover-position:55% 50%; }
body[data-projects-index] [id="2014-absolutely-precious"] .project-cover img { --cover-position:50% 50%; }
body[data-projects-index] [id="2009-feydeau-etc"] .project-cover img { --cover-position:45% 50%; }
/* Detail galleries only; HOME's approved 16:9/3:2 and focal CSS are untouched. */
body.projects-page:not([data-projects-index]) .project-gallery .carousel-media > img {object-fit:cover;object-position:50% 50%;}
body.projects-page:not([data-projects-index]) .project-gallery .carousel-indicators button:focus-visible {outline:2px solid white;outline-offset:-3px;}
.directors-note {max-width:680px;padding:0;border:0;margin:64px 0 0;}
.directors-note h2 {font-family:var(--editorial-sans);font-size:16px;font-weight:700;line-height:1.4;letter-spacing:0;margin:0 0 24px;}
.directors-note .directors-note-excerpt {font-family:'Review Sans','Review Sans Note',Arial,sans-serif;font-size:22px;font-weight:400;line-height:1.7;letter-spacing:0;margin:0;overflow-wrap:break-word;}
.directors-note a {display:inline-flex;align-items:center;min-height:44px;font-size:14px;color:var(--accent);margin-top:24px;}
.directors-note .directors-note-pending {font:14px/1.6 Arial,'Review Sans',sans-serif;color:var(--muted);margin:24px 0 0;}
@media(max-width:700px){.directors-note{margin-top:48px}.directors-note .directors-note-excerpt{font-size:20px;}}
