/* OC mark visibility guard: show the whole metallic crest, even on narrow phones.
   The image and the alpha-masked glint must use identical geometry. */
.hero-art {
  min-width:0;
  padding-inline:clamp(14px,3vw,44px);
}
.oc-emblem-wrap {
  width:min(82%,465px);
  max-width:calc(100% - 20px);
  min-width:0;
  aspect-ratio:1;
  flex:0 0 auto;
  overflow:visible!important;
  isolation:isolate;
}
.oc-emblem {
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:scale(.90)!important;
  transform-origin:center!important;
}
.oc-logo-shine {
  inset:5%!important;
  width:90%!important;
  height:90%!important;
  -webkit-mask-size:100% 100%!important;
  mask-size:100% 100%!important;
  -webkit-mask-position:center!important;
  mask-position:center!important;
}
.hero-signature {
  width:100%;
  max-width:100%;
  min-width:0;
}
.hero-signature strong {
  max-width:100%;
  font-size:clamp(2rem,4.6vw,5.15rem);
  letter-spacing:.08em;
}
@media (max-width:760px) {
  .hero-art { padding:26px 16px 30px; min-height:430px; }
  .oc-emblem-wrap {
    width:min(78vw,310px);
    max-width:calc(100% - 16px);
  }
  .hero-signature strong {
    font-size:clamp(2rem,7.25vw,3rem);
    letter-spacing:.055em;
  }
  .hero-signature em { font-size:clamp(3rem,10.4vw,3.9rem); }
  .hero-signature small { letter-spacing:.27em; }
}
@media (max-width:360px) {
  .hero-art { min-height:400px; }
  .oc-emblem-wrap { width:min(76vw,268px); }
  .hero-signature strong { font-size:clamp(1.85rem,7vw,2.5rem); }
  .hero-signature small { font-size:.48rem; letter-spacing:.18em; }
}