.photo-page.photo-home .hero{isolation:isolate;overflow:visible}.photo-page.photo-home .hero-copy{min-width:0}.photo-page.photo-home .hero-art{min-width:0;overflow:visible}.photo-page.photo-home .hero-card{z-index:2}.photo-page.photo-home .hero-art:before,.photo-page.photo-home .hero-art:after{pointer-events:none}.photo-page.photo-home .home-photos{position:relative;z-index:1}.photo-page.photo-home .portal-grid{position:relative;z-index:1}.photo-page.photo-home .live-strip{position:relative;z-index:1}.photo-page.photo-home .corner-photo{z-index:3;pointer-events:none}.photo-page.photo-home .topbar{position:sticky;z-index:30}.photo-page.photo-home main{position:relative;z-index:1}.photo-page.photo-home .section{position:relative}.photo-page.photo-home .hero{padding-top:90px;padding-bottom:90px}.photo-page.photo-home .hero-art{height:520px}.photo-page.photo-home .hero-copy{padding-right:20px}.photo-page.photo-home .photo-strip-title{margin-bottom:28px}.photo-page.photo-home .portal-grid{padding-top:70px}.photo-page.photo-home .portal-card{min-width:0}.photo-page.photo-home .live-card{min-width:0}

/* HOMEPAGE ALIGNMENT PATCH — keeps the entire composition inside the viewport */
.photo-page.photo-home main{width:100%;overflow:clip}
.photo-page.photo-home .hero{width:100%;max-width:1240px;margin-inline:auto;min-height:calc(100svh - 74px);height:auto;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(24px,4vw,72px);padding-top:clamp(54px,7vh,90px);padding-bottom:clamp(54px,7vh,90px)}
.photo-page.photo-home .hero-copy{width:100%;max-width:620px;align-self:center;padding-right:0}
.photo-page.photo-home .hero h1{max-width:100%;font-size:clamp(72px,9.5vw,138px);line-height:.84;margin:0}
.photo-page.photo-home .hero .lead{max-width:560px;margin:28px 0 26px}
.photo-page.photo-home .hero-art{width:100%;height:520px;min-height:420px;display:grid;place-items:center;align-self:center;position:relative}
.photo-page.photo-home .hero-card{position:relative;left:auto;top:auto;right:auto;bottom:auto;transform:rotate(6deg);transform-origin:center;flex:0 0 auto}
.photo-page.photo-home .orb-a{max-width:390px;max-height:390px;width:min(390px,72%);height:min(390px,72%)}
.photo-page.photo-home .orb-b{max-width:520px;width:90%;height:180px}
.photo-page.photo-home .hero-art:before,.photo-page.photo-home .hero-art:after{z-index:0}
.photo-page.photo-home .hero-card{z-index:2}
.photo-page.photo-home main>.section:not(.hero){max-width:1240px;margin-inline:auto}
.photo-page.photo-home .photo-strip-title{align-items:end;min-width:0}
.photo-page.photo-home .photo-strip-title>div{min-width:0}
.photo-page.photo-home .photo-strip-title h2{font-size:clamp(48px,7vw,88px);line-height:.86}
.photo-page.photo-home .home-photos{width:100%;grid-template-columns:2fr 1fr 1fr;grid-template-rows:minmax(220px,260px) minmax(150px,180px);gap:10px}
.photo-page.photo-home .home-shot{min-width:0;min-height:0}
.photo-page.photo-home .home-shot img{max-width:100%}
.photo-page.photo-home .portal-grid{width:100%;padding-top:50px;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.photo-page.photo-home .portal-card{width:100%;min-width:0;min-height:190px}
.photo-page.photo-home .live-strip{padding-top:55px;padding-bottom:55px}
.photo-page.photo-home .live-card{width:100%;min-width:0}
.photo-page.photo-home .footer{width:100%;max-width:1368px}

/* DESKTOP LAUNCH POLISH — strict grid alignment for the homepage */
@media(min-width:901px){
  .photo-page.photo-home .topbar{padding-inline:48px}
  .photo-page.photo-home .topbar nav{gap:18px}
  .photo-page.photo-home .topbar nav a{font-size:10px;letter-spacing:.1em}
  .photo-page.photo-home .corner-photo{display:none}
  .photo-page.photo-home .hero{max-width:1240px;grid-template-columns:minmax(0,1fr) minmax(440px,.86fr);gap:52px;padding:72px 56px 82px;min-height:calc(100vh - 74px)}
  .photo-page.photo-home .hero-copy{max-width:590px}
  .photo-page.photo-home .hero h1{font-size:clamp(88px,8.2vw,128px)}
  .photo-page.photo-home .hero .lead{max-width:520px;margin:24px 0}
  .photo-page.photo-home .hero-art{height:500px;min-height:500px}
  .photo-page.photo-home .home-photos{grid-template-columns:2fr 1fr 1fr;grid-template-rows:260px 180px}
  .photo-page.photo-home .home-shot:first-child{grid-row:span 2}
  .photo-page.photo-home .photo-credit{margin-top:12px}
  .photo-page.photo-home .portal-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding-top:48px}
  .photo-page.photo-home .portal-card{min-height:176px;padding:22px}
  .photo-page.photo-home .portal-card strong{font-size:24px}
  .photo-page.photo-home .live-strip{padding:52px 56px}
}

