/* KMG homepage service narrative, 9 October 2026. */
#kmgx-preview .x-home-service-government .x-home-service-photo img{object-position:65% center}
/* A single encoded film starts on Amsterdam; its poster covers slow or disabled playback. */
#kmgx-preview .x-home-visual .x-film video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .25s;pointer-events:none}
#kmgx-preview .x-home-visual .x-film.is-ready video{opacity:1}
#kmgx-preview .x-film-intro{position:absolute;inset:0;display:none;place-items:center;background:#132e3e;z-index:8;overflow:hidden;pointer-events:none;opacity:1;transition:opacity .3s,visibility .3s}
#kmgx-preview .x-film-intro.is-active{display:grid}
#kmgx-preview .x-film-intro.is-dismissed{opacity:0;visibility:hidden}
#kmgx-preview .x-intro-lockup{position:absolute;inset:0;width:100%;height:100%}
#kmgx-preview .x-intro-logo{position:absolute;inset:0;width:310px;height:188px;object-fit:contain;filter:brightness(0) invert(1);opacity:0}
#kmgx-preview .x-intro-key{position:absolute;left:var(--key-left);top:var(--key-top);width:var(--key-width);height:var(--key-height);max-width:none;transform-origin:center;opacity:1}
#kmgx-preview .x-film-intro.is-active .x-intro-key{animation:kmg-key-turn 2.45s ease-in-out both}
#kmgx-preview .x-film-intro.is-active .x-intro-logo{animation:kmg-lockup-reveal .95s ease both}
@keyframes kmg-key-turn{0%,100%{transform:perspective(650px) rotateY(0deg);filter:brightness(1)}48%{transform:perspective(650px) rotateY(82deg);filter:brightness(.82)}}
@keyframes kmg-lockup-reveal{0%,57%{opacity:0}88%,100%{opacity:1}}
@media(max-width:650px),(prefers-reduced-motion:reduce){#kmgx-preview .x-film-intro{display:none!important}#kmgx-preview .x-home-visual .x-film video{transition:none}}

/* Decorative marks use the existing brand's original key geometry. */
#kmgx-preview .x-home-story .x-hero-copy,#kmgx-preview .x-home-group{position:relative;isolation:isolate;overflow:hidden}
#kmgx-preview .x-key-watermark{position:absolute!important;pointer-events:none;z-index:-1;width:215px;height:auto;max-width:none;object-fit:contain}
#kmgx-preview .x-key-watermark-intro{right:2%;top:-18%;transform:rotate(22deg);opacity:.055}
#kmgx-preview .x-key-watermark-group{left:-52px;top:20px;width:235px;transform:rotate(-19deg);filter:brightness(0);opacity:.035}
@media(max-width:650px){#kmgx-preview .x-key-watermark-intro{right:-48px;top:12%;width:195px;opacity:.04}#kmgx-preview .x-key-watermark-group{left:-72px;top:55px;width:210px;opacity:.025}}
#kmgx-preview .x-home-story .x-hero-copy{display:grid;grid-template-columns:1.1fr 1fr;gap:28px 7%;padding:52px 7.5% 30px!important;align-items:center}
#kmgx-preview .x-home-story h1{font-size:clamp(35px,3.8vw,58px);line-height:1.1}
#kmgx-preview .x-home-story .x-eyebrow{font-size:9px;margin-bottom:18px}
#kmgx-preview .x-home-story .x-lead{font-size:17px;line-height:1.75;margin:0;max-width:540px}
#kmgx-preview .x-home-story .x-home-summary .x-button{margin-top:24px}
#kmgx-preview .x-home-proof{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid #71958f66;padding-top:23px;margin-top:5px}
#kmgx-preview .x-home-proof>p:first-child{display:flex;align-items:center;gap:19px;margin:0;color:#dcece6;line-height:1.4}
#kmgx-preview .x-home-proof strong{font:400 30px/1.1 var(--x-serif);color:#e4caa1;white-space:nowrap}
#kmgx-preview .x-home-proof span{max-width:300px;font-size:12px;line-height:1.6}
#kmgx-preview .x-home-story .x-home-proof .x-home-origin{font-size:11px;line-height:1.65;margin:0;text-align:right}
#kmgx-preview .x-home-service{padding:78px 7.5% 82px}
#kmgx-preview .x-home-service-top{display:grid;grid-template-columns:1.1fr 1fr;gap:7%;align-items:end;margin-bottom:42px}
#kmgx-preview .x-home-service-top .x-eyebrow{font-size:10px;margin-bottom:18px;letter-spacing:.11em}
#kmgx-preview .x-home-service-top h2{font-size:clamp(37px,3.8vw,56px);line-height:1.08}
#kmgx-preview .x-home-service-top>p,#kmgx-preview .x-home-service-top>div>p:not(.x-eyebrow){font-size:16px;line-height:1.75;margin:0;max-width:520px}
#kmgx-preview .x-home-service-body{display:grid;grid-template-columns:.9fr 1.35fr;gap:5%;align-items:stretch}
#kmgx-preview .x-home-service-photo{display:flex;flex-direction:column;background:#dae3d8;min-width:0}
#kmgx-preview .x-home-service-photo img{height:100%;min-height:520px;max-height:680px;width:100%;object-fit:cover}
#kmgx-preview .x-home-service-photo figcaption{font-size:10px;line-height:1.5;padding:14px 19px;color:#375b5c;background:#e4ece5;margin-top:auto}
#kmgx-preview .x-home-feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px 30px}
#kmgx-preview .x-home-feature-grid article{border-top:1px solid #b7c9be;padding-top:18px}
#kmgx-preview .x-home-feature-grid h3{font-size:20px;font-weight:600;line-height:1.25;letter-spacing:-.025em;color:#244c49}
#kmgx-preview .x-home-feature-grid p{font-size:14px;line-height:1.75;margin-top:12px;color:#506963}
#kmgx-preview .x-home-delivery{padding:24px 26px;margin-top:28px;background:#e4ece4;border-left:3px solid #6c8b78}
#kmgx-preview .x-home-delivery .x-eyebrow{font-size:9px;margin:0 0 11px;color:#375951;letter-spacing:.12em}
#kmgx-preview .x-home-delivery>p:not(.x-eyebrow){font-size:14px;line-height:1.75;color:#375951;margin:0}
#kmgx-preview .x-home-service-detail>.x-text-link{margin-top:18px}
#kmgx-preview .x-home-service-hospitality{background:#fffdf8}
#kmgx-preview .x-home-service-hospitality h2 em{color:#8a573e}
#kmgx-preview .x-home-service-government{background:#142f42;color:#f7f1e8}
#kmgx-preview .x-home-service-government .x-home-service-body{grid-template-columns:1.35fr .85fr}
#kmgx-preview .x-home-service-government .x-home-service-top .x-eyebrow{color:#e0be8f}
#kmgx-preview .x-home-service-government h2,#kmgx-preview .x-home-service-government h3{color:#f7f1e8}
#kmgx-preview .x-home-service-government h2 em{color:#b6d5d0}
#kmgx-preview .x-home-service-government p{color:#c5d6dc}
#kmgx-preview .x-home-service-government .x-home-feature-grid article{border-color:#456271}
#kmgx-preview .x-home-service-government .x-home-feature-grid p{color:#c5d6dc}
#kmgx-preview .x-home-service-government .x-home-delivery{background:#ffffff0b;border-left-color:#b6d5d0}
#kmgx-preview .x-home-service-government .x-home-delivery p{color:#dce8e6}
#kmgx-preview .x-home-service-government .x-home-delivery .x-eyebrow{color:#e0be8f}
#kmgx-preview .x-home-service-government .x-home-service-photo{background:#243e4a}
#kmgx-preview .x-home-service-government .x-home-service-photo img{object-position:58% center;filter:saturate(.85)}
#kmgx-preview .x-home-service-government .x-home-service-photo figcaption{background:#243e4a;color:#ccdbde}
#kmgx-preview .x-home-service-links{display:flex;gap:18px 28px;flex-wrap:wrap;margin-top:15px}
#kmgx-preview .x-home-service-government .x-text-link{color:#e2ebe5;border-color:#8aa0aa;font-size:12px}
#kmgx-preview .x-home-pool-separator,#kmgx-preview .x-home-office-separator{display:flex;align-items:center;min-height:360px;padding:62px 7.5%;isolation:isolate;background-size:cover;background-position:center}
#kmgx-preview .x-home-pool-separator{background-image:url('https://keymanagementgroup.com/wp-content/uploads/2026/09/PHV-Signature-Pool.jpg')}
#kmgx-preview .x-home-office-separator{background-image:url('https://keymanagementgroup.com/wp-content/uploads/2020/08/Olympia-Coporate-Office.jpg');background-position:center 42%}
#kmgx-preview .x-home-pool-separator:before,#kmgx-preview .x-home-office-separator:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#102f3ae6,#102f3a24)}
#kmgx-preview .x-home-pool-separator .x-eyebrow,#kmgx-preview .x-home-office-separator .x-eyebrow{color:#e7d1af;font-size:10px}
#kmgx-preview .x-home-pool-separator h2,#kmgx-preview .x-home-office-separator h2{font-size:clamp(32px,3.6vw,52px);color:#fffdf8}
#kmgx-preview .x-home-pool-separator h2 em,#kmgx-preview .x-home-office-separator h2 em{color:#e7d1af}
#kmgx-preview .x-home-service-workforce{background:#e9d9bd}
#kmgx-preview .x-home-service-workforce .x-eyebrow{color:#81432f}
#kmgx-preview .x-home-service-workforce h2{color:#3b4038}
#kmgx-preview .x-home-service-workforce h2 em{color:#7a4938}
#kmgx-preview .x-home-service-workforce p{color:#575849}
#kmgx-preview .x-home-workforce-layout{display:grid;grid-template-columns:.8fr 1.3fr;gap:8%;align-items:start}
#kmgx-preview .x-home-workforce-intro{padding:32px;background:#f6ecdb;border-top:3px solid #945a43}
#kmgx-preview .x-home-workforce-intro .x-home-service-statement{font:400 30px/1.28 var(--x-serif);color:#514331;margin:0}
#kmgx-preview .x-home-workforce-intro>p:not(.x-home-service-statement){font-size:14px;line-height:1.8;margin-top:22px}
#kmgx-preview .x-home-workforce-intro .x-button{margin-top:26px;font-size:12px;padding:13px 17px;gap:18px}
#kmgx-preview .x-home-service-workforce .x-home-feature-grid article{border-color:#b6ad96}
#kmgx-preview .x-home-service-workforce .x-home-feature-grid h3{color:#514331}
#kmgx-preview .x-home-service-workforce .x-home-feature-grid p{color:#575849}
#kmgx-preview .x-home-service-workforce .x-home-delivery{background:#f4e9d5;border-left-color:#945a43}
#kmgx-preview .x-home-service-workforce .x-home-delivery p{color:#575849}
#kmgx-preview .x-home-service-workforce .x-home-delivery .x-eyebrow{color:#81432f}
#kmgx-preview .x-home-portfolio{padding:80px 7.5% 85px;background:#fffdf8}
#kmgx-preview .x-home-portfolio .x-home-service-top{margin-bottom:35px}
#kmgx-preview .x-home-portfolio .x-text-link{font-size:12px;margin-top:18px}
#kmgx-preview .x-home-portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 24px}
#kmgx-preview .x-home-portfolio-card{min-width:0;background:#f1eee5;border:1px solid #e4e3d9}
#kmgx-preview .x-home-portfolio-card>a{display:block;height:100%}
#kmgx-preview .x-home-portfolio-card img{width:100%;height:220px;object-fit:cover}
#kmgx-preview .x-home-portfolio-card>a>div{padding:22px 23px 25px}
#kmgx-preview .x-home-portfolio-card p{font-size:10px;letter-spacing:.05em;color:#596d66;margin:0 0 10px}
#kmgx-preview .x-home-portfolio-card h3{font:400 25px/1.2 var(--x-serif);letter-spacing:-.02em;color:#244c49}
#kmgx-preview .x-home-portfolio-card span{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px;font-weight:600;border-top:1px solid #ced5c9;padding-top:17px;margin-top:23px;color:#435f55}
#kmgx-preview .x-home-portfolio-card span svg{width:17px;height:17px}
#kmgx-preview .x-home-portfolio-card>a:hover{background:#e6ece3}
#kmgx-preview .x-home-group{padding:68px 7.5% 72px;background:#e7eee8}
#kmgx-preview .x-home-group>p:not(.x-eyebrow){max-width:670px;font-size:16px;line-height:1.75;margin-left:auto;margin-right:auto}
#kmgx-preview .x-home-group .x-company-wordmarks{margin-top:30px}
#kmgx-preview .x-home-group>.x-text-link{margin-top:28px}
#kmgx-preview .x-home-group>.x-home-contact{margin:28px 0 0 30px;font-size:12px}
@media(max-width:1050px){
 #kmgx-preview .x-home-service-body,#kmgx-preview .x-home-service-government .x-home-service-body{grid-template-columns:1fr 1.35fr;gap:4%}
 #kmgx-preview .x-home-service-government .x-home-service-body{grid-template-columns:1.35fr .8fr}
 #kmgx-preview .x-home-feature-grid{gap:22px}
 #kmgx-preview .x-home-feature-grid h3{font-size:19px}
 #kmgx-preview .x-home-workforce-layout{grid-template-columns:.8fr 1.3fr;gap:5%}
 #kmgx-preview .x-home-workforce-intro{padding:26px}
 #kmgx-preview .x-home-portfolio-card img{height:180px}
}
@media(max-width:800px){
 #kmgx-preview .x-home-story .x-hero-copy{grid-template-columns:1fr;gap:26px;padding:42px 7% 30px!important}
 #kmgx-preview .x-home-story h1{font-size:clamp(35px,6vw,48px)}
 #kmgx-preview .x-home-story .x-lead{max-width:650px;font-size:16px}
 #kmgx-preview .x-home-proof{grid-column:1;gap:20px}
 #kmgx-preview .x-home-service,#kmgx-preview .x-home-portfolio{padding:60px 7%}
 #kmgx-preview .x-home-service-top{grid-template-columns:1fr;gap:23px;margin-bottom:30px}
 #kmgx-preview .x-home-service-body,#kmgx-preview .x-home-service-government .x-home-service-body,#kmgx-preview .x-home-workforce-layout{grid-template-columns:1fr;gap:32px}
 #kmgx-preview .x-home-service-government .x-home-service-photo{grid-row:1}
 #kmgx-preview .x-home-service-photo img{height:330px;min-height:0;max-height:none}
 #kmgx-preview .x-home-service-top>p,#kmgx-preview .x-home-service-top>div>p:not(.x-eyebrow){max-width:650px}
 #kmgx-preview .x-home-portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
 #kmgx-preview .x-home-pool-separator,#kmgx-preview .x-home-office-separator{background-attachment:scroll;min-height:310px}
}
@media(max-width:500px){
 #kmgx-preview .x-home-story .x-hero-copy{padding:35px 7% 26px!important;gap:23px}
 #kmgx-preview .x-home-story h1{font-size:clamp(31px,8.1vw,39px)}
 #kmgx-preview .x-home-story .x-eyebrow{font-size:8px;letter-spacing:.04em;margin-bottom:15px}
 #kmgx-preview .x-home-story .x-home-summary .x-button{margin-top:20px}
 #kmgx-preview .x-home-proof{display:block;padding-top:20px;margin-top:0}
 #kmgx-preview .x-home-proof>p:first-child{align-items:flex-start;gap:16px}
 #kmgx-preview .x-home-proof strong{font-size:27px}
 #kmgx-preview .x-home-proof span{font-size:11px;line-height:1.5;max-width:185px}
 #kmgx-preview .x-home-story .x-home-proof .x-home-origin{text-align:left;font-size:10px;margin-top:17px}
 #kmgx-preview .x-home-service,#kmgx-preview .x-home-portfolio{padding:48px 7%}
 #kmgx-preview .x-home-service-top h2{font-size:37px}
 #kmgx-preview .x-home-service-top .x-eyebrow{font-size:9px;letter-spacing:.07em}
 #kmgx-preview .x-home-service-photo img{height:275px}
 #kmgx-preview .x-home-feature-grid{grid-template-columns:1fr;gap:23px}
 #kmgx-preview .x-home-feature-grid h3{font-size:21px}
 #kmgx-preview .x-home-feature-grid p{font-size:15px}
 #kmgx-preview .x-home-delivery{padding:22px}
 #kmgx-preview .x-home-service-links{gap:6px}
 #kmgx-preview .x-home-workforce-intro{padding:26px}
 #kmgx-preview .x-home-pool-separator,#kmgx-preview .x-home-office-separator{min-height:270px;padding:44px 7%}
 #kmgx-preview .x-home-pool-separator h2,#kmgx-preview .x-home-office-separator h2{font-size:32px}
 #kmgx-preview .x-home-portfolio-grid{grid-template-columns:1fr;gap:24px}
 #kmgx-preview .x-home-portfolio-card img{height:235px}
 #kmgx-preview .x-home-group{padding:48px 7%}
 #kmgx-preview .x-home-group>.x-home-contact{margin:24px 0 0}
}
@media(prefers-reduced-motion:reduce){#kmgx-preview .x-home-pool-separator,#kmgx-preview .x-home-office-separator{background-attachment:scroll!important}}
/* Owner-approved navy replacement: existing --x-navy is #132e3e. */
#kmgx-preview .x-footer-bottom{border-top-color:var(--x-navy)}
#kmgx-preview .x-home-hero,#kmgx-preview .x-home-service-government,#kmgx-preview .x-home-group{background:var(--x-navy);color:var(--x-cream)}
#kmgx-preview .x-home-story .x-eyebrow,#kmgx-preview .x-home-story .x-lead,#kmgx-preview .x-home-proof>p:first-child,#kmgx-preview .x-home-story .x-home-origin{color:var(--x-cream)}
#kmgx-preview .x-home-proof{border-color:#ffffff40}
#kmgx-preview .x-home-service-hospitality h2,#kmgx-preview .x-home-service-hospitality .x-home-service-top>p,#kmgx-preview .x-home-service-hospitality .x-home-feature-grid h3,#kmgx-preview .x-home-service-hospitality .x-home-feature-grid p,#kmgx-preview .x-home-service-hospitality .x-text-link{color:var(--x-navy)}
#kmgx-preview .x-home-service-hospitality .x-home-feature-grid article,#kmgx-preview .x-home-service-hospitality .x-text-link{border-color:var(--x-navy)}
#kmgx-preview .x-home-service-photo,#kmgx-preview .x-home-service-photo figcaption{background:var(--x-navy);color:var(--x-cream)}
#kmgx-preview .x-home-service-hospitality .x-home-delivery{background:var(--x-navy);border-color:var(--x-navy)}
#kmgx-preview .x-home-service-hospitality .x-home-delivery p{color:var(--x-cream)}
#kmgx-preview .x-home-service-government h2 em,#kmgx-preview .x-home-service-government p,#kmgx-preview .x-home-service-government .x-home-feature-grid p,#kmgx-preview .x-home-service-government .x-home-delivery p,#kmgx-preview .x-home-service-government .x-text-link{color:var(--x-cream)}
#kmgx-preview .x-home-service-government .x-home-feature-grid article,#kmgx-preview .x-home-service-government .x-home-delivery,#kmgx-preview .x-home-service-government .x-text-link{border-color:#ffffff70}
#kmgx-preview .x-home-service-government .x-home-service-photo,#kmgx-preview .x-home-service-government .x-home-service-photo figcaption{background:var(--x-navy);color:var(--x-cream)}
#kmgx-preview .x-home-service-government .x-home-service-photo img{object-position:44% center}
#kmgx-preview .x-home-pool-separator:before,#kmgx-preview .x-home-office-separator:before{background:linear-gradient(90deg,#132e3ee6,#132e3e24)}
#kmgx-preview .x-home-service-workforce h2,#kmgx-preview .x-home-service-workforce p,#kmgx-preview .x-home-service-workforce .x-home-feature-grid p,#kmgx-preview .x-home-service-workforce .x-home-feature-grid h3,#kmgx-preview .x-home-service-workforce .x-home-delivery p{color:var(--x-navy)}
#kmgx-preview .x-home-portfolio h2,#kmgx-preview .x-home-portfolio .x-home-service-top p,#kmgx-preview .x-home-portfolio-card h3,#kmgx-preview .x-home-portfolio-card p,#kmgx-preview .x-home-portfolio-card span,#kmgx-preview .x-home-portfolio .x-text-link{color:var(--x-navy)}
#kmgx-preview .x-home-portfolio-card,#kmgx-preview .x-home-portfolio-card span{border-color:var(--x-navy)}
#kmgx-preview .x-home-portfolio-card>a:hover,#kmgx-preview .x-home-portfolio-card>a:focus-visible{background:var(--x-navy)}
#kmgx-preview .x-home-portfolio-card>a:hover h3,#kmgx-preview .x-home-portfolio-card>a:hover p,#kmgx-preview .x-home-portfolio-card>a:hover span,#kmgx-preview .x-home-portfolio-card>a:focus-visible h3,#kmgx-preview .x-home-portfolio-card>a:focus-visible p,#kmgx-preview .x-home-portfolio-card>a:focus-visible span{color:var(--x-cream);border-color:#ffffff70}
#kmgx-preview .x-home-group{border-color:var(--x-navy)}
#kmgx-preview .x-home-group h2,#kmgx-preview .x-home-group>p,#kmgx-preview .x-home-group>.x-text-link{color:var(--x-cream)}
#kmgx-preview .x-home-group>.x-text-link{border-color:var(--x-cream)}
#kmgx-preview .x-home-group .x-company-caption{color:var(--x-navy)}
#kmgx-preview .x-home-group .x-company-wordmarks>a{border-color:var(--x-navy)}
#kmgx-preview .x-key-watermark-group{filter:none;opacity:.055}
@media(max-width:650px){#kmgx-preview .x-key-watermark-group{opacity:.035}}

