/* One photographic opening. The person is always the complete original JPEG,
   in its original color. Generated pixels extend only the surrounding wall
   and the sofa beyond the original frame; they never replace Javad. */
.home-page .site-header{position:absolute;top:0;left:54%;right:var(--gutter);width:auto;background:transparent;color:#171511;border:0;z-index:6}
.home-page .site-header .nav.wrap{width:100%;max-width:none;min-height:0;margin:0;padding:20px 0 10px;display:block;border:0}
.home-page .nav-links{font-family:Vazirmatn,Tahoma,sans-serif;font-weight:500;font-size:clamp(12px,.95vw,15px);line-height:1.8;display:flex;flex-wrap:wrap;justify-content:flex-start;gap:2px 23px;margin:0;padding:0;width:100%}
.home-page .nav-links a{min-height:44px;padding:8px 0;color:#171511;white-space:nowrap}
.home-page .nav .download-nav{color:#171511;background:transparent;border:0;border-bottom:1px solid currentColor;border-radius:0;padding:8px 0;min-height:44px}
.home-page .nav-links a:hover,.home-page .nav .download-nav:hover{color:#171511;background:transparent;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}
.home-page .site-header a:focus-visible,.wall-masthead a:focus-visible{outline:3px solid #171511;outline-offset:5px;background:#ffd700;color:#171511}
.wall-masthead{--portrait-size:min(50vw,calc(100svh - var(--gold-rule)));position:relative;isolation:isolate;display:grid;grid-template-columns:52% 48%;direction:ltr;min-height:100svh;background:#e8dccd;color:#171511;overflow:hidden;border-bottom:var(--gold-rule) solid var(--accent)}
.wall-paper{position:absolute;inset:0;z-index:-3;background:#e8dccd url('/assets/javad-wall-overhead-color.png') center bottom / cover no-repeat;pointer-events:none}
/* A 2:1 scene and the square source share the same scale and bottom edge.
   Everything left of 45% in the generated scene is excluded, including
   the generated person. The original's rightmost 10% is wall and sofa only. */
.wall-scene{position:absolute;left:0;bottom:0;width:calc(var(--portrait-size) * 2);height:var(--portrait-size);background:url('/assets/javad-wall-wide-color.png') left bottom / 100% 100% no-repeat;clip-path:inset(0 0 0 45%);z-index:-2;pointer-events:none;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 5%),linear-gradient(to right,#000 92%,transparent);mask-image:linear-gradient(to bottom,transparent,#000 5%),linear-gradient(to right,#000 92%,transparent);-webkit-mask-composite:source-in;mask-composite:intersect}
.wall-portrait{position:absolute;left:0;bottom:0;width:var(--portrait-size);margin:0;z-index:-1}
.wall-portrait:after{content:'';position:absolute;inset:0;background:url('/assets/javad-wall-repair.png') center / 100% 100% no-repeat;pointer-events:none}
.wall-portrait img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;-webkit-mask-image:linear-gradient(to right,#000 90%,transparent),linear-gradient(to bottom,transparent,#000 2.5%);mask-image:linear-gradient(to right,#000 90%,transparent),linear-gradient(to bottom,transparent,#000 2.5%);-webkit-mask-composite:source-in;mask-composite:intersect}
.wall-copy{grid-column:2;align-self:center;min-width:0;padding:120px var(--gutter) 32px 24px;font-family:Vazirmatn,Tahoma,sans-serif;font-weight:400;line-height:1.8;position:relative;z-index:4;direction:rtl;color:#171511}
.wall-copy p{margin:0}
.wall-overline{font-size:clamp(15px,1.3vw,21px);font-weight:500;line-height:1.6}
.wall-word{font-family:Vazirmatn,Tahoma,sans-serif;font-size:clamp(106px,min(12.4vw,21svh),218px);font-weight:900;line-height:1.2;white-space:nowrap;margin:2px 0 10px;letter-spacing:normal}
.wall-subtitle,.wall-dates{font-size:clamp(25px,2.1vw,36px);line-height:1.6}
.wall-subtitle strong{font-weight:650}
.wall-copy .wall-dates{margin-top:4px;font-weight:400}
.wall-copy .wall-intro{font-size:clamp(13px,1vw,17px);line-height:1.85;margin-top:16px;max-width:520px}
.home-page .opening-portrait{width:min(100%,281px);max-width:281px;justify-self:center}
@media(max-width:1150px) and (min-width:961px){
 .home-page .nav-links{gap:0 18px;font-size:12px}
 .wall-copy{padding-top:116px;padding-bottom:25px}
 .wall-word{font-size:12vw}
 .wall-subtitle,.wall-dates{font-size:25px}
}
@media(max-width:960px){
 .home-page .site-header{left:var(--gutter);right:var(--gutter)}
 .home-page .site-header .nav.wrap{padding-top:14px;padding-bottom:0}
 .home-page .nav-links{font-size:14px;gap:0 25px;justify-content:center}
 .home-page .nav .download-nav{display:inline-flex}
 .wall-masthead{--portrait-size:100vw;display:flex;flex-direction:column;direction:rtl;min-height:100svh}
 .wall-paper{display:none}
 .wall-scene{display:none}
 .wall-copy{order:0;flex:1;width:100%;align-self:stretch;text-align:center;padding:85px var(--gutter) 16px}
 /* Extend only the original's empty top 60 of 853 rows. Reflecting that
    strip puts source row zero at the join with the complete original photo.
    The wall follows the copy's real height, with no separately tinted seam. */
 .wall-copy:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:url('/assets/javad.jpeg') left top / 100% 1421.666667% no-repeat;transform:scaleY(-1)}
 .wall-overline{font-size:16px}
 .wall-word{font-size:clamp(100px,25vw,180px);line-height:1.15;margin:3px 0 10px}
 .wall-subtitle,.wall-dates{font-size:clamp(23px,3.7vw,31px);line-height:1.55}
 .wall-subtitle br{display:block}
 .wall-copy .wall-dates{margin-top:3px}
 .wall-copy .wall-intro{font-size:14px;line-height:1.8;margin:13px auto 0;max-width:520px}
 .wall-portrait{order:1;position:relative;left:auto;bottom:auto;width:100%;margin:0;flex:none;align-self:stretch}
 .wall-portrait img{-webkit-mask-image:none;mask-image:none}
}
@media(max-width:580px){
 .home-page .site-header{left:22px;right:22px}
 .home-page .nav-links{font-size:12px;gap:0 12px}
 .home-page .nav-links a{min-height:44px;font-size:12px;padding:8px 0}
 .wall-copy{padding:122px 22px 12px}
 .wall-overline{font-size:14px}
 .wall-word{font-size:clamp(86px,25.5vw,140px);line-height:1.16;margin:3px 0 7px}
 .wall-subtitle,.wall-dates{font-size:22px;line-height:1.55}
 .wall-copy .wall-intro{font-size:13px;line-height:1.8;margin-top:12px}
 .home-page .opening-portrait{width:min(81%,281px);margin-inline:auto}
}
@media(forced-colors:active){.wall-paper,.wall-scene,.wall-copy:before{display:none}.wall-masthead{background:Canvas;color:CanvasText}.wall-copy,.home-page .site-header,.home-page .nav-links a,.home-page .nav .download-nav{color:CanvasText}.wall-portrait img{-webkit-mask-image:none;mask-image:none}}
@media print{.wall-paper,.wall-scene,.wall-copy:before{display:none}.wall-masthead{display:grid;grid-template-columns:45% 55%;min-height:0;background:white;color:black;border:0;overflow:visible}.wall-copy{grid-column:2;text-align:right;padding:10px 0 10px 25px}.wall-word{font-size:54pt}.wall-overline{font-size:12pt}.wall-subtitle,.wall-dates{font-size:17pt}.wall-copy .wall-intro{font-size:10pt}.wall-portrait{position:relative;grid-column:1;grid-row:1;width:100%;align-self:end}.wall-portrait img{-webkit-mask-image:none;mask-image:none}.opening h2{font-size:24pt}}
