/* Bounded migration improvements; original composition and typography remain authoritative. */
:root{--migration-ink:#173f35;--migration-paper:#f8f7f3;--migration-ease:cubic-bezier(.22,1,.36,1)}
html{scroll-padding-top:110px}body{overflow-x:clip}::selection{background:#c7d0bb;color:#132d26}a,button,input,textarea,select{touch-action:manipulation}a{text-underline-offset:.2em}button,input,textarea,select{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #547d66;outline-offset:5px}img{color:inherit}button:disabled{cursor:not-allowed;opacity:.55}[hidden]{display:none!important}
.migration-form-status{font-size:15px!important;line-height:1.6!important;padding:18px 0;border-top:1px solid #b2c0b4;color:#173f35!important;grid-column:1/-1}
.migration-menu{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;border:0;margin:0;background:#f8f7f3;color:#173f35;padding:30px 26px;z-index:100000}.migration-menu::backdrop{background:#173f35}.migration-menu header{display:flex;align-items:center;justify-content:space-between;padding-bottom:40px}.migration-menu header p{margin:0;font-size:17px}.migration-menu button{min-width:48px;min-height:48px;border:0;background:transparent;color:inherit;cursor:pointer;font-size:27px}.migration-menu nav{display:grid;gap:0}.migration-menu nav a{font-family:"Playfair Display",Georgia,serif;font-size:clamp(36px,8vw,64px);line-height:1.2;padding:22px 0;border-bottom:1px solid #d1d8cc;color:inherit;text-decoration:none}.migration-menu nav a:hover{padding-left:12px;color:#4c6954;transition:padding .3s var(--migration-ease)}.migration-menu footer{margin-top:40px;font-size:18px;line-height:1.6}.migration-menu footer a{color:inherit}
.migration-image-loading{background:#dce1d6;animation:migration-shimmer 1.8s ease-in-out infinite}.migration-image-ready{animation:none!important}.migration-image-error{animation:none!important}
@keyframes migration-shimmer{50%{background-color:#edf0e8}}
.sjh-cookie-consent[aria-hidden=true]{visibility:hidden;pointer-events:none}.sjh-cookie-consent[aria-hidden=false]{visibility:visible;pointer-events:auto;opacity:1!important;display:flex!important}
.migration-media-placeholder{padding:25px;background:#173f35;color:#fff}
@media(max-width:700px){html{scroll-padding-top:82px}.sjhf-nav.sjhf21-nav{display:none!important}.sjhm-menu-toggle{display:flex!important;min-height:44px;min-width:54px;align-items:center;justify-content:center}.sjh-contact-form input:not([type=checkbox]),.sjh-contact-form textarea,.sjh-contact-form select{font-size:16px!important}.migration-menu a{min-height:44px}body{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.migration-image-loading{animation:none}}

/* Correct legacy content-box overflow while keeping the same page composition. */
.sjh-flagship-site *,.sjh-flagship-site *::before,.sjh-flagship-site *::after{box-sizing:border-box}
@media(max-width:700px){.event-video-content{width:100%;height:100%;box-sizing:border-box}.event-single-title{width:auto;max-width:100%}.sjh-contact-form,.sjh-contact-form>*{min-width:0}.event-filter-tabs{scrollbar-width:thin}}
/* Restore contrast for the approved CTA on its dark group panel. */
body.sjh-flagship-site a.sjh-about-group-cta,
body.sjh-flagship-site a.sjh-about-group-cta:is(:hover,:focus-visible){color:#f8f7f3!important;border-bottom-color:currentColor!important;opacity:1!important}
body.sjh-flagship-site a.sjh-about-group-cta:focus-visible{outline-color:#f8f7f3}
