@import url("/kozgoproextralight/stylesheet.css");
/* Home-only differences; base typography, header and footer come from site-build. */
.home-page{--home-w:min(92vw,800px)}
.home-page .site-name{font-weight:400}
.home-hero{width:var(--home-w);max-width:100%;margin-inline:auto;text-align:center}
.home-hero figure{margin:0}
.home-photo{display:block;width:100%;aspect-ratio:3/2;line-height:0}
.home-photo img{display:block;width:100%;height:100%;object-fit:scale-down}
.home-hero figcaption{margin-top:8px;font-size:12px;line-height:1.65}
.home-hero .project-name,.home-hero .project-subtitle{display:block;font-size:12px;font-weight:400}
.home-hero .project-name{color:#222}
.home-hero .project-subtitle{color:#767676}
.home-page .introduction{width:calc(var(--home-w) * 2 / 3);max-width:100%;margin:48px auto 0;font-size:13px;line-height:1.9}
.home-page .introduction p{margin:0;text-indent:1em}
.home-page .introduction p+p{margin-top:1.9em}
.home-address{margin:48px 4vw 0;font-size:12px;line-height:1.9;color:#767676;font-style:normal;text-align:left}
.home-address .footer-addresses{display:block}
.home-address .footer-addr:after{content:"";display:block}
@media(min-width:1030px){
 .home-page{--home-w:min(92vw,800px,max(0px,calc((100dvh - 261.6px) * 3 / 2)))}
 .home-page .site-header{height:110px}
}
@media(max-width:1029px){.home-page .introduction{width:80%}}
@media(max-width:600px){
 .home-page{--home-w:calc(100vw - 48px)}
 .home-page .introduction{width:100%;margin-top:32px}
 .home-address{margin:40px 24px 0}
}

/* H1 fix1: no visible addresses; contact details remain in the original JSON-LD. */
.home-photo{display:flex;align-items:center;justify-content:center}
.home-photo img{width:auto;height:auto;max-width:100%;max-height:100%;border:1px solid #ddd;padding:0}
.home-page .introduction{width:min(40em,var(--home-w));max-width:100%}
.home-page .introduction p{margin:0;text-indent:0}
.home-page .introduction p+p{margin-top:0}
@media(min-width:1030px) and (min-height:744px){
 .home-page main{margin-top:24px}
 .home-page .introduction{margin-top:12px}
}
/* H1 fix2: shared work-stage calculation; centered group on eligible wide screens. */
.home-page .introduction{font-family:"kozgoproextralight",Arial,"Hiragino Kaku Gothic ProN",sans-serif;font-size:12px;font-weight:400;line-height:1.9;color:#666;width:max-content;max-width:min(100%,var(--home-w));margin-inline:auto}
.home-size-reference{position:fixed;left:0;top:0;visibility:hidden;pointer-events:none;z-index:-1;
 --flickr-total:calc(var(--flickr-gap) + var(--flickr-h));
 --all-h:calc(var(--pt-h) - var(--tail-gap) + var(--flickr-total) + var(--nav-gap) + var(--nav-h) + var(--footer-gap) + var(--footer-h));
 width:var(--w);height:var(--h)}
@media(min-width:1030px) and (min-height:744px){
 .home-page{min-height:100dvh;display:flex;flex-direction:column}
 .home-page>.site-header,.home-page>.site-footer{flex:none}
 .home-page main{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;margin:0 4vw}
 .home-page .home-group{width:100%;flex:none}
 .home-page>.site-footer{margin-top:0}
}
/* H1 fix3: 800px maximum; two extra body lines between Japanese title and copy. */
html[lang=ja] .home-page .introduction{margin-top:calc(48px + 3.8em)}
@media(max-width:600px){html[lang=ja] .home-page .introduction{margin-top:32px}}
@media(min-width:1030px) and (min-height:744px){html[lang=ja] .home-page .introduction{margin-top:calc(12px + 3.8em)}}

/* English title-to-video spacing: three 12px / 1.9 text lines. */
html[lang=en] .home-hero .project-subtitle{margin-top:5.7em}

/* Japanese wide Home: preserve breathing room even when the page must grow. */
@media(min-width:1030px) and (min-height:744px){
 html[lang=ja] .home-page main{flex:1 0 auto;padding-block:24px}
}

/* English introduction: readable measure and room above and below the group. */
html[lang=en] .home-page .introduction{font-family:Arial,sans-serif;width:40em;max-width:min(100%,var(--home-w));margin-top:32px}
@media(min-width:1030px) and (min-height:744px){
 html[lang=en] .home-page main{flex:1 0 auto;padding-block:24px}
}
