/* DCK site: page 38 styles. Moved out of the page content on 2026-09-28; loaded by dck-site-assets.php. */
/* DCK Directory page extras (page 38) */
/* monochrome theme: override plugin palette (black/white/gray, blue reserved for accents) */
.dck-profile, .dck-directory-page, .dck-form-page { --dck-brand: #111111; --dck-brand-deep: #000000; --dck-brand-soft: #EFEFEF; --dck-ink: #111111; --dck-muted: #6B6B6B; --dck-line: #E3E3E3; --dck-ground: #F6F6F6; --dck-shadow: 0 1px 2px rgba(0,0,0,.06), 0 8px 24px rgba(0,0,0,.08); }
.page-id-38 h1 { display: none; }
.page-id-38 .dck-hero h1 { display: block; }
.page-id-38 [class*="breadcrumb" i], .page-id-38 nav[aria-label="Breadcrumb"] { display: none; }
/* site chrome: auth nav button + modal fixes */
body:not(.logged-in) .dck-nav-account { display: none !important; }
body.logged-in .dck-nav-login { display: none !important; }
.dck-nav-btn { margin-left: 10px; }
.dck-nav-btn a, li.dck-nav-btn > a { display: inline-block; background: #111111 !important; color: #ffffff !important; border-radius: 999px; padding: 8px 18px; font-weight: 700 !important; }
.dck-nav-btn a:hover { background: linear-gradient(120deg, #1E62B4, #14406F) !important; color: #ffffff !important; text-decoration: none; }
.dck-nav-btn a span, .dck-nav-btn a div, .dck-nav-btn a * { color: #ffffff !important; font-weight: 700 !important; }
.dck-nav-btn a *, .dck-nav-btn a:hover *, .dck-nav-btn a:focus * { background: transparent !important; box-shadow: none !important; }
.dck-nav-btn a { transition: transform .15s ease, box-shadow .2s ease, background .15s ease; }
.dck-nav-btn a:hover, .dck-nav-btn a:focus { background: linear-gradient(120deg, #1E62B4, #14406F) !important; transform: translateY(-2px); box-shadow: 0 6px 16px rgba(0,0,0,.35); }
.dckx-dark-header { background: linear-gradient(120deg, #000000, #1C1C1C 70%, #14406F 170%) !important; border: 0 !important; box-shadow: 0 2px 12px rgba(0,0,0,.3); }
.dckx-dark-header > div, .dckx-dark-header nav, .dckx-dark-header ul { border: 0 !important; }
.dckx-dark-header a { color: #fff !important; }
.dckx-dark-header a:hover { color: #CFE0F5 !important; }
.dckx-dark-header a, .dckx-dark-header a span, .dckx-dark-header a div, .dckx-dark-header a * { color: #ffffff !important; font-weight: 600 !important; }
.dckx-dark-header a:hover *, .dckx-dark-header a:focus * { color: #CFE0F5 !important; }
.dckx-dark-header li:not(.dck-nav-btn) a, .dckx-dark-header li:not(.dck-nav-btn) a *, .dckx-dark-header li:not(.dck-nav-btn) a:hover, .dckx-dark-header li:not(.dck-nav-btn) a:hover *, .dckx-dark-header li:not(.dck-nav-btn) a:focus, .dckx-dark-header li:not(.dck-nav-btn) a:focus * { background: transparent !important; box-shadow: none !important; }
.dckx-dark-header li:not(.dck-nav-btn) a { transition: color .15s ease, transform .15s ease; }
.dckx-dark-header li:not(.dck-nav-btn) a:hover, .dckx-dark-header li:not(.dck-nav-btn) a:hover * { color: #7FB2E5 !important; }
.dckx-dark-header li:not(.dck-nav-btn) a:hover { transform: translateY(-1px); text-decoration: underline !important; text-underline-offset: 8px; text-decoration-thickness: 2px; text-decoration-color: #1E62B4; }
.dckx-dark-header .dck-nav-btn a { background: #fff !important; }
.dckx-dark-header .dck-nav-btn a, .dckx-dark-header .dck-nav-btn a * { color: #111111 !important; }
.dckx-dark-header .dck-nav-btn a:hover { background: #E7EFF9 !important; }
.dckx-dark-header img[alt="Decorative Concrete Kingdom"] { background: none !important; padding: 0 !important; }
.dckx-dark-header button, .dckx-dark-header svg { color: #fff !important; fill: #fff !important; }
.dckx-login-card br { display: none !important; }
.dckx-login-card .dckx-kicker { font-size: 20px; padding: 8px 20px; letter-spacing: .05em; }
/* full-width layout + page ground */
body.page-id-38 { overflow-x: hidden; background: #F5F5F5; }
.page-id-38 .dck-directory-page { width: 100vw; position: relative; left: 50%; margin-left: -50vw; }
.page-id-38 .dck-wrap { max-width: min(1700px, 94vw); }
/* hero: photo + black gradient panel */
.page-id-38 .dck-hero { background: linear-gradient(135deg, rgba(5,8,12,.93), rgba(12,32,60,.8)), url('https://incrediblecontracting.com/wp-content/uploads/2026/07/showroom-hero.webp') center/cover no-repeat; border-radius: 20px; padding: 76px 28px 60px; color: #fff; }
.page-id-38 .dck-hero h1 { color: #fff; font-size: clamp(31px, 3.6vw, 49px); }
.page-id-38 .dck-hero > p { color: rgba(255,255,255,.88); font-size: 20px; }
.page-id-38 .dck-searchbar { max-width: 1020px; padding: 16px; border-radius: 16px; border: 0; box-shadow: 0 18px 48px rgba(0,0,0,.3); }
/* section heading style + accent bar (blue ombre accent) */
@media (max-width: 560px) { .page-id-38 [data-gal-prev], .page-id-38 [data-gal-next] { white-space: nowrap; } }
/* service tile thumbnails (photos: flickr.com/photos/decorativeconcrete) */
/* CTA strips: black gradient with blue ombre edge */
.page-id-38 .dck-cta-strip { background: linear-gradient(120deg, #000000, #1C1C1C 60%, #1E62B4 170%); border-radius: 18px; padding: 30px 36px; }
.page-id-38 .dck-cta-strip br { display: none; }
.page-id-38 .dck-cta-strip .dck-btn { background: #fff; color: #111111 !important; }
/* extras */
.dckx-extras .dck-wrap { padding-top: 0; }
.dckx-section { margin: 16px 0 56px; }
.dckx-h2 { font-size: 31px; font-weight: 800; letter-spacing: -.01em; margin: 0 0 6px; }
.dckx-sub { color: var(--dck-muted); margin: 0 0 22px; font-size: 16px; }
.dckx-gallery { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.dckx-gallery figure { margin: 0; border-radius: 14px; overflow: hidden; aspect-ratio: 4 / 3; background: var(--dck-ground); }
.dckx-gallery img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .35s ease; }
.dckx-gallery figure:hover img { transform: scale(1.05); }
.dckx-gal-nav { display: flex; align-items: center; justify-content: center; gap: 16px; margin-top: 18px; }
.dckx-gal-nav br { display: none; }
.dckx-gal-label { color: var(--dck-muted); font-size: 16px; font-weight: 600; min-width: 92px; text-align: center; }
.dckx-gal-nav .dck-btn[disabled] { opacity: .4; pointer-events: none; }
.dckx-3col { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.dckx-3col .dck-card { margin: 0; }
.dckx-why { border-top: 3px solid #111111; transition: transform .15s, box-shadow .15s; }
.dckx-why:hover { transform: translateY(-3px); box-shadow: var(--dck-shadow); }
.dckx-ico { width: 46px; height: 46px; border-radius: 12px; background: linear-gradient(135deg, #000000, #14406F); color: #fff; display: grid; place-items: center; margin-bottom: 14px; }
.dckx-ico svg { fill: currentColor; }
.dckx-why h3 { margin: 0 0 6px; font-size: 16px; font-weight: 700; }
.dckx-why p { margin: 0; font-size: 16px; color: var(--dck-muted); }
/* side-by-side feature cards */
.dckx-2col { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.dckx-feature { padding: 0; margin: 0; overflow: hidden; display: flex; flex-direction: column; }
.dckx-feature > img { width: 100%; aspect-ratio: 21 / 9; object-fit: cover; display: block; }
.dckx-feature-body { padding: 24px 26px 28px; display: flex; flex-direction: column; align-items: flex-start; flex: 1; }
.dckx-feature-body h2 { font-size: 20px; font-weight: 800; letter-spacing: -.01em; margin: 0 0 10px; }
.dckx-feature-body p { color: var(--dck-muted); font-size: 16px; margin: 0 0 18px; }
.dckx-feature-body > p:last-child { margin-top: auto; margin-bottom: 0; }
.dckx-kicker { display: inline-block; font-size: 14px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--dck-brand); background: var(--dck-brand-soft); border-radius: 999px; padding: 4px 12px; margin-bottom: 10px; }
/* FAQ: single-column list */
.dckx-faq-grid { display: grid; grid-template-columns: 1fr; }
.dckx-faq-grid .dck-faq { border-top: 1px solid var(--dck-line); }
.dckx-faq-grid .dck-faq:first-child { border-top: 0; }
/* login modal */
.dckx-login-overlay { position: fixed; inset: 0; z-index: 9999; display: grid; place-items: center; background: rgba(0,0,0,.66); backdrop-filter: blur(3px); padding: 20px; }
.dckx-login-overlay[hidden] { display: none; }
.dckx-login-card { position: relative; width: 100%; max-width: 420px; background: #fff; border-radius: 18px; padding: 30px 28px; box-shadow: 0 24px 64px rgba(0,0,0,.4); color: #111111; }
.dckx-login-card h2 { margin: 0 0 16px; font-size: 20px; font-weight: 800; letter-spacing: -.01em; }
.dckx-login-card form { display: grid; gap: 12px; margin: 0; }
.dckx-login-card form label { display: flex; flex-direction: column; gap: 5px; font-weight: 600; font-size: 14px; }
.dckx-login-card input[type="text"], .dckx-login-card input[type="password"] { padding: 11px 12px; border: 1px solid #E3E3E3; border-radius: 8px; background: #F6F6F6; font: inherit; font-size: 16px; }
.dckx-login-remember { flex-direction: row !important; align-items: center; gap: 8px; font-weight: 400 !important; }
.dckx-login-card .dck-btn { width: 100%; padding: 13px; font-size: 16px; border: 0; cursor: pointer; background: #111111; }
.dckx-login-card .dck-btn:hover { background: linear-gradient(120deg, #1E62B4, #14406F); filter: none; }
.dckx-login-x { position: absolute; top: 12px; right: 14px; background: none; border: 0; font-size: 25px; line-height: 1; color: #6B6B6B; cursor: pointer; }
.dckx-login-links { margin: 14px 0 0; text-align: center; font-size: 16px; }
@media (max-width: 800px) {
  .page-id-38 .dck-hero { padding: 48px 16px 40px; border-radius: 16px; }
  .dckx-gallery { grid-template-columns: 1fr 1fr; }
  .dckx-3col, .dckx-2col { grid-template-columns: 1fr; }
}

/* ===== v1.8 directory flavor ===== */
.page-id-38 .dck-results-head h2::after { content: ''; display: block; width: 44px; height: 4px; border-radius: 2px; background: linear-gradient(90deg, #1E62B4, #7FB2E5); margin-top: 8px; }
.page-id-38 .dck-filters { background: #fff; border: 1px solid #E9EDF3; border-radius: 16px; padding: 18px; box-shadow: 0 6px 18px rgba(16,24,40,.05); }
.page-id-38 .dck-filters h3, .page-id-38 .dck-filter-group h3 { color: #14406F; letter-spacing: .06em; }
.page-id-38 .dck-filters input[type="checkbox"] { accent-color: #1E62B4; width: 15px; height: 15px; }
.page-id-38 .dck-filters .dck-check { border-radius: 8px; padding: 3px 6px; transition: background .12s ease; }
.page-id-38 .dck-filters .dck-check:hover { background: #EFF5FC; }
.page-id-38 .dck-filter-clear { color: #1E62B4; font-weight: 600; }
.page-id-38 .dck-results--list .dck-card { border-radius: 16px; border: 1px solid #E9EDF3; box-shadow: 0 4px 14px rgba(16,24,40,.05); overflow: hidden; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.page-id-38 .dck-results--list .dck-card:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(16,24,40,.13); border-color: #C7D8EC; }
.page-id-38 .dck-card__media img { object-fit: cover; }
.page-id-38 .dck-card__chips span { background: #E7EFF9; color: #14406F; border-radius: 999px; font-weight: 600; }
.page-id-38 .dck-card--featured { border-color: #1E62B4; box-shadow: 0 8px 24px rgba(30,98,180,.16); }
.page-id-38 .dck-card__badge { background: linear-gradient(120deg, #1E62B4, #14406F); }
@media (min-width: 1100px) {
.page-id-38 .dck-map-canvas, .page-id-38 .dck-map-col .leaflet-container { height: 520px !important; }
}
.page-id-38 .dck-map-canvas { border-radius: 16px; border: 1px solid #E9EDF3; box-shadow: 0 6px 18px rgba(16,24,40,.07); overflow: hidden; }

/* ===== Homepage section rhythm: distinct full-bleed bands + unified headers ===== */
body.page-id-38 { overflow-x: hidden; background: #ffffff !important; }
.page-id-38 .dckx-section { padding: 64px 0; }
/* Coating systems: grey full-bleed band with kicker + bar */
.page-id-38 .dck-systems { position: relative; width: 100vw; left: 50%; margin-left: -50vw; background: #EEF3F9; border-top: 1px solid #E6EBF2; padding: 60px max(20px, calc(50vw - 560px)) 68px; box-sizing: border-box; margin-top: 56px; }
.page-id-38 .dck-systems h2::before { content: 'COATING SYSTEMS'; display: table; background: #E7EFF9; color: #14406F; font-size: 14px; font-weight: 700; letter-spacing: .08em; padding: 6px 14px; border-radius: 999px; margin-bottom: 14px; }
.page-id-38 .dck-systems h2::after { content: ''; display: block; width: 44px; height: 4px; border-radius: 2px; background: linear-gradient(90deg, #1E62B4, #7FB2E5); margin: 10px 0 18px; }
.page-id-38 .dck-system-tile { border-radius: 14px; overflow: hidden; transition: transform .18s ease, box-shadow .18s ease; }
.page-id-38 .dck-system-tile:hover { transform: translateY(-3px); box-shadow: 0 12px 26px rgba(16,24,40,.14); }
/* Recent work: white band (was grey) so it alternates against the systems band */
.page-id-38 .dckx-bleed { background: #ffffff; }
/* Trust + FAQ: grey full-bleed bands */
.page-id-38 .dckx-section:has(.dckx-3col), .page-id-38 .dckx-section:has(.dckx-faq-grid) { position: relative; width: 100vw; left: 50%; margin-left: -50vw; background: #EEF3F9; border-top: 1px solid #E6EBF2; border-bottom: 1px solid #E6EBF2; padding: 64px max(20px, calc(50vw - 560px)); box-sizing: border-box; }
/* unified blue bar under every section h2 */
.page-id-38 .dckx-section h2::after { content: ''; display: block; width: 44px; height: 4px; border-radius: 2px; background: linear-gradient(90deg, #1E62B4, #7FB2E5); margin-top: 10px; }
/* FAQ kicker to match the other sections */
.page-id-38 .dckx-section:has(.dckx-faq-grid) h2::before { content: 'COMMON QUESTIONS'; display: table; background: #E7EFF9; color: #14406F; font-size: 14px; font-weight: 700; letter-spacing: .08em; padding: 6px 14px; border-radius: 999px; margin-bottom: 14px; }
/* CTA strips: breathing room so dark bands read as their own moments */
.page-id-38 .dck-cta-strip { position: relative; width: 100vw; left: 50%; margin-left: -50vw; margin-top: 0; margin-bottom: 0; border-radius: 0; background: linear-gradient(120deg, #0B0E13, #101828 55%, #14406F 160%); padding: 46px max(20px, calc(50vw - 560px)); box-sizing: border-box; }
.page-id-38 .dck-systems { margin-bottom: 0; }

/* Coating-system tiles: serve the LARGE size (plugin inlines 300px medium, which upscales blurry). Plugin-side fix: dck_term_image_url should use large. */
.page-id-38 .dck-system-tile[data-service="basement-waterproofing"] .dck-system-tile__img { background-image: url('https://incrediblecontracting.com/wp-content/uploads/2026/07/dck-tile-basement-waterproofing-1024x768.jpg') !important; }
.page-id-38 .dck-system-tile[data-service="concrete-wood"] .dck-system-tile__img { background-image: url('https://incrediblecontracting.com/wp-content/uploads/2026/07/dck-tile-concrete-wood-1024x768.jpg') !important; }
.page-id-38 .dck-system-tile[data-service="epoxy-coatings"] .dck-system-tile__img { background-image: url('https://incrediblecontracting.com/wp-content/uploads/2026/08/dck-tile-epoxy-flake-1024x768.jpg') !important; }
.page-id-38 .dck-system-tile[data-service="resinous-system"] .dck-system-tile__img { background-image: url('https://incrediblecontracting.com/wp-content/uploads/2026/08/dck-tile-resinous-123-1024x768.jpg') !important; }
.page-id-38 .dck-system-tile[data-service="metallic-marble"] .dck-system-tile__img { background-image: url('https://incrediblecontracting.com/wp-content/uploads/2026/07/dck-tile-metallic-marble-1024x768.jpg') !important; }
.page-id-38 .dck-system-tile[data-service="polished-concrete"] .dck-system-tile__img { background-image: url('https://incrediblecontracting.com/wp-content/uploads/2026/08/dck-tile-polished-concrete-1024x683.jpg') !important; }
.page-id-38 .dck-system-tile[data-service="polyaspartic-polyurea"] .dck-system-tile__img { background-image: url('https://incrediblecontracting.com/wp-content/uploads/2026/07/system-graniflex.webp') !important; }
.page-id-38 .dck-system-tile[data-service="protect-seal"] .dck-system-tile__img { background-image: url('https://incrediblecontracting.com/wp-content/uploads/2026/07/dck-tile-protect-seal.jpg') !important; }
.page-id-38 .dck-system-tile[data-service="quartz-system"] .dck-system-tile__img { background-image: url('https://incrediblecontracting.com/wp-content/uploads/2026/07/dck-tile-quartz-system-1024x768.jpg') !important; }

/* ===== 1.19.4: alternating bands after "Why homeowners choose us" moved under the map =====
   Map (white) → Why (grey) → Coating systems (white) → CTA (dark) → Recent work (grey)
   → Feature cards (white) → FAQ (grey) */
body.page-id-38 .dck-after-explore { margin-top: 56px; }
body.page-id-38 .dck-after-explore .dckx-section { margin-top: 0; margin-bottom: 0; }
/* no white sliver between the dark contractor strip and the Recent work band */
body.page-id-38 .dck-directory-page[data-dck-directory] > .dck-wrap { padding-bottom: 0; }
body.page-id-38 .dck-directory-page .dck-systems { background: #ffffff; border-top: 0; margin-top: 0; }
body.page-id-38 .dck-directory-page .dck-systems h2::before { background: #E7EFF9; }
body.page-id-38 .dckx-extras .dckx-section:has(.dckx-gallery) {
  position: relative; width: 100vw; left: 50%; margin-left: -50vw; margin-top: 0; margin-bottom: 0;
  background: #EEF3F9; border-top: 1px solid #E6EBF2; border-bottom: 1px solid #E6EBF2;
  padding: 64px max(20px, calc(50vw - 560px)); box-sizing: border-box;
}
body.page-id-38 .dckx-extras .dckx-section.dckx-2col { background: #ffffff; margin-top: 0; margin-bottom: 0; }
body.page-id-38 .dckx-extras .dckx-section:has(.dckx-faq-grid) { margin-top: 0; }

/* ===== 1.21.0: these rules were also pasted into the page content. They now live only here,
   last in the file, so they still win exactly as they did from the page. ===== */
/* DCK Directory page extras (page 38) */
/* monochrome theme: override plugin palette (black/white/gray, blue reserved for accents) */
.dck-profile, .dck-directory-page, .dck-form-page { --dck-brand: #111111; --dck-brand-deep: #000000; --dck-brand-soft: #EFEFEF; --dck-ink: #111111; --dck-muted: #6B6B6B; --dck-line: #E3E3E3; --dck-ground: #F6F6F6; --dck-shadow: 0 1px 2px rgba(0,0,0,.06), 0 8px 24px rgba(0,0,0,.08); }
.page-id-38 h1 { display: none; }
.page-id-38 .dck-hero h1 { display: block; }
.page-id-38 [class*="breadcrumb" i], .page-id-38 nav[aria-label="Breadcrumb"] { display: none; }
/* site chrome: auth nav button + modal fixes */
body:not(.logged-in) .dck-nav-account { display: none !important; }
body.logged-in .dck-nav-login { display: none !important; }
.dck-nav-btn { margin-left: 10px; }
.dck-nav-btn a, li.dck-nav-btn > a { display: inline-block; background: #111111 !important; color: #ffffff !important; border-radius: 999px; padding: 8px 18px; font-weight: 700 !important; }
.dck-nav-btn a:hover { background: linear-gradient(120deg, #1E62B4, #14406F) !important; color: #ffffff !important; text-decoration: none; }
.dck-nav-btn a span, .dck-nav-btn a div, .dck-nav-btn a * { color: #ffffff !important; font-weight: 700 !important; }
.dck-nav-btn a *, .dck-nav-btn a:hover *, .dck-nav-btn a:focus * { background: transparent !important; box-shadow: none !important; }
.dck-nav-btn a { transition: transform .15s ease, box-shadow .2s ease, background .15s ease; }
.dck-nav-btn a:hover, .dck-nav-btn a:focus { background: linear-gradient(120deg, #1E62B4, #14406F) !important; transform: translateY(-2px); box-shadow: 0 6px 16px rgba(0,0,0,.35); }
.dckx-dark-header { background: linear-gradient(120deg, #000000, #1C1C1C 70%, #14406F 170%) !important; border: 0 !important; box-shadow: 0 2px 12px rgba(0,0,0,.3); }
.dckx-dark-header > div, .dckx-dark-header nav, .dckx-dark-header ul { border: 0 !important; }
.dckx-dark-header a { color: #fff !important; }
.dckx-dark-header a:hover { color: #CFE0F5 !important; }
.dckx-dark-header a, .dckx-dark-header a span, .dckx-dark-header a div, .dckx-dark-header a * { color: #ffffff !important; font-weight: 600 !important; }
.dckx-dark-header a:hover *, .dckx-dark-header a:focus * { color: #CFE0F5 !important; }
.dckx-dark-header li:not(.dck-nav-btn) a, .dckx-dark-header li:not(.dck-nav-btn) a *, .dckx-dark-header li:not(.dck-nav-btn) a:hover, .dckx-dark-header li:not(.dck-nav-btn) a:hover *, .dckx-dark-header li:not(.dck-nav-btn) a:focus, .dckx-dark-header li:not(.dck-nav-btn) a:focus * { background: transparent !important; box-shadow: none !important; }
.dckx-dark-header li:not(.dck-nav-btn) a { transition: color .15s ease, transform .15s ease; }
.dckx-dark-header li:not(.dck-nav-btn) a:hover, .dckx-dark-header li:not(.dck-nav-btn) a:hover * { color: #7FB2E5 !important; }
.dckx-dark-header li:not(.dck-nav-btn) a:hover { transform: translateY(-1px); text-decoration: underline !important; text-underline-offset: 8px; text-decoration-thickness: 2px; text-decoration-color: #1E62B4; }
.dckx-dark-header .dck-nav-btn a { background: #fff !important; }
.dckx-dark-header .dck-nav-btn a, .dckx-dark-header .dck-nav-btn a * { color: #111111 !important; }
.dckx-dark-header .dck-nav-btn a:hover { background: #E7EFF9 !important; }
.dckx-dark-header img[alt="Decorative Concrete Kingdom"] { background: none !important; padding: 0 !important; }
.dckx-dark-header button, .dckx-dark-header svg { color: #fff !important; fill: #fff !important; }
.dckx-login-card br { display: none !important; }
.dckx-login-card .dckx-kicker { font-size: 20px; padding: 8px 20px; letter-spacing: .05em; }
/* full-width layout + page ground */
body.page-id-38 { overflow-x: hidden; background: #F5F5F5; }
.page-id-38 .dck-directory-page { width: 100vw; position: relative; left: 50%; margin-left: -50vw; }
.page-id-38 .dck-wrap { max-width: min(1700px, 94vw); }
/* hero: photo + black gradient panel */
.page-id-38 .dck-hero { background: linear-gradient(135deg, rgba(5,8,12,.93), rgba(12,32,60,.8)), url('https://incrediblecontracting.com/wp-content/uploads/2026/07/showroom-hero.webp') center/cover no-repeat; border-radius: 20px; padding: 76px 28px 60px; color: #fff; }
.page-id-38 .dck-hero h1 { color: #fff; font-size: clamp(31px, 3.6vw, 49px); }
.page-id-38 .dck-hero > p { color: rgba(255,255,255,.88); font-size: 20px; }
.page-id-38 .dck-searchbar { max-width: 1020px; padding: 16px; border-radius: 16px; border: 0; box-shadow: 0 18px 48px rgba(0,0,0,.3); }
/* section heading style + accent bar (blue ombre accent) */
@media (max-width: 560px) { .page-id-38 [data-gal-prev], .page-id-38 [data-gal-next] { white-space: nowrap; } }
/* service tile thumbnails (photos: flickr.com/photos/decorativeconcrete) */
/* CTA strips: black gradient with blue ombre edge */
.page-id-38 .dck-cta-strip { background: linear-gradient(120deg, #000000, #1C1C1C 60%, #1E62B4 170%); border-radius: 18px; padding: 30px 36px; }
.page-id-38 .dck-cta-strip br { display: none; }
.page-id-38 .dck-cta-strip .dck-btn { background: #fff; color: #111111 !important; }
/* extras */
.dckx-extras .dck-wrap { padding-top: 0; }
.dckx-section { margin: 16px 0 56px; }
.dckx-h2 { font-size: 31px; font-weight: 800; letter-spacing: -.01em; margin: 0 0 6px; }
.dckx-sub { color: var(--dck-muted); margin: 0 0 22px; font-size: 16px; }
.dckx-gallery { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.dckx-gallery figure { margin: 0; border-radius: 14px; overflow: hidden; aspect-ratio: 4 / 3; background: var(--dck-ground); }
.dckx-gallery img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .35s ease; }
.dckx-gallery figure:hover img { transform: scale(1.05); }
.dckx-gal-nav { display: flex; align-items: center; justify-content: center; gap: 16px; margin-top: 18px; }
.dckx-gal-nav br { display: none; }
.dckx-gal-label { color: var(--dck-muted); font-size: 16px; font-weight: 600; min-width: 92px; text-align: center; }
.dckx-gal-nav .dck-btn[disabled] { opacity: .4; pointer-events: none; }
.dckx-3col { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.dckx-3col .dck-card { margin: 0; }
.dckx-why { border-top: 3px solid #111111; transition: transform .15s, box-shadow .15s; }
.dckx-why:hover { transform: translateY(-3px); box-shadow: var(--dck-shadow); }
.dckx-ico { width: 46px; height: 46px; border-radius: 12px; background: linear-gradient(135deg, #000000, #14406F); color: #fff; display: grid; place-items: center; margin-bottom: 14px; }
.dckx-ico svg { fill: currentColor; }
.dckx-why h3 { margin: 0 0 6px; font-size: 16px; font-weight: 700; }
.dckx-why p { margin: 0; font-size: 16px; color: var(--dck-muted); }
/* side-by-side feature cards */
.dckx-2col { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.dckx-feature { padding: 0; margin: 0; overflow: hidden; display: flex; flex-direction: column; }
.dckx-feature > img { width: 100%; aspect-ratio: 21 / 9; object-fit: cover; display: block; }
.dckx-feature-body { padding: 24px 26px 28px; display: flex; flex-direction: column; align-items: flex-start; flex: 1; }
.dckx-feature-body h2 { font-size: 20px; font-weight: 800; letter-spacing: -.01em; margin: 0 0 10px; }
.dckx-feature-body p { color: var(--dck-muted); font-size: 16px; margin: 0 0 18px; }
.dckx-feature-body > p:last-child { margin-top: auto; margin-bottom: 0; }
.dckx-kicker { display: inline-block; font-size: 14px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--dck-brand); background: var(--dck-brand-soft); border-radius: 999px; padding: 4px 12px; margin-bottom: 10px; }
/* FAQ: single-column list */
.dckx-faq-grid { display: grid; grid-template-columns: 1fr; }
.dckx-faq-grid .dck-faq { border-top: 1px solid var(--dck-line); }
.dckx-faq-grid .dck-faq:first-child { border-top: 0; }
/* login modal */
.dckx-login-overlay { position: fixed; inset: 0; z-index: 9999; display: grid; place-items: center; background: rgba(0,0,0,.66); backdrop-filter: blur(3px); padding: 20px; }
.dckx-login-overlay[hidden] { display: none; }
.dckx-login-card { position: relative; width: 100%; max-width: 420px; background: #fff; border-radius: 18px; padding: 30px 28px; box-shadow: 0 24px 64px rgba(0,0,0,.4); color: #111111; }
.dckx-login-card h2 { margin: 0 0 16px; font-size: 20px; font-weight: 800; letter-spacing: -.01em; }
.dckx-login-card form { display: grid; gap: 12px; margin: 0; }
.dckx-login-card form label { display: flex; flex-direction: column; gap: 5px; font-weight: 600; font-size: 14px; }
.dckx-login-card input[type="text"], .dckx-login-card input[type="password"] { padding: 11px 12px; border: 1px solid #E3E3E3; border-radius: 8px; background: #F6F6F6; font: inherit; font-size: 16px; }
.dckx-login-remember { flex-direction: row !important; align-items: center; gap: 8px; font-weight: 400 !important; }
.dckx-login-card .dck-btn { width: 100%; padding: 13px; font-size: 16px; border: 0; cursor: pointer; background: #111111; }
.dckx-login-card .dck-btn:hover { background: linear-gradient(120deg, #1E62B4, #14406F); filter: none; }
.dckx-login-x { position: absolute; top: 12px; right: 14px; background: none; border: 0; font-size: 25px; line-height: 1; color: #6B6B6B; cursor: pointer; }
.dckx-login-links { margin: 14px 0 0; text-align: center; font-size: 16px; }
@media (max-width: 800px) {
  .page-id-38 .dck-hero { padding: 48px 16px 40px; border-radius: 16px; }
  .dckx-gallery { grid-template-columns: 1fr 1fr; }
  .dckx-3col, .dckx-2col { grid-template-columns: 1fr; }
}

/* ===== v1.8 directory flavor ===== */
.page-id-38 .dck-results-head h2::after { content: ''; display: block; width: 44px; height: 4px; border-radius: 2px; background: linear-gradient(90deg, #1E62B4, #7FB2E5); margin-top: 8px; }
.page-id-38 .dck-filters { background: #fff; border: 1px solid #E9EDF3; border-radius: 16px; padding: 18px; box-shadow: 0 6px 18px rgba(16,24,40,.05); }
.page-id-38 .dck-filters h3, .page-id-38 .dck-filter-group h3 { color: #14406F; letter-spacing: .06em; }
.page-id-38 .dck-filters input[type="checkbox"] { accent-color: #1E62B4; width: 15px; height: 15px; }
.page-id-38 .dck-filters .dck-check { border-radius: 8px; padding: 3px 6px; transition: background .12s ease; }
.page-id-38 .dck-filters .dck-check:hover { background: #EFF5FC; }
.page-id-38 .dck-filter-clear { color: #1E62B4; font-weight: 600; }
.page-id-38 .dck-results--list .dck-card { border-radius: 16px; border: 1px solid #E9EDF3; box-shadow: 0 4px 14px rgba(16,24,40,.05); overflow: hidden; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.page-id-38 .dck-results--list .dck-card:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(16,24,40,.13); border-color: #C7D8EC; }
.page-id-38 .dck-card__media img { object-fit: cover; }
.page-id-38 .dck-card__chips span { background: #E7EFF9; color: #14406F; border-radius: 999px; font-weight: 600; }
.page-id-38 .dck-card--featured { border-color: #1E62B4; box-shadow: 0 8px 24px rgba(30,98,180,.16); }
.page-id-38 .dck-card__badge { background: linear-gradient(120deg, #1E62B4, #14406F); }
@media (min-width: 1100px) {
.page-id-38 .dck-splitview { grid-template-columns: 230px minmax(0,1fr) 340px; gap: 22px; }
.page-id-38 .dck-map-col { top: 96px; }
.page-id-38 .dck-map-canvas, .page-id-38 .dck-map-col .leaflet-container { height: 520px !important; }
}
.page-id-38 .dck-map-canvas { border-radius: 16px; border: 1px solid #E9EDF3; box-shadow: 0 6px 18px rgba(16,24,40,.07); overflow: hidden; }

/* ===== Homepage section rhythm: distinct full-bleed bands + unified headers ===== */
body.page-id-38 { overflow-x: hidden; background: #ffffff !important; }
.page-id-38 .dckx-section { padding: 64px 0; }
/* Coating systems: grey full-bleed band with kicker + bar */
.page-id-38 .dck-systems { position: relative; width: 100vw; left: 50%; margin-left: -50vw; background: #EEF3F9; border-top: 1px solid #E6EBF2; padding: 60px max(20px, calc(50vw - 560px)) 68px; box-sizing: border-box; margin-top: 56px; }
.page-id-38 .dck-systems h2::before { content: 'COATING SYSTEMS'; display: table; background: #E7EFF9; color: #14406F; font-size: 14px; font-weight: 700; letter-spacing: .08em; padding: 6px 14px; border-radius: 999px; margin-bottom: 14px; }
.page-id-38 .dck-systems h2::after { content: ''; display: block; width: 44px; height: 4px; border-radius: 2px; background: linear-gradient(90deg, #1E62B4, #7FB2E5); margin: 10px 0 18px; }
.page-id-38 .dck-system-tile { border-radius: 14px; overflow: hidden; transition: transform .18s ease, box-shadow .18s ease; }
.page-id-38 .dck-system-tile:hover { transform: translateY(-3px); box-shadow: 0 12px 26px rgba(16,24,40,.14); }
/* Recent work: white band (was grey) so it alternates against the systems band */
.page-id-38 .dckx-bleed { background: #ffffff; }
/* Trust + FAQ: grey full-bleed bands */
.page-id-38 .dckx-section:has(.dckx-3col), .page-id-38 .dckx-section:has(.dckx-faq-grid) { position: relative; width: 100vw; left: 50%; margin-left: -50vw; background: #EEF3F9; border-top: 1px solid #E6EBF2; border-bottom: 1px solid #E6EBF2; padding: 64px max(20px, calc(50vw - 560px)); box-sizing: border-box; }
/* unified blue bar under every section h2 */
.page-id-38 .dckx-section h2::after { content: ''; display: block; width: 44px; height: 4px; border-radius: 2px; background: linear-gradient(90deg, #1E62B4, #7FB2E5); margin-top: 10px; }
/* FAQ kicker to match the other sections */
.page-id-38 .dckx-section:has(.dckx-faq-grid) h2::before { content: 'COMMON QUESTIONS'; display: table; background: #E7EFF9; color: #14406F; font-size: 14px; font-weight: 700; letter-spacing: .08em; padding: 6px 14px; border-radius: 999px; margin-bottom: 14px; }
/* CTA strips: breathing room so dark bands read as their own moments */
.page-id-38 .dck-cta-strip { position: relative; width: 100vw; left: 50%; margin-left: -50vw; margin-top: 0; margin-bottom: 0; border-radius: 0; background: linear-gradient(120deg, #0B0E13, #101828 55%, #14406F 160%); padding: 46px max(20px, calc(50vw - 560px)); box-sizing: border-box; }
.page-id-38 .dck-systems { margin-bottom: 0; }

/* Coating-system tiles: serve the LARGE size (plugin inlines 300px medium, which upscales blurry). Plugin-side fix: dck_term_image_url should use large. */
.page-id-38 .dck-system-tile[data-service="basement-waterproofing"] .dck-system-tile__img { background-image: url('https://incrediblecontracting.com/wp-content/uploads/2026/07/dck-tile-basement-waterproofing-1024x768.jpg') !important; }
.page-id-38 .dck-system-tile[data-service="concrete-wood"] .dck-system-tile__img { background-image: url('https://incrediblecontracting.com/wp-content/uploads/2026/07/dck-tile-concrete-wood-1024x768.jpg') !important; }
.page-id-38 .dck-system-tile[data-service="epoxy-coatings"] .dck-system-tile__img { background-image: url('https://incrediblecontracting.com/wp-content/uploads/2026/08/dck-tile-epoxy-flake-1024x768.jpg') !important; }
.page-id-38 .dck-system-tile[data-service="resinous-system"] .dck-system-tile__img { background-image: url('https://incrediblecontracting.com/wp-content/uploads/2026/08/dck-tile-resinous-123-1024x768.jpg') !important; }
.page-id-38 .dck-system-tile[data-service="metallic-marble"] .dck-system-tile__img { background-image: url('https://incrediblecontracting.com/wp-content/uploads/2026/07/dck-tile-metallic-marble-1024x768.jpg') !important; }
.page-id-38 .dck-system-tile[data-service="polished-concrete"] .dck-system-tile__img { background-image: url('https://incrediblecontracting.com/wp-content/uploads/2026/08/dck-tile-polished-concrete-1024x683.jpg') !important; }
.page-id-38 .dck-system-tile[data-service="polyaspartic-polyurea"] .dck-system-tile__img { background-image: url('https://incrediblecontracting.com/wp-content/uploads/2026/07/system-graniflex.webp') !important; }
.page-id-38 .dck-system-tile[data-service="protect-seal"] .dck-system-tile__img { background-image: url('https://incrediblecontracting.com/wp-content/uploads/2026/07/dck-tile-protect-seal.jpg') !important; }
.page-id-38 .dck-system-tile[data-service="quartz-system"] .dck-system-tile__img { background-image: url('https://incrediblecontracting.com/wp-content/uploads/2026/07/dck-tile-quartz-system-1024x768.jpg') !important; }
