/* James Woolford Design — secondary page reset v50
   Removes the blue/white haze everywhere except the homepage and gives
   Areas + location pages deliberate, readable chapter surfaces. */
:root{
  --jw50-ink:#0b0d12;
  --jw50-muted:#62656d;
  --jw50-paper:#f4f1ea;
  --jw50-paper-2:#ebeef4;
  --jw50-white:#ffffff;
  --jw50-dark:#090c14;
  --jw50-dark-2:#11182a;
  --jw50-blue:#2b5cff;
  --jw50-blue-deep:#173893;
  --jw50-line:rgba(11,13,18,.14);
  --jw50-light-line:rgba(255,255,255,.15);
}

html{scroll-padding-top:112px}

/* -------------------------------------------------------------------------- */
/* Remove all inherited haze/motion on secondary pages only.                  */
/* -------------------------------------------------------------------------- */
.jw50-secondary-clean{
  background:var(--jw50-paper)!important;
  background-image:none!important;
  color:var(--jw50-ink)!important;
}
.jw50-secondary-clean::before,
.jw50-secondary-clean::after,
.jw50-secondary-clean .jw-section-motion::before,
.jw50-secondary-clean .jw-section-motion::after,
.jw50-secondary-clean .site-ambient::before,
.jw50-secondary-clean .site-ambient::after,
.jw50-secondary-clean .ambient-section::before,
.jw50-secondary-clean .ambient-section::after{
  content:none!important;
  display:none!important;
  background:none!important;
  animation:none!important;
}
.jw50-secondary-clean .jw-section-motion,
.jw50-secondary-clean .site-ambient,
.jw50-secondary-clean .ambient-section{
  background-image:none!important;
  animation:none!important;
}
.jw50-secondary-clean .light-rays-container,
.jw50-secondary-clean [class*="page-rays"],
.jw50-secondary-clean [class*="background-motion"]{
  display:none!important;
}
.jw50-secondary-clean section{
  scroll-margin-top:112px;
  background-image:none!important;
  animation:none!important;
}
.jw50-secondary-clean .site-reveal{
  opacity:1!important;
  visibility:visible!important;
  transform:none!important;
}

