/* September 8 supplied reference. The PNG is byte-identical to the attachment.
   Only its right-hand photograph is displayed; no photo editing or old layers.
   Source viewport: x=832..1586, y=94..992. Text and controls are native HTML. */
@scope (body.home-redesign) {
 .header:not(.on-dark){background:#fff;color:#073865}
 .header:not(.on-dark) .service-wordmark{filter:none}
 .header{padding-inline:3.6%;gap:26px}
 .header .header-contact{background:#ffea40;border-color:#ffea40;color:#064472;min-height:58px;padding-inline:28px;border-radius:4px;font-size:1.125rem}
 .header .header-contact:hover{background:#fff298;border-color:#fff298}
 .reference-hero{--reference-yellow:#ffeb3f;position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(126deg,#0070bb 0%,#006dbb 33%,#0065b6 62%,#0074bf 100%);color:#fff}
 .reference-hero::before{content:"";position:absolute;z-index:-1;inset:0 40% 0 0;background:linear-gradient(135deg,transparent 7%,#ffffff0b 7%,#ffffff0b 12%,transparent 12%,transparent 73%,#ffffff0a 73%,#ffffff0a 77%,transparent 77%)}
 .reference-hero::after{content:"";position:absolute;z-index:-1;top:-24%;left:30%;width:29%;aspect-ratio:1;border-radius:50%;background:#ffffff12}
 .reference-hero .home-hero-inner{position:relative;display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:'kicker' 'title' 'description' 'actions' 'proof';width:100%;max-width:1760px;min-height:min(56.62vw,996.5px);margin:auto;align-content:center;column-gap:0;row-gap:0;padding:clamp(42px,4vw,70px) 0 clamp(36px,4vw,70px)}
 .reference-hero .home-hero-inner> :not(.reference-photo){position:relative;z-index:2;width:49%;margin-left:4%}
 .reference-title-reveal{grid-area:title;overflow:clip;overflow-clip-margin:2px;margin-bottom:22px}
 .reference-hero .reference-title-reveal h1{margin-bottom:0}
 .reference-eyebrow{grid-area:kicker;display:flex;align-items:center;gap:16px;font-family:Arial,sans-serif;font-size:clamp(.625rem,.85vw,.9375rem);line-height:1.5;font-weight:700;letter-spacing:.38em;margin-bottom:25px;color:#fff}
 .reference-eyebrow>span{display:block;flex:1;max-width:145px;height:1px;background:#ffffffb3}
 .reference-hero h1{font-size:clamp(2.375rem,5.83vw,6.4rem);font-weight:900;line-height:1.42;letter-spacing:-.048em;margin-bottom:22px;color:#fff;transform:skewX(-5deg);transform-origin:left bottom;text-wrap:initial;-webkit-text-stroke:.012em currentColor}
 .reference-hero h1>span{overflow-wrap:normal;word-break:normal}
 .reference-hero h1 .phrase{display:inline-block}
 .reference-hero h1 em{display:inline-block;position:relative;color:var(--reference-yellow);font-style:normal}
 .reference-hero h1 em svg{position:absolute;left:-1%;bottom:.01em;width:102%;height:.22em;overflow:visible;stroke:currentColor;stroke-width:5;fill:none;stroke-linecap:round}
 .reference-hero .home-hero-description{font-size:clamp(1rem,1.7vw,1.875rem);line-height:1.65;font-weight:500;margin-bottom:29px;color:#fff}
 .reference-hero .home-hero-actions{display:grid;grid-template-columns:1.1fr 1fr;gap:14px;align-items:stretch;margin-bottom:42px}
 .reference-hero .home-hero-actions a{font-size:clamp(.875rem,1.45vw,1.5rem);font-weight:700;line-height:1.5;gap:12px;min-height:76px;padding:15px 20px;justify-content:center}
 .reference-hero .home-hero-actions .button{border:1px solid var(--reference-yellow);border-radius:30px;background:var(--reference-yellow);color:#064472;box-shadow:0 0 15px #ffeb3f55}
 .reference-hero .home-hero-actions .button:hover{background:#fff391;border-color:#fff391}
 .reference-hero .home-hero-actions .text-link{border:1px solid #fff;border-radius:13px;background:#ffffff08;color:#fff;text-decoration:none}
 .reference-hero .home-hero-actions .text-link:hover{background:#ffffff20}
 .reference-hero .home-hero-actions a:focus-visible{outline:3px solid #fff;outline-offset:5px}
 .reference-hero .home-hero-actions a>span[aria-hidden]{font-size:1.6em;margin-left:auto}
 .reference-hero .home-hero-actions .action-label{font-size:clamp(.875rem,1.2vw,1.3125rem);line-height:1.6}
 .reference-hero .home-hero-actions .action-label .phrase{display:inline-block;font:inherit}
 .reference-proof{grid-area:proof;display:grid;grid-template-columns:1fr 1.17fr 1fr;list-style:none;padding:0;margin-block:0;color:#fff;gap:16px}
 .reference-proof li{display:flex;align-items:center;gap:12px;min-width:0}
 .reference-proof li+li{border-left:1px solid #ffffff55;padding-left:16px}
 .reference-proof svg{flex-shrink:0;width:clamp(42px,4.5vw,76px);height:auto;aspect-ratio:1;border:1px solid currentColor;border-radius:50%;padding:10px}
 .reference-proof p{font-size:clamp(.8125rem,1.05vw,1.1875rem);line-height:1.6;font-weight:700;word-break:normal}
 .reference-proof strong{color:var(--reference-yellow);font-size:1.65em;line-height:1.15}
 .reference-proof .phrase{display:inline-block}
 .reference-photo{position:absolute;right:0;top:0;width:47.54%;aspect-ratio:754/898;margin:0;overflow:hidden;z-index:0;clip-path:polygon(9.0186% 0,100% 0,100% 100%,0 100%,0 25%)}
 .reference-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;max-width:none;filter:none;mask-image:none;transform:none;opacity:1}
 .reference-photo-reveal{position:absolute;inset:0;overflow:hidden}
 /* The photo begins at 52.46%. Reserve a 28px gap, including room for focus. */
 @media(min-width:1051px){.reference-hero:not(.reference-reflow) .home-hero-inner>.home-hero-actions{width:calc(48.46% - 28px)}}
 @media(min-width:1761px){.reference-photo{width:836.7px}.reference-hero .home-hero-inner{padding-left:0}.reference-hero .home-hero-inner>:not(.reference-photo){width:862px}}
 @media(max-width:1250px){
  .header{gap:16px}.header .header-contact{font-size:1rem;padding-inline:20px}
  .reference-hero .home-hero-inner{padding-block:35px;min-height:600px}
  .reference-eyebrow{margin-bottom:20px;letter-spacing:.24em}
  .reference-hero h1{margin-bottom:18px}
  .reference-title-reveal{margin-bottom:18px}.reference-hero .reference-title-reveal h1{margin-bottom:0}
  .reference-hero .home-hero-description{margin-bottom:22px}
  .reference-hero .home-hero-actions{gap:10px;margin-bottom:27px}
  .reference-hero .home-hero-actions a{min-height:62px;padding:12px 14px}
  .reference-proof{gap:10px}.reference-proof li{gap:8px}.reference-proof li+li{padding-left:10px}.reference-proof svg{padding:8px}
 }
 @media(max-width:1050px){
  .header .header-contact{min-height:48px}
  .reference-hero .home-hero-inner{min-height:0;padding-block:32px}
  .reference-hero .home-hero-actions{grid-template-columns:1fr;width:42%;margin-bottom:22px}
  .reference-hero .home-hero-actions a{font-size:1rem;min-height:52px}
  .reference-hero .home-hero-actions .text-link{min-height:44px}
  .reference-proof{grid-template-columns:1fr 1fr;width:48%;gap:16px}
  .reference-proof li+li{border:0;padding:0}.reference-proof li:last-child{grid-column:1/-1}
  .reference-photo{top:0;bottom:auto}
 }
 @media(min-width:761px) and (max-width:1050px){
  .reference-hero .home-hero-inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:'kicker photo' 'title photo' 'description photo' 'actions photo' 'proof proof';column-gap:4%;padding-inline:4%;align-content:start}
  .reference-hero .home-hero-inner>:not(.reference-photo){width:100%;margin-left:0}
  .reference-hero h1{font-size:5.3vw}
  .reference-photo{grid-area:photo;position:relative;inset:auto;width:100%;align-self:start;clip-path:none}
  .reference-proof{grid-template-columns:1fr 1.1fr 1fr;gap:16px;margin-top:10px}
  .reference-proof li:last-child{grid-column:auto}
  .reference-proof li+li{border-left:1px solid #ffffff55;padding-left:16px}
 }
 @media(max-width:760px){
  .header{padding-inline:20px;gap:8px}
  .header .header-contact{font-size:.875rem;min-height:44px;padding:8px 10px;border-radius:3px}
  .reference-hero .home-hero-inner{display:grid;grid-template-areas:'kicker' 'title' 'actions' 'photo' 'description' 'proof';padding:25px 0 32px;min-height:0}
  .reference-hero .home-hero-inner>:not(.reference-photo){width:calc(100% - 40px);margin-left:20px}
  .reference-eyebrow{font-size:.5625rem;letter-spacing:.22em;gap:10px;margin-bottom:14px}
  .reference-eyebrow>span{max-width:70px}
  .reference-hero h1{font-size:clamp(2.1875rem,8.95vw,4rem);line-height:1.4;letter-spacing:-.055em;margin-bottom:20px;transform:skewX(-4deg)}
  .reference-title-reveal{margin-bottom:20px}.reference-hero .reference-title-reveal h1{margin-bottom:0}
  .reference-hero h1 em svg{bottom:0;stroke-width:4}
  .reference-hero .home-hero-actions{grid-template-columns:1fr;gap:8px;margin-bottom:22px}
  .reference-hero .home-hero-actions a{font-size:1rem;min-height:54px;padding:12px 21px;justify-content:center}
  .reference-hero .home-hero-actions .button{border-radius:22px}
  .reference-hero .home-hero-actions .text-link{min-height:44px;border-radius:7px;font-size:.9375rem}
  .reference-hero .home-hero-actions .action-label{font-size:.9375rem}
  .reference-photo{grid-area:photo;position:relative;inset:auto;width:100%;max-width:560px;justify-self:end;aspect-ratio:754/898;clip-path:none;margin-bottom:26px}
  .reference-hero .home-hero-description{font-size:1rem;line-height:1.85;margin-bottom:26px}
  .reference-proof{grid-template-columns:1fr;gap:18px}
  .reference-proof li{gap:16px}.reference-proof li+li{border-top:1px solid #ffffff55;padding-top:18px}.reference-proof li:last-child{grid-column:auto}
  .reference-proof svg{width:50px;padding:8px}.reference-proof p{font-size:1rem}
  .reference-proof li:first-child p br{display:none}.reference-proof li:first-child strong{margin-left:.3em}
 }
 @media(max-width:355px){.header{padding-inline:14px;gap:5px}.header .header-contact{font-size:.8125rem;padding-inline:8px}.reference-hero h1{font-size:2.0625rem}.reference-eyebrow{letter-spacing:.14em}.reference-eyebrow>span{max-width:28px}}
 /* Enlarged text is allowed to reflow instead of colliding with the photograph. */
 .reference-hero.reference-reflow .home-hero-inner{grid-template-columns:minmax(0,1fr);grid-template-areas:'kicker' 'title' 'actions' 'photo' 'description' 'proof';padding:32px 0}
 .reference-hero.reference-reflow .home-hero-inner>:not(.reference-photo){width:92%;margin-left:4%}
 .reference-hero.reference-reflow .reference-photo{position:relative;inset:auto;grid-area:photo;width:min(754px,100%);justify-self:end;clip-path:none;margin:20px 0 28px}
 .reference-hero.reference-reflow .reference-proof{grid-template-columns:1fr;gap:20px}
 .reference-hero.reference-reflow .reference-proof li+li{border:0;padding:0}
 .reference-hero.reference-reflow .home-hero-actions{grid-template-columns:1fr;max-width:900px}
 .reference-copy-wrap h1{transform:none}
 .reference-copy-wrap h1 em{max-width:100%;text-wrap:balance}
 .reference-copy-wrap h1 em svg{left:0;width:100%}
 @media(min-width:1051px) and (max-width:1250px){
  .reference-proof li{flex-direction:column;align-items:flex-start;gap:10px}
 }
 /* CSS starts on first paint; no delayed JS reset or replay on scroll.
    The outer title/photo frames keep moving content away from the CTA.
    The photograph moves as one intact viewport, with no filter or scaling. */
 @media(prefers-reduced-motion:no-preference){
  .reference-title-reveal h1{--rise-distance:64px;animation:fv-title-rise 1.2s cubic-bezier(.2,.65,.25,1) both}
  .reference-photo-reveal{--rise-distance:72px;animation:fv-photo-rise 1.2s cubic-bezier(.2,.65,.25,1) both}
 }
 @media(max-width:760px) and (prefers-reduced-motion:no-preference){.reference-title-reveal h1{--rise-distance:40px}}
}
@keyframes fv-title-rise{from{translate:0 var(--rise-distance);opacity:.55}to{translate:0 0;opacity:1}}
@keyframes fv-photo-rise{from{translate:0 var(--rise-distance)}to{translate:0 0}}
