/* V683: desktop portraits grow within available rail space; mobile geometry preserved. */

.trio-section{padding:0;scroll-margin-top:110px}
.trio-heading{margin-bottom:clamp(40px,3.8vw,56px)}
.trio-marker{display:flex;align-items:center;gap:20px;margin-bottom:29px;color:var(--proto-muted);font:700 11px/1.3 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:.15em;text-transform:uppercase}
.trio-marker span{width:28px;height:1px;background:var(--proto-cyan)}
.trio-heading h2{width:calc(var(--prototype-editorial) - var(--prototype-counterpoint));margin:0 auto 0 calc((100% - var(--prototype-editorial))/2 + var(--prototype-counterpoint));color:var(--proto-ink);font:700 var(--prototype-section-title)/.92 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.058em}
.trio-composition{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 384px;align-items:start;gap:32px;width:calc(var(--prototype-editorial) - var(--prototype-counterpoint));margin:0 auto 0 calc((100% - var(--prototype-editorial))/2 + var(--prototype-counterpoint))}
.trio-people{align-self:end;display:grid;gap:28px}
.trio-person h3{margin:0 0 15px;color:var(--presentation-heading);font-size:clamp(25px,2.1vw,32px);line-height:1;letter-spacing:-.035em}
.trio-role{margin:0 0 18px;color:var(--presentation-text);font-size:13px;line-height:1.35;letter-spacing:.08em;text-transform:uppercase}
.trio-description{margin:0;color:var(--presentation-text);font-size:17px;line-height:1.55}
.trio-polaroids{position:relative;width:384px;aspect-ratio:384/236;margin-bottom:0;isolation:isolate}
.trio-loading .trio-portraits{visibility:hidden}
.trio-portraits{display:flex;gap:2.604167%;align-items:center;width:100%}
.trio-card{position:relative;display:block;flex:0 0 31.597222%;filter:drop-shadow(0 3px 7px #00000014)}
.trio-card:first-child{transform:translateY(4.72%) rotate(-2deg)}
.trio-card:nth-child(2){transform:translateY(-2.695%) rotate(1.5deg)}
.trio-card:focus-visible{outline:2px solid var(--proto-cyan);outline-offset:5px}
.trio-portrait{display:block;width:100%;height:auto}
@media(max-width:863px){
.trio-heading h2,.trio-composition{width:var(--prototype-editorial);margin-inline:auto}
.trio-composition{grid-template-columns:1fr;gap:44px}
.trio-polaroids{grid-row:1;justify-self:center;width:min(384px,calc(100% - 8px));margin-bottom:0}
.trio-heading{margin-bottom:40px}
.trio-people{gap:28px}
}

body[data-lpfg-page=presentation] #metiers{--lpfg-section-start-y:clamp(40px,4vw,58px)}
/* Films is a standalone section; method inherits the existing section rhythm. */
body[data-lpfg-page=presentation] #metiers{--lpfg-section-start-y:var(--lpfg-rhythm-section-y)}

@media(min-width:864px){.trio-composition{min-height:438px}.trio-polaroids{width:calc(384px + var(--trio-growth,0px));margin-left:calc(var(--trio-growth,0px) / 2)}}

.trio-card:nth-child(3){transform:translate(var(--trio-third-x,0px),5.3%) rotate(4deg)}
.trio-switch{padding:0;border:0;background:none;border-radius:0;cursor:pointer;color:inherit;font:inherit;line-height:0;appearance:none}
/* One source-pixel overlap covers the old portrait up to its frame edge. */
.guest-window{position:absolute;inset:7.889344% 5.410448% 24.590164% 5.410448%;display:block;overflow:hidden;background:#292d34}
.guest-current{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center;transform:none}
body[data-lpfg-page=presentation] .lpfg-arrival-complete .trio-switch .hero-photo-optics{opacity:0;background:transparent}
body[data-lpfg-page=presentation] .lpfg-arrival-complete .trio-switch.is-switching .hero-photo-optics{opacity:1}
body[data-lpfg-page=presentation] .trio-switch .hero-photo-optics{inset:0;transform:none}
body[data-lpfg-page=presentation] .trio-switch .hero-photo-focus-layer,
body[data-lpfg-page=presentation] .lpfg-arrival-complete .trio-switch.is-pointer-glitch .hero-photo-focus-layer{inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transform:none}
body[data-lpfg-page=presentation] .trio-switch.is-switching .hero-photo-focus-layer--sharp{clip-path:inset(0 0 calc(100% - var(--guest-progress,0%)) 0)}
@media(hover:none),(pointer:coarse){
body[data-lpfg-page=presentation] .trio-switch.is-switching .hero-photo-focus-layer--cyan{opacity:.5;transform:none;clip-path:inset(calc(var(--guest-progress) - 2%) 0 calc(98% - var(--guest-progress)) 0)}
body[data-lpfg-page=presentation] .trio-switch.is-switching .hero-photo-focus-layer--magenta{opacity:.4;transform:none;clip-path:inset(calc(var(--guest-progress) - 1%) 0 calc(97% - var(--guest-progress)) 0)}
}

/* Third portrait: preserve arrival opacity and scan masks, never transform image content. */
@keyframes lpfg-focus-soft-fixed-v687{
  0%,18%{opacity:1;}
  42%{opacity:.58;}
  54%{opacity:.73;}
  70%{opacity:.22;}
  82%,100%{opacity:0;}
}
body[data-lpfg-page=presentation] .lpfg-arrival-playing .trio-switch .hero-photo-focus-layer--soft{animation-name:lpfg-focus-soft-fixed-v687}
@keyframes lpfg-band-cyan-jeremy-fixed-v687{
  0%{opacity:0;clip-path:polygon(0 34.3%,100% 35.9%,100% 41.3%,0 39.7%)}
  8%{opacity:.62}
  21%{opacity:.48;clip-path:polygon(0 34.75%,100% 36.35%,100% 40.85%,0 39.25%)}
  43%{opacity:.68;clip-path:polygon(0 36.48%,100% 38.08%,100% 42.13%,0 40.52%)}
  57%{opacity:.36;clip-path:polygon(0 36.92%,100% 38.52%,100% 41.68%,0 40.08%)}
  74%{opacity:.72;clip-path:polygon(0 38.92%,100% 40.52%,100% 43.68%,0 42.08%)}
  84%{opacity:.38;clip-path:polygon(0 39.65%,100% 41.25%,100% 43.95%,0 42.35%)}
  100%{opacity:0;clip-path:polygon(0 41.38%,100% 42.98%,100% 45.23%,0 43.63%)}
}
body[data-lpfg-page=presentation] .lpfg-arrival-playing .trio-switch .hero-photo-focus-layer--cyan{animation-name:lpfg-band-cyan-jeremy-fixed-v687}
@keyframes lpfg-band-magenta-jeremy-fixed-v687{
  0%{opacity:0;clip-path:polygon(0 64.4%,100% 66%,100% 73.2%,0 71.6%)}
  10%{opacity:.60}
  34%{opacity:.32;clip-path:polygon(0 65.58%,100% 67.17%,100% 73.02%,0 71.42%)}
  61%{opacity:.68;clip-path:polygon(0 67.75%,100% 69.35%,100% 73.85%,0 72.25%)}
  82%{opacity:.35;clip-path:polygon(0 69.92%,100% 71.52%,100% 74.67%,0 73.08%)}
  100%{opacity:0;clip-path:polygon(0 71.65%,100% 73.25%,100% 75.95%,0 74.35%)}
}
body[data-lpfg-page=presentation] .lpfg-arrival-playing .trio-switch .hero-photo-focus-layer--magenta{animation-name:lpfg-band-magenta-jeremy-fixed-v687}

/* Desktop retains one composition. Touch devices keep their existing responsive layout. */
@media(hover:hover) and (pointer:fine){
body:is(.lpfg-public-home,.lpfg-editor-page) .trio-heading h2, body:is(.lpfg-public-home,.lpfg-editor-page) .trio-composition{zoom:var(--trio-fixed-scale,1);width:752px;margin-left:var(--trio-fixed-left,0px);margin-right:0}
body:is(.lpfg-public-home,.lpfg-editor-page) .trio-heading h2{font-size:82px}
body:is(.lpfg-public-home,.lpfg-editor-page) .trio-heading .trio-caption{zoom:var(--trio-fixed-scale,1);width:752px;margin-left:var(--trio-fixed-left,0px);margin-right:0}
body:is(.lpfg-public-home,.lpfg-editor-page) .trio-heading{margin-bottom:calc(54.72px * var(--trio-fixed-scale,1))}
body:is(.lpfg-public-home,.lpfg-editor-page) .trio-composition{grid-template-columns:336px 384px;gap:32px;min-height:438px}
body:is(.lpfg-public-home,.lpfg-editor-page) .trio-person h3{font-size:30.24px}
body:is(.lpfg-public-home,.lpfg-editor-page) .trio-polaroids{grid-row:auto;justify-self:auto;width:422.4px;margin-left:19.2px;margin-top:30.4713px}
}

.trio-heading .trio-caption{width:calc(var(--prototype-editorial) - var(--prototype-counterpoint));margin:30px auto 0 calc((100% - var(--prototype-editorial))/2 + var(--prototype-counterpoint));color:var(--proto-ink);font-size:34px;line-height:1.3;font-weight:400;letter-spacing:-.01em}
body:not(.lpfg-presentation-editing) .trio-heading .trio-caption:empty{display:none}
body:not(.lpfg-presentation-editing) .trio-description[data-lpfg-editor-key="vous-description-v609"]:empty{display:none}
.lpfg-direct-dirty{color:#8a3c24;font-weight:600}
.lpfg-direct-navigation{display:flex;gap:6px;margin-top:8px}
.lpfg-direct-navigation button{border:1px solid currentColor;background:transparent;color:inherit;border-radius:2px;padding:4px 8px;font:inherit;font-size:12px;cursor:pointer}
.lpfg-direct-navigation button:disabled{opacity:.45;cursor:default}

/* V716: editing owns the method text interaction; the public carousel must not
   turn text selection into step navigation. Layout mode makes selectable
   blocks visible before a handle is used. */
body.lpfg-editor-method-open #metiers .acts--linear.is-carousel-ready > .act{display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;transform:none!important}
body.lpfg-editor-mode-text [data-lpfg-resizable="true"]{outline:0!important;background:transparent!important}
body.lpfg-editor-mode-text [data-lpfg-resizable="true"]:hover{outline:1px solid rgba(35,55,64,.22)!important;outline-offset:5px;background:rgba(35,55,64,.02)}
body.lpfg-editor-mode-text [data-lpfg-resizable="true"].lpfg-direct-active{outline:2px solid var(--proto-cyan,#18b8d4)!important;outline-offset:5px;background:rgba(24,184,212,.045)}
body.lpfg-editor-mode-layout [data-lpfg-resizable="true"]{outline:1px dashed rgba(35,55,64,.28)!important;outline-offset:7px;background:rgba(35,55,64,.018)}
body.lpfg-editor-mode-layout [data-lpfg-resizable="true"]:hover,
body.lpfg-editor-mode-layout [data-lpfg-resizable="true"].lpfg-layout-active{outline:2px solid var(--proto-cyan,#18b8d4)!important;outline-offset:8px;background:rgba(24,184,212,.06)}

/* V718: the editor is a quiet control dock, not a second navigation bar. */
body[data-lpfg-page="presentation"] .lpfg-direct-workspace{display:grid;grid-template-columns:132px minmax(0,1fr) auto;gap:0;width:min(820px,calc(100vw - 24px));padding:0;border:1px solid rgba(35,55,64,.22);border-radius:8px;background:rgba(255,255,253,.98);box-shadow:0 14px 40px rgba(20,35,42,.13);backdrop-filter:blur(12px)}
body[data-lpfg-page="presentation"] .lpfg-direct-modes{display:grid;align-content:center;gap:0;padding:6px;border:0;border-right:1px solid rgba(35,55,64,.16);background:transparent}
body[data-lpfg-page="presentation"] .lpfg-direct-modes button{min-height:42px;padding:0 10px;border:0;border-radius:4px;background:transparent;color:rgba(35,55,64,.62);font:650 11px/1 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:.05em;white-space:nowrap;cursor:pointer}
body[data-lpfg-page="presentation"] .lpfg-direct-modes button[aria-pressed="true"]{border-bottom-color:var(--proto-cyan,#18b8d4);background:rgba(24,184,212,.055);color:var(--proto-ink,#17272e);box-shadow:none}
body[data-lpfg-page="presentation"] .lpfg-direct-copy{padding:13px 20px;gap:3px}
body[data-lpfg-page="presentation"] .lpfg-direct-copy strong{font-size:14px;line-height:1.25;font-weight:650}
body[data-lpfg-page="presentation"] .lpfg-direct-copy small{font-size:12px;line-height:1.35}
body[data-lpfg-page="presentation"] .lpfg-direct-navigation{gap:14px;margin-top:7px}
body[data-lpfg-page="presentation"] .lpfg-direct-navigation button{padding:0;border:0;border-bottom:1px solid transparent;border-radius:0;background:transparent;color:rgba(35,55,64,.7);font:650 10px/1.3 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
body[data-lpfg-page="presentation"] .lpfg-direct-navigation button:hover:not(:disabled),body[data-lpfg-page="presentation"] .lpfg-direct-navigation button:focus-visible{border-bottom-color:var(--proto-cyan,#18b8d4);color:var(--proto-ink,#17272e)}
body[data-lpfg-page="presentation"] .lpfg-direct-actions{align-self:stretch;gap:0;border-left:1px solid rgba(35,55,64,.16)}
body[data-lpfg-page="presentation"] .lpfg-direct-actions .lpfg-editor-action{min-height:68px;padding:0 17px;border:0!important;border-radius:0!important;background:transparent!important;color:var(--proto-ink,#17272e)!important;font-size:10px!important;letter-spacing:.11em!important}
body[data-lpfg-page="presentation"] .lpfg-direct-actions .lpfg-editor-action:hover,body[data-lpfg-page="presentation"] .lpfg-direct-actions .lpfg-editor-action:focus-visible{background:rgba(35,55,64,.055)!important}
body[data-lpfg-page="presentation"] .lpfg-direct-actions .lpfg-editor-action--primary{background:var(--proto-ink,#17272e)!important;color:#fff!important}
body[data-lpfg-page="presentation"] .lpfg-direct-actions .lpfg-editor-action--primary:hover,body[data-lpfg-page="presentation"] .lpfg-direct-actions .lpfg-editor-action--primary:focus-visible{background:#2c424b!important}
body[data-lpfg-page="presentation"] .lpfg-direct-actions .lpfg-editor-studio{text-decoration:none;display:flex;align-items:center;justify-content:center}
@media(max-width:720px){body[data-lpfg-page="presentation"] .lpfg-direct-workspace{grid-template-columns:1fr;width:calc(100vw - 20px)}body[data-lpfg-page="presentation"] .lpfg-direct-modes{grid-template-columns:1fr 1fr;border-right:0;border-bottom:1px solid rgba(35,55,64,.16)}body[data-lpfg-page="presentation"] .lpfg-direct-modes button{min-height:44px;flex:1}body[data-lpfg-page="presentation"] .lpfg-direct-actions{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid rgba(35,55,64,.16);border-left:0}body[data-lpfg-page="presentation"] .lpfg-direct-actions .lpfg-editor-action{min-height:48px;flex:1}}
@media(hover:none),(pointer:coarse){
  .trio-heading .trio-caption{width:calc(var(--prototype-editorial) - var(--prototype-counterpoint));margin:24px auto 0 calc((100% - var(--prototype-editorial))/2 + var(--prototype-counterpoint));font-size:clamp(22px,5.2vw,34px)}
}
@media(max-width:863px) and (hover:none),(max-width:863px) and (pointer:coarse){
  .trio-heading .trio-caption{width:var(--prototype-editorial);margin-inline:auto}
}
