/* Hero mark (2026-09-09): one object, centred. Everything else in the hero is gone. */
#hero .hero_inner.ptech-hero-inner { display: grid; grid-template-rows: 1fr; grid-template-columns: minmax(0, 1fr); place-items: center; padding: 6rem 2rem 4rem; }
.ptech-hero-mark { position: relative; width: min(100%, 1180px); height: min(58svh, 520px); pointer-events: none; }
.ptech-hero-mark canvas { position: absolute; inset: 0; width: 100% !important; height: 100% !important; opacity: 0; transition: opacity .6s ease; }
/* Flat fallback until (or unless) the 3D mark is up. */
.ptech-hero-name { margin: 0; font-family: "Soehne Dvf", sans-serif; font-size: clamp(40px, 7.4vw, 104px); line-height: 1; letter-spacing: 0; text-transform: uppercase; text-align: center; color: var(--ptech-bone, #ECECE8); }
.ptech-hero-name span { display: block; }
.ptech-hero-name-wrap { position: absolute; inset: 0; display: grid; place-items: center; }
.has-depth-mark .ptech-hero-name { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
/* Header wordmark stays out of the hero; it returns once the dive is over. */
body.ptech-in-hero .header-logo__wrapper { opacity: 0; pointer-events: none; }
.header-logo__wrapper { transition: opacity .5s ease; }
@media (max-width: 767px) {
  #hero .hero_inner.ptech-hero-inner { padding: 5rem 1rem 3rem; }
  .ptech-hero-mark { height: min(46svh, 360px); }
}
