/* CJS Mechanical website refresh (One Growth). Loaded site-wide from the "CJS Site" widget. */
:root{--cjs-blue:#0B5FB0;--cjs-blue-d:#0A3F7A;--cjs-lime:#A6CE39;--cjs-lime-d:#93BC28;--cjs-ink:#1D232B;--cjs-muted:#5B6573;--cjs-line:#DDE3EA;--cjs-paper:#F4F6F8}

.cjs-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:Arimo,Arial,sans-serif;font-weight:700;text-decoration:none!important;border-radius:8px;white-space:nowrap;line-height:1.2;transition:background .15s,color .15s,border-color .15s;box-sizing:border-box}
.cjs-btn-lime{background:var(--cjs-lime);color:#14200A!important}
.cjs-btn-lime:hover{background:var(--cjs-lime-d)}
.cjs-btn-blue{background:var(--cjs-blue);color:#fff!important}
.cjs-btn-blue:hover{background:var(--cjs-blue-d)}
.cjs-btn-ghost{border:2px solid #fff;color:#fff!important}
.cjs-btn-ghost:hover{background:#fff;color:var(--cjs-blue-d)!important}
.cjs-btn-md{font-size:16px;padding:13px 22px}
.cjs-btn-lg{font-size:18px;padding:16px 28px}
.cjs-btn:focus-visible,.cjs-top-book:focus-visible{outline:3px solid var(--cjs-lime);outline-offset:2px}

/* 1. Top bar */
.header-connect .social-icons a[href*="book-service"]{display:none!important}
.header-connect .phone-number .cjs-top-book{display:inline-block;background:var(--cjs-lime);color:#14200A!important;font-weight:700;text-transform:uppercase;font-size:13px;letter-spacing:.4px;padding:6px 12px;border-radius:3px;text-decoration:none;margin-right:10px;line-height:1.3;vertical-align:middle}
.header-connect .phone-number .cjs-top-book:hover{background:var(--cjs-lime-d)}
.header-connect .phone-number .cjs-top-call{color:#3B4652;vertical-align:middle}
.header-connect .phone-number .cjs-top-call a{font-weight:700}

/* 2. Book online in the main menu */
@media (min-width:1000px){
  .logo-cell img{max-width:340px;height:auto}
  .nav-cell>ul>li>a{padding-left:16px!important;padding-right:16px!important}
  .nav-cell li.cjs-nav-book{display:inline-block;vertical-align:top;padding-top:42px}
}
.nav-cell li.cjs-nav-book{border:0!important}
.nav-cell li.cjs-nav-book>a.cjs-nav-book-link{background:var(--cjs-lime)!important;color:#14200A!important;border-radius:8px;padding:13px 20px!important;margin-left:10px;font-weight:700;line-height:1.2!important;height:auto!important;border:0!important}
.nav-cell li.cjs-nav-book>a.cjs-nav-book-link:hover{background:var(--cjs-lime-d)!important}

/* 3 and 4. Homepage banner */
.hero-text-overlay-wrapper.cjs-hidden{display:none!important}
.cjs-hero{position:absolute;left:0;right:0;top:0;bottom:0;z-index:15;text-align:left;align-items:flex-start!important;background:linear-gradient(90deg,rgba(9,25,48,.9) 0%,rgba(9,25,48,.72) 42%,rgba(9,25,48,.08) 78%);display:flex;align-items:center;pointer-events:none}
.cjs-hero a{pointer-events:auto}
.cjs-hero-in{max-width:none;padding:26px 0 0 max(90px,calc((100% - 1200px)/2 + 80px));color:#fff;font-family:Arimo,Arial,sans-serif;text-shadow:none}
.hero-nav-arrows-wrapper,.hero-nav{z-index:16}
.cjs-hero-in h2{font-size:38px!important;line-height:1.08!important;margin:0 0 12px!important;text-align:left!important;padding:0!important;text-transform:uppercase;letter-spacing:-.5px;color:#fff;font-weight:700}
.cjs-hero-in p{font-size:18px;line-height:1.45;margin:0 0 18px;text-align:left;max-width:600px;color:#DCE6F2;text-transform:none}
.cjs-hero-in .cjs-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:14px}
.cjs-hero-in .cjs-btn-lg{font-size:17px;padding:14px 24px}
.cjs-facts{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:14px;color:#C9D6E6}
.cjs-facts span::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--cjs-lime);margin-right:8px;vertical-align:1px}

/* 5. Book in 3 easy steps (homepage content) */
.cjs-steps{background:var(--cjs-paper);border-radius:14px;padding:28px 32px;margin:10px 0 36px;display:grid;grid-template-columns:220px repeat(3,minmax(0,1fr)) auto;gap:24px;align-items:center;font-family:Arimo,Arial,sans-serif}
.cjs-steps h2{text-align:left!important;margin:0!important;font-size:24px!important;line-height:1.15!important;color:var(--cjs-ink)!important;text-transform:none!important}
.cjs-step{display:flex;gap:12px;align-items:flex-start}
.cjs-step em{font-style:normal;width:34px;height:34px;border-radius:50%;background:var(--cjs-blue);color:#fff;font-weight:700;display:grid;place-items:center;flex:none}
.cjs-step b{display:block;font-size:15px;color:var(--cjs-ink)}
.cjs-step small{display:block;color:var(--cjs-muted);font-size:13.5px}
.cjs-steps p{margin:0!important}

/* 6. FAQ (homepage content) */
.cjs-faq{margin:36px 0 10px;font-family:Arimo,Arial,sans-serif}
.cjs-faq h2{margin:0 0 6px!important}
.cjs-faq .cjs-sub{color:var(--cjs-muted);margin:0 0 18px}
.cjs-qa{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.cjs-q{border:1px solid var(--cjs-line);border-radius:10px;padding:16px 18px;background:#fff}
.cjs-q h3{text-align:left!important;display:block;font-size:16px!important;margin:0 0 4px!important;color:var(--cjs-ink)!important;text-transform:none!important;font-weight:700!important;line-height:1.35!important}
.cjs-q p{text-align:left;font-size:15px;color:#434D5A;margin:0!important}

/* Service areas and contact pages */
.cjs-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0}
.cjs-card{border:1px solid var(--cjs-line);border-radius:12px;padding:18px 20px;background:#fff}
.cjs-card h3{text-align:left!important;margin:0 0 4px!important;font-size:17px!important;text-transform:none!important}
.cjs-card p{margin:0 0 4px!important}
.cjs-card .cjs-big{font-size:21px;font-weight:700}
.cjs-card .cjs-big a{text-decoration:none}
.cjs-lead{background:var(--cjs-paper);border-left:5px solid var(--cjs-lime);border-radius:10px;padding:22px 24px;margin:18px 0 24px}
.cjs-lead h2{text-align:left!important;margin:0 0 6px!important}
.cjs-lead p{margin:0 0 14px!important}
.cjs-areas{columns:2;padding-left:20px}

/* 7. Ready to book band */
.cjs-band{background:var(--cjs-blue);color:#fff;border-top:5px solid var(--cjs-lime);font-family:Arimo,Arial,sans-serif}
.cjs-band-in{max-width:1180px;margin:0 auto;padding:34px 30px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.cjs-band+.footer-wrapper{margin-top:0!important}
.cjs-band{margin-top:40px}
.cjs-band-in>div:first-child{text-align:left}
.cjs-band h2{text-align:left!important;margin:0;font-size:28px;color:#fff;text-transform:none;line-height:1.2}
.cjs-band p{margin:4px 0 0;color:#D6E4F5;font-size:16px}
.cjs-band .cjs-ctas{display:flex;flex-wrap:wrap;gap:12px}

/* 9. Mobile Book and Call bar */
.cjs-mbar{display:none}

@media (max-width:1100px){
  .cjs-steps{grid-template-columns:1fr 1fr 1fr;}
  .cjs-steps h2{grid-column:1/-1}
  .cjs-steps .cjs-steps-cta{grid-column:1/-1}
}
@media (max-width:767px){
  .header-connect .phone-number .cjs-top-call{display:none}
  .nav-cell li.cjs-nav-book>a.cjs-nav-book-link{margin:8px 0 8px 0;display:block;text-align:center}
  .cjs-hero{background:linear-gradient(180deg,rgba(9,25,48,.55),rgba(9,25,48,.92))}
  .cjs-hero-in{padding:16px 18px!important}
  .cjs-hero-in h2{font-size:23px!important;margin-bottom:10px!important}
  .cjs-hero-in p{display:none}
  .cjs-hero-in .cjs-btn-lg{font-size:16px;padding:12px 18px}
  .cjs-hero-in .cjs-ctas .cjs-btn{width:100%}
  .cjs-hero-in .cjs-ctas .cjs-btn-ghost,.cjs-facts{display:none}
  .cjs-steps{grid-template-columns:1fr;padding:22px 20px}
  .cjs-qa,.cjs-cards{grid-template-columns:1fr}
  .cjs-areas{columns:1}
  .cjs-band-in{padding:28px 18px}
  .cjs-band .cjs-ctas,.cjs-band .cjs-btn{width:100%}
  .cjs-mbar{display:grid;grid-template-columns:1fr 1fr;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:2147482000;background:#fff;padding:8px 10px calc(8px + env(safe-area-inset-bottom,0px));box-shadow:0 -6px 20px rgba(0,0,0,.18)}
  .cjs-mbar .cjs-btn{font-size:16px;padding:13px 10px}
  body.cjs-has-mbar{padding-bottom:72px}
  body.cjs-has-mbar #cjs-chat-btn{bottom:84px}
  body.cjs-has-mbar #cjs-teaser{bottom:148px}
  body.cjs-has-mbar #cjs-chat-btn.open{bottom:auto}
}
@media (max-width:400px){.header-connect .social-label,.header-connect ul.social{display:none!important}}
@media (prefers-reduced-motion:reduce){.cjs-btn{transition:none}}
