/* 2026-10-22 refinement: content proportions rather than decorative rails.
   The approved scene, title occlusion and interactive rings are untouched. */
body.editorial .album-directory { max-width:1240px; }
body.editorial .directory-grid { grid-template-columns:repeat(12,minmax(0,1fr)); gap:72px 36px; align-items:start; }
body.editorial .directory-grid .directory-album:nth-child(n) { grid-column:1/span 5; width:100%; max-width:440px; margin:0; }
body.editorial .directory-grid .directory-album:nth-child(even) { grid-column:8/span 5; margin-top:96px; }
body.editorial .directory-grid .directory-album:nth-child(3) { grid-column:2/span 5; }
body.editorial .directory-grid .directory-album:nth-child(5) { grid-column:1/span 6; max-width:510px; }
body.editorial .directory-grid img { width:100%; height:auto; max-height:560px; object-fit:contain; object-position:left bottom; }
body.editorial .directory-album>span { font-size:clamp(25px,2.3vw,32px); line-height:1.15; }
body.editorial .album-cover { width:min(70%,780px); margin-bottom:64px; }
body.editorial .album-cover img { max-height:650px; }
body.editorial .album-photo-grid { gap:56px 7%; }
body.editorial .album-photo { margin:0; cursor:default; }
body.editorial .album-photo img { max-height:740px; object-fit:contain; }
body.editorial .album-photo-number { font-variant-numeric:tabular-nums; }
body.editorial .es-page .es-photo-spreads { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:48px 32px; align-items:start; }
body.editorial .es-page .es-photo-spreads .es-frame { width:100%; padding:0; margin:0; grid-column:1/span 6; }
body.editorial .es-page .es-photo-spreads .es-frame:nth-child(even) { grid-column:8/span 5; margin-top:64px; }
body.editorial .es-page .es-frame img { max-height:560px; width:100%; object-fit:contain; object-position:left bottom; }
body.editorial .es-page .es-hero-spread { grid-template-columns:repeat(12,minmax(0,1fr)); gap:32px; }
body.editorial .es-page .es-hero-spread>.es-cover { grid-column:1/span 8; }
body.editorial .es-page .es-hero-spread>.es-cover-note { grid-column:9/-1; min-width:0; }
body.editorial .es-page .es-hero--portrait .es-cover { grid-column:2/span 5; max-width:400px; }
body.editorial .es-page .es-hero--portrait .es-cover-note { grid-column:8/-1; }
body.editorial .es-page .es-cover img { max-height:570px; object-fit:contain; }
body.editorial .es-page .es-hero { padding-bottom:60px; }
body.editorial .es-page .es-selection { padding-block:56px; }
body.editorial .es-page .es-section-top { margin-bottom:38px; }
body.editorial :is(.es-hero-heading,.album-page-heading,.studio-heading) h1 { overflow-wrap:normal; }
body.editorial .es-page :is(.es-service-index a,.album-return a) { min-height:44px; }
/* Remove ornamental long rails; hierarchy comes from real column alignment. */
body.editorial :is(.es-approach,.es-brief,.es-process,.es-faq,.studio-process,.studio-faq)::before,
body.editorial .es-page :is(.es-approach,.es-brief,.es-process,.es-faq)>:last-child::before { content:none; }
@media(min-width:1600px) { body.editorial .directory-grid { gap:88px 48px; } }
@media(min-width:761px) and (max-width:1100px) {
 body.editorial .es-page .es-hero-spread>.es-cover { grid-column:1/span 7; }
 body.editorial .es-page .es-hero-spread>.es-cover-note { grid-column:8/-1; }
 body.editorial .es-page .es-hero-heading h1 { font-size:clamp(48px,6vw,68px); }
 body.editorial .directory-grid .directory-album:nth-child(n) { grid-column:1/span 6; max-width:380px; }
 body.editorial .directory-grid .directory-album:nth-child(even) { grid-column:8/span 5; }
}
@media(max-width:760px) {
 body.editorial { --ruled-width:100%; --ruled-inset:clamp(20px,5vw,32px); --ruled-gutter:20px; }
 body.editorial :is(.album-directory,.album-page) { padding-top:104px; padding-bottom:56px; }
 body.editorial .album-page-heading { margin-bottom:32px; }
 body.editorial .album-page-heading h1 { font-size:clamp(40px,10.8vw,64px); }
 body.editorial .directory-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:40px; }
 body.editorial .directory-grid .directory-album:nth-child(n) { grid-column:1; width:100%; max-width:430px; margin:0; justify-self:start; }
 body.editorial .directory-grid .directory-album:nth-child(even) { width:90%; justify-self:end; }
 body.editorial .directory-grid img { max-height:500px; }
 body.editorial .album-cover { width:100%; margin-bottom:38px; }
 body.editorial .album-photo-grid { grid-template-columns:minmax(0,1fr); gap:32px; }
 body.editorial .album-page .album-photo:nth-child(n) { width:100%; margin:0; }
 body.editorial .album-photo img { max-height:600px; }
 body.editorial .es-page .es-hero { padding-top:104px; padding-bottom:40px; }
 body.editorial .es-page .es-hero-heading { display:block; margin-bottom:24px; }
 body.editorial .es-page .es-hero-heading h1 { font-size:clamp(40px,10.7vw,64px); margin-top:16px; }
 body.editorial .es-page .es-hero-spread, body.editorial .es-page .es-hero--portrait .es-hero-spread { display:flex; flex-direction:column; gap:24px; }
 body.editorial .es-page .es-hero-spread>:is(.es-cover,.es-cover-note) { grid-column:auto; width:100%; max-width:none; margin:0; padding:0; }
 body.editorial .es-page .es-hero--portrait .es-cover { max-width:360px; align-self:center; }
 body.editorial .es-page .es-cover img { max-height:490px; }
 body.editorial .es-page .es-intro { font-size:16px; line-height:1.65; }
 body.editorial .es-page :is(.es-approach,.es-brief,.es-process,.es-faq,.es-motion,.es-section-top) { display:grid; grid-template-columns:minmax(0,1fr); gap:24px; }
 body.editorial .es-page :is(.es-approach,.es-brief,.es-process,.es-faq,.es-motion) { padding-block:40px; }
 body.editorial .es-page :is(.es-approach,.es-brief,.es-process,.es-faq)>:last-child { grid-column:1; padding-top:0; }
 body.editorial .es-page :is(h2) { font-size:clamp(36px,9.5vw,54px); }
 body.editorial .es-page .es-selection { padding-block:40px; }
 body.editorial .es-page .es-photo-spreads { display:grid; grid-template-columns:minmax(0,1fr); gap:30px; }
 body.editorial .es-page .es-photo-spreads .es-frame:nth-child(n) { grid-column:1; width:100%; max-width:420px; margin:0; padding:0; justify-self:start; }
 body.editorial .es-page .es-photo-spreads .es-frame:nth-child(even) { width:88%; justify-self:end; }
 body.editorial .es-page .es-frame img { max-height:460px; }
 body.editorial .es-page .es-service-index>div { flex-wrap:wrap; gap:8px 20px; }
 body.editorial .es-page .es-service-index a { font-size:14px; }
 body.editorial .es-page .es-film--portrait { max-width:290px; }
 body.editorial .es-page .contact-inner { display:grid; grid-template-columns:minmax(0,1fr); gap:28px; }
 body.editorial .es-page .contact-inner>:is(.contact-copy,.inquiry) { grid-column:1; }
 body.editorial .es-page .inquiry { grid-template-columns:minmax(0,1fr); }
 body.editorial .es-page :is(.es-cover-note,.es-frame,.es-section-copy,.es-process-list,.es-faq-list) { min-width:0; }
}
@media(max-width:360px) {
 body.editorial .es-page .es-hero-heading h1 { font-size:38px; }
 body.editorial .album-page-heading h1 { font-size:38px; }
 body.editorial .es-page :is(.es-cover,.es-frame) figcaption { flex-wrap:wrap; gap:4px 12px; }
}
/* Approved rings keep their geometry and input behavior; only visual bleed
   beyond the physical section/viewport is clipped (no scroll container). */
body.scene-home #collections,
body.scene-home #social-video { overflow-x:clip; }
