/* Local L’Etoile overview corrections; original artwork remains unchanged. */
:root[data-theme="dark"]{--bg:#050505;--paper:#050505;--muted:#d8d8dc}
:root[data-theme="dark"] body,:root[data-theme="dark"] body .case-section,:root[data-theme="dark"] body .portfolio-reader,:root[data-theme="dark"] body .portfolio-contents{background:#050505}
.letoile-ai-showcase:focus-visible,.letoile-brand-teaser .banner-press-link:focus-visible{outline-color:#315fcd}
#letoile-projects .project-entry-copy h3{overflow-wrap:normal;word-break:normal}
#letoile-projects .project-entry-copy>p{line-height:1.55}
#letoile-projects .project-entry-copy{gap:16px;padding-top:24px}
#letoile-projects .artdeco-preview-actions{padding-top:8px}
#letoile-projects .artdeco-back-step{margin-bottom:20px}
#letoile-projects .artdeco-flip-scene:focus-visible{outline:3px solid #315fcd;outline-offset:4px;border-radius:24px}
@media(max-width:650px){#letoile-projects .artdeco-flip-back{padding:20px}#letoile-projects .artdeco-back-step p{font-size:16px}#letoile-projects .artdeco-back-step{margin-bottom:16px}}

/* The visible face determines height: portrait artwork, natural-height text. */
#letoile-projects>.project-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px;overflow:visible;align-items:start}
#letoile-projects .project-entry{min-width:0;max-width:100%;width:100%}
#letoile-projects .artdeco-flip-scene{position:relative;width:100%;height:auto;aspect-ratio:auto;flex:none;min-width:0}
#letoile-projects .artdeco-flip-inner{position:relative;display:block;width:100%;height:auto;min-height:0}
#letoile-projects .artdeco-flip-front,#letoile-projects .artdeco-flip-back{width:100%;min-height:0;box-sizing:border-box;grid-area:auto}
#letoile-projects .artdeco-flip-front{position:relative;inset:auto;height:auto;aspect-ratio:3/4;background:transparent}
#letoile-projects .artdeco-flip-front img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:100%;object-fit:contain}
#letoile-projects .artdeco-flip-back{position:absolute;inset:0;height:100%;overflow:visible;padding:24px}
#letoile-projects .is-flipped .artdeco-flip-front{position:absolute;inset:0;height:100%;aspect-ratio:auto}
#letoile-projects .is-flipped .artdeco-flip-back{position:relative;inset:auto;height:auto;max-height:none}
#letoile-projects .artdeco-flip-back .artdeco-back-headline{max-width:12ch;font-size:clamp(28px,2.8vw,40px);line-height:1.12;text-wrap:balance}
#letoile-projects .artdeco-back-step{grid-template-columns:22px minmax(0,1fr);gap:10px}
#letoile-projects .artdeco-back-step h4{font-size:20px;line-height:1.25;text-wrap:balance}
#letoile-projects .artdeco-back-step p{font-size:16px;line-height:1.5;text-wrap:pretty}
#letoile-projects .artdeco-flip-back p,#letoile-projects .project-entry-copy{overflow-wrap:normal;word-break:normal;hyphens:none}
#letoile-projects .preview-metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(120px,100%),1fr));gap:16px}
#letoile-projects .preview-metric{min-width:0;padding:0;gap:6px}
#letoile-projects .preview-metric strong{font-size:clamp(26px,2.6vw,38px);white-space:nowrap;line-height:1.2}
#letoile-projects .preview-metric span{font-size:13px;line-height:1.45;text-wrap:pretty}
#letoile-projects .artdeco-flip-back .preview-metrics-note{margin:16px 0 0;font-size:12px;line-height:1.5}
#letoile-projects .project-entry-copy{width:100%;min-width:0;flex:none;gap:12px;padding-top:20px}
#letoile-projects .project-entry-copy h3{text-wrap:balance;line-height:1.15}
#letoile-projects .project-entry-copy>p{text-wrap:pretty}
#letoile-projects .artdeco-preview-actions{margin-top:0;padding-top:4px}
@media(max-width:1100px){#letoile-projects>.project-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){#letoile-projects>.project-card-grid{grid-template-columns:minmax(0,1fr)}#letoile-projects .artdeco-flip-back{padding:20px}#letoile-projects .artdeco-back-step h4{font-size:18px}}

/* Keep meaningful word groups together; use the whole available line. */
#letoile-projects .artdeco-flip-back .artdeco-back-headline{max-width:none;letter-spacing:-.025em;text-wrap:balance}
#letoile-projects .artdeco-back-step h4{letter-spacing:normal}
#letoile-projects .artdeco-back-step p,#letoile-projects .project-entry-copy>p{orphans:2;widows:2;text-wrap:pretty}
#letoile-projects .preview-metric span{overflow-wrap:normal;word-break:normal}
#letoile-projects #mea-preview-details .preview-metrics-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
#letoile-projects #mea-preview-details .preview-metric strong{font-size:clamp(28px,3vw,38px)}
#letoile-projects #mea-preview-details .preview-metric span{white-space:normal;font-size:13px;line-height:1.4}

/* Unified reverse cards: the approved TCFS hierarchy, with natural content height. */
#letoile-projects .artdeco-flip-back{padding:24px}
#letoile-projects .artdeco-back-step{margin:0 0 24px}
#letoile-projects .artdeco-back-step:last-of-type{margin-bottom:0}
#letoile-projects .artdeco-back-step h4{margin:0 0 6px}
#letoile-projects .artdeco-flip-back .preview-metrics{margin:24px 0 0;padding:0}
#letoile-projects .preview-metric{border:0;border-radius:0;background:transparent}
#letoile-projects .artdeco-flip-back .preview-metrics h4{margin:0 0 16px;line-height:1.35}
#letoile-projects .preview-summary .preview-metric strong{font-size:clamp(24px,2.2vw,32px);white-space:normal;overflow-wrap:normal;line-height:1.2}
#letoile-projects .preview-summary .preview-metric span{font-size:13px;line-height:1.45}
@media(max-width:650px){
 #letoile-projects .artdeco-flip-back{padding:24px}
 #letoile-projects .artdeco-back-step{margin-bottom:24px}
}
