.pg-house { overflow: clip; }
.pg-house__opening { min-height: 100svh; padding-top: 20rem; padding-bottom: 4rem; display: grid; grid-template-rows: auto 1fr auto auto; align-items: start; }
.pg-house__worlds { display: flex; gap: 2rem; justify-content: flex-end; }
.pg-house__worlds a:hover { text-decoration: underline; text-underline-offset: .4rem; }
.pg-house__opening .gz-display { align-self: center; font-size: clamp(7rem, 17vw, 26rem); line-height: .82; max-width: 12ch; }
.pg-house__opening .gz-lead { justify-self: end; }
.pg-house__opening > .gz-btn:last-child { justify-self: end; margin-top: 4rem; }
.pg-house__film { position: relative; height: min(90svh, 90rem); padding-block: 2rem; }
.pg-house__film-frame { height: 100%; overflow: hidden; }
.pg-house__film .gz-ph { width: 100%; height: 100%; object-fit: cover; }
.pg-house__film .gz-label-illustrative { position: absolute; right: 4rem; bottom: 4rem; background: #000b1c; color: #fff4e3; padding: .6rem 1rem; }
.pg-house__intro, .pg-house__story-intro, .pg-house__sourcing-intro, .pg-house__contact-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(4rem, 9vw, 16rem); padding-block: clamp(10rem, 16vw, 24rem); }
.pg-house__intro-copy, .pg-house__story-copy, .pg-house__sourcing-text { display: grid; align-content: center; justify-items: start; gap: 3rem; }
.pg-house__intro-copy .gz-title, .pg-house__story-copy .gz-title, .pg-house__sourcing-text .gz-title { max-width: 19ch; font-size: clamp(3rem, 4.3vw, 7rem); }
.pg-house__intro-copy > p:not(.gz-micro), .pg-house__story-copy > p:not(.gz-micro), .pg-house__sourcing-text > p:not(.gz-micro) { max-width: 53ch; font-size: 1.6rem; }
.pg-house__intro-visual, .pg-house__sourcing-visual, .pg-house__story-sticky, .pg-house__contact-photo { position: relative; min-height: 65rem; overflow: hidden; }
.pg-house__intro-visual .gz-ph, .pg-house__sourcing-visual .gz-ph, .pg-house__story-sticky .gz-ph, .pg-house__contact-photo .gz-ph { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.pg-house__intro-visual .gz-label-illustrative, .pg-house__sourcing-visual .gz-label-illustrative, .pg-house__story-sticky .gz-label-illustrative, .pg-house__contact-photo .gz-label-illustrative { position: absolute; bottom: 2rem; left: 2rem; background: #000b1c; color: #fff4e3; padding: .5rem 1rem; }
.pg-house__places, .pg-house__journal { padding-block: 10rem 18rem; }
.pg-house__section-head { display: grid; grid-template-columns: 1fr auto; gap: 2rem; align-items: end; margin-bottom: 6rem; }
.pg-house__section-head > .gz-micro { grid-column: 1 / -1; }
.pg-house__section-head .gz-title { font-size: clamp(4rem, 8vw, 11rem); line-height: 1; }
.pg-house__place-list { list-style: none; padding: 0; margin: 0; }
.pg-house__place-list li { border-top: 1px solid var(--gz-line); }
.pg-house__place-list li:last-child { border-bottom: 1px solid var(--gz-line); }
.pg-house__place-list a { display: grid; grid-template-columns: 4rem minmax(0, 1fr) minmax(20rem, .6fr) 3rem; gap: 2rem; align-items: center; padding: 2.6rem 0; }
.pg-house__place-list strong { font: 400 clamp(3rem, 5vw, 7rem)/1 var(--gz-font-display); text-transform: uppercase; }
.pg-house__place-list em { font-style: normal; color: var(--gz-caption); }
.pg-house__place-list b { font-weight: 400; font-size: 2rem; transform: rotate(45deg); transition: transform .6s var(--gz-ease-makhno); }
.pg-house__place-list a:hover b { transform: rotate(0); }
.pg-house__cover { position: relative; height: 100svh; }
.pg-house__cover-image, .pg-house__cover-image .gz-ph { width: 100%; height: 100%; object-fit: cover; }
.pg-house__cover > .gz-label-illustrative { position: absolute; left: 2rem; bottom: 2rem; }
.gz-plate-dark { color: #fff4e3; text-shadow: 0 1px 2px #000b1c; }
.pg-house__story-hero { position: relative; height: 100svh; }
.pg-house__story-image, .pg-house__story-image .gz-ph { width: 100%; height: 100%; object-fit: cover; }
.pg-house__story-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, #000b1c7a, transparent 35%, #000b1c80); }
.pg-house__story-hero-content { position: absolute; inset: 0; z-index: 1; padding-top: 15rem; padding-bottom: 3rem; display: grid; align-content: space-between; justify-items: start; color: #fff4e3; }
.pg-house__story-hero-content .gz-display { font-size: clamp(7rem, 16vw, 25rem); }
.pg-house__story-hero > .gz-label-illustrative { position: absolute; z-index: 1; right: 2rem; bottom: 3rem; }
.pg-house__story-sticky { position: sticky; top: 8rem; height: calc(100svh - 16rem); }
.pg-house__story-copy { gap: 4rem; padding-block: 8rem; }
.pg-house__manifesto { list-style: none; padding: 7rem 0 0; margin: 0; font: 400 clamp(3rem, 5vw, 7rem)/1.3 var(--gz-font-display); text-transform: uppercase; }
.pg-house__story-cta { position: relative; display: block; height: 85svh; }
.pg-house__story-cta > div, .pg-house__story-cta .gz-ph { width: 100%; height: 100%; object-fit: cover; }
.pg-house__story-cta > span { position: absolute; inset: 0; display: grid; align-content: center; gap: 2rem; padding: 4rem; background: #000b1c66; }
.pg-house__story-cta strong { max-width: 15ch; font-size: clamp(4rem, 8vw, 13rem); }
.pg-house__story-cta em { justify-self: start; font-style: normal; }
.pg-house__story-end { min-height: 70svh; padding-block: 12rem; display: grid; align-content: center; justify-items: start; gap: 3rem; }
.pg-house__story-end .gz-title { font-size: clamp(4rem, 7vw, 10rem); max-width: 15ch; }
.pg-house__steps { display: flex; flex-wrap: wrap; gap: 1rem; list-style: none; padding: 0; margin: 3rem 0 0; counter-reset: steps; }
.pg-house__steps li { border: 1px solid var(--gz-line); border-radius: 50%; width: 11rem; aspect-ratio: 1; display: grid; place-items: center; text-align: center; padding: 1rem; text-transform: uppercase; font-size: 1rem; }
.pg-house__project { display: grid; grid-template-columns: 1fr 1fr; gap: 8rem; padding-block: 10rem 16rem; }
.pg-house__project > div:first-child { display: grid; align-content: start; gap: 3rem; }
.pg-house__project .gz-display { max-width: 12ch; font-size: clamp(4rem, 6vw, 9rem); }
.pg-house__contact-grid > div { display: grid; align-content: start; gap: 2rem; }
.pg-house__contact-photo { margin-top: 4rem; min-height: 58rem; }
@media (max-width: 767px) {
  .pg-house__opening { min-height: 80svh; padding-top: 14rem; }
  .pg-house__opening .gz-display { font-size: clamp(6rem, 21vw, 10rem); }
  .pg-house__film { height: 60svh; }
  .pg-house__intro, .pg-house__story-intro, .pg-house__sourcing-intro, .pg-house__contact-grid, .pg-house__project { grid-template-columns: 1fr; gap: 5rem; padding-block: 8rem; }
  .pg-house__intro-visual, .pg-house__sourcing-visual, .pg-house__story-sticky, .pg-house__contact-photo { min-height: 42rem; }
  .pg-house__story-sticky { position: relative; top: auto; height: 55svh; }
  .pg-house__place-list a { grid-template-columns: 2.5rem 1fr 2rem; gap: 1rem; }
  .pg-house__place-list em { display: none; }
  .pg-house__section-head { grid-template-columns: 1fr; }
  .pg-house__places, .pg-house__journal { padding-block: 8rem 11rem; }
  .pg-house__cover { height: 65svh; }
  .pg-house__story-hero-content .gz-display { font-size: 20vw; }
}
