/* Hallmark · design.md · photographic commemorative exhibition.
   Scope: P1 composition and entry. Historical media and P2 remain unchanged.
   Internal critique P4 H4 E4 S5 R5 V4; not a competition score. */
.opening {
  --opening-hero-title:clamp(3rem,16vw,4.5rem);
  --opening-hero-number:clamp(5.25rem,28vw,7.75rem);
  --opening-hero-head:var(--cover-red-deep);
  --opening-hero-fade:#812a2300;
  --opening-hero-shade:#211b16f5;
  --opening-hero-transparent:#211b1600;
  --opening-hero-landscape-head:#812a23e8;
  --opening-hero-landscape-shade:#211b16d9;
  --opening-hero-foot-start:70%;
  padding:calc(28px + var(--opening-safe-top)) var(--cover-gutter) calc(12px + var(--opening-safe-bottom));
  grid-template-rows:auto minmax(0,1fr) auto auto;
  gap:0;
}
.opening:after {
  background:linear-gradient(180deg,var(--opening-hero-head) 0%,var(--opening-hero-head) 28%,var(--opening-hero-fade) 43%,var(--opening-hero-transparent) 48%,var(--opening-hero-shade) var(--opening-hero-foot-start),var(--opening-hero-shade) 100%);
}
.opening .opening-landscape img {height:100%;transform:none;object-position:52% 55%;}
.opening .cover-masthead {gap:var(--exhibit-lg);max-width:680px;width:100%;}
.opening .cover-commemoration {font-size:.8125rem;letter-spacing:.08em;line-height:1.6;}
.opening .cover-identity {display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--exhibit-lg);}
.opening .cover-name {font:700 var(--opening-hero-title)/1.08 var(--entry-heading);letter-spacing:0;white-space:normal;}
.opening .cover-name>span {display:block;}
.opening .cover-anniversary {align-self:center;padding:0;}
.opening .cover-anniversary>.anniversary-label {display:grid;justify-items:start;gap:var(--exhibit-sm);}
.opening .cover-anniversary strong {font-size:var(--opening-hero-number);line-height:.94;letter-spacing:-.065em;}
.opening .cover-anniversary .anniversary-label>span {font-size:.9375rem;line-height:1.4;letter-spacing:.2em;padding-inline-start:5px;}
.opening .opening-invitation {gap:var(--exhibit-lg);padding:0 0 var(--exhibit-xl);}
.opening .cover-question {font-size:clamp(1.5rem,7.4vw,2rem);line-height:1.3;}
.opening .cover-question .question-first {font:400 .8125em/1.5 var(--cover-body);margin-bottom:var(--exhibit-sm);}
.opening .cover-question .question-second {white-space:normal;text-wrap:balance;}
.opening .opening-context {font-size:.875rem;line-height:1.6;}
.opening button.opening-enter {width:100%;min-height:56px;font-size:1rem;font-weight:600;border-radius:var(--radius-control);}
.opening .opening-credit,.opening .opening-credit button {font-size:.75rem;line-height:1.5;}
.opening .opening-credit {gap:var(--exhibit-sm);}
@media(max-height:700px) and (orientation:portrait) {
  .opening {--opening-hero-title:clamp(2.75rem,15vw,3.75rem);--opening-hero-number:clamp(4.75rem,26vw,6.25rem);--opening-hero-foot-start:63%;padding-top:calc(20px + var(--opening-safe-top));}
  .opening .cover-masthead {gap:var(--exhibit-sm);}
  .opening .opening-invitation {gap:12px;padding-bottom:var(--exhibit-lg);}
  .opening .cover-question {font-size:clamp(1.375rem,7.3vw,1.75rem);}
  .opening .cover-question .question-first {margin-bottom:4px;}
  .opening button.opening-enter {min-height:52px;}
}
@media(min-width:650px) and (orientation:portrait) {
  .opening {--opening-hero-title:5.5rem;--opening-hero-number:9.5rem;}
  .opening .cover-commemoration {font-size:1rem;}
  .opening .cover-question {font-size:2.5rem;}
  .opening .opening-context {font-size:1rem;}
}
@media(orientation:landscape) and (max-height:600px) {
  .opening {grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;column-gap:32px;--opening-hero-title:3rem;--opening-hero-number:5.25rem;}
  .opening .cover-masthead {grid-column:1;grid-row:1;align-self:center;gap:var(--exhibit-lg);}
  .opening .opening-invitation {grid-column:2;grid-row:1;align-self:center;padding:0;gap:12px;}
  .opening .opening-credit {grid-column:1/-1;grid-row:2;}
  .opening:after {background:linear-gradient(90deg,var(--opening-hero-landscape-head),var(--opening-hero-landscape-shade));}
  .opening .cover-question {font-size:1.5rem;}
  .opening button.opening-enter {min-height:52px;}
}
@media(prefers-reduced-motion:reduce) {
  .opening.is-active .cover-masthead,.opening.is-active .opening-invitation {animation:none;}
}

/* One left edge; the anniversary carries the same height as the two title lines. */
.opening .cover-masthead{display:grid;justify-items:start;text-align:left}
.opening .cover-commemoration{margin:0;padding:0;text-align:left}
.opening .cover-identity{width:100%;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:20px}
.opening .cover-name{margin:0;text-align:left;transform:translateX(-.035em)}
.opening .cover-anniversary{align-self:stretch;display:grid;align-items:stretch;margin:0;text-align:left}
.opening .cover-anniversary>.anniversary-label{height:100%;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:0}
.opening .cover-anniversary strong{font-size:calc(var(--opening-hero-title)*1.94);line-height:.88;letter-spacing:-.065em}
.opening .cover-anniversary .anniversary-label>span{font-size:calc(var(--opening-hero-title)*.32);line-height:1.2;letter-spacing:.13em;padding:0 0 0 .22em}
