/* SJH family chrome. Brand assets and content remain site-specific. */
:root{--sjhf-paper:#faf8f4;--sjhf-ink:#252621;--sjhf-dark:#20231f;--sjhf-brand:#123f34;--sjhf-gutter:clamp(24px,5.5vw,96px);--sjhf-header:88px;--sjhf-logo:58px;--sjhf-ease:cubic-bezier(.22,1,.36,1)}
.sjhf-header,.sjhf-footer,.sjhf-mobile,.sjhf-backdrop{box-sizing:border-box;font-family:'DM Sans',Arial,sans-serif;letter-spacing:normal}
.sjhf-header *,.sjhf-footer *,.sjhf-mobile *{box-sizing:border-box}
.sjhf-header{position:fixed;inset:0 0 auto;z-index:1000;background:var(--sjhf-paper);color:var(--sjhf-ink);height:var(--sjhf-header);padding:0 var(--sjhf-gutter);box-shadow:none;isolation:isolate}
.sjhf-bar{height:100%;max-width:1440px;margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #25262126;gap:28px}
.sjhf-logo{display:block;flex:none;width:var(--sjhf-logo);height:var(--sjhf-logo);line-height:0;border-radius:50%;transition:transform .5s var(--sjhf-ease)}
.sjhf-logo:is(:hover,:focus-visible){transform:scale(1.035)}
.sjhf-logo img,.sjhf-logo svg{display:block!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:contain;mix-blend-mode:multiply}
.sjhf-nav{display:flex;align-items:center;gap:clamp(22px,2vw,38px)}
.sjhf-nav>a,.sjhf-nav>button{position:relative;display:inline-flex;align-items:center;gap:11px;min-height:54px;padding:16px 0;border:0;border-radius:0;background:transparent;color:inherit;text-decoration:none;font:500 16px/1.4 'DM Sans',Arial,sans-serif;white-space:nowrap;cursor:pointer}
.sjhf-nav>a:after,.sjhf-nav>button:after{content:'';position:absolute;bottom:9px;inset-inline:0;height:1px;background:var(--sjhf-brand);transform:scaleX(0);transform-origin:right;transition:transform .35s var(--sjhf-ease)}
.sjhf-nav>:is(:hover,:focus-visible,[aria-expanded=true]):after{transform:scaleX(1);transform-origin:left}
.sjhf-plus{position:relative;width:15px;height:15px;flex:none;color:var(--sjhf-brand)}
.sjhf-plus:before,.sjhf-plus:after{content:'';position:absolute;left:0;top:7px;width:15px;height:1px;background:currentColor;transition:transform .35s var(--sjhf-ease)}
.sjhf-plus:after{transform:rotate(90deg)}
[aria-expanded=true]>.sjhf-plus:after{transform:rotate(0)}
.sjhf-menu-button{display:none;border:0;background:none;color:inherit;min-height:48px;padding:0;align-items:center;gap:14px;font:500 15px/1 'DM Sans',Arial,sans-serif;cursor:pointer}
.sjhf-header :focus-visible,.sjhf-mobile :focus-visible{outline:2px solid var(--sjhf-brand);outline-offset:6px}
.sjhf-panel{position:absolute;top:100%;inset-inline:0;padding:40px var(--sjhf-gutter) 48px;background:var(--sjhf-paper);box-shadow:0 25px 35px #14221a12;max-height:calc(100svh - var(--sjhf-header));overflow:auto}
.sjhf-panel[hidden],.sjhf-backdrop[hidden]{display:none!important}
.sjhf-panel-inner{max-width:1440px;margin:auto;display:grid;grid-template-columns:1.05fr 1fr;gap:8vw;align-items:center;animation:sjhf-enter .45s var(--sjhf-ease) both}
.sjhf-directory{display:grid;gap:0}
.sjhf-directory a{display:flex;align-items:baseline;gap:20px;justify-content:space-between;padding:10px 0;color:var(--sjhf-ink);text-decoration:none;font:400 clamp(24px,2.6vw,40px)/1.25 'Playfair Display',Georgia,serif;letter-spacing:-.04em;transition:color .25s}
.sjhf-directory a:hover,.sjhf-directory a:focus-visible{color:var(--sjhf-brand)}
.sjhf-directory a span{font:400 23px/1 Arial;opacity:.6;transition:transform .35s var(--sjhf-ease)}
.sjhf-directory a:hover span{transform:translate(3px,-3px)}
.sjhf-feature{position:relative;display:block;margin:0;aspect-ratio:1.55;overflow:hidden;background:#e9e9e0}
.sjhf-feature img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 38%;transition:opacity .35s,transform .7s var(--sjhf-ease)}
.sjhf-feature img.is-changing{opacity:0;transform:scale(1.025)}
.sjhf-panel-label{margin:16px 0 0;font-size:14px;color:#65685f}
.sjhf-backdrop{position:fixed;inset:var(--sjhf-header) 0 0;z-index:999;background:#17241c2e;backdrop-filter:blur(3px)}
.sjhf-mobile{position:fixed;inset:var(--sjhf-header) 0 0;z-index:1001;width:100%;height:calc(100svh - var(--sjhf-header));max-width:none;max-height:none;margin:0;padding:28px var(--sjhf-gutter) 50px;border:0;background:var(--sjhf-paper);color:var(--sjhf-ink);overflow:auto}
.sjhf-mobile::backdrop{background:transparent}
.sjhf-mobile nav{display:grid;gap:0}
.sjhf-mobile nav>a{display:flex;justify-content:space-between;padding:18px 0;color:inherit;text-decoration:none;font:400 clamp(29px,5vw,45px)/1.2 'Playfair Display',Georgia,serif;letter-spacing:-.03em}
.sjhf-mobile .sjhf-subnav{display:grid;gap:4px;padding:18px 0 24px}
.sjhf-subnav a{color:#5c6258;text-decoration:none;min-height:44px;font-size:15px;display:flex;align-items:center}
.sjhf-mobile p{font-size:14px;margin-top:24px}
.sjhf-mobile-close{min-height:44px;border:1px solid #123f3430;background:transparent;padding:10px 18px;color:inherit;font:500 14px/1.4 'DM Sans',Arial,sans-serif;cursor:pointer}
html.sjhf-menu-open{overflow:hidden}
.sjhf-footer{position:relative;padding:40px var(--sjhf-gutter) 32px;background:var(--sjhf-dark);color:#fff}
.sjhf-footer-grid{display:grid;grid-template-columns:minmax(160px,.8fr) minmax(352px,1.5fr) auto;gap:clamp(32px,4vw,64px);max-width:1440px;margin:auto;align-items:start}
.sjhf-footer .sjhf-logo{width:67.2px;height:67.2px;margin-bottom:25px}
.sjhf-footer .sjhf-logo img,.sjhf-footer .sjhf-logo svg{mix-blend-mode:normal}
.sjhf-footer address{font:normal 400 15.2px/1.65 'DM Sans',Arial,sans-serif;margin:0;color:#ffffffc7}
.sjhf-footer p{margin:24px 0 0;font:400 15.2px/1.65 'DM Sans',Arial,sans-serif;color:#ffffff9e}
.sjhf-footer h2{font:400 24px/1.2 'Playfair Display',Georgia,serif;letter-spacing:-.025em;color:#d5b8a4;margin:0 0 25px}
.sjhf-footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.sjhf-footer-links>nav{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.sjhf-footer a{color:#ffffffc7;text-decoration:none;font:400 15.2px/1.65 'DM Sans',Arial,sans-serif;transition:color .25s}
.sjhf-footer a:hover{color:#fff}
.sjhf-footer :focus-visible{outline:2px solid #eee5d9;outline-offset:5px}
.sjhf-social{display:flex;flex-direction:column;gap:10px;padding-top:49px}
.sjhf-social a{display:grid;place-items:center;width:44px;height:44px;border:1px solid #ffffff47;border-radius:50%;transition:background .25s,transform .35s var(--sjhf-ease)}
.sjhf-social a:hover{background:#ffffff18;transform:translateY(-2px)}
.sjhf-social svg{width:17px!important;height:17px!important;fill:currentColor}
.sjhf-footer-settings{max-width:1440px;margin:24px auto 0;display:flex;gap:24px;align-items:center;justify-content:space-between;color:#ffffff9e;font-size:12px}
.sjhf-footer-settings button{border:0;border-bottom:1px solid #ffffff66;border-radius:0;background:none;color:inherit;padding:8px 0;font:inherit;min-height:44px;cursor:pointer}
.sjhf-footer-settings label{display:flex;align-items:center;gap:8px;min-height:44px;font:inherit;color:inherit}
/* Normalise the existing Group headers on home and inner pages, not their menus. */
header[class*='demo_demoHeader'] [class*='demo_navBrand'] img,.site-header .brand img{width:58px!important;height:58px!important;object-fit:contain}
header[class*='demo_demoHeader'] [class*='demo_navBar'],.site-header-inner{min-height:88px!important}
.site-header{--header-height:88px;min-height:88px!important;height:88px!important;padding:0 var(--sjhf-gutter)!important;background:var(--sjhf-paper)!important;box-shadow:none!important;border:0!important}
.site-header-inner{border-bottom:1px solid #25262126}
.site-header .desktop-nav>a,.site-header .nav-companies-trigger{font-size:16px;font-weight:500;line-height:1.4}
@keyframes sjhf-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.sjhf-nav{display:none}.sjhf-menu-button{display:flex}.sjhf-panel{display:none!important}}
@media(max-width:980px){.sjhf-footer-grid{grid-template-columns:1fr 2fr}.sjhf-social{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;padding-top:0}}
@media(max-width:700px){:root{--sjhf-header:76px;--sjhf-logo:48px;--sjhf-gutter:24px}.sjhf-footer-grid{grid-template-columns:1fr;gap:32px}.sjhf-footer-brand{display:grid;grid-template-columns:56px 1fr;column-gap:22px}.sjhf-footer .sjhf-logo{width:56px;height:56px;grid-row:1/3}.sjhf-footer-brand p{margin-top:16px}.sjhf-footer-links{gap:20px}.sjhf-footer h2{font-size:23px;margin-bottom:22px}.sjhf-social{grid-column:auto;gap:12px}.sjhf-footer-settings{flex-wrap:wrap;gap:12px}.sjhf-footer-settings button,.sjhf-footer-settings label{font-size:12px}header[class*='demo_demoHeader'] [class*='demo_navBrand'] img,.site-header .brand img{width:48px!important;height:48px!important}header[class*='demo_demoHeader'] [class*='demo_navBar'],.site-header-inner{min-height:76px!important}}
@media(prefers-reduced-motion:reduce){.sjhf-header *,.sjhf-mobile *,.sjhf-footer *{animation:none!important;transition:none!important}}
html[data-reduce-motion=true] .sjhf-header *,body.reduce-motion .sjhf-header *{animation:none!important;transition:none!important}
body.motion-off .sjhf-header *,body.motion-off .sjhf-footer *,body.motion-off .sjhf-mobile *{animation:none!important;transition:none!important}
body.se26-motion-reduced .sjhf-header *,body.se26-motion-reduced .sjhf-footer *,body.se26-motion-reduced .sjhf-mobile *{animation:none!important;transition:none!important}
body.sjhd-motion-paused .sjhf-header *,body.sjhd-motion-paused .sjhf-footer *,body.sjhd-motion-paused .sjhf-mobile *{animation:none!important;transition:none!important}
.se26-home{--se-header:88px}.se26-home .sjhf-header.se26-header{height:88px;padding:0 var(--sjhf-gutter);background:var(--sjhf-paper);box-shadow:none;border:0}
.se26-home .sjhf-footer svg{width:17px;height:17px}.se26-home .sjhf-footer .sjhf-logo svg{width:100%!important;height:100%!important}
@media(max-width:700px){.se26-home{--se-header:76px}.se26-home .sjhf-header.se26-header{height:76px}}
@media(max-width:700px){.site-header{--header-height:76px;min-height:76px!important;height:76px!important}}