/* -------------------------------------------------------------------------- */
/* Areas directory.                                                           */
/* -------------------------------------------------------------------------- */
.areas-page.jw50-secondary-clean{
  background:var(--jw50-paper)!important;
}
.areas-page.jw50-secondary-clean .areas-hero{
  min-height:650px!important;
  padding:clamp(188px,14vw,230px) 0 clamp(88px,8vw,118px)!important;
  display:flex!important;
  align-items:flex-end!important;
  color:#fff!important;
  border:0!important;
  background-color:var(--jw50-dark)!important;
  background-image:
    linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px),
    linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),
    linear-gradient(135deg,#080b13 0%,#11182a 62%,#142453 100%)!important;
  background-size:72px 72px,72px 72px,auto!important;
  background-position:center!important;
}
.areas-page.jw50-secondary-clean .areas-hero::before,
.areas-page.jw50-secondary-clean .areas-hero::after{display:none!important}
.areas-page.jw50-secondary-clean .areas-hero h1,
.areas-page.jw50-secondary-clean .areas-hero p{color:#fff!important}
.areas-page.jw50-secondary-clean .areas-hero p{color:rgba(255,255,255,.7)!important}
.areas-page.jw50-secondary-clean .areas-hero .section-kicker{color:#91a9ff!important}
.areas-page.jw50-secondary-clean .areas-hero__grid{
  align-items:end!important;
  gap:clamp(42px,7vw,110px)!important;
}

.areas-page.jw50-secondary-clean .areas-directory{
  padding:clamp(90px,8vw,136px) 0!important;
  background:var(--jw50-paper)!important;
  color:var(--jw50-ink)!important;
}
.areas-page.jw50-secondary-clean .areas-directory h2,
.areas-page.jw50-secondary-clean .areas-directory h3,
.areas-page.jw50-secondary-clean .areas-directory p{color:var(--jw50-ink)!important}
.areas-page.jw50-secondary-clean .areas-directory p{color:var(--jw50-muted)!important}
.areas-page.jw50-secondary-clean .jw47-section-head,
.areas-page.jw50-secondary-clean .areas-matrix-head{
  margin-bottom:clamp(44px,5vw,72px)!important;
  padding-bottom:clamp(30px,3vw,42px)!important;
  border-bottom:1px solid var(--jw50-line)!important;
}
.areas-page.jw50-secondary-clean .jw47-area-services,
.areas-page.jw50-secondary-clean .jw45-service-directory{
  gap:16px!important;
}
.areas-page.jw50-secondary-clean .jw47-area-services>a,
.areas-page.jw50-secondary-clean .jw45-area-service-card,
.areas-page.jw50-secondary-clean .jw45-service-directory>a{
  min-height:330px!important;
  padding:32px!important;
  color:var(--jw50-ink)!important;
  border:1px solid var(--jw50-line)!important;
  background:#fff!important;
  box-shadow:0 18px 45px rgba(22,27,42,.07)!important;
  opacity:1!important;
  backdrop-filter:none!important;
}
.areas-page.jw50-secondary-clean .jw47-area-services>a:hover,
.areas-page.jw50-secondary-clean .jw45-area-service-card:hover,
.areas-page.jw50-secondary-clean .jw45-service-directory>a:hover{
  transform:translateY(-6px)!important;
  border-color:rgba(43,92,255,.5)!important;
  box-shadow:0 28px 65px rgba(43,92,255,.12)!important;
}
.areas-page.jw50-secondary-clean .jw47-area-services h3,
.areas-page.jw50-secondary-clean .jw45-area-service-card h3,
.areas-page.jw50-secondary-clean .jw45-service-directory h3{color:var(--jw50-ink)!important}
.areas-page.jw50-secondary-clean .jw47-area-services p,
.areas-page.jw50-secondary-clean .jw45-area-service-card p,
.areas-page.jw50-secondary-clean .jw45-service-directory p{color:var(--jw50-muted)!important}

.areas-page.jw50-secondary-clean .areas-matrix-section{
  padding:clamp(92px,9vw,144px) 0!important;
  color:#fff!important;
  background:#10172a!important;
}
.areas-page.jw50-secondary-clean .areas-matrix-section h2,
.areas-page.jw50-secondary-clean .areas-matrix-section h3,
.areas-page.jw50-secondary-clean .areas-matrix-section p,
.areas-page.jw50-secondary-clean .areas-matrix-section .section-kicker{color:#fff!important}
.areas-page.jw50-secondary-clean .areas-matrix-section p{color:rgba(255,255,255,.66)!important}
.areas-page.jw50-secondary-clean .jw47-location-grid,
.areas-page.jw50-secondary-clean .jw45-area-matrix-grid{gap:16px!important}
.areas-page.jw50-secondary-clean .jw47-location-grid article,
.areas-page.jw50-secondary-clean .jw45-area-matrix-card{
  padding:30px!important;
  border:1px solid var(--jw50-light-line)!important;
  background:#151d33!important;
  color:#fff!important;
  box-shadow:none!important;
}
.areas-page.jw50-secondary-clean .jw47-location-grid article:nth-child(2n),
.areas-page.jw50-secondary-clean .jw45-area-matrix-card:nth-child(2n){background:#182440!important}
.areas-page.jw50-secondary-clean .jw47-location-grid h3,
.areas-page.jw50-secondary-clean .jw45-area-matrix-card h3{color:#fff!important}
.areas-page.jw50-secondary-clean .jw47-location-grid a,
.areas-page.jw50-secondary-clean .jw45-area-matrix-card a{
  color:rgba(255,255,255,.84)!important;
  border-color:rgba(255,255,255,.14)!important;
  background:rgba(255,255,255,.035)!important;
}
.areas-page.jw50-secondary-clean .jw47-location-grid a:hover,
.areas-page.jw50-secondary-clean .jw45-area-matrix-card a:hover{
  color:#fff!important;
  border-color:#6e8cff!important;
  background:rgba(43,92,255,.22)!important;
}

/* -------------------------------------------------------------------------- */
/* Web-design location pages.                                                 */
/* -------------------------------------------------------------------------- */
.location-page.jw50-secondary-clean{
  background:var(--jw50-paper)!important;
}
.location-page.jw50-secondary-clean .location-hero{
  min-height:660px!important;
  padding:clamp(188px,14vw,230px) 0 clamp(88px,8vw,118px)!important;
  display:flex!important;
  align-items:flex-end!important;
  color:#fff!important;
  border:0!important;
  background-color:var(--jw50-dark)!important;
  background-image:
    linear-gradient(110deg,rgba(43,92,255,.14),transparent 46%),
    linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px),
    linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),
    linear-gradient(135deg,#080b13 0%,#11182a 64%,#13234e 100%)!important;
  background-size:auto,76px 76px,76px 76px,auto!important;
}
.location-page.jw50-secondary-clean .location-hero::before,
.location-page.jw50-secondary-clean .location-hero::after{display:none!important}
.location-page.jw50-secondary-clean .location-hero__grid{
  align-items:end!important;
  gap:clamp(36px,6vw,88px)!important;
}
.location-page.jw50-secondary-clean .location-hero h1,
.location-page.jw50-secondary-clean .location-hero h2,
.location-page.jw50-secondary-clean .location-hero p,
.location-page.jw50-secondary-clean .location-hero a{color:#fff!important}
.location-page.jw50-secondary-clean .location-hero p{color:rgba(255,255,255,.7)!important}
.location-page.jw50-secondary-clean .location-hero .section-kicker{color:#91a9ff!important}
.location-page.jw50-secondary-clean .jw45-location-panel{
  color:#fff!important;
  border:1px solid rgba(255,255,255,.16)!important;
  background:#121a2e!important;
  box-shadow:0 24px 58px rgba(0,0,0,.28)!important;
}
.location-page.jw50-secondary-clean .jw45-location-panel *{color:#fff!important}

.location-page.jw50-secondary-clean .location-context{
  padding:clamp(92px,9vw,142px) 0!important;
  background:var(--jw50-paper)!important;
  color:var(--jw50-ink)!important;
}
.location-page.jw50-secondary-clean .location-context__grid{
  align-items:start!important;
  gap:clamp(40px,7vw,110px)!important;
}
.location-page.jw50-secondary-clean .location-context h2,
.location-page.jw50-secondary-clean .location-context h3{color:var(--jw50-ink)!important}
.location-page.jw50-secondary-clean .location-context .section-kicker{color:var(--jw50-blue)!important}
.location-page.jw50-secondary-clean .location-context__copy{
  padding:clamp(30px,4vw,50px)!important;
  border:1px solid var(--jw50-line)!important;
  background:#fff!important;
  box-shadow:0 18px 44px rgba(22,27,42,.06)!important;
}
.location-page.jw50-secondary-clean .location-context__copy p{color:var(--jw50-muted)!important}

.location-page.jw50-secondary-clean .location-benefits{
  padding:clamp(92px,9vw,142px) 0!important;
  color:#fff!important;
  background:#0b0f19!important;
}
.location-page.jw50-secondary-clean .location-benefits__grid{gap:16px!important;border:0!important}
.location-page.jw50-secondary-clean .location-benefits article{
  min-height:310px!important;
  padding:34px!important;
  border:1px solid var(--jw50-light-line)!important;
  background:#151b29!important;
}
.location-page.jw50-secondary-clean .location-benefits h3{color:#fff!important}
.location-page.jw50-secondary-clean .location-benefits p{color:rgba(255,255,255,.64)!important}

.location-page.jw50-secondary-clean .location-coverage{
  padding:clamp(92px,9vw,142px) 0!important;
  color:#fff!important;
  background:var(--jw50-blue)!important;
}
.location-page.jw50-secondary-clean .location-coverage *{color:#fff!important}
.location-page.jw50-secondary-clean .location-coverage__areas span{
  border-color:rgba(255,255,255,.23)!important;
  background:rgba(7,22,70,.16)!important;
}

.location-page.jw50-secondary-clean .location-hub-grid{
  padding:clamp(92px,9vw,142px) 0!important;
  color:#fff!important;
  background:#0b0f19!important;
}
.location-page.jw50-secondary-clean .location-hub-grid *{color:#fff!important}

.location-page.jw50-secondary-clean .location-pricing{
  padding:clamp(92px,9vw,142px) 0!important;
  color:var(--jw50-ink)!important;
  background:var(--jw50-paper-2)!important;
}
.location-page.jw50-secondary-clean .location-pricing .section-kicker,
.location-page.jw50-secondary-clean .location-pricing h1,
.location-page.jw50-secondary-clean .location-pricing h2,
.location-page.jw50-secondary-clean .location-pricing h3,
.location-page.jw50-secondary-clean .location-pricing strong,
.location-page.jw50-secondary-clean .location-pricing span,
.location-page.jw50-secondary-clean .location-pricing a{color:var(--jw50-ink)!important}
.location-page.jw50-secondary-clean .location-pricing p{color:var(--jw50-muted)!important}
.location-page.jw50-secondary-clean .location-pricing__layout{
  gap:clamp(40px,6vw,88px)!important;
  align-items:start!important;
}
.location-page.jw50-secondary-clean .location-pricing__figures{
  gap:14px!important;
  border:0!important;
}
.location-page.jw50-secondary-clean .location-pricing__figures>div{
  min-height:150px!important;
  padding:26px!important;
  border:1px solid var(--jw50-line)!important;
  background:#fff!important;
}

.location-page.jw50-secondary-clean .location-faq{
  padding:clamp(92px,9vw,142px) 0!important;
  color:var(--jw50-ink)!important;
  background:var(--jw50-paper)!important;
}
.location-page.jw50-secondary-clean .location-faq .section-kicker{color:var(--jw50-blue)!important}
.location-page.jw50-secondary-clean .location-faq h2,
.location-page.jw50-secondary-clean .location-faq h3{color:var(--jw50-ink)!important}
.location-page.jw50-secondary-clean .location-faq p{color:var(--jw50-muted)!important}
.location-page.jw50-secondary-clean .location-faq__layout{
  align-items:start!important;
  gap:clamp(38px,6vw,90px)!important;
}
.location-page.jw50-secondary-clean .location-faq__list{
  padding:0 clamp(22px,3vw,40px)!important;
  border:1px solid var(--jw50-line)!important;
  background:#fff!important;
  box-shadow:none!important;
}
.location-page.jw50-secondary-clean .location-nearby{
  padding:50px 0!important;
  color:#fff!important;
  background:#080b12!important;
}
.location-page.jw50-secondary-clean .location-nearby *{color:#fff!important}

/* -------------------------------------------------------------------------- */
/* Service + location pages.                                                  */
/* -------------------------------------------------------------------------- */
.local-service-page.jw50-secondary-clean{
  background:var(--jw50-paper)!important;
}
.local-service-page.jw50-secondary-clean .local-service-hero{
  min-height:650px!important;
  padding:clamp(188px,14vw,230px) 0 clamp(88px,8vw,118px)!important;
  color:#fff!important;
  background-color:var(--jw50-dark)!important;
  background-image:
    linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px),
    linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),
    linear-gradient(135deg,#080b13,#11182a 64%,#13234e)!important;
  background-size:76px 76px,76px 76px,auto!important;
}
.local-service-page.jw50-secondary-clean .local-service-hero h1,
.local-service-page.jw50-secondary-clean .local-service-hero p,
.local-service-page.jw50-secondary-clean .local-service-hero a{color:#fff!important}
.local-service-page.jw50-secondary-clean .local-service-hero p{color:rgba(255,255,255,.7)!important}
.local-service-page.jw50-secondary-clean .local-service-context{
  padding:clamp(92px,9vw,142px) 0!important;
  color:var(--jw50-ink)!important;
  background:var(--jw50-paper)!important;
}
.local-service-page.jw50-secondary-clean .local-service-context h2,
.local-service-page.jw50-secondary-clean .local-service-context h3{color:var(--jw50-ink)!important}
.local-service-page.jw50-secondary-clean .local-service-context__copy{
  padding:36px!important;
  border:1px solid var(--jw50-line)!important;
  background:#fff!important;
}
.local-service-page.jw50-secondary-clean .local-service-context__copy p{color:var(--jw50-muted)!important}
.local-service-page.jw50-secondary-clean .local-service-capabilities{
  padding:clamp(92px,9vw,142px) 0!important;
  color:#fff!important;
  background:#0b0f19!important;
}
.local-service-page.jw50-secondary-clean .local-service-capabilities h2,
.local-service-page.jw50-secondary-clean .local-service-capabilities h3{color:#fff!important}
.local-service-page.jw50-secondary-clean .local-service-capabilities p{color:rgba(255,255,255,.64)!important}
.local-service-page.jw50-secondary-clean .local-service-coverage{
  padding:clamp(92px,9vw,142px) 0!important;
  color:#fff!important;
  background:var(--jw50-blue)!important;
}
.local-service-page.jw50-secondary-clean .local-service-coverage *{color:#fff!important}
.local-service-page.jw50-secondary-clean .local-service-links{
  padding:clamp(82px,8vw,126px) 0!important;
  color:var(--jw50-ink)!important;
  background:var(--jw50-paper-2)!important;
}
.local-service-page.jw50-secondary-clean .local-service-links h2,
.local-service-page.jw50-secondary-clean .local-service-links h3,
.local-service-page.jw50-secondary-clean .local-service-links a{color:var(--jw50-ink)!important}
.local-service-page.jw50-secondary-clean .location-faq{
  padding:clamp(92px,9vw,142px) 0!important;
  color:var(--jw50-ink)!important;
  background:var(--jw50-paper)!important;
}
.local-service-page.jw50-secondary-clean .location-faq h2,
.local-service-page.jw50-secondary-clean .location-faq h3{color:var(--jw50-ink)!important}
.local-service-page.jw50-secondary-clean .location-faq p{color:var(--jw50-muted)!important}
.local-service-page.jw50-secondary-clean .location-faq__list{
  padding:0 30px!important;
  border:1px solid var(--jw50-line)!important;
  background:#fff!important;
}

/* -------------------------------------------------------------------------- */
/* Responsive spacing.                                                        */
/* -------------------------------------------------------------------------- */
@media(max-width:1000px){
  .areas-page.jw50-secondary-clean .areas-hero__grid,
  .location-page.jw50-secondary-clean .location-hero__grid{
    grid-template-columns:1fr minmax(300px,.75fr)!important;
  }
  .areas-page.jw50-secondary-clean .jw47-area-services{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

@media(max-width:760px){
  html{scroll-padding-top:92px}
  .jw50-secondary-clean section{scroll-margin-top:92px}

  .areas-page.jw50-secondary-clean .areas-hero,
  .location-page.jw50-secondary-clean .location-hero,
  .local-service-page.jw50-secondary-clean .local-service-hero{
    min-height:auto!important;
    padding:132px 0 72px!important;
  }
  .areas-page.jw50-secondary-clean .areas-hero__grid,
  .location-page.jw50-secondary-clean .location-hero__grid,
  .local-service-page.jw50-secondary-clean .local-service-hero__grid{
    grid-template-columns:1fr!important;
    gap:28px!important;
  }
  .areas-page.jw50-secondary-clean .areas-directory,
  .areas-page.jw50-secondary-clean .areas-matrix-section,
  .location-page.jw50-secondary-clean .location-context,
  .location-page.jw50-secondary-clean .location-benefits,
  .location-page.jw50-secondary-clean .location-coverage,
  .location-page.jw50-secondary-clean .location-pricing,
  .location-page.jw50-secondary-clean .location-faq,
  .local-service-page.jw50-secondary-clean .local-service-context,
  .local-service-page.jw50-secondary-clean .local-service-capabilities,
  .local-service-page.jw50-secondary-clean .local-service-coverage,
  .local-service-page.jw50-secondary-clean .local-service-links,
  .local-service-page.jw50-secondary-clean .location-faq{
    padding:72px 0!important;
  }
  .areas-page.jw50-secondary-clean .jw47-area-services{
    display:flex!important;
    overflow-x:auto!important;
    scroll-snap-type:x mandatory!important;
    gap:12px!important;
  }
  .areas-page.jw50-secondary-clean .jw47-area-services>a{
    flex:0 0 84vw!important;
    min-height:370px!important;
    scroll-snap-align:start!important;
  }
  .areas-page.jw50-secondary-clean .jw47-location-grid{grid-template-columns:1fr!important}
  .location-page.jw50-secondary-clean .location-benefits__grid{
    display:flex!important;
    overflow-x:auto!important;
    scroll-snap-type:x mandatory!important;
    gap:12px!important;
  }
  .location-page.jw50-secondary-clean .location-benefits article{
    flex:0 0 84vw!important;
    min-height:340px!important;
    scroll-snap-align:start!important;
  }
  .location-page.jw50-secondary-clean .location-pricing__figures{grid-template-columns:1fr!important}
  .location-page.jw50-secondary-clean .location-faq__layout{grid-template-columns:1fr!important;gap:34px!important}
  .location-page.jw50-secondary-clean .location-faq__list,
  .local-service-page.jw50-secondary-clean .location-faq__list{padding:0 18px!important}
}

@media(prefers-reduced-motion:reduce){
  .jw50-secondary-clean *{animation:none!important;transition-duration:.01ms!important}
}
