/* Hi-Caliber Autostyling V6.6.5 — client-facing QA + continuity layer */
:root{--hc65-green:#78d392;--hc65-green-soft:#b9f2c8;--hc65-ink:#050706;--hc65-line:rgba(255,255,255,.10);--hc65-ease:cubic-bezier(.2,.72,.22,1)}
html,body{max-width:100%;overflow-x:clip}
body{min-height:100dvh}
img{display:block;max-width:100%;height:auto}
:focus-visible{outline:2px solid var(--hc65-green)!important;outline-offset:3px!important}

/* Mobile menu should be labels, not numbered navigation. */
.mobile-panel{counter-reset:none!important}
.mobile-panel a{padding-left:0!important}
.mobile-panel a::before{content:none!important;display:none!important;counter-increment:none!important}

/* Prevent touch/mobile scroll choreography from fighting the user's finger. */
@media(max-width:1050px){
  .site-header.hc-header-hidden{transform:none!important}
  .immersive-hero-media img,.shepherds-immersive-max .immersive-page-media img{transform:scale(1.045)!important;will-change:auto!important;transition:none!important}
  .section{scroll-margin-top:72px}
}

/* Stable section rhythm across the client-facing site. */
@media(min-width:721px){.section{padding-top:clamp(72px,7vw,108px);padding-bottom:clamp(72px,7vw,108px)}}
@media(max-width:720px){
  .section{padding-top:58px!important;padding-bottom:58px!important}
  .shell{width:min(100% - 32px,1180px)!important}
  .page-hero{padding-top:94px!important;padding-bottom:54px!important}
  .page-hero h1{line-height:1.01!important}
  .service-chapter{padding-block:58px!important}
}

/* Gallery surfaces are intentionally visual-only. */
.hc-new-work-card>span,.hc-memory-item>figcaption{display:none!important}
.hc-new-work-card,.hc-memory-item{overflow:hidden}
.hc-new-work-card img,.hc-memory-item img{width:100%;height:100%;object-fit:cover}
.hc-memory-grid{align-items:start}

/* Service context rail stays useful without development-like numbering. */
.service-context-rail small{display:none!important}

/* Reduce costly paint effects on touch devices while preserving depth on desktop. */
@media(hover:none),(pointer:coarse){
  .media-frame::after,.depth-reactive::after{display:none!important}
  .depth-reactive{transform:none!important}
}

/* Keep sticky chapter navigation calm and predictable. */
.service-index .shell{overscroll-behavior-inline:contain;scroll-behavior:smooth}

/* Consistent button hit areas and typography. */
.btn,.nav-cta,.mobile-dock a{min-height:46px}
.btn{line-height:1.2;text-align:center}
@media(max-width:720px){.btn{min-height:50px;padding-inline:18px!important}.actions{gap:10px!important}}

/* Prevent footer/dock overlap on short mobile screens. */
@media(max-width:1050px){.site-footer{padding-bottom:max(104px,calc(82px + env(safe-area-inset-bottom)))!important}}

/* V6.6.5 scroll-stability pass: keep primary navigation anchored and remove transform-driven page jitter. */
.site-header.hc-header-hidden{transform:none!important}
.immersive-hero-media img,.shepherds-immersive-max .immersive-page-media img{transform:scale(1.045)!important;will-change:auto!important;transition:none!important}
