/* Great Falls prototype additions to the reused Billings visual foundation. */
.hero{background-image:linear-gradient(90deg,rgba(5,17,28,.94) 0%,rgba(5,17,28,.79) 32%,rgba(5,17,28,.35) 65%,rgba(5,17,28,.15)),url('./assets/great-falls-hero.png');background-size:cover;background-position:center;min-height:590px}.heroContour{display:none}.heroCopy{max-width:800px!important}.hero h1{font-size:clamp(45px,5.5vw,74px)!important}.heroText{max-width:510px!important}.hero .searchBox{max-width:570px}.artCredit{background:#071828aa;padding:5px 8px;border-radius:4px}@media(max-width:700px){.hero{background-position:60% center;min-height:550px;background-image:linear-gradient(90deg,rgba(5,17,28,.92),rgba(5,17,28,.66)),url('./assets/great-falls-hero.png')}.hero h1{font-size:48px!important}.heroCopy{max-width:100%!important}}
nav{display:flex}.artCredit{position:absolute;bottom:12px;right:5%;font-size:9px;color:#b9cddd;z-index:1}.filters .resetButton{display:block;margin-top:16px}.heroCopy{text-align:left;margin-right:auto}.heroText{margin-left:0}.hero .searchBox{margin-left:0}.quickLinks{justify-content:flex-start}.hero{align-items:flex-start}.hero h1{margin-left:0}.heroCopy{max-width:850px}
:root{--accent:#25b9ff;--soft:#edf7fc;--ink:#122332;--line:#dbe3e9}body{background:#f5f7f9;color:var(--ink)}h1,h2{font-family:Arial,Helvetica,sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}:focus-visible{outline:3px solid #008dcc;outline-offset:5px}.skip{position:fixed;top:-80px;left:10px;z-index:100;background:white;padding:14px}.skip:focus{top:10px}.previewBar{padding:10px 5%;background:#153247;color:#d5eeff;display:flex;align-items:center;gap:8px;font-size:11px;letter-spacing:.05em;font-weight:700}.previewBar a{margin-left:auto;text-decoration:underline;text-underline-offset:3px;letter-spacing:0}.statusDot{width:6px;height:6px;border-radius:50%;background:#69d2ff}.siteHeader{padding:20px 5%;gap:24px}.textBrand{flex-direction:row;align-items:center;gap:11px}.textBrand>span{display:flex;flex-direction:column}.brandMain{font-size:20px;letter-spacing:-.5px}.brandMain b{font-weight:400}.brandSub{font-size:8px;letter-spacing:1.4px;margin-top:6px}.siteHeader nav{font-size:13px;gap:28px}.siteHeader nav .navCta{border:1px solid #456073;padding:12px 16px;border-radius:6px}.hero{position:relative;padding:78px 6% 66px;gap:0}.heroCopy{width:100%;max-width:900px;z-index:1}.hero h1{font-size:clamp(46px,6.7vw,86px);line-height:1.02;margin:18px auto 24px;letter-spacing:-3px}.hero h1 span{color:#25b9ff}.hero .eyebrow{font-size:11px;letter-spacing:2px}.heroText{font-size:17px;max-width:560px;line-height:1.7}.hero .searchBox{border-radius:8px;padding:6px;max-width:650px}.searchBox input{padding:17px 14px}.searchHint{color:#a7bbc8;font-size:12px;margin-top:14px}.quickLinks{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:24px 0 0}.quickLinks a{padding:9px 14px;border:1px solid #324555;border-radius:100px;color:#d2e2ec;font-size:12px}.quickLinks a:hover{background:#1c3445;border-color:var(--accent)}.heroContour{position:absolute;inset:0;opacity:.15;pointer-events:none;background:radial-gradient(ellipse at 100% 0%,#25b9ff55,transparent 50%)}.heroContour svg{height:100%;width:100%}.localStrip{background:#101b27;border-top:1px solid #253846;border-bottom:1px solid #253846;display:flex;justify-content:center;gap:48px;padding:22px 5%;color:#bbccd8;font-size:12px}.localStrip span{display:flex;align-items:center;gap:9px}.localStrip b{color:var(--accent);font-size:16px}.servicesSection{padding:64px 5% 70px}.sectionHeading{text-align:left;max-width:1400px;margin-bottom:30px}.sectionHeading .eyebrow{font-size:11px}.sectionHeading h2{font-size:32px;letter-spacing:-1px;margin-bottom:12px}.sectionHeading p{font-size:14px;margin:0}.serviceGrid{gap:14px}.serviceArtwork{height:155px}.serviceCard{border-radius:10px}.serviceCardContent{padding:18px 14px;text-align:left;flex:1}.serviceCard h3{font-size:17px}.serviceCard p{font-size:12px;line-height:1.6;flex:1}.serviceCard .serviceBrowse{background:transparent;color:var(--accent);padding:8px 0 0;text-align:left;font-size:12px}.whySection{padding:66px 6%}.whySection .sectionHeading{max-width:1100px}.featureGrid{max-width:1100px;gap:48px}.feature strong{font-size:18px}.feature p{font-size:14px}.stepNumber{display:block;color:#5986a1;font-size:12px;margin-bottom:16px;letter-spacing:2px}.proSection{padding:55px 6%}.proSection h2{font-size:30px;letter-spacing:-1px}.proSection p{font-size:14px;max-width:610px}.proSection .lightButton{font-size:14px;padding:15px 24px}footer{background:#0b1117;color:#a7bbc8;padding:40px 6% 24px;text-align:left}.footerInner{display:flex;justify-content:space-between;gap:30px;max-width:1400px;margin:auto}footer strong{color:#fff;font-size:18px}footer p{font-size:12px;line-height:1.8;margin:12px 0 26px}footer nav{font-size:12px;gap:22px;align-self:flex-start}.footerBottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #263846;padding-top:20px;max-width:1400px;margin:auto}.footerBottom small{font-size:10px}.pageHero{background:#101b27;color:white;padding:34px 6% 42px}.crumb{font-size:12px;margin-bottom:24px;color:#9fb7c8}.crumb a{text-decoration:underline;text-underline-offset:3px}.pageHero h1{color:white;font-size:clamp(32px,5vw,48px);line-height:1.1;letter-spacing:-1.5px;margin-bottom:16px;max-width:1000px}.pageHero p{color:#bbccd8;max-width:650px;line-height:1.7;font-size:14px;margin:0}.content{padding:32px 6% 70px;max-width:1400px;margin:auto}.notice{padding:16px 20px;background:#e9f5fc;border:1px solid #c3dfef;border-radius:8px;color:#245570;font-size:13px;line-height:1.6;margin-bottom:26px}.notice strong{color:#143d55}.directoryLayout{display:grid;grid-template-columns:240px 1fr;gap:30px;align-items:start}.filters{padding:22px;background:white;border:1px solid var(--line);border-radius:10px;position:sticky;top:20px}.filters h2{font-size:16px;margin:0 0 20px;color:var(--ink)}label{display:block;font-size:12px;font-weight:700;margin-bottom:8px}.field{margin-bottom:20px}input:not([type=checkbox]),select,textarea{width:100%;border:1px solid #bacbd6;border-radius:6px;padding:12px;color:#172e3c;background:white}textarea{resize:vertical;min-height:125px}.checkLabel{display:flex;gap:8px;align-items:center;font-weight:400;font-size:13px;line-height:1.5}.checkLabel input{width:17px;height:17px;flex-shrink:0;accent-color:#008dcc}.resetButton{padding:0;background:none;border:none;color:#0877a5;text-decoration:underline;cursor:pointer;font-size:12px}.resultsToolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.resultsToolbar p{margin:0;font-size:13px;color:#546978}.resultsToolbar select{width:auto;font-size:12px;padding:9px}.resultsToolbar label{margin:0;display:flex;align-items:center;gap:8px}.resultCard{background:white;border:1px solid var(--line);border-radius:10px;padding:24px;margin-bottom:16px}.cardTop{display:flex;gap:14px;align-items:center;margin-bottom:18px}.avatar{height:50px;width:50px;flex-shrink:0;display:grid;place-items:center;background:#dff3fc;color:#075b82;font-weight:800;border-radius:9px;font-size:18px}.cardTop h2{font-size:18px;letter-spacing:-.3px;margin:0 0 6px;color:var(--ink)}.cardTop h2 a:hover{text-decoration:underline}.cardTop p{font-size:12px;color:#59717f;margin:0}.sampleBadge{color:#4c6372;background:#f0f4f7;border:1px solid #dbe3e9;padding:5px 8px;border-radius:4px;font-size:10px;letter-spacing:.04em;font-weight:700;margin-left:auto;white-space:nowrap}.tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.tag{padding:6px 9px;border-radius:5px;background:#f0f5f8;font-size:11px;color:#3b586b}.tag.emergency{background:#e9f7f0;color:#286044}.resultCard>p{font-size:13px;color:#526977;line-height:1.7;max-width:700px}.cardActions{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}.button{display:inline-flex;justify-content:center;align-items:center;gap:12px;min-height:42px;background:#087daa;border:1px solid #087daa;border-radius:6px;padding:11px 17px;color:white;cursor:pointer;font-size:12px;font-weight:700}.button:hover{background:#05648b}.button.secondary{background:white;color:#126d96;border-color:#bbd3e1}.button.secondary:hover{background:#eef8fd}.emptyState{border:1px dashed #bbcbd5;border-radius:10px;background:white;padding:50px 28px;text-align:center}.emptyState h2{font-size:22px;color:#17374a}.emptyState p{font-size:14px;line-height:1.7;color:#607785}.profileGrid{display:grid;grid-template-columns:minmax(0,2fr) minmax(250px,1fr);gap:28px}.panel{background:white;padding:28px;border:1px solid var(--line);border-radius:10px;margin-bottom:20px}.panel h2{font-size:20px;color:#17374a;line-height:1.4}.panel p,.panel li{font-size:14px;color:#526977;line-height:1.8}.panel ul{padding-left:20px}.profileImage{width:100%;max-height:260px;object-fit:cover;border-radius:8px;margin-bottom:24px}.formLayout{max-width:780px;margin:auto}.formGrid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.formGrid .field{margin-bottom:0}.span2{grid-column:1/-1}.formNote{font-size:12px;color:#5d7482;line-height:1.6;margin:20px 0}.success{padding:28px;border:1px solid #bbdfcc;background:#effaf4;border-radius:10px}.success h2{font-size:22px;color:#235840}.success p{color:#385e4c;line-height:1.7}.success .button{margin-top:10px}.prose{max-width:800px}.prose h2{margin-top:30px}.metaLine{display:flex;gap:12px;align-items:center}.inlineLink{color:#0877a5;text-decoration:underline}.searchBox input{width:auto;border:none}.searchBox{margin-bottom:0}.searchBox button{min-width:115px}main:focus{outline:none}.screenreader{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(min-width:1500px){.hero{padding-top:100px;padding-bottom:85px}.serviceArtwork{height:195px}}
@media(max-width:1100px){.serviceGrid{grid-template-columns:repeat(3,1fr)}.siteHeader nav{gap:16px}.brandMain{font-size:17px}.brandSub{font-size:7px}.directoryLayout{grid-template-columns:210px 1fr}.footerInner{flex-direction:column}}
@media(max-width:700px){.previewBar{font-size:9px;padding:10px 5%}.previewDetail{display:none}.siteHeader{flex-direction:column;align-items:stretch;gap:18px;padding:18px 5%}.brandMain{font-size:20px}.brandSub{font-size:8px}.siteHeader nav{justify-content:space-between;font-size:12px;gap:10px}.siteHeader nav .navCta{padding:9px}.hero{padding:48px 5%}.hero h1{font-size:49px;letter-spacing:-2px}.hero .eyebrow{font-size:9px}.heroText{font-size:15px}.searchBox input{padding:14px 8px;font-size:13px}.searchBox button{padding:0 12px;min-width:90px;font-size:12px}.localStrip{gap:18px;flex-wrap:wrap;font-size:10px;padding:18px 5%}.localStrip span:last-child{display:none}.servicesSection,.whySection{padding:44px 5%}.sectionHeading h2{font-size:27px}.serviceGrid{grid-template-columns:repeat(2,1fr);gap:10px}.serviceArtwork{height:125px}.serviceCardContent{padding:14px 12px}.serviceCard h3{font-size:15px}.serviceCard p{font-size:11px}.serviceBrowse{font-size:11px}.featureGrid{grid-template-columns:1fr;gap:24px}.proSection{padding:38px 5%;gap:24px;align-items:flex-start;flex-direction:column}.proSection h2{font-size:26px}.proSection .lightButton{padding:13px 18px}.directoryLayout{grid-template-columns:1fr;gap:20px}.filters{position:static;padding:18px;display:grid;grid-template-columns:1fr 1fr;gap:14px}.filters h2{grid-column:1/-1;margin:0}.filters .field{margin:0}.filters select,.filters input:not([type=checkbox]){padding:10px;font-size:12px}.content{padding:24px 5% 44px}.resultCard{padding:18px}.cardTop{flex-wrap:wrap}.cardTop h2{font-size:16px}.sampleBadge{margin-left:0}.resultsToolbar{align-items:flex-start}.resultsToolbar p{font-size:12px}.resultsToolbar label{font-size:10px;flex-direction:column;gap:4px}.resultsToolbar select{font-size:11px}.profileGrid{grid-template-columns:1fr;gap:0}.panel{padding:22px}.formGrid{grid-template-columns:1fr}.span2{grid-column:auto}footer nav{flex-wrap:wrap;gap:16px}.footerBottom{flex-direction:column;gap:10px}.pageHero{padding:26px 5% 32px}.pageHero h1{font-size:34px}.notice{font-size:12px;padding:14px}.previewBar a{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}


/* Keep search and shortcuts aligned with the headline on every screen. */
.hero .quickLinks{justify-content:flex-start}.hero .heroCopy{margin-left:0;margin-right:auto}.siteHeader .textBrand{display:flex}.brandSub{display:block;color:#a7bbc8}.brandMain{color:#fff}
.hero{background-position:center top}@media(max-width:700px){.hero{background-position:72% top}.hero .searchBox{display:flex;flex-direction:column;gap:5px;align-items:stretch}.hero .searchBox input{width:100%;min-width:0}.hero .searchBox button{min-height:42px}.hero h1{font-size:clamp(38px,11vw,48px)!important}}

/* HOMEPAGE CATEGORY TILES — option 4 (compact photo/image cards).
   Scope to homepage service grid only; no changes to hero, header or category pages. */
.servicesSection .serviceGrid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}
.servicesSection .serviceCard {
  position: relative;
  display: block;
  height: 122px;
  min-height: 0;
  isolation: isolate;
  border: 1px solid #48627a;
  border-radius: 10px;
  box-shadow: 0 4px 12px rgba(0,0,0,.2);
  background: #15283b;
  overflow: hidden;
}
.servicesSection .serviceCard:hover {
  transform: translateY(-2px);
  border-color: #25b9ff;
  box-shadow: 0 8px 20px rgba(0,0,0,.25);
}
.servicesSection .serviceArtwork {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background: #13283d;
}
.servicesSection .serviceArtwork img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.42);
}
.servicesSection .serviceCard::after {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 0;
  background: linear-gradient(180deg, rgba(5,16,27,.04) 12%, rgba(5,16,27,.85) 100%);
  pointer-events: none;
}
.servicesSection .serviceCardContent {
  position: absolute;
  z-index: 1;
  inset: auto 0 0;
  min-height: 50px;
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  justify-content: space-between;
  gap: 4px;
  padding: 10px;
  text-align: left;
}
.servicesSection .serviceCard h3 {
  margin: 0;
  color: #fff;
  font-size: clamp(.8rem, 1.15vw, .94rem);
  line-height: 1.25;
  font-weight: 800;
  text-shadow: 0 1px 5px rgba(0,0,0,.85);
}
.servicesSection .serviceCard p {
  display: none;
}
.servicesSection .serviceBrowse,
.servicesSection .serviceCard .serviceBrowse {
  width: 26px;
  min-width: 26px;
  height: 26px;
  overflow: hidden;
  display: grid;
  place-items: center;
  flex: 0 0 26px;
  padding: 0;
  margin: 0;
  border: 1px solid rgba(255,255,255,.48);
  border-radius: 50%;
  background: rgba(22,48,72,.9);
  color: transparent;
  font-size: 0;
}
.servicesSection .serviceBrowse::after {
  content: "›";
  color: white;
  font-size: 23px;
  line-height: 1;
  margin-top: -2px;
}
@media (max-width: 1050px) {
  .servicesSection .serviceGrid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .servicesSection .serviceGrid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .servicesSection .serviceCard { height: 102px; border-radius: 9px; }
  .servicesSection .serviceCardContent { padding: 8px; min-height: 46px; }
  .servicesSection .serviceCard h3 { font-size: clamp(.72rem, 2.8vw, .89rem); }
  .servicesSection .serviceBrowse,
  .servicesSection .serviceCard .serviceBrowse { width: 23px; min-width: 23px; height: 23px; flex-basis: 23px; }
}

/* Photographic category treatment — no icon-art cropping */
.servicesSection .serviceArtwork img { transform: none; object-position: center; }
.servicesSection .serviceCard::after {
  background: linear-gradient(180deg, rgba(4,14,24,.03) 15%, rgba(4,14,24,.88) 100%);
}

/* Clear white pictograms beside each homepage category title */
.servicesSection .serviceCardContent { align-items: center; }
.servicesSection .serviceTileIcon {
  display: block;
  flex: 0 0 23px;
  width: 23px;
  height: 23px;
  color: white;
  filter: drop-shadow(0 1px 3px rgba(0,0,0,.8));
}
.servicesSection .serviceCard h3 { flex: 1; }
@media (max-width: 760px) {
 .servicesSection .serviceTileIcon { flex-basis: 18px; width: 18px; height: 18px; }
}

/* Oct 16 photo readability tune: keep images legible without hiding labels */
.servicesSection .serviceCard::after {
  background: linear-gradient(
    180deg,
    rgba(4,14,24,0) 0%,
    rgba(4,14,24,0.07) 46%,
    rgba(4,14,24,0.74) 100%
  );
}
.servicesSection .serviceCard h3,
.servicesSection .serviceTileIcon {
  text-shadow: 0 2px 6px rgba(0,0,0,.85);
}
.servicesSection .serviceCard.fencing .serviceArtwork img {
  filter: brightness(1.37) contrast(1.03) saturate(1.1);
}
.servicesSection .serviceCard.fencing::after {
  background: linear-gradient(180deg, rgba(4,14,24,0) 0%, rgba(4,14,24,.60) 100%);
}
.servicesSection .serviceCard.hvac .serviceArtwork img {
  object-position: 35% 50%;
}
.servicesSection .serviceCard.roofing .serviceArtwork img,
.servicesSection .serviceCard.concrete .serviceArtwork img {
  filter: brightness(1.08) contrast(1.05);
}

/* Mobile category readability: labels and pictograms approximately 30% larger */
@media (max-width: 760px) {
  .servicesSection .serviceCard h3 {
    font-size: clamp(.936rem, 3.64vw, 1.157rem);
    line-height: 1.16;
    letter-spacing: -.018em;
  }
  .servicesSection .serviceTileIcon {
    flex: 0 0 23.4px;
    width: 23.4px;
    height: 23.4px;
  }
  .servicesSection .serviceCardContent {
    gap: 4px;
  }
}

/* Homepage photo color match — Painting and Concrete only */
.servicesSection .serviceCard.painting .serviceArtwork img {
  filter: sepia(0.16) saturate(1.10) contrast(1.02);
}
.servicesSection .serviceCard.concrete .serviceArtwork img {
  filter: brightness(1.08) contrast(1.04) sepia(0.16) saturate(1.10);
}

/* Use the shorter category name only on small screens. */
.servicesSection .mobileRemodelLabel { display: none; }
@media (max-width: 760px) {
  .servicesSection .desktopRemodelLabel { display: none; }
  .servicesSection .mobileRemodelLabel { display: inline; }
}

/* Great Falls editorial pages and BHP feature adaptation. */
.seasonalBanner{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 12px;padding:12px 5%;background:#142536;color:#e6f2fa;text-align:center;border-bottom:1px solid #2b4b63;font-size:14px;line-height:1.5}.seasonalBanner strong{color:#58caff}.guideSeasonal{border-radius:9px;margin-bottom:28px}.relatedServices{background:#0b1117;border-top:1px solid #273d50;padding:32px 6%;text-align:center;color:#c4d2df}.relatedServices h2{font-size:24px;color:white;margin-bottom:12px}.relatedServices>div{display:flex;justify-content:center;flex-wrap:wrap;gap:14px 28px}.relatedServices a{color:#58caff;font-weight:700;text-decoration:underline;text-underline-offset:3px}.relatedServices b{font-weight:400}.relatedServices span{white-space:nowrap}.categoryAdvice{margin-top:36px}.guideCallout{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;background:#102638;color:#c9d8e4;border:1px solid #2e5875;border-radius:12px;padding:26px;margin:22px 0}.guideCallout h2{color:white;font-size:24px;margin:10px 0}.guideCallout p{font-size:14px;line-height:1.6;max-width:650px}.guideCallout .eyebrow{color:#79d6ff;font-size:11px}.guideGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.guideGrid .panel{margin:0}.guideGrid h2 a:hover{text-decoration:underline}.guideGrid .eyebrow{font-size:10px;color:#176b91}.linkList{display:grid;gap:12px}.linkList a{color:#0877a5;text-decoration:underline;text-underline-offset:3px}.editorialDate{font-size:12px;color:#526977;margin-bottom:24px}.checklistToolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.checklistToolbar p{font-size:14px}.checklistItem h2 label{font-size:20px;line-height:1.4;display:flex;align-items:flex-start;gap:12px}.checklistItem input{margin-top:6px;width:20px;height:20px;flex-shrink:0;accent-color:#087daa}.siteHeader nav a{white-space:nowrap}.guideGrid .panel h2{font-size:22px}.prose .panel li{margin-bottom:10px}.footerInner nav{flex-wrap:wrap;max-width:530px}html{scroll-behavior:smooth}
@media(max-width:700px){.guideGrid{grid-template-columns:1fr}.seasonalBanner{font-size:12px}.relatedServices{padding:28px 5%}.relatedServices h2{font-size:21px}.guideCallout{padding:20px}.guideCallout h2{font-size:22px}.checklistItem h2 label{font-size:18px}.siteHeader nav{gap:10px}.siteHeader nav .navCta{font-size:11px}.prose .panel{overflow-wrap:anywhere}}
@media print{.siteHeader,.previewBar,.seasonalBanner,footer,.checklistToolbar button,.checklistItem a,.skip{display:none!important}.pageHero{background:white!important;color:black!important}.pageHero h1,.pageHero p{color:black!important}.panel{break-inside:avoid;border:1px solid #bbb}.content{padding:10px;max-width:none}.checklistItem input{appearance:auto}body{background:white}}


/* GFHP twelve-category grid: three balanced rows on desktop, compact mobile cards. */
.servicesSection .serviceGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.servicesSection .serviceCard{height:146px}
.servicesSection .serviceCardContent{gap:7px}
.servicesSection .serviceCard h3{font-size:clamp(.91rem,1.15vw,1.08rem);overflow-wrap:normal}
.servicesSection .serviceCard:focus-visible{outline:3px solid #5acbff;outline-offset:3px}
@media(min-width:761px) and (max-width:1100px){
 .servicesSection .serviceGrid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
 .servicesSection .serviceGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .servicesSection .serviceCard{height:122px}
 .servicesSection .serviceCard h3{font-size:clamp(.88rem,3.5vw,1.05rem)}
 .servicesSection .serviceCardContent{padding:9px;gap:6px}
}
/* Flooring and Windows & Doors: dedicated category treatments instead of duplicate remodel artwork. */
.servicesSection .serviceCard.flooring .serviceArtwork{
 background:repeating-linear-gradient(96deg,transparent 0 54px,rgba(9,24,35,.5) 55px 57px),linear-gradient(145deg,#b99567 0%,#7e5536 40%,#d6ad77 66%,#67462f 100%);
}
.servicesSection .serviceCard.flooring .serviceArtwork::before{
 content:"";position:absolute;inset:0;
 background:repeating-linear-gradient(0deg,transparent 0 30px,rgba(38,23,12,.48) 31px 33px),repeating-linear-gradient(92deg,transparent 0 110px,rgba(248,217,169,.14) 111px 113px);
}
.servicesSection .serviceCard.windows-doors .serviceArtwork{
 background:linear-gradient(90deg,transparent 46%,#e1edf1 46% 49%,#647e8d 49% 52%,transparent 52%),linear-gradient(0deg,transparent 46%,#d5e3ec 46% 50%,#607a88 50% 54%,transparent 54%),linear-gradient(135deg,#aed4e7 0%,#5989a3 42%,#244862 100%);
 box-shadow:inset 0 0 0 12px #c4d2da,inset 0 0 0 16px #435f70;
}
.servicesSection .serviceCard.windows-doors .serviceArtwork::before{
 content:"";position:absolute;inset:0;background:linear-gradient(127deg,rgba(255,255,255,.34) 0 16%,transparent 16% 30%,rgba(255,255,255,.13) 30% 42%,transparent 42%);
}
.servicesSection .serviceCard.flooring .serviceArtwork img,
.servicesSection .serviceCard.windows-doors .serviceArtwork img{display:none}

/* GFHP four-category photographic tile refresh */
.servicesSection .serviceCard.remodeling .serviceArtwork,
.servicesSection .serviceCard.handyman .serviceArtwork,
.servicesSection .serviceCard.flooring .serviceArtwork,
.servicesSection .serviceCard.windows-doors .serviceArtwork{
  box-shadow:none;
  background-repeat:no-repeat;
  background-position:center;
  background-size:cover;
}
.servicesSection .serviceCard.remodeling .serviceArtwork{background-image:url("https://images.pexels.com/photos/4642438/pexels-photo-4642438.jpeg?auto=compress&cs=tinysrgb&w=900");background-position:center 55%}
.servicesSection .serviceCard.handyman .serviceArtwork{background-image:url("https://images.pexels.com/photos/1249610/pexels-photo-1249610.jpeg?auto=compress&cs=tinysrgb&w=900")}
.servicesSection .serviceCard.flooring .serviceArtwork{background-image:url("https://images.pexels.com/photos/4263067/pexels-photo-4263067.jpeg?auto=compress&cs=tinysrgb&w=900")}
.servicesSection .serviceCard.windows-doors .serviceArtwork{background-image:url("https://images.pexels.com/photos/5691544/pexels-photo-5691544.jpeg?auto=compress&cs=tinysrgb&w=900")}
.servicesSection .serviceCard.remodeling .serviceArtwork img,
.servicesSection .serviceCard.handyman .serviceArtwork img,
.servicesSection .serviceCard.flooring .serviceArtwork img,
.servicesSection .serviceCard.windows-doors .serviceArtwork img{display:none}
.servicesSection .serviceCard.flooring .serviceArtwork::before,
.servicesSection .serviceCard.windows-doors .serviceArtwork::before{content:none}
.servicesSection .serviceCard.remodeling::after,
.servicesSection .serviceCard.handyman::after,
.servicesSection .serviceCard.flooring::after,
.servicesSection .serviceCard.windows-doors::after{background:linear-gradient(180deg,rgba(4,14,24,0) 15%,rgba(4,14,24,.83) 100%)}
