/* MICHAEL CUNO PHOTOGRAPHY — v0.12m / UI finish.
   Added after v0.12l. No source photo or underlying series data modified.
   Wordmark is the type-size upper bound for ALL public-page text. */

/* Keep the elegant side-by-side menu, but every item must remain discoverable. */
.site-head .menu-btn { display:inline-flex!important; align-items:center; }
.menu-sections .menu-list .t,
body .menu-sections .menu-list .t {
  font:500 clamp(19px,1.42vw,21px)/1.32 var(--sans)!important;
  letter-spacing:-.013em;
}
.menu-sections .menu-list a {padding:clamp(8px,1.3svh,13px) 0}
.menu-info-main {display:flex; flex-direction:column;}
.menu-info-main a {
  font:500 clamp(16px,1.23vw,18px)/1.3 var(--sans);
  letter-spacing:-.015em; padding:10px 0;
}
.menu-info-label{margin-bottom:10px}
.menu-info-main a:hover,.menu-info-main a:focus-visible {
  text-decoration:underline; text-underline-offset:4px;
}
/* Prevent oversized decorative numerals behind the photography. */
body[data-page="advertising"] #view .gn {display:none}

/* Same quiet hierarchy on every public page, not only the five info pages. */
html body .pagehead h1,
html body .series-head h1,
html body[data-page="music"] .music-intro-main h1,
html body[data-page="music"] .music-project-head h1,
html body .strip-head h2 {
  font-size:clamp(19px,1.42vw,21px)!important;
  line-height:1.22!important;
}
html body .card .lab .t,
html body .shelf .lab .t,
html body .row .t,
html body[data-page="music"] .music-section-head h2,
html body[data-page="music"] .music-tile-titleline strong,
html body .vw-title,
html body .story-nav-next-title,
html body .nextseries a.big {
  font-size:clamp(15px,1.18vw,18px)!important;
  line-height:1.3!important;
}
/* Decorative icons such as arrows are controls, not display typography. */

/* Remove visual double-row space left by the deleted slideshow header. */
body[data-page="advertising"] #view > .series-head {
  grid-template-areas:"back back" "title meta";
}
body[data-page="advertising"] #view > .flow > .sc:first-child:is(.k-solo,.k-small,.k-page,.k-grand) {
  align-items:center; /* first photograph should not hang in the left corner */
  padding:0;
}
/* Keep the first portrait on screen with its heading on a normal desktop. */
body[data-page="advertising"] #view > .flow > .sc:first-child:is(.k-solo,.k-page,.k-grand) .ph {
  --h:min(68svh,740px);
}

/* Quiet reveal: scroll remains free, photographs do not zoom or drift. */
body:is([data-page="editorial"],[data-page="advertising"]) #view .rv {
  transform:translateY(11px);
  transition:opacity .68s ease,transform .7s var(--ease);
}
body:is([data-page="editorial"],[data-page="advertising"]) #view .rv.in {
  transform:none;
}

/* Home: full-frame bear and companion, same top alignment, no auto-crop. */
body[data-page="home"] .hy-scene.pair {
  align-items:flex-start;
  padding-top:clamp(10px,2.3svh,24px);
}
body[data-page="home"] .hy-scene.pair .hy-photo {
  transform:none!important;
  align-items:flex-start;
  height:84%;
}
body[data-page="home"] .hy-scene.pair .hy-photo img {
  object-fit:contain!important;
  object-position:center top;
}
body[data-page="home"] .hy-scene {
  transition:opacity .65s ease,transform .7s var(--ease);
}
/* On tall phones a landscape photo needs to sit close to the controls,
   rather than floating halfway up a portrait viewport. */
@media(max-width:760px){
  /* Absolute flex scenes must not expand beyond the phone viewport. */
  body[data-page="home"] .hy-scene {width:calc(100% - 24px);max-width:calc(100% - 24px);box-sizing:border-box}
  body[data-page="home"] .hy-scene .hy-photo {max-width:100%;min-width:0}
  body .menu-sections .menu-list .t{font-size:20px!important}
  .menu-sections{gap:20px}
  .menu-sections .menu-list a{padding:7px 0}
  .menu-info-main{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}
  .menu-info-main a{font-size:16px;line-height:1.32;padding:9px 0}
  .menu-info{padding-top:16px}
  .hy-scene.is-landscape .hy-photo img{object-position:center bottom!important}
  .hy-scene.pair{align-items:center!important;padding-top:0!important}
  .hy-scene.pair .hy-photo{height:46%!important;align-items:center!important}
  .hy-scene.pair .hy-photo img{object-position:center center!important}
  html body .pagehead h1,
  html body .series-head h1,
  html body[data-page="music"] .music-intro-main h1,
  html body[data-page="music"] .music-project-head h1,
  html body .strip-head h2{font-size:19px!important}
  html body .row .t,
  html body .card .lab .t,
  html body .shelf .lab .t{font-size:16px!important}
}
@media(prefers-reduced-motion:reduce){
  body:is([data-page="editorial"],[data-page="advertising"]) #view .rv {opacity:1!important;transform:none!important;transition:none!important}
  body[data-page="home"] .hy-scene {transition:none!important;transform:none!important}
}
