/* SJH Events — Clients page, v2 (4 Nov 2026).
   Continues the signed-off homepage: Playfair Display + DM Sans, deep pine, warm paper,
   sage accents, quiet underline links. Scoped to main.cpx and body.cpx-page. */

body.sjhr-inner main.cpx{
  --pine:#123f34;--pine-deep:#0b231d;--paper:#faf9f6;--sage:#e9eee9;--sage-2:#dfe6df;--mint:#dce6d7;
  --ink:#202723;--body:#3a4741;--muted:#617066;--rule:rgba(18,63,52,.14);
  --gutter:clamp(24px,5.5vw,96px);--ease:cubic-bezier(.22,1,.36,1);--ease-io:cubic-bezier(.65,0,.35,1);
  display:block;margin:0;padding:0;max-width:none;background:var(--paper);color:var(--ink);overflow:clip;
  font-family:'DM Sans',Arial,sans-serif;font-size:18px;line-height:1.65
}
.cpx *,.cpx *::before,.cpx *::after{box-sizing:border-box}
.cpx :where(h1,h2,h3,p,figure,blockquote,ul,li){margin:0;padding:0}
.cpx img{display:block;width:100%;height:100%;max-width:none;object-fit:cover}
.cpx a{color:inherit}
.cpx em{font-style:normal;color:#5f8a74}
.cpx-wrap{width:100%;max-width:calc(1440px + var(--gutter)*2);margin:0 auto;padding:0 var(--gutter)}

/* Type */
.cpx .cpx-h2{font:400 clamp(42px,4.4vw,64px)/1.14 'Playfair Display',Georgia,serif!important;letter-spacing:-.012em!important;color:inherit;margin:0!important}
.cpx .cpx-h3{font:400 clamp(32px,3vw,46px)/1.14 'Playfair Display',Georgia,serif!important;letter-spacing:-.01em!important;color:var(--ink);margin:0!important}
.cpx-subtitle{font:400 clamp(22px,2.1vw,30px)/1.4 'DM Sans',Arial,sans-serif;color:var(--pine);margin-top:20px!important}
.cpx-place{font:italic 400 clamp(18px,1.4vw,21px)/1.4 'Playfair Display',Georgia,serif;color:#5f8a74;margin:14px 0 0!important}

/* Homepage-style link: text, gap, arrow, hairline underline */
.cpx-link{display:inline-flex;align-items:center;gap:32px;padding:0 0 10px;font:500 14px/1.4 'DM Sans',Arial,sans-serif;color:var(--pine)!important;text-decoration:none!important;position:relative;white-space:nowrap}
.cpx-link::before,.cpx-link::after{content:'';position:absolute;left:0;bottom:0;height:1px;width:100%;background:currentColor}
.cpx-link::before{opacity:.3}
.cpx-link::after{transform:scaleX(0);transform-origin:right;transition:transform .7s var(--ease)}
.cpx-link:hover::after,.cpx-link:focus-visible::after{transform:scaleX(1);transform-origin:left}
.cpx-link svg{width:17px;height:17px;flex:none;transition:transform .5s var(--ease)}
.cpx-link:hover svg{transform:translate(3px,-3px)}
.cpx-link-light{color:#fff!important}

/* Image frame */
.cpx-frame{display:block;position:relative;overflow:hidden;width:100%;height:100%;background:var(--sage-2)}
.cpx-frame img{transform:translate3d(0,var(--dy,0px),0) scale(1.12);transition:transform 1.4s var(--ease),filter 1.2s var(--ease)}
.cpx-row:hover .cpx-frame img{transform:translate3d(0,var(--dy,0px),0) scale(1.17)}

/* ---------- Hero: crossfading occasion photography ---------- */
.cpx-hero{position:relative;height:clamp(600px,calc(100svh - 96px),880px);color:#fff;background:var(--pine-deep);overflow:hidden;isolation:isolate;display:flex;flex-direction:column;justify-content:flex-end}
.cpx-slides{position:absolute;inset:0;z-index:-2}
.cpx-slide{position:absolute!important;inset:0;margin:0!important;opacity:0;transition:opacity 1.8s var(--ease-io)}
.cpx-slide.is-active{opacity:1}
.cpx-slide img{transform:scale(1.02);transform-origin:60% 45%}
.cpx-slide.is-active img{animation:cpx-kb 9s linear forwards}
@keyframes cpx-kb{from{transform:scale(1.02)}to{transform:scale(1.1)}}
.cpx-hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(7,25,20,.8),rgba(7,25,20,.25) 58%,rgba(7,25,20,.1)),linear-gradient(0deg,rgba(7,20,17,.78),transparent 58%)}
.cpx-hero-inner{padding-bottom:clamp(36px,6vh,64px)}
.cpx .cpx-hero-title{font:400 clamp(64px,8.2vw,128px)/1.02 'Playfair Display',Georgia,serif!important;letter-spacing:-.035em!important;color:#fff!important;margin:0 0 22px -.03em!important}
.cpx-hero-title em{color:var(--mint)!important}
.cpx-line{display:inline-block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em;vertical-align:top}
.cpx-line>span{display:inline-block}
.cpx-hero-sub{font:400 clamp(20px,2.2vw,32px)/1.35 'DM Sans',Arial,sans-serif;color:rgba(255,255,255,.92);max-width:30ch}
.cpx-hero-bar{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-top:22px;padding-bottom:28px;position:relative}
.cpx-hero-bar::before{content:'';position:absolute;top:0;left:var(--gutter);right:var(--gutter);height:1px;background:rgba(255,255,255,.2)}
.cpx-hero-caption{display:flex;align-items:baseline;gap:16px;min-width:0;flex:1 1 auto;overflow:hidden;text-decoration:none;color:#fff;transition:opacity .5s}
.cpx-hero-caption span{font:400 19px/1.3 'Playfair Display',Georgia,serif;white-space:nowrap}
.cpx-hero-caption small{font:400 14px/1.3 'DM Sans',Arial,sans-serif;color:rgba(255,255,255,.66);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cpx-hero-caption.is-swap{opacity:0}
.cpx-hero-dots{display:flex;gap:10px;flex:none}
.cpx-hero-dots button{position:relative;width:44px;height:24px;padding:0;border:0;background:none;cursor:pointer}
.cpx-hero-dots button::before,.cpx-hero-dots button::after{content:'';position:absolute;left:0;right:0;top:50%;height:2px;margin-top:-1px;background:rgba(255,255,255,.3)}
.cpx-hero-dots button::after{background:#fff;transform:scaleX(0);transform-origin:left}
.cpx-hero-dots button[aria-pressed="true"]::after{animation:cpx-fill var(--slide-ms,6500ms) linear forwards}
@keyframes cpx-fill{to{transform:scaleX(1)}}

/* ---------- Intro: mirrors homepage "SJH Events / Bringing people together" ---------- */
.cpx-intro{padding:clamp(80px,9vw,140px) 0}
.cpx-intro-grid{display:grid;grid-template-columns:minmax(0,.48fr) minmax(0,1fr);gap:clamp(40px,5vw,72px);align-items:start}
.cpx-intro .cpx-h2{color:var(--ink)}
.cpx-lede{font:400 clamp(22px,2.1vw,30px)/1.45 'DM Sans',Arial,sans-serif;color:var(--pine);max-width:34ch}
.cpx-intro-links{display:flex;flex-wrap:wrap;gap:16px 48px;margin-top:44px!important}

/* ---------- Occasions ---------- */
.cpx-stories{padding:clamp(80px,9vw,140px) 0 clamp(100px,12vw,180px);background:var(--sage)}
.cpx-stories-head{margin-bottom:clamp(44px,5vw,72px)}
.cpx-stories-head .cpx-h2{color:var(--ink);max-width:16ch}

.cpx-lead{margin-bottom:clamp(110px,13vw,190px)}
.cpx-expand{position:relative;height:clamp(420px,82vh,860px);margin:0!important}
.cpx-expand-frame{position:absolute;inset:0;overflow:hidden;clip-path:inset(0 calc(var(--gutter)*(1 - var(--e,1))));background:var(--sage-2)}
.cpx-expand-frame img{transform:scale(calc(1.16 - .12*var(--e,1)))}
.cpx-lead-body{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(40px,6vw,110px);padding-top:clamp(56px,7vw,100px)}
.cpx-lead-title{position:sticky;top:48px;align-self:start}
.cpx-lead-title .cpx-h2{color:var(--ink)}
.cpx-lead-title .cpx-link{margin-top:36px}
.cpx-lead-copy p{font-size:clamp(18px,1.3vw,20px);line-height:1.75;color:var(--body);margin:0 0 1.3em!important}
.cpx-lead-copy p:first-child{font:400 clamp(23px,2vw,30px)/1.45 'Playfair Display',Georgia,serif;color:var(--pine)}
.cpx-collage{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(14px,1.8vw,28px);margin-top:clamp(56px,7vw,100px)!important;align-items:start}
.cpx-collage figure:nth-child(1){grid-column:1/8;grid-row:1/3;aspect-ratio:4/3.4}
.cpx-collage figure:nth-child(2){grid-column:8/13;aspect-ratio:3/2;margin-top:clamp(30px,5vw,90px)!important}
.cpx-collage figure:nth-child(3){grid-column:8/12;aspect-ratio:3/2}

.cpx-rows{display:flex;flex-direction:column;gap:clamp(90px,11vw,160px)}
.cpx-row{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:clamp(36px,6vw,100px);align-items:center}
.cpx-row-media{display:block;aspect-ratio:3/2}
.cpx-row-tall{grid-template-columns:minmax(0,.62fr) minmax(0,.9fr)}
.cpx-row-tall .cpx-row-media{aspect-ratio:4/4.8}
.cpx-row-flip .cpx-row-media{order:2}
.cpx-row-flip .cpx-row-copy{order:1;padding-left:clamp(0px,6vw,110px)}
.cpx-row-copy>p:not(.cpx-place){font-size:clamp(18px,1.4vw,21px);line-height:1.65;color:var(--body);max-width:32ch;margin-top:22px!important}
.cpx-row-copy .cpx-link{margin-top:34px}

/* ---------- Partners ---------- */
.cpx-partners{position:relative;padding:clamp(100px,12vw,170px) 0;color:#fff;background:radial-gradient(circle at 82% 18%,rgba(121,157,139,.17),transparent 32%),linear-gradient(125deg,#0d2d25,#123f34 68%,#102f28);overflow:hidden;isolation:isolate}
.cpx-partners-glow{position:absolute;width:680px;height:680px;left:var(--gx,72%);top:var(--gy,30%);transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(195,213,199,.13),transparent 62%);pointer-events:none;z-index:-1;transition:left 1.4s var(--ease),top 1.4s var(--ease)}
.cpx-partners-grid{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(48px,7vw,120px);align-items:start}
.cpx-partners-head{position:sticky;top:80px}
.cpx-partners .cpx-h2 em,.cpx-contact .cpx-h2 em,.cpx-feature .cpx-h2 em{color:var(--mint)}
.cpx-feature .cpx-h2 em{color:#5f8a74}
.cpx-partners-copy{font-size:18px;line-height:1.7;color:rgba(255,255,255,.74);max-width:34ch;margin-top:28px!important}
.cpx-partner-list{list-style:none;border-top:1px solid rgba(255,255,255,.16)}
.cpx-partner-list li{border-bottom:1px solid rgba(255,255,255,.16)}
.cpx-partner-list a{position:relative;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:clamp(20px,2vw,28px) 4px;text-decoration:none;color:#fff;isolation:isolate}
.cpx-partner-list a::after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--mint);transform:scaleX(0);transform-origin:left;transition:transform .8s var(--ease)}
.cpx-partner-list a:hover::after,.cpx-partner-list a:focus-visible::after{transform:scaleX(1)}
.cpx-partner-list span{font:400 clamp(26px,2.5vw,40px)/1.18 'Playfair Display',Georgia,serif;letter-spacing:-.012em;transition:transform .7s var(--ease),color .4s}
.cpx-partner-list svg{width:20px;height:20px;flex:none;color:rgba(255,255,255,.5);transition:transform .6s var(--ease),color .4s}
.cpx-partner-list a:hover span,.cpx-partner-list a:focus-visible span{transform:translateX(14px);color:var(--mint)}
.cpx-partner-list a:hover svg{color:#fff;transform:translate(3px,-3px)}

/* ---------- Featured testimonial ---------- */
.cpx-testimonials{padding:clamp(100px,12vw,170px) 0 clamp(60px,7vw,100px);background:var(--paper)}
.cpx-feature{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:clamp(40px,7vw,120px);align-items:center}
.cpx-feature-media{aspect-ratio:4/5}
.cpx-feature-copy .cpx-h2{color:var(--ink);margin-bottom:clamp(30px,3.4vw,48px)!important}
.cpx-feature-quote blockquote{font:400 clamp(24px,2.4vw,37px)/1.42 'Playfair Display',Georgia,serif!important;letter-spacing:-.015em;color:var(--pine);border:0!important;padding:0!important;margin:0!important;quotes:none;background:none!important}
.cpx-feature-quote figcaption{margin-top:34px;padding-top:22px;border-top:1px solid var(--rule);display:flex;flex-wrap:wrap;gap:4px 16px;align-items:baseline}
.cpx-feature-quote figcaption strong{font:500 16px/1.4 'DM Sans',Arial,sans-serif;color:var(--ink)}
.cpx-feature-quote figcaption span{font-size:15px;color:var(--muted)}
.cpx-w{transition:opacity .5s ease}
.cpx-js .cpx-w{opacity:.22}
.cpx-js .cpx-w.is-lit{opacity:1}

/* ---------- More feedback: padded cards ---------- */
.cpx-voices{background:var(--paper);padding:clamp(30px,4vw,60px) 0 clamp(100px,11vw,160px)}
.cpx-voices-track{display:flex;gap:clamp(16px,1.6vw,24px);overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:max(var(--gutter),calc((100vw - 1440px)/2));padding:6px max(var(--gutter),calc((100vw - 1440px)/2)) 10px;scrollbar-width:none;outline-offset:-4px}
.cpx-voices-track::-webkit-scrollbar{display:none}
.cpx .cpx-voice{flex:0 0 clamp(300px,34vw,500px);scroll-snap-align:start;display:flex;flex-direction:column;justify-content:space-between;gap:40px;padding:clamp(32px,3.2vw,52px)!important;background:var(--sage);border:1px solid rgba(18,63,52,.08);min-height:clamp(320px,26vw,400px);transition:background .5s var(--ease),transform .7s var(--ease),box-shadow .7s var(--ease)}
.cpx .cpx-voice:hover{background:#fff;transform:translateY(-6px);box-shadow:0 24px 60px -30px rgba(18,63,52,.35)}
.cpx-voice blockquote{flex:1;font:400 clamp(19px,1.45vw,23px)/1.55 'Playfair Display',Georgia,serif!important;color:var(--pine);border:0!important;padding:0!important;margin:0!important;background:none!important;quotes:none}
.cpx-voice figcaption{font:500 14px/1.5 'DM Sans',Arial,sans-serif;color:var(--muted);padding-top:20px;border-top:1px solid var(--rule)}
.cpx-voices-foot{display:flex;align-items:center;gap:32px;margin-top:34px!important}
.cpx-voices-progress{flex:1;height:1px;background:var(--rule);position:relative;overflow:hidden}
.cpx-voices-progress span{position:absolute;inset:0;background:var(--pine);transform-origin:left;transform:scaleX(var(--vp,.2));transition:transform .5s var(--ease)}
.cpx-voices-controls{display:flex;gap:10px}
.cpx-voices-controls button{width:52px;height:52px;border-radius:50%;border:1px solid rgba(18,63,52,.22);background:transparent;color:var(--pine);display:grid;place-items:center;cursor:pointer;transition:background .4s var(--ease),color .4s,border-color .4s}
.cpx-voices-controls button:hover{background:var(--pine);color:#fff;border-color:var(--pine)}
.cpx-voices-controls button:disabled{opacity:.3;pointer-events:none}
.cpx-voices-controls svg{width:20px;height:20px}

/* ---------- Contact (as homepage) ---------- */
.cpx-contact{position:relative;min-height:600px;display:flex;align-items:center;color:#fff;background:var(--pine);overflow:hidden;isolation:isolate;padding:clamp(110px,12vw,172px) 0}
.cpx-contact-media{position:absolute;inset:0;z-index:-2}
.cpx-contact-media img{transform:scale(1.06)}
.cpx-contact-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(11,35,29,.82),rgba(11,35,29,.66))}
.cpx-contact-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(36px,6vw,110px);align-items:center}
.cpx-contact .cpx-h2{font-size:clamp(52px,6.2vw,96px)!important;line-height:1.02!important}
.cpx-contact p{font-size:clamp(18px,1.4vw,21px);line-height:1.65;color:rgba(255,255,255,.86);max-width:40ch}
.cpx-contact-links{display:flex;flex-wrap:wrap;align-items:center;gap:20px 40px;margin-top:36px}
.cpx-email{font:400 14px/1.4 'DM Sans',Arial,sans-serif;color:#fff!important;text-decoration:none!important;border-bottom:1px solid rgba(255,255,255,.35);padding-bottom:10px;transition:border-color .4s}
.cpx-email:hover{border-color:#fff}

/* ---------- Motion (only after JS boots) ---------- */
.cpx-js .cpx [data-cpx-in]{opacity:0;transform:translate3d(0,28px,0);transition:opacity 1.1s var(--ease),transform 1.1s var(--ease);transition-delay:var(--d,0s)}
.cpx-js .cpx [data-cpx-in].is-in{opacity:1;transform:none}
.cpx-js .cpx .cpx-reveal[data-cpx-in]{opacity:1;transform:none;clip-path:inset(10% 8% 10% 8%);transition:clip-path 1.5s var(--ease-io)}
.cpx-js .cpx .cpx-reveal[data-cpx-in].is-in{clip-path:inset(0)}
.cpx-js .cpx .cpx-line>span{transform:translate3d(0,108%,0);transition:transform 1.3s var(--ease)}
.cpx-js .cpx .cpx-line+.cpx-line>span{transition-delay:.12s}
.cpx-js .cpx-hero.is-in .cpx-line>span{transform:none}
.cpx-sw{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.1em;margin-bottom:-.1em}
.cpx-sw>span{display:inline-block}
.cpx-js .cpx [data-cpx-split] .cpx-sw>span{transform:translate3d(0,110%,0);transition:transform 1.15s var(--ease);transition-delay:calc(var(--i,0)*60ms)}
.cpx-js .cpx [data-cpx-split].is-in .cpx-sw>span{transform:none}

/* ---------- Responsive ---------- */
@media (max-width:1100px){
  .cpx-intro-grid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:860px){
  body.sjhr-inner main.cpx{font-size:17px}
  .cpx-hero{height:min(78svh,700px);min-height:520px}
  .cpx-hero-caption small{display:none}
  .cpx-hero-bar{flex-direction:column-reverse;align-items:flex-start;gap:14px}
  .cpx-hero-caption span{white-space:normal}
  .cpx-hero-dots button{width:28px}
  .cpx-lead-body,.cpx-row,.cpx-row-tall,.cpx-partners-grid,.cpx-feature,.cpx-contact-row{grid-template-columns:minmax(0,1fr)}
  .cpx-row{gap:28px}
  .cpx-row-flip .cpx-row-media{order:0}
  .cpx-row-flip .cpx-row-copy{padding-left:0}
  .cpx-row-tall .cpx-row-media{aspect-ratio:4/4.4}
  .cpx-lead-title,.cpx-partners-head{position:static}
  .cpx-expand{height:60svh}
  .cpx-collage{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cpx-collage figure:nth-child(1){grid-column:1/3;grid-row:auto;aspect-ratio:3/2}
  .cpx-collage figure:nth-child(2),.cpx-collage figure:nth-child(3){grid-column:auto;margin-top:0!important}
  .cpx-partner-list a:hover span{transform:none}
  .cpx .cpx-voice{flex-basis:84vw;min-height:0;gap:32px}
  .cpx-voice blockquote{flex:0 0 auto}
  .cpx-voices-controls button{width:46px;height:46px}
  .cpx-feature-media{aspect-ratio:4/3.6}
}

/* Reduced motion (system setting or footer toggle) */
@media (prefers-reduced-motion:reduce){
  .cpx *,.cpx *::before,.cpx *::after{animation:none!important;transition:none!important}
  .cpx-js .cpx [data-cpx-in],.cpx-js .cpx .cpx-line>span,.cpx-js .cpx [data-cpx-split] .cpx-sw>span{opacity:1!important;transform:none!important;clip-path:none!important}
  .cpx-js .cpx-w{opacity:1!important}
  .cpx-expand-frame{clip-path:none!important}.cpx-expand-frame img{transform:none!important}
}
body.se26-motion-reduce .cpx *,body.se26-motion-reduce .cpx *::before,body.se26-motion-reduce .cpx *::after{animation:none!important;transition:none!important}
body.se26-motion-reduce .cpx [data-cpx-in],body.se26-motion-reduce .cpx .cpx-line>span,body.se26-motion-reduce .cpx [data-cpx-split] .cpx-sw>span{opacity:1!important;transform:none!important;clip-path:none!important}
body.se26-motion-reduce .cpx .cpx-w{opacity:1!important}
body.se26-motion-reduce .cpx .cpx-expand-frame{clip-path:none!important}
body.se26-motion-reduce .cpx .cpx-expand-frame img{transform:none!important}

/* ---------- Footer: identical to the signed-off homepage ---------- */
body.cpx-page .sjhf-footer{--sjhf-gutter:clamp(24px,5.5vw,96px);position:relative!important;display:block!important;box-sizing:border-box!important;width:100%!important;max-width:none!important;margin:0!important;padding:40px var(--sjhf-gutter) 32px!important;background:#faf8f4!important;color:#252621!important;border:0!important;border-top:1px solid rgba(18,63,52,.094)!important;font:400 18px/1.65 'DM Sans',Arial,sans-serif!important;letter-spacing:normal!important}
body.cpx-page .sjhf-footer *{box-sizing:border-box!important}
body.cpx-page .sjhf-footer-grid{display:grid!important;grid-template-columns:minmax(220px,.9fr) minmax(360px,1.5fr) auto!important;gap:clamp(32px,4vw,64px)!important;max-width:1440px!important;margin:0 auto!important;align-items:start!important}
body.cpx-page .sjhf-footer-brand{display:block!important}
body.cpx-page .sjhf-footer-links a{display:block!important;min-height:0!important;padding:0!important}
body.cpx-page .sjhf-footer .sjhf-logo{display:block!important;aspect-ratio:374/100!important;width:250px!important;max-width:none!important;height:auto!important;line-height:0!important;margin:0 0 25px!important;border-radius:0!important;background:none!important;transform:none!important}
body.cpx-page .sjhf-footer .sjhf-logo img{display:block!important;aspect-ratio:374/100!important;width:100%!important;height:auto!important;max-width:none!important;max-height:none!important;min-height:0!important;object-fit:contain!important;filter:none!important;mix-blend-mode:normal!important}
body.cpx-page .sjhf-footer address{font:400 15.2px/1.65 'DM Sans',Arial,sans-serif!important;font-style:normal!important;margin:0!important;color:#354b41!important}
body.cpx-page .sjhf-footer p{margin:24px 0 0!important;font:400 15.2px/1.65 'DM Sans',Arial,sans-serif!important;color:#617066!important}
body.cpx-page .sjhf-footer .sjhn-endorsement.sjh20-endorsement{display:block!important;margin-top:24px!important;font:500 18px/1.5 'DM Sans',Arial,sans-serif!important;letter-spacing:0!important;text-transform:none!important;color:#123f34!important}
body.cpx-page .sjhf-footer h2{font:400 24px/32px 'Playfair Display',Georgia,serif!important;letter-spacing:-.025em!important;color:#123f34!important;margin:0 0 24px!important;padding:0!important;text-transform:none!important}
body.cpx-page .sjhf-footer-links{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:32px!important;align-items:start!important}
body.cpx-page .sjhf-footer-links>nav{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:8px!important;padding-top:0!important}
body.cpx-page .sjhf-footer a{color:#354b41!important;text-decoration:none!important;font:400 15.2px/1.65 'DM Sans',Arial,sans-serif!important;transition:color .25s!important}
body.cpx-page .sjhf-footer a:hover{color:#123f34!important}
body.cpx-page .sjhf-footer :focus-visible{outline:2px solid #123f34!important;outline-offset:5px!important}
body.cpx-page .sjhf-social{display:flex!important;flex-direction:column!important;gap:10px!important;padding-top:56px!important}
body.cpx-page .sjhf-social a{display:grid!important;place-items:center!important;width:44px!important;height:44px!important;border:1px solid rgba(18,63,52,.2)!important;border-radius:50%!important;color:#123f34!important;background:transparent!important;transition:background .25s,transform .35s cubic-bezier(.22,1,.36,1)!important}
body.cpx-page .sjhf-social a:hover{background:rgba(18,63,52,.043)!important;transform:translateY(-2px)!important}
body.cpx-page .sjhf-social svg{fill:currentColor!important;width:17px!important;height:17px!important}
body.cpx-page .sjhf-footer-settings{max-width:1440px!important;margin:24px auto 0!important;padding:0!important;border:0!important;display:flex!important;gap:24px!important;align-items:center!important;justify-content:space-between!important;color:#617066!important;font-size:12px!important}
body.cpx-page .sjhf-footer-settings button{border:0!important;border-bottom:1px solid rgba(18,63,52,.25)!important;border-radius:0!important;background:none!important;color:inherit!important;padding:8px 0!important;font:inherit!important;min-height:44px!important;cursor:pointer!important}
body.cpx-page .sjhf-footer-settings label{display:flex!important;align-items:center!important;gap:8px!important;min-height:44px!important;font:inherit!important;color:inherit!important}
@media (max-width:1050px){
  body.cpx-page .sjhf-footer-grid{grid-template-columns:minmax(180px,.8fr) minmax(300px,1.4fr)!important}
  body.cpx-page .sjhf-social{grid-column:2!important;flex-flow:row wrap!important;padding-top:0!important}
}
@media (max-width:700px){
  body.cpx-page .sjhf-footer{padding-block:36px 20px!important}
  body.cpx-page .sjhf-footer-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:24px 22px!important}
  body.cpx-page .sjhf-footer-brand{min-width:0!important}
  body.cpx-page .sjhf-footer .sjhf-logo{width:min(150px,100%)!important;margin-bottom:22px!important}
  body.cpx-page .sjhf-footer address,body.cpx-page .sjhf-footer p{font-size:12px!important;line-height:1.65!important}
  body.cpx-page .sjhf-footer p{margin-top:18px!important}
  body.cpx-page .sjhf-footer .sjhn-endorsement.sjh20-endorsement{font-size:14px!important;line-height:1.5!important;margin-top:18px!important}
  body.cpx-page .sjhf-footer h2{font-size:25px!important;line-height:1.2!important;margin-bottom:15px!important}
  body.cpx-page .sjhf-footer-links{grid-template-columns:minmax(0,1fr)!important;gap:14px!important}
  body.cpx-page .sjhf-footer-links>nav{gap:0!important}
  body.cpx-page .sjhf-footer-links a{font:400 13px/1.4 'DM Sans',Arial,sans-serif!important;display:flex!important;align-items:center!important;min-height:36px!important;padding-block:6px!important}
  body.cpx-page .sjhf-social{display:flex!important;flex-flow:row wrap!important;gap:10px!important;grid-column:1/-1!important;padding:0!important}
  body.cpx-page .sjhf-social a{width:38px!important;height:38px!important}
  body.cpx-page .sjhf-footer-settings{margin-top:22px!important;gap:8px 16px!important;flex-wrap:wrap!important;border-top:1px solid rgba(18,63,52,.094)!important;padding-top:12px!important}
  body.cpx-page .sjhf-footer-settings button,body.cpx-page .sjhf-footer-settings label{font-size:11px!important}
}