@media(max-width:1100px){
  .photo-page.photo-home .hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;padding-top:65px;padding-bottom:65px}
  .photo-page.photo-home .hero-art{height:460px;min-height:380px}
  .photo-page.photo-home .hero h1{font-size:clamp(68px,9vw,112px)}
  .photo-page.photo-home .corner-photo{opacity:.55}
  .photo-page.photo-home .portal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
  .photo-page.photo-home .hero{grid-template-columns:1fr;min-height:auto;padding-top:52px;padding-bottom:65px;gap:12px}
  .photo-page.photo-home .hero-art{height:330px;min-height:330px;order:-1}
  .photo-page.photo-home .hero-copy{max-width:680px}
  .photo-page.photo-home .hero h1{font-size:clamp(70px,13vw,118px)}
  .photo-page.photo-home .hero .lead{font-size:16px}
}
@media(max-width:800px){
  .photo-page.photo-home .hero{padding-top:42px;padding-bottom:55px}
  .photo-page.photo-home .hero-art{height:300px;min-height:300px}
  .photo-page.photo-home .hero-card{width:190px;height:270px}
  .photo-page.photo-home .hero-card strong{font-size:50px}
  .photo-page.photo-home .portal-grid{padding-top:38px;grid-template-columns:1fr 1fr}
  .photo-page.photo-home .live-strip{padding-top:40px;padding-bottom:40px}
  .photo-page.photo-home .live-card{grid-template-columns:48px 1fr;gap:14px}
  .photo-page.photo-home .live-card .text-btn{grid-column:2}
  .photo-page.photo-home .home-photos{grid-template-columns:1fr 1fr;grid-template-rows:210px 150px 150px}
  .photo-page.photo-home .home-shot:first-child{grid-column:span 2;grid-row:auto}
}
@media(max-width:600px){
  .photo-page.photo-home .hero-art{height:250px;min-height:250px}
  .photo-page.photo-home .hero-card{width:165px;height:235px}
  .photo-page.photo-home .hero-card strong{font-size:45px}
  .photo-page.photo-home .hero h1{font-size:clamp(62px,18vw,92px)}
  .photo-page.photo-home .hero .lead{font-size:15px;line-height:1.5;margin:20px 0}
  .photo-page.photo-home .portal-grid{grid-template-columns:1fr;padding-top:32px}
  .photo-page.photo-home .portal-card{min-height:150px;padding:20px}
  .photo-page.photo-home .home-photos{grid-template-columns:1fr;grid-template-rows:250px 170px 170px 170px 170px}
  .photo-page.photo-home .home-shot:first-child{grid-column:auto}
  .photo-page.photo-home .live-card{grid-template-columns:44px 1fr;padding:18px}
  .photo-page.photo-home .live-card .text-btn{grid-column:auto}
  .photo-page.photo-home .photo-strip-title{align-items:start;flex-direction:column;gap:18px}
  .photo-page.photo-home .photo-strip-title .btn{width:100%}
  .photo-page.photo-home .corner-photo{display:none}
}
@media(prefers-reduced-motion:reduce){.photo-page.photo-home .hero-card{animation:none}}

/* MOBILE HOME DENSITY PATCH */
@media(max-width:600px){
  .photo-page.photo-home .hero{padding-top:24px;padding-bottom:34px}
  .photo-page.photo-home .hero-art{height:205px;min-height:205px}
  .photo-page.photo-home .hero-card{width:140px;height:200px;padding:16px}
  .photo-page.photo-home .hero-card strong{font-size:38px;left:16px;bottom:28px}
  .photo-page.photo-home .hero-card i{right:16px;top:16px;font-size:11px}
  .photo-page.photo-home .hero h1{font-size:clamp(54px,16vw,76px)}
  .photo-page.photo-home .hero .lead{font-size:13px;margin:14px 0}
  .photo-page.photo-home .hero-actions{gap:8px}
  .photo-page.photo-home .hero-actions .btn{min-height:44px;padding:0 14px}
  .photo-page.photo-home .viral-proof{margin-top:14px;gap:8px;font-size:7px}
  .photo-page.photo-home .photo-strip-title{margin-bottom:18px}
  .photo-page.photo-home .photo-strip-title h2{font-size:clamp(40px,12vw,58px)}
  .photo-page.photo-home .home-photos{grid-template-rows:190px 135px 135px 135px 135px;gap:7px}
  .photo-page.photo-home .home-shot figcaption{padding:24px 10px 9px;font-size:10px}
  .photo-page.photo-home .portal-grid{padding-top:24px;gap:8px}
  .photo-page.photo-home .portal-card{min-height:120px;padding:15px}
  .photo-page.photo-home .portal-card span{font-size:25px}
  .photo-page.photo-home .portal-card strong{font-size:20px}
  .photo-page.photo-home .portal-card small{font-size:8px}
  .photo-page.photo-home .live-strip{padding-top:28px;padding-bottom:28px}
  .photo-page.photo-home .live-card{grid-template-columns:34px 1fr;padding:13px;gap:10px}
  .photo-page.photo-home .live-icon{width:32px;height:32px;font-size:15px}
  .photo-page.photo-home .live-icon svg{width:16px;height:16px}
  .photo-page.photo-home .live-card h3{font-size:19px}
  .photo-page.photo-home .live-card p:last-child{font-size:8px}
}