@font-face{font-family:GKRNavigation;src:url('/wp-content/uploads/goldkey-revisions-2026-09-28/assets/gk-archivo-1.woff2') format('woff2');font-weight:100 900;font-stretch:62% 125%;font-display:swap}
.gkr-navigation,.gkr-navigation *{box-sizing:border-box}.gkr-navigation{font-family:GKRNavigation,Arial,sans-serif;color:#f0f2f4;background:#101820;position:relative;z-index:1000}.gkr-navigation a{color:inherit;text-decoration:none}.gkr-navigation button{font:inherit;cursor:pointer}.gkr-navigation :focus-visible{outline:3px solid #e3e829;outline-offset:5px}.gkr-navigation a:hover,.gkr-navigation a:focus-visible{color:#e3e829;text-decoration:none}.gkr-site-header{min-height:100px;padding:16px 4vw;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;border-bottom:1px solid #f0f2f426}.gkr-brand{display:block;width:103px}.gkr-brand img{display:block;width:100%;height:68px;object-fit:contain}.gkr-header-actions{display:flex;justify-content:flex-end;align-items:center;gap:24px;font-weight:700}.gkr-nav-cta,.gkr-menu-open{border:0!important;border-radius:28px!important;background:#e3e829!important;color:#101820!important;padding:12px 20px;font-weight:700!important}.gkr-menu-open{display:flex;align-items:center;gap:12px}.gkr-menu-open span{font-size:20px;line-height:1}.gkr-skip{position:absolute;left:16px;top:-100px;padding:12px;background:#e3e829;color:#101820!important;z-index:2}.gkr-skip:focus{top:8px}#gkr-content-start{scroll-margin-top:20px;outline:0}
#gkr-site-menu{box-sizing:border-box;position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:20px 4vw 64px;border:0;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(100% / 18 - 1px),#f0f2f407 calc(100% / 18 - 1px),#f0f2f407 calc(100% / 18)),#101820;color:#f0f2f4;overflow-y:auto;overscroll-behavior:contain}#gkr-site-menu:not([open]){display:none}#gkr-site-menu::backdrop{background:#101820}.gkr-menu-top{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px}.gkr-menu-top>a:last-child{justify-self:end;font-weight:700}.gkr-menu-close{border:0!important;border-radius:50%!important;background:#e3e829!important;color:#101820!important;width:44px!important;height:44px!important;min-width:44px;min-height:44px;padding:0!important;display:grid;place-items:center;line-height:0}.gkr-menu-close svg{display:block;width:24px;height:24px;pointer-events:none}.gkr-navigation ul{list-style:none;margin:0;padding:0}.gkr-primary-links{display:grid;grid-template-columns:1fr 1fr;gap:12px 6vw;padding:60px 0!important}.gkr-primary-links a{font-size:clamp(28px,3.4vw,60px);font-weight:800;line-height:1.12;text-transform:uppercase;font-stretch:125%}.gkr-primary-links [aria-current=page]{color:#e3e829}.gkr-menu-details{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:7vw;padding-top:30px;border-top:1px solid #f0f2f426;font-size:17px;line-height:1.6}.gkr-menu-details h2{color:#bd9a7a;font:700 15px GKRNavigation,Arial,sans-serif;text-transform:uppercase;letter-spacing:.1em;margin:0 0 18px}.gkr-menu-details li{margin-bottom:8px}.gkr-menu-details address{font-style:normal;margin:0 0 24px;color:#adb6bf}.gkr-menu-details strong{color:#f0f2f4}.gkr-menu-locked{overflow:hidden!important}
@media(max-width:900px){.gkr-header-actions .gkr-nav-cta{display:none}.gkr-menu-details{gap:30px}.gkr-site-header{min-height:88px;padding:12px 5vw}.gkr-brand{width:84px}.gkr-brand img{height:56px}.gkr-primary-links{padding:40px 0!important}}
@media(max-width:620px){.gkr-site-header{display:flex;flex-wrap:nowrap;gap:8px;min-height:76px;padding:12px 4vw}.gkr-site-header>.gkr-brand{width:clamp(64px,16vw,80px);flex-shrink:0;margin-right:auto}.gkr-site-header>.gkr-brand img{height:52px}.gkr-menu-open{flex-shrink:0;min-height:44px;padding:10px 12px;font-size:14px;gap:6px}.gkr-menu-open span{font-size:16px}.gkr-header-actions{flex-shrink:0;justify-content:flex-end;font-size:14px;margin:0;gap:0}.gkr-header-actions>a[href^="tel:"]{display:none}.gkr-menu-top{grid-template-columns:1fr auto}.gkr-menu-top>a:last-child{grid-column:1/-1;justify-self:start}.gkr-primary-links{grid-template-columns:1fr;gap:18px}.gkr-primary-links a{font-size:clamp(24px,7vw,38px)}.gkr-menu-details{grid-template-columns:1fr;gap:32px}#gkr-site-menu{padding:16px 6vw 48px}}
/* The shared header sits in normal flow, so the old overlay-header allowance is no longer needed. */
body #gk-wp-root .gk-hero__stage{padding-top:clamp(24px,5vh,64px)}
/* Keep every rebuilt page's footer consistent with the shared header. */
body #gk-wp-root .gk-footer{background-color:#101820!important}
/* A compact, full-width accreditation strip above the footer details. */
body #gk-wp-root .gk-footer:has(> .gk-logo-marquee){padding-top:0!important}
body #gk-wp-root .gk-footer > .gk-logo-marquee{background:#000;padding:25px 0;margin:0 0 40px;width:100%;box-sizing:border-box}
body #gk-wp-root .gk-logo-marquee__group{padding-block:0}
body #gk-wp-root .gk-logo-marquee .gk-logo-marquee__logo{min-height:90px}
body #gk-wp-root .gk-logo-marquee__logo--bbb img{width:169px;height:56px}
body #gk-wp-root .gk-logo-marquee__logo--certainteed img{width:70px;height:74px}
body #gk-wp-root .gk-logo-marquee__logo--lobby img{width:149px;height:61px}
body #gk-wp-root .gk-logo-marquee__logo--google img{width:131px;height:90px}
body #gk-wp-root .gk-logo-marquee__logo--florida img{width:90px;height:90px}

/* Keep the payment action visible at every screen size. */
.gkr-header-actions > a{white-space:nowrap}
.gkr-header-actions .gkr-payment{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border:1px solid #e3e829;border-radius:28px;color:#e3e829;font-size:15px;line-height:1.4;transition:background-color .2s,color .2s}
.gkr-header-actions .gkr-payment:is(:hover,:focus-visible){background:#e3e829;color:#101820}
@media(max-width:1200px){.gkr-header-actions .gkr-nav-cta{display:none}.gkr-header-actions{gap:16px}}
@media(max-width:900px){.gkr-header-actions{font-size:14px;gap:12px}.gkr-header-actions .gkr-payment{font-size:14px;padding-inline:14px}}
@media(max-width:620px){.gkr-header-actions{flex-wrap:nowrap}.gkr-header-actions:not(:has(.gkr-payment)){display:none}.gkr-header-actions .gkr-payment{font-size:clamp(12px,3vw,14px);padding:9px 10px;min-height:44px}}

/* Decorative phone receivers; existing SVG/image icons are left as-is. */
body a[href^="tel:"]:not(:has(svg,img))::before{
  content:"";
  display:inline-block;
  width:clamp(16px,1em,28px);
  height:clamp(16px,1em,28px);
  flex:0 0 auto;
  margin-inline-end:.4em;
  vertical-align:-.16em;
  background-color:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M5%204h4l2%205l-2.5%201.5a11%2011%200%200%200%205%205l1.5%20-2.5l5%202v4a2%202%200%200%201%20-2%202a16%2016%200%200%201%20-15%20-15a2%202%200%200%201%202%20-2%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M5%204h4l2%205l-2.5%201.5a11%2011%200%200%200%205%205l1.5%20-2.5l5%202v4a2%202%200%200%201%20-2%202a16%2016%200%200%201%20-15%20-15a2%202%200%200%201%202%20-2%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;
}
.gkr-navigation a[href^="tel:"]:not(:has(svg,img))::before,
body #gk-wp-root .gk-footer a[href^="tel:"]:not(:has(svg,img))::before{
  background-color:#e3e829;
}
/* Reserve room for the receiver beside the large inspection phone number. */
@media(max-width:669.98px){body #gk-wp-root .gk-cta__phone{font-size:clamp(1.65rem,.1rem + 8.1vw,3rem)!important}}

/* Sticky header (2026-10-06 review). The header stays at the top of the window on every page. On a page that
   opens with a photo hero (body.gkr-has-hero) it starts clear over the photo and turns solid black once the
   page scrolls. site-navigation.js sets is-solid and the measured --gkr-header-h. */
:root{--gkr-header-h:101px}
html{scroll-padding-top:var(--gkr-header-h)}
.gkr-navigation{position:sticky;top:0;transition:background-color .3s ease,box-shadow .3s ease}
.admin-bar .gkr-navigation{top:32px}
.gkr-site-header{transition:border-color .3s ease,background-color .3s ease}
.gkr-navigation.is-solid{box-shadow:0 12px 32px -22px rgb(0 0 0 / .7)}
.gkr-has-hero .gkr-navigation{margin-bottom:calc(-1 * var(--gkr-header-h))}
.gkr-has-hero .gkr-navigation:not(.is-solid){background:transparent}
.gkr-has-hero .gkr-navigation:not(.is-solid) .gkr-site-header{border-bottom-color:transparent;background:linear-gradient(180deg,rgb(16 24 32 / .62) 0%,rgb(16 24 32 / .28) 60%,rgb(16 24 32 / 0) 100%) border-box no-repeat}
.gkr-has-hero #gk-wp-root .gkr-hero{padding-top:var(--gkr-header-h)}
@media(min-width:1000px){.gkr-has-hero #gk-wp-root .gk-hero__stage{padding-top:calc(var(--gkr-header-h) + clamp(24px,5vh,64px))}}
@media(max-width:900px){:root{--gkr-header-h:89px}}
@media(max-width:782px){.admin-bar .gkr-navigation{top:46px}}
@media(max-width:620px){:root{--gkr-header-h:77px}.gkr-has-hero .gkr-navigation:not(.is-solid) .gkr-site-header{background:linear-gradient(180deg,rgb(16 24 32 / .92) 0%,rgb(16 24 32 / .8) 72%,rgb(16 24 32 / 0) 100%) border-box no-repeat}.gkr-has-hero .gkr-navigation:not(.is-solid) .gkr-header-actions>a:first-child{text-shadow:0 1px 10px rgb(16 24 32 / .9)}.gkr-has-hero .gkr-navigation:not(.is-solid) .gkr-payment:not(:hover):not(:focus-visible){background:rgb(16 24 32 / .55)}}
@media(max-width:600px){.admin-bar .gkr-navigation{top:0}}
@media(prefers-reduced-motion:reduce){.gkr-navigation,.gkr-site-header{transition:none}}
/* Financing in the header (Gold Key's notes, 2026-10-16). The menu lists it too, so it steps aside below 900px. */
.gkr-header-actions .gkr-header-financing{font-weight:700}
@media(max-width:900px){.gkr-header-actions .gkr-header-financing{display:none}}
