@import url("https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;700;800&family=Playfair+Display:wght@600;700&display=swap");

/* JD Renovation Pros WordPress installer frontend styles. Scoped to imported page content. */
.jdrp-content{
  --jdrp-bg:#f4efe4;
  --jdrp-bg-deep:#ece4d7;
  --jdrp-ink:#050b0a;
  --jdrp-ink-muted:#52605a;
  --jdrp-line:#d9d4ca;
  --jdrp-line-soft:#eee5d9;
  --jdrp-surface:#ffffff;
  --jdrp-green:#0b3430;
  --jdrp-green-deep:#081f1c;
  --jdrp-green-soft:#88a98d;
  --jdrp-green-a11y:#0b3430;
  --jdrp-blue:#0b3430;
  --jdrp-amber:#d86e25;
  --jdrp-amber-deep:#a9551d;
  --jdrp-gold:#d86e25;
  --jdrp-graphite:#081f1c;
  --jdrp-white:#fff;
  --jdrp-shadow-soft:0 12px 28px rgba(13, 27, 19, 0.08);
  --jdrp-shadow-card:0 18px 42px rgba(20, 32, 26, 0.12);
  font-family:"Manrope","Avenir Next","Nunito Sans","Segoe UI",sans-serif;
  color:var(--jdrp-ink);
  line-height:1.6;
  background:
    radial-gradient(circle at 14% -6%, rgba(31, 95, 75, 0.16), rgba(255,255,255,0) 50%),
    linear-gradient(180deg, rgba(31,95,75,.05), rgba(255,255,255,0) 320px),
    var(--jdrp-bg);
  min-height:100vh;
}
body:has(.jdrp-content) header.wp-block-template-part,
body:has(.jdrp-content) footer.wp-block-template-part,
body:has(.jdrp-content) .wp-block-post-title{display:none}
body:has(.jdrp-content) main{margin-top:0}
.jdrp-content *{box-sizing:border-box}
.jdrp-content img{display:block;max-width:100%;height:auto}
.jdrp-content a{color:inherit}

.jdrp-site-nav-wrap{
  width:min(1180px, calc(100% - 36px));
  margin:0 auto;
  padding-top:12px;
}
.jdrp-site-band{
  display:flex;
  flex-wrap:wrap;
  gap:10px 14px;
  justify-content:flex-end;
  padding:10px 14px;
  border:1px solid var(--jdrp-line);
  border-radius:999px;
  background:linear-gradient(90deg, rgba(255,255,255,.88), rgba(248,242,233,.94));
  color:var(--jdrp-green-deep);
  color:var(--jdrp-green-deep);
  font-size:.8rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.02em;
  box-shadow:0 8px 20px rgba(23, 47, 37, 0.1);
}
.jdrp-band-pill{
  padding:6px 10px;
  border:1px solid #d6ddd8;
  border-radius:999px;
  background:linear-gradient(180deg, rgba(255,255,255,.9), rgba(246,244,241,.86));
  font-size:.77rem;
}
.jdrp-site-nav{
  width:min(1180px,calc(100% - 36px));
  margin:0 auto;
  min-height:82px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  border-bottom:1px solid var(--jdrp-line);
  padding-bottom:10px;
}
.jdrp-brand{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:max-content;
  text-decoration:none;
  font-weight:900;
  color:var(--jdrp-graphite)!important
}
.jdrp-brand-mark{
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  border-radius:14px;
  background:linear-gradient(145deg, var(--jdrp-green), var(--jdrp-green-soft));
  box-shadow:0 10px 24px rgba(15, 52, 41, 0.28);
  color:var(--jdrp-white);
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
  border:1px solid rgba(255,255,255,.5);
}
.jdrp-brand-mark-image{
  overflow:hidden;
  padding:3px;
  background:var(--jdrp-white);
  border:1px solid rgba(8,31,28,.18);
}
.jdrp-brand-mark-image img{
  width:100%;
  height:100%;
  object-fit:contain;
  border-radius:9px;
}
.jdrp-site-nav nav{
  display:flex;
  align-items:center;
  gap:16px;
  flex-wrap:wrap;
  color:var(--jdrp-muted);
  font-size:.95rem;
  font-weight:700;
}
.jdrp-site-nav nav a{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  text-decoration:none;
}
.jdrp-site-nav nav a:hover{color:var(--jdrp-green-deep)}
.jdrp-nav-cta,.jdrp-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:12px 20px;
  border-radius:999px;
  border:1px solid transparent;
  background:var(--jdrp-amber);
  color:var(--jdrp-white)!important;
  text-decoration:none;
  font-weight:800;
  line-height:1.1;
  text-transform:uppercase;
  letter-spacing:.01em;
  box-shadow:0 10px 24px rgba(198,103,31,0.24);
}
.jdrp-nav-cta,.jdrp-button,
.jdrp-site-nav a,
.jdrp-brand,
.jdrp-link-grid a{
  transition:transform 120ms ease, box-shadow 180ms ease, filter 120ms ease;
}
.jdrp-nav-cta:hover,.jdrp-button:hover{background:var(--jdrp-amber-deep)}
.jdrp-button-secondary{
  background:var(--jdrp-white);
  color:var(--jdrp-green-deep)!important;
  border-color:var(--jdrp-line);
}
.jdrp-nav-cta:hover,
.jdrp-button:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 24px rgba(198,103,31,0.36);
}

.jdrp-site-nav nav a:hover{
  color:var(--jdrp-green-deep)!important;
  transform:translateY(-1px);
}

.jdrp-breadcrumbs{
  width:min(1180px,calc(100% - 36px));
  margin:0 auto;
  padding-top:16px;
  color:var(--jdrp-green-deep);
  font-size:.85rem;
  opacity:.95;
}
.jdrp-breadcrumbs a{color:inherit;text-decoration:none}

.jdrp-hero,.jdrp-section{
  width:min(1180px,calc(100% - 36px));
  margin:0 auto;
  padding:54px 0;
}
.jdrp-hero{
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(320px,.75fr);
  gap:46px;
  align-items:center;
  position:relative;
}
.jdrp-hero::before{
  content:"";
  position:absolute;
  left:6px;
  top:8px;
  width:230px;
  height:230px;
  border-radius:70px 0 180px 0;
  background:linear-gradient(135deg, rgba(31,95,77,.14), rgba(198,103,31,.12));
  z-index:0;
}
.jdrp-hero-overline{
  margin:0 0 18px;
  color:var(--jdrp-green-deep);
  font-size:.8rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.11em;
}
.jdrp-hero h1{
  max-width:860px;
  margin:0;
  color:var(--jdrp-graphite);
  font-family:"Playfair Display","Cormorant Garamond","Times New Roman",serif;
  font-size:clamp(2.25rem,4.35vw,4.15rem);
  font-weight:700;
  line-height:1.04;
  letter-spacing:.01em;
}
.jdrp-hero-lede{
  max-width:720px;
  margin:20px 0 0;
  color:var(--jdrp-muted);
  font-size:clamp(1.03rem,1.9vw,1.18rem);
}
.jdrp-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.jdrp-hero-kicker{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}
.jdrp-hero-kicker span{
  display:inline-flex;
  border-radius:999px;
  border:1px solid #cfded7;
  padding:7px 10px;
  font-size:.81rem;
  font-weight:800;
  color:#254039;
  background:rgba(255,255,255,.7);
}
.jdrp-hero-metrics{
  margin-top:20px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.jdrp-hero-metric{
  border:1px solid var(--jdrp-line);
  border-radius:10px;
  padding:12px;
  background:linear-gradient(180deg, rgba(255,255,255,.94), rgba(250,247,242,.84));
  position:relative;
  overflow:hidden;
}
.jdrp-hero-metric::after{
  content:"";
  position:absolute;
  right:0;
  top:0;
  width:62px;
  height:100%;
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(31,95,77,.15));
}
.jdrp-hero-metric span{display:block;font-size:.73rem;font-weight:800;color:var(--jdrp-green-deep);letter-spacing:.04em;text-transform:uppercase}
.jdrp-hero-metric strong{display:block;margin-top:5px;color:var(--jdrp-graphite);font-size:.97rem;line-height:1.25}
.jdrp-hero-media{min-height:420px}
.jdrp-hero-photo-stack{display:grid;grid-template-columns:.92fr .72fr;gap:12px;align-items:stretch}
.jdrp-hero-photo,.jdrp-page-photo{
  position:relative;
  min-height:148px;
  margin:0;
  overflow:hidden;
  border-radius:14px;
  background:var(--jdrp-bg-deep);
  box-shadow:var(--jdrp-shadow-card);
}
.jdrp-hero-photo:first-child{grid-row:span 2;min-height:420px}
.jdrp-page-photo{min-height:420px}
.jdrp-hero-photo img,.jdrp-page-photo img{
  width:100%;
  height:100%;
  min-height:inherit;
  object-fit:cover;
}
.jdrp-hero-photo figcaption,.jdrp-page-photo figcaption{
  position:absolute;
  left:10px;
  bottom:10px;
  max-width:calc(100% - 20px);
  padding:7px 9px;
  border-radius:8px;
  background:rgba(18,24,22,.85);
  color:#fff!important;
  font-size:.75rem;
  font-weight:900;
  text-shadow:0 1px 1px rgba(0,0,0,.55);
}

.jdrp-section>h2{
  max-width:840px;
  margin:0 0 14px;
  color:var(--jdrp-graphite);
  font-size:clamp(1.8rem,3vw,2.6rem);
  font-family:"Playfair Display","Cormorant Garamond","Times New Roman",serif;
  line-height:1.06;
  letter-spacing:.01em;
}
.jdrp-section-lede{
  max-width:770px;
  margin:0 0 24px;
  color:var(--jdrp-muted);
  font-size:1.04rem;
}
.jdrp-grid,.jdrp-service-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}
.jdrp-service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.jdrp-card{
  border:1px solid var(--jdrp-line);
  border-radius:12px;
  padding:18px;
  background:var(--jdrp-white);
  box-shadow:0 10px 30px rgba(18,24,22,.05);
}
.jdrp-card::before{
  content:"";
  display:block;
  width:100%;
  height:3px;
  background:linear-gradient(90deg, transparent, var(--jdrp-green), transparent);
  margin-bottom:10px;
}
.jdrp-card-kicker{
  margin:0 0 8px;
  color:var(--jdrp-green-deep);
  font-size:.72rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.jdrp-card h3{
  margin:0 0 8px;
  color:var(--jdrp-graphite);
  font-size:1.08rem;
  line-height:1.22;
}
.jdrp-card p{color:var(--jdrp-muted);margin-bottom:0}
.jdrp-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:0;
  padding:0;
  list-style:none;
}
.jdrp-list li{
  padding:14px 16px;
  border:1px solid var(--jdrp-line);
  border-left:4px solid var(--jdrp-amber);
  border-radius:0 10px 10px 0;
  background:linear-gradient(180deg, rgba(255,255,255,.94), rgba(250,247,243,.84));
}
.jdrp-photo-rail{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.jdrp-support-proof .jdrp-photo-rail{grid-template-columns:repeat(4,minmax(0,1fr))}
.jdrp-photos .jdrp-photo-rail{grid-template-columns:repeat(4,minmax(0,1fr))}
.jdrp-photo-card{
  overflow:hidden;
  border:1px solid var(--jdrp-line);
  border-radius:12px;
  background:var(--jdrp-white);
  box-shadow:var(--jdrp-shadow-soft);
}
.jdrp-photo-card-media{
  aspect-ratio:4/3;
  overflow:hidden;
  background:var(--jdrp-bg-deep);
  background-size:cover;
  background-position:center;
}
.jdrp-content .jdrp-photo-bg-kitchen-white-galley{background-image:url("project-photos-v2/kitchen-white-galley.webp") !important}
.jdrp-content .jdrp-photo-bg-kitchen-finished-arch{background-image:url("project-photos-v2/kitchen-finished-arch.webp") !important}
.jdrp-content .jdrp-photo-bg-kitchen-blue-cabinets{background-image:url("project-photos-v2/kitchen-blue-cabinets.webp") !important}
.jdrp-content .jdrp-photo-bg-kitchen-apartment-before-after{background-image:url("project-photos-v2/kitchen-apartment-before-after.webp") !important}
.jdrp-content .jdrp-photo-bg-kitchen-phase-before-after{background-image:url("project-photos-v2/kitchen-phase-before-after.webp") !important}
.jdrp-content .jdrp-photo-bg-bathroom-glass-shower{background-image:url("project-photos-v2/bathroom-glass-shower.webp") !important}
.jdrp-content .jdrp-photo-bg-bathroom-double-vanity{background-image:url("project-photos-v2/bathroom-double-vanity.webp") !important}
.jdrp-content .jdrp-photo-bg-bathroom-wood-vanity{background-image:url("project-photos-v2/bathroom-wood-vanity.webp") !important}
.jdrp-content .jdrp-photo-bg-bathroom-navy-vanity{background-image:url("project-photos-v2/bathroom-navy-vanity.webp") !important}
.jdrp-content .jdrp-photo-bg-bathroom-open-wall-progress{background-image:url("project-photos-v2/bathroom-open-wall-progress.webp") !important}
.jdrp-content .jdrp-photo-bg-bathroom-demo-open-wall-new{background-image:url("project-photos-v2/bathroom-demo-open-wall-new.webp") !important}
.jdrp-content .jdrp-photo-bg-bathroom-backer-board-progress{background-image:url("project-photos-v2/bathroom-backer-board-progress.webp") !important}
.jdrp-content .jdrp-photo-bg-framing-three-door{background-image:url("project-photos-v2/framing-three-door.webp") !important}
.jdrp-content .jdrp-photo-bg-drywall-room-progress{background-image:url("project-photos-v2/drywall-room-progress.webp") !important}
.jdrp-content .jdrp-photo-bg-kitchen-demo-progress{background-image:url("project-photos-v2/kitchen-demo-progress.webp") !important}
.jdrp-content .jdrp-photo-bg-bath-shower-framing{background-image:url("project-photos-v2/bath-shower-framing.webp") !important}
.jdrp-content .jdrp-photo-bg-basement-kitchen-rough{background-image:url("project-photos-v2/basement-kitchen-rough.webp") !important}
.jdrp-content .jdrp-photo-bg-bathroom-floor-tile-progress{background-image:url("project-photos-v2/bathroom-floor-tile-progress.webp") !important}
.jdrp-content .jdrp-photo-bg-cabinet-refresh-white{background-image:url("project-photos-v2/cabinet-refresh-white.webp") !important}
.jdrp-content .jdrp-photo-bg-kitchen-rough-in-progress{background-image:url("project-photos-v2/kitchen-rough-in-progress.webp") !important}
.jdrp-content .jdrp-photo-bg-bathroom-dark-tile-finished{background-image:url("project-photos-v2/bathroom-dark-tile-finished.webp") !important}
.jdrp-content .jdrp-photo-bg-bathroom-green-tile-tub-finished{background-image:url("project-photos-v2/bathroom-green-tile-tub-finished.webp") !important}
.jdrp-content .jdrp-photo-bg-bathroom-white-vanity-finished{background-image:url("project-photos-v2/bathroom-white-vanity-finished.webp") !important}
.jdrp-content .jdrp-photo-bg-bathroom-glass-tub-finished{background-image:url("project-photos-v2/bathroom-glass-tub-finished.webp") !important}
.jdrp-content .jdrp-photo-bg-bathroom-gray-tile-shower-finished{background-image:url("project-photos-v2/bathroom-gray-tile-shower-finished.webp") !important}
.jdrp-content .jdrp-photo-bg-bathroom-skylight-demo{background-image:url("project-photos-v2/bathroom-skylight-demo.webp") !important}
.jdrp-content .jdrp-photo-bg-bathroom-skylight-prep{background-image:url("project-photos-v2/bathroom-skylight-prep.webp") !important}
.jdrp-content .jdrp-photo-bg-bathroom-skylight-finished{background-image:url("project-photos-v2/bathroom-skylight-finished.webp") !important}
.jdrp-content .jdrp-photo-bg-bathroom-double-vanity-patterned{background-image:url("project-photos-v2/bathroom-double-vanity-patterned.webp") !important}
.jdrp-content .jdrp-photo-bg-bathroom-glass-tub-patterned{background-image:url("project-photos-v2/bathroom-glass-tub-patterned.webp") !important}
.jdrp-content .jdrp-photo-bg-bathroom-gray-glass-tub{background-image:url("project-photos-v2/bathroom-gray-glass-tub.webp") !important}
.jdrp-photo-card-media img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.jdrp-photo-card-copy{padding:16px}
.jdrp-photo-card-copy p{
  margin:0 0 7px;
  color:var(--jdrp-blue);
  font-size:.78rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:0;
}
.jdrp-photo-card-copy h3{
  margin:0 0 6px;
  color:var(--jdrp-graphite);
  font-size:1.02rem;
  line-height:1.2;
}
.jdrp-photo-card-copy span{display:block;color:var(--jdrp-muted);font-size:.92rem}

.jdrp-link-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.jdrp-link-grid a{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:14px 16px;
  border:1px solid var(--jdrp-line);
  border-radius:12px;
  text-decoration:none;
  background:var(--jdrp-white);
  font-weight:800;
  color:var(--jdrp-green-deep)!important;
}
.jdrp-link-grid a:hover{
  color:var(--jdrp-green-a11y)!important;
  transform:translateX(2px);
}
.jdrp-faq details{
  border:1px solid var(--jdrp-line);
  border-radius:10px;
  background:var(--jdrp-white);
  padding:16px;
  margin-bottom:12px;
}
.jdrp-faq summary{cursor:pointer;font-weight:850;color:var(--jdrp-graphite)}
.jdrp-faq p{color:var(--jdrp-muted)}

.jdrp-cta-band{
  background:linear-gradient(135deg,rgba(31,94,77,.1),rgba(255,255,255,0) 45%),var(--jdrp-green);
  color:var(--jdrp-white);
  border-radius:12px;
  padding:28px;
  margin-top:34px;
  box-shadow:var(--jdrp-shadow-soft);
}
.jdrp-cta-band h2,.jdrp-cta-band p{color:var(--jdrp-white)}
.jdrp-cta-band .jdrp-button-secondary{
  background:transparent;
  color:var(--jdrp-white)!important;
  border-color:rgba(255,255,255,.42);
}
.jdrp-trust{
  background:linear-gradient(180deg,rgba(255,255,255,.87),rgba(255,255,255,.5));
  border-top:1px solid rgba(25,74,61,.18);
  border-bottom:1px solid rgba(25,74,61,.18);
}
.jdrp-trust-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.jdrp-trust .jdrp-hero-metric{
  min-height:142px;
  padding:18px;
  border:1px solid #d8d2c8;
  border-radius:8px;
  background:linear-gradient(180deg, #ffffff, #f6f1e8);
  box-shadow:0 14px 34px rgba(18, 28, 24, .08);
}
.jdrp-trust .jdrp-hero-metric::after{
  width:54px;
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(19,75,63,.1));
}
.jdrp-trust .jdrp-hero-metric span{
  color:#a94f1e;
}
.jdrp-trust .jdrp-hero-metric strong{
  color:#111b18;
}

.jdrp-sticky-cta{
  position:sticky;
  bottom:0;
  z-index:6;
  width:min(1180px, calc(100% - 36px));
  margin:24px auto 0;
  border:1px solid var(--jdrp-line);
  border-radius:14px 14px 0 0;
  background:linear-gradient(90deg, var(--jdrp-green), #1b594f);
  padding:14px;
  box-shadow:0 -10px 26px rgba(17, 39, 31, 0.17);
  color:var(--jdrp-white);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.jdrp-sticky-cta a{
  border-radius:999px;
  border:1px solid rgba(255,255,255,.4);
  color:var(--jdrp-white)!important;
  background:transparent;
}

.jdrp-sticky-cta p{margin:0;color:rgba(255,255,255,.94);font-size:.98rem;font-weight:700}

@media (max-width: 980px){
  .jdrp-site-band{justify-content:flex-start}
  .jdrp-site-nav{align-items:flex-start;flex-direction:column;padding-top:10px}
  .jdrp-site-nav nav{gap:14px}
  .jdrp-site-nav nav a{padding:10px 8px}
  .jdrp-hero{grid-template-columns:1fr;padding-top:40px}
  .jdrp-grid,.jdrp-service-grid,.jdrp-photo-rail,.jdrp-support-proof .jdrp-photo-rail,.jdrp-photos .jdrp-photo-rail,.jdrp-link-grid,.jdrp-list,.jdrp-trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 680px){
  .jdrp-site-nav-wrap,.jdrp-site-band,.jdrp-site-nav,.jdrp-hero,.jdrp-section{width:min(100% - 24px,1180px)}
  .jdrp-site-nav,.jdrp-hero{gap:24px}
  .jdrp-hero h1{font-size:clamp(2.05rem,11vw,3.1rem)}
  .jdrp-hero-photo-stack,.jdrp-grid,.jdrp-service-grid,.jdrp-photo-rail,.jdrp-support-proof .jdrp-photo-rail,.jdrp-photos .jdrp-photo-rail,.jdrp-link-grid,.jdrp-list,.jdrp-trust-grid{grid-template-columns:1fr}
  .jdrp-hero-photo:first-child,.jdrp-hero-media,.jdrp-page-photo{min-height:260px}
}

/* Phase 64 live brand refresh: stronger renovation-first visual system. */
.jdrp-content{
  --jdrp-bg:#f2f0ea;
  --jdrp-ink:#101817;
  --jdrp-ink-muted:#4c5854;
  --jdrp-green:#134b3f;
  --jdrp-green-deep:#0b2f29;
  --jdrp-green-soft:#276d58;
  --jdrp-amber:#d86f25;
  --jdrp-amber-deep:#a94f1e;
  --jdrp-graphite:#0d1715;
  background:
    linear-gradient(180deg, #fbfaf7 0, #f2f0ea 440px, #ebe6dc 100%);
}
.jdrp-site-nav-wrap{
  width:100%;
  margin:0;
  padding:0;
  background:#0d1715;
  color:#fff;
  box-shadow:0 18px 42px rgba(8, 16, 14, .22);
}
.jdrp-site-band{
  width:100%;
  justify-content:center;
  border:0;
  border-radius:0;
  background:linear-gradient(90deg, #d86f25, #a94f1e);
  color:#fff;
  box-shadow:none;
}
.jdrp-band-pill{
  border-color:rgba(255,255,255,.28);
  background:rgba(255,255,255,.1);
  color:#fff;
}
.jdrp-site-nav{
  min-height:84px;
  width:min(1220px, calc(100% - 36px));
  border-bottom:0;
  padding:0;
}
.jdrp-brand{
  color:#fff!important;
}
.jdrp-brand-mark{
  width:52px;
  height:52px;
  border-radius:10px;
  background:linear-gradient(145deg, #d86f25, #134b3f);
  box-shadow:0 14px 30px rgba(0,0,0,.32);
}
.jdrp-brand-mark-image{
  padding:3px;
  background:#fff;
  border-color:rgba(244,239,228,.55);
}
.jdrp-brand-copy{
  display:grid;
  gap:2px;
  line-height:1.05;
}
.jdrp-brand-copy strong{
  color:#fff;
  font-size:1.05rem;
}
.jdrp-brand-copy small{
  color:#c7d7d1;
  font-size:.74rem;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.jdrp-site-nav nav{
  color:#d8e0dd;
}
.jdrp-site-nav nav a:hover{
  color:#fff;
}
.jdrp-nav-cta,.jdrp-button{
  border-radius:8px;
  background:linear-gradient(135deg, #df762a, #bd551d);
  box-shadow:0 16px 28px rgba(168, 77, 26, .24);
}
.jdrp-button-secondary{
  border-color:#d8ded9;
  background:#fff;
  color:#123d34!important;
  box-shadow:0 10px 22px rgba(18, 33, 28, .08);
}
.jdrp-hero{
  width:100%;
  max-width:none;
  margin:0;
  padding:clamp(52px, 6vw, 92px) max(24px, calc((100% - 1220px) / 2));
  grid-template-columns:minmax(0, .92fr) minmax(390px, .86fr);
  align-items:center;
  gap:clamp(34px, 5vw, 76px);
  background:
    linear-gradient(115deg, rgba(13,23,21,.98) 0%, rgba(13,23,21,.94) 44%, rgba(19,75,63,.86) 100%),
    radial-gradient(circle at 92% 10%, rgba(216,111,37,.34), rgba(216,111,37,0) 38%);
  color:#fff;
}
.jdrp-hero::before{
  display:none;
}
.jdrp-hero-overline{
  display:inline-flex;
  align-items:center;
  gap:10px;
  width:auto;
  margin-bottom:18px;
  padding:8px 12px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:999px;
  background:rgba(255,255,255,.08);
  color:#f3c39f;
  font-size:.78rem;
}
.jdrp-hero h1{
  max-width:820px;
  color:#fff;
  font-size:clamp(3rem, 5.55vw, 5.95rem);
  line-height:.94;
  letter-spacing:0;
}
.jdrp-hero-lede{
  max-width:700px;
  color:#d8e2de;
  font-size:clamp(1.06rem, 1.5vw, 1.32rem);
}
.jdrp-hero-kicker span{
  border-color:rgba(255,255,255,.18);
  background:rgba(255,255,255,.08);
  color:#fff;
}
.jdrp-hero .jdrp-hero-metric{
  border-color:rgba(255,255,255,.16);
  background:rgba(255,255,255,.08);
  box-shadow:none;
}
.jdrp-hero .jdrp-hero-metric span{
  color:#f3c39f;
}
.jdrp-hero .jdrp-hero-metric strong{
  color:#fff;
}
.jdrp-hero-photo,.jdrp-page-photo{
  border:1px solid rgba(255,255,255,.16);
  border-radius:8px;
  box-shadow:0 24px 58px rgba(0,0,0,.34);
  background:#17231f;
}
.jdrp-hero-photo:first-child{
  min-height:470px;
}
.jdrp-hero-photo figcaption,.jdrp-page-photo figcaption{
  border-radius:6px;
  background:rgba(13,23,21,.9);
  color:#fff;
}
.jdrp-section{
  margin-top:54px;
}
.jdrp-section h2{
  color:#111b18;
}
.jdrp-section-kicker{
  margin:0 0 10px;
  color:#a94f1e;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.jdrp-quote-prep{
  width:min(1220px, calc(100% - 36px));
  margin:34px auto 0;
  display:grid;
  grid-template-columns:minmax(0, .88fr) minmax(420px, 1fr);
  gap:22px;
  align-items:stretch;
  padding:24px;
  border:1px solid #d8d2c8;
  border-radius:8px;
  background:linear-gradient(135deg, #fff 0%, #f4efe6 100%);
  box-shadow:0 18px 46px rgba(18, 28, 24, .12);
}
.jdrp-quote-prep h2{
  max-width:680px;
  margin-bottom:10px;
  font-size:clamp(1.8rem, 3vw, 2.6rem);
}
.jdrp-quote-prep .jdrp-section-lede{
  margin-bottom:18px;
}
.jdrp-quote-prep-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:10px;
}
.jdrp-quote-prep-grid article{
  display:grid;
  align-content:start;
  gap:7px;
  min-height:100%;
  padding:16px;
  border:1px solid #d9d3ca;
  border-radius:8px;
  background:#fff;
}
.jdrp-quote-prep-grid span{
  color:#d86f25;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.08em;
}
.jdrp-quote-prep-grid strong{
  color:#111b18;
  font-size:1rem;
  line-height:1.25;
}
.jdrp-quote-prep-grid p{
  margin:0;
  color:#4c5854;
  font-size:.92rem;
  line-height:1.5;
}
.jdrp-contact-intake{
  width:min(1220px, calc(100% - 36px));
  margin:34px auto 0;
  display:grid;
  grid-template-columns:minmax(0, .72fr) minmax(520px, 1fr);
  gap:22px;
  align-items:start;
}
.jdrp-contact-intake-main{
  position:sticky;
  top:18px;
  padding:24px;
  border:1px solid #d8d2c8;
  border-radius:8px;
  background:#fff;
  box-shadow:0 18px 46px rgba(18, 28, 24, .1);
}
.jdrp-contact-intake-main h2{
  margin-bottom:10px;
  font-size:clamp(1.85rem, 3vw, 2.7rem);
}
.jdrp-contact-methods{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}
.jdrp-contact-intake-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:12px;
}
.jdrp-contact-intake-grid article{
  min-height:100%;
  padding:18px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:8px;
  background:linear-gradient(145deg, #0f1d1a, #173f35);
  color:#fff;
  box-shadow:0 18px 40px rgba(7, 17, 14, .18);
}
.jdrp-contact-intake-grid span{
  display:block;
  margin-bottom:8px;
  color:#f3c39f;
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.jdrp-contact-intake-grid strong{
  display:block;
  color:#fff;
  font-size:1.05rem;
  line-height:1.25;
}
.jdrp-contact-intake-grid p{
  margin:9px 0 0;
  color:#d6e0dc;
  font-size:.93rem;
  line-height:1.55;
}
.jdrp-copy-packet{
  grid-column:1 / -1;
  padding:18px;
  border:1px solid #d8d2c8;
  border-radius:8px;
  background:#fff;
  box-shadow:0 14px 34px rgba(18, 28, 24, .08);
}
.jdrp-copy-packet h3{
  margin:0 0 10px;
  color:#111b18;
  font-size:1.15rem;
}
.jdrp-copy-packet pre{
  margin:0;
  white-space:pre-wrap;
  overflow:auto;
  padding:14px;
  border-radius:8px;
  background:#f3efe7;
  color:#25322e;
  font-family:"Manrope","Segoe UI",sans-serif;
  font-size:.94rem;
  line-height:1.6;
}
.jdrp-contact-form-panel{
  width:min(1220px, calc(100% - 36px));
  margin:34px auto 0;
  display:grid;
  grid-template-columns:minmax(0, .78fr) minmax(460px, 1fr);
  gap:22px;
  align-items:start;
  padding:24px;
  border:1px solid #d8d2c8;
  border-radius:8px;
  background:linear-gradient(135deg, #fff 0%, #f7f1e8 100%);
  box-shadow:0 18px 46px rgba(18, 28, 24, .12);
}
.jdrp-contact-form-copy h2{
  max-width:680px;
  margin-bottom:10px;
  font-size:clamp(1.9rem, 3vw, 2.85rem);
}
.jdrp-contact-options{
  display:grid;
  gap:10px;
  margin:20px 0 14px;
}
.jdrp-contact-options a{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  padding:14px 16px;
  border:1px solid #d8d2c8;
  border-radius:8px;
  background:#fff;
  color:#09352e;
  text-decoration:none;
  box-shadow:0 12px 28px rgba(25, 31, 28, .06);
}
.jdrp-contact-options span{
  color:#66716c;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.jdrp-contact-options strong{
  color:#101715;
  overflow-wrap:anywhere;
}
.jdrp-quote-form{
  display:grid;
  gap:13px;
  padding:22px;
  border:1px solid #d8d2c8;
  border-radius:8px;
  background:#fff;
  box-shadow:0 16px 36px rgba(18, 28, 24, .08);
}
.jdrp-quote-form label{
  display:grid;
  gap:6px;
  color:#101715;
  font-size:.95rem;
  font-weight:800;
}
.jdrp-field-label{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
}
.jdrp-field-optional{
  color:#67736e;
  font-size:.76rem;
  font-weight:700;
  text-transform:uppercase;
}
.jdrp-quote-form input,
.jdrp-quote-form select,
.jdrp-quote-form textarea{
  width:100%;
  padding:12px 13px;
  border:1px solid #d8d2c8;
  border-radius:8px;
  background:#fff;
  color:#101715;
  font:inherit;
  line-height:1.35;
}
.jdrp-quote-form textarea{resize:vertical}
.jdrp-quote-form .jdrp-photo-upload{
  padding:14px;
  border:1px dashed #b9b2a7;
  border-radius:8px;
  background:#faf9f6;
}
.jdrp-quote-form input[type="file"]{
  padding:8px;
  background:#fff;
  cursor:pointer;
}
.jdrp-quote-form input[type="file"]::file-selector-button{
  margin-right:12px;
  padding:10px 13px;
  border:0;
  border-radius:6px;
  background:#0b5a4b;
  color:#fff;
  font:inherit;
  font-weight:800;
  cursor:pointer;
}
.jdrp-upload-help{
  color:#5e6964;
  font-size:.82rem;
  font-weight:500;
  line-height:1.45;
}
.jdrp-upload-error{
  color:#9b3f13;
  font-weight:800;
}
.jdrp-quote-form .jdrp-honeypot{
  position:absolute !important;
  left:-10000px !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
  opacity:0 !important;
}
.jdrp-quote-form button{
  width:max-content;
  border:0;
}
.jdrp-quote-form button:disabled{
  cursor:wait;
  opacity:.72;
}
.jdrp-form-note{
  margin:0;
  color:#5e6964;
  font-size:.92rem;
  line-height:1.5;
}
.jdrp-form-note-strong{
  padding:12px 14px;
  border-left:4px solid #d86f25;
  background:rgba(216,111,37,.08);
}
.jdrp-form-status{
  margin:0 0 12px;
  padding:12px 14px;
  border-radius:8px;
  font-weight:800;
}
.jdrp-form-status-success{
  border:1px solid rgba(9,83,68,.22);
  background:rgba(9,83,68,.1);
  color:#073f35;
}
.jdrp-form-status-error{
  border:1px solid rgba(169,79,30,.26);
  background:rgba(216,111,37,.1);
  color:#75330f;
}
.jdrp-photo-proof-board{
  width:min(1220px, calc(100% - 36px));
  margin:34px auto 0;
  padding:24px;
  border:1px solid #d8d2c8;
  border-radius:8px;
  background:linear-gradient(135deg, #fff 0%, #f4efe6 100%);
  box-shadow:0 18px 46px rgba(18, 28, 24, .12);
}
.jdrp-photo-proof-head{
  max-width:860px;
}
.jdrp-photo-proof-head h2{
  margin-bottom:10px;
  font-size:clamp(1.85rem, 3.2vw, 2.8rem);
}
.jdrp-photo-proof-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:12px;
  margin-top:20px;
}
.jdrp-photo-proof-card{
  display:grid;
  grid-template-rows:190px 1fr;
  min-height:100%;
  overflow:hidden;
  border:1px solid #d8d2c8;
  border-radius:8px;
  background:#fff;
  box-shadow:0 14px 34px rgba(18, 28, 24, .08);
}
.jdrp-photo-proof-image{
  min-height:190px;
  background:#13231e;
}
.jdrp-photo-proof-image img{
  width:100%;
  height:100%;
  min-height:190px;
  object-fit:cover;
}
.jdrp-photo-proof-copy{
  padding:16px;
}
.jdrp-photo-proof-copy span{
  display:block;
  margin-bottom:8px;
  color:#a94f1e;
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.jdrp-photo-proof-copy h3{
  margin:0 0 8px;
  color:#111b18;
  font-size:1.05rem;
  line-height:1.25;
}
.jdrp-photo-proof-copy p{
  margin:0;
  color:#4c5854;
  font-size:.92rem;
  line-height:1.5;
}
.jdrp-service-scope-map{
  width:min(1220px, calc(100% - 36px));
  margin:34px auto 0;
  display:grid;
  grid-template-columns:minmax(0, .72fr) minmax(520px, 1fr);
  gap:22px;
  align-items:start;
  padding:24px;
  border:1px solid #d8d2c8;
  border-radius:8px;
  background:linear-gradient(135deg, #fff 0%, #f4efe6 100%);
  box-shadow:0 18px 46px rgba(18, 28, 24, .12);
}
.jdrp-service-scope-copy h2{
  margin-bottom:10px;
  font-size:clamp(1.75rem, 2.8vw, 2.55rem);
}
.jdrp-service-scope-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:12px;
}
.jdrp-service-scope-grid article{
  min-height:100%;
  padding:18px;
  border:1px solid #d8d2c8;
  border-radius:8px;
  background:#fff;
  box-shadow:0 14px 34px rgba(18, 28, 24, .08);
}
.jdrp-service-scope-grid span{
  display:block;
  margin-bottom:10px;
  color:#a94f1e;
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.jdrp-service-scope-grid ul{
  margin:0;
  padding-left:18px;
  color:#4c5854;
}
.jdrp-service-scope-grid li{
  margin:6px 0;
  line-height:1.45;
}
.jdrp-location-logistics{
  width:min(1220px, calc(100% - 36px));
  margin:34px auto 0;
  display:grid;
  grid-template-columns:minmax(0, .72fr) minmax(520px, 1fr);
  gap:22px;
  align-items:stretch;
  padding:24px;
  border:1px solid #d8d2c8;
  border-radius:8px;
  background:
    linear-gradient(135deg, rgba(13, 23, 21, .96), rgba(19, 75, 63, .94)),
    linear-gradient(180deg, #fff, #f4efe6);
  color:#fff;
  box-shadow:0 18px 46px rgba(18, 28, 24, .16);
}
.jdrp-location-logistics h2{
  max-width:720px;
  margin-bottom:10px;
  color:#fff;
  font-size:clamp(1.8rem, 3vw, 2.65rem);
}
.jdrp-location-logistics .jdrp-section-kicker{
  color:#f3c39f;
}
.jdrp-location-logistics .jdrp-section-lede{
  color:#d8e2de;
}
.jdrp-location-logistics-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:12px;
}
.jdrp-location-logistics-grid article{
  min-height:100%;
  padding:18px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:8px;
  background:rgba(255,255,255,.08);
  box-shadow:0 14px 34px rgba(0,0,0,.12);
}
.jdrp-location-logistics-grid span{
  display:block;
  margin-bottom:10px;
  color:#f3c39f;
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.jdrp-location-logistics-grid p,
.jdrp-location-logistics-grid ul{
  margin:0;
  color:#edf3ef;
  font-size:.94rem;
  line-height:1.55;
}
.jdrp-location-logistics-grid ul{
  padding-left:18px;
}
.jdrp-location-logistics-grid li{
  margin:6px 0;
}

/* Phase 70: mid-page polish for live homepage/service surfaces. */
.jdrp-home-gallery{
  width:min(1220px, calc(100% - 36px));
  padding:32px;
  border:1px solid #d8d2c8;
  border-radius:8px;
  background:linear-gradient(180deg, #fffdf8, #f7f1e8);
  box-shadow:0 20px 50px rgba(18, 28, 24, .12);
}
.jdrp-home-gallery .jdrp-photo-rail{
  gap:14px;
}
.jdrp-home-gallery .jdrp-photo-card{
  border-radius:8px;
  border:1px solid #d8d2c8;
  box-shadow:0 14px 34px rgba(18, 28, 24, .12);
}
.jdrp-home-gallery .jdrp-photo-card-media{
  height:250px;
}
.jdrp-related-services{
  width:min(1220px, calc(100% - 36px));
  padding:32px;
  border:1px solid #d8d2c8;
  border-radius:8px;
  background:#f8f4ed;
}
.jdrp-related-services .jdrp-service-grid{
  gap:14px;
}
.jdrp-related-services .jdrp-card{
  position:relative;
  overflow:hidden;
  min-height:174px;
  border-radius:8px;
  border:1px solid #d8d2c8;
  background:#fff;
  box-shadow:0 14px 34px rgba(18, 28, 24, .08);
}
.jdrp-related-services .jdrp-card::before{
  height:4px;
  margin:-18px -18px 16px;
  background:linear-gradient(90deg, #134b3f, #d86f25);
}
.jdrp-related-services .jdrp-card-kicker{
  color:#a94f1e;
}
.jdrp-trust{
  width:min(1220px, calc(100% - 36px));
  padding:34px;
  border:0;
  border-radius:8px;
  background:
    linear-gradient(135deg, rgba(216,111,37,.18), rgba(216,111,37,0) 36%),
    linear-gradient(135deg, #0d1715, #173f35);
  color:#fff;
  box-shadow:0 22px 54px rgba(7, 17, 14, .24);
}
.jdrp-trust h2{
  color:#fff!important;
}
.jdrp-trust .jdrp-hero-metric{
  min-height:142px;
  padding:18px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:8px;
  background:rgba(255,255,255,.08);
  box-shadow:none;
}
.jdrp-trust .jdrp-hero-metric::after{
  width:54px;
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(216,111,37,.18));
}
.jdrp-trust .jdrp-hero-metric span{
  color:#f3c39f;
}
.jdrp-trust .jdrp-hero-metric strong{
  color:#fff;
}
.jdrp-process .jdrp-grid{
  counter-reset:jdrp-step;
  gap:14px;
}
.jdrp-process .jdrp-card{
  counter-increment:jdrp-step;
  min-height:190px;
  border-radius:8px;
  background:linear-gradient(180deg, #fff, #f8f4ed);
}
.jdrp-process .jdrp-card::before{
  content:"0" counter(jdrp-step);
  display:inline-flex;
  width:auto;
  height:auto;
  margin:0 0 14px;
  background:none;
  color:#a94f1e;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.08em;
}
.jdrp-cta-band{
  width:min(1220px, calc(100% - 36px));
  padding:34px 28px;
  border-radius:8px;
  background:
    linear-gradient(90deg, rgba(216,111,37,.28), rgba(216,111,37,0) 38%),
    linear-gradient(135deg, #0d1715, #134b3f);
  box-shadow:0 24px 58px rgba(7, 17, 14, .24);
}
.jdrp-cta-band h2{
  color:#fff!important;
}
.jdrp-cta-band p{
  max-width:860px;
  color:#d8e2de!important;
}
.jdrp-cta-band .jdrp-button-secondary{
  background:rgba(255,255,255,.08);
  color:#fff!important;
  border-color:rgba(255,255,255,.28);
}
.jdrp-next-pages{
  padding-top:36px;
  border-top:1px solid #d8d2c8;
}
.jdrp-next-pages h2{
  margin-bottom:10px;
}
.jdrp-next-pages .jdrp-link-grid a{
  border-radius:8px;
  background:#fffdf8;
  box-shadow:0 10px 28px rgba(18, 28, 24, .07);
}
.jdrp-footer{
  width:min(1220px, calc(100% - 36px));
  margin:40px auto 0;
  padding:32px 0 42px;
  border-top:1px solid #d8d2c8;
  color:#31423c;
}
.jdrp-footer-inner{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(260px,.6fr) minmax(300px,.9fr);
  gap:28px;
  align-items:start;
}
.jdrp-footer-brand{
  display:inline-flex;
  margin-bottom:8px;
  color:var(--jdrp-graphite)!important;
  font-size:1.1rem;
  font-weight:900;
  text-decoration:none;
}
.jdrp-footer p{
  max-width:620px;
  margin:0;
  color:#52605a;
}
.jdrp-footer-actions,
.jdrp-footer-links{
  display:grid;
  gap:9px;
}
.jdrp-footer a{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  color:var(--jdrp-green-deep)!important;
  font-weight:800;
  text-decoration:none;
}
.jdrp-footer a:hover{
  color:var(--jdrp-amber-deep)!important;
}
.jdrp-sticky-cta{
  display:none;
}
@media (max-width: 980px){
  .jdrp-site-nav{
    min-height:0;
    padding:18px 0;
  }
  .jdrp-hero{
    grid-template-columns:1fr;
    padding:44px 24px;
  }
  .jdrp-hero h1{
    font-size:clamp(2.25rem, 8.6vw, 3.6rem);
  }
  .jdrp-quote-prep{
    grid-template-columns:1fr;
  }
  .jdrp-contact-form-panel{
    grid-template-columns:1fr;
  }
  .jdrp-contact-intake{
    grid-template-columns:1fr;
  }
  .jdrp-contact-intake-main{
    position:static;
  }
  .jdrp-photo-proof-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
  .jdrp-service-scope-map{
    grid-template-columns:1fr;
  }
  .jdrp-location-logistics{
    grid-template-columns:1fr;
  }
  .jdrp-related-services .jdrp-service-grid,
  .jdrp-process .jdrp-grid,
  .jdrp-trust-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 680px){
  .jdrp-site-nav-wrap,.jdrp-site-band,.jdrp-site-nav,.jdrp-hero,.jdrp-section{
    width:100%;
  }
  .jdrp-site-nav,.jdrp-section{
    padding-left:18px;
    padding-right:18px;
  }
  .jdrp-hero{
    padding-left:18px;
    padding-right:18px;
  }
  .jdrp-hero h1{
    font-size:clamp(2.05rem, 10vw, 3rem);
  }
  .jdrp-quote-prep{
    width:calc(100% - 24px);
    padding:18px;
  }
  .jdrp-contact-form-panel{
    width:calc(100% - 24px);
    padding:18px;
  }
  .jdrp-quote-prep-grid{
    grid-template-columns:1fr;
  }
  .jdrp-contact-intake{
    width:calc(100% - 24px);
  }
  .jdrp-contact-intake-grid{
    grid-template-columns:1fr;
  }
  .jdrp-photo-proof-board{
    width:calc(100% - 24px);
    padding:18px;
  }
  .jdrp-photo-proof-grid{
    grid-template-columns:1fr;
  }
  .jdrp-service-scope-map{
    width:calc(100% - 24px);
    padding:18px;
  }
  .jdrp-service-scope-grid{
    grid-template-columns:1fr;
  }
  .jdrp-location-logistics{
    width:calc(100% - 24px);
    padding:18px;
  }
  .jdrp-location-logistics-grid{
    grid-template-columns:1fr;
  }
  .jdrp-home-gallery,
  .jdrp-related-services,
  .jdrp-trust,
  .jdrp-cta-band{
    width:calc(100% - 24px);
    padding:18px;
  }
  .jdrp-home-gallery .jdrp-photo-card-media{
    height:220px;
  }
  .jdrp-related-services .jdrp-service-grid,
  .jdrp-process .jdrp-grid,
  .jdrp-trust-grid{
    grid-template-columns:1fr;
  }
  .jdrp-footer{
    width:calc(100% - 36px);
  }
  .jdrp-footer-inner{
    grid-template-columns:1fr;
  }
  .jdrp-contact-intake-main,
  .jdrp-quote-form,
  .jdrp-copy-packet,
  .jdrp-contact-intake-grid article{
    padding:16px;
  }
  .jdrp-sticky-cta{
    position:fixed;
    left:12px;
    right:12px;
    bottom:12px;
    z-index:40;
    width:auto;
    margin:0;
    padding:10px;
    border-radius:8px;
    display:flex;
    box-shadow:0 16px 36px rgba(8,16,14,.25);
  }
  .jdrp-sticky-cta p{
    display:none;
  }
  .jdrp-sticky-cta .jdrp-actions{
    width:100%;
    margin:0;
  }
  .jdrp-sticky-cta .jdrp-button{
    flex:1;
    min-height:42px;
    padding:10px 12px;
    font-size:.82rem;
  }
}

/* Phase 92 brand polish: cleaner contractor-grade rhythm from the brand kit. */
.jdrp-content{
  --jdrp-bg:#f7f5ef;
  --jdrp-bg-deep:#ebe6db;
  --jdrp-line:#d5d0c5;
  --jdrp-line-soft:#e9e2d6;
  --jdrp-shadow-soft:0 10px 24px rgba(13, 27, 19, 0.07);
  --jdrp-shadow-card:0 18px 38px rgba(7, 17, 14, 0.16);
  background:
    linear-gradient(180deg, #ffffff 0, #f7f5ef 520px, #ebe6db 100%);
}
.jdrp-site-band{
  min-height:42px;
  justify-content:center;
  gap:10px 18px;
  padding:8px 18px;
  background:#0b3430;
  border-bottom:1px solid rgba(244,239,228,.14);
  color:#f4efe4;
  font-size:.76rem;
}
.jdrp-band-pill{
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:#f4efe4;
}
.jdrp-band-link{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:4px 10px;
  border:1px solid rgba(244,239,228,.28);
  border-radius:8px;
  color:#fff!important;
  text-decoration:none;
  font-weight:900;
}
.jdrp-site-nav-wrap{
  background:#081f1c;
  box-shadow:0 14px 34px rgba(8,16,14,.2);
}
.jdrp-site-nav{
  min-height:76px;
}
.jdrp-brand-mark{
  border-radius:8px;
  box-shadow:0 10px 22px rgba(0,0,0,.28);
}
.jdrp-brand-copy strong{
  font-size:1.02rem;
}
.jdrp-brand-copy small{
  color:#d8e2de;
  letter-spacing:.045em;
}
.jdrp-site-nav nav{
  gap:14px;
  font-size:.91rem;
}
.jdrp-nav-cta,.jdrp-button{
  min-height:42px;
  padding:11px 18px;
  border-radius:7px;
  background:#d86e25;
  box-shadow:0 12px 22px rgba(168,77,26,.23);
}
.jdrp-nav-cta:hover,.jdrp-button:hover{
  background:#a9551d;
}
.jdrp-hero{
  min-height:0;
  padding:clamp(48px,5.2vw,76px) max(24px, calc((100% - 1220px) / 2));
  grid-template-columns:minmax(0,.9fr) minmax(380px,.82fr);
  background:
    linear-gradient(115deg, rgba(8,31,28,.985) 0%, rgba(8,31,28,.96) 48%, rgba(11,52,48,.9) 100%),
    radial-gradient(circle at 92% 8%, rgba(216,110,37,.28), rgba(216,110,37,0) 38%);
}
.jdrp-hero-overline{
  border-radius:7px;
  color:#f4c2a1;
  letter-spacing:.075em;
}
.jdrp-hero h1{
  max-width:760px;
  font-size:clamp(2.85rem,4.85vw,5.15rem);
  line-height:.97;
}
.jdrp-hero-lede{
  max-width:660px;
  color:#e4ebe7;
}
.jdrp-hero-kicker{
  gap:8px;
}
.jdrp-hero-kicker span{
  border-radius:7px;
  padding:7px 9px;
  color:#f7fbf9;
}
.jdrp-hero-metrics{
  max-width:720px;
}
.jdrp-hero .jdrp-hero-metric{
  border-radius:7px;
}
.jdrp-hero-photo,.jdrp-page-photo,
.jdrp-photo-card,.jdrp-card,.jdrp-link-grid a,
.jdrp-faq details,.jdrp-contact-options a,
.jdrp-quote-form,.jdrp-contact-form-panel,
.jdrp-contact-intake-main,.jdrp-copy-packet{
  border-radius:7px;
}
.jdrp-hero-photo:first-child{
  min-height:430px;
}
.jdrp-section{
  margin-top:42px;
}
.jdrp-section>h2{
  font-size:clamp(1.65rem,2.5vw,2.35rem);
  line-height:1.1;
}
.jdrp-section-lede{
  font-size:1rem;
}
.jdrp-home-gallery,
.jdrp-related-services{
  background:#fff;
}
.jdrp-home-gallery .jdrp-photo-card-media{
  height:236px;
  background:#ebe6db;
}
.jdrp-photo-card-copy{
  min-height:158px;
}
.jdrp-brand-proof{
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(520px,1fr);
  gap:26px;
  align-items:center;
  width:min(1220px, calc(100% - 36px));
  padding:28px;
  border:1px solid #d5d0c5;
  border-radius:8px;
  background:
    linear-gradient(135deg, rgba(11,52,48,.06), rgba(216,110,37,.05)),
    #fff;
  box-shadow:0 18px 44px rgba(18,28,24,.1);
}
.jdrp-brand-proof h2{
  margin-bottom:10px;
}
.jdrp-brand-proof-badges{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.jdrp-brand-proof-badges article{
  min-height:100%;
  padding:14px;
  border:1px solid #d5d0c5;
  border-radius:8px;
  background:#fbfaf7;
  box-shadow:0 10px 24px rgba(18,28,24,.06);
}
.jdrp-brand-proof-badges img{
  width:92px;
  height:92px;
  margin:0 0 12px;
  object-fit:contain;
}
.jdrp-brand-proof-badges h3{
  margin:0 0 6px;
  color:#081f1c;
  font-size:1rem;
  line-height:1.2;
}
.jdrp-brand-proof-badges p{
  margin:0;
  color:#52605a;
  font-size:.9rem;
  line-height:1.48;
}
.jdrp-trust,
.jdrp-cta-band{
  background:
    linear-gradient(110deg, rgba(216,110,37,.2), rgba(216,110,37,0) 34%),
    linear-gradient(135deg, #081f1c, #0b3430);
}
@media (max-width: 980px){
  .jdrp-brand-proof{
    grid-template-columns:1fr;
  }
  .jdrp-site-nav nav{
    gap:10px;
  }
}
@media (max-width: 680px){
  .jdrp-site-band{
    min-height:44px;
    justify-content:center;
    padding:7px 12px;
    line-height:1.2;
  }
  .jdrp-band-pill{
    display:none;
  }
  .jdrp-site-nav{
    padding-top:12px;
    padding-bottom:12px;
    gap:10px;
  }
  .jdrp-site-nav nav{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    width:100%;
    gap:2px 4px;
    font-size:.72rem;
    line-height:1.15;
  }
  .jdrp-site-nav nav a{
    min-height:44px;
    justify-content:center;
    padding:4px 2px;
    text-align:center;
  }
  .jdrp-nav-cta{
    width:100%;
  }
  .jdrp-hero{
    padding-top:34px;
    padding-bottom:34px;
  }
  .jdrp-hero h1{
    font-size:clamp(2.1rem,9vw,2.85rem);
  }
  .jdrp-hero-metrics{
    grid-template-columns:1fr;
  }
  .jdrp-brand-proof{
    width:calc(100% - 24px);
    padding:18px;
  }
  .jdrp-brand-proof-badges{
    grid-template-columns:1fr;
  }
  .jdrp-brand-proof-badges article{
    display:grid;
    grid-template-columns:74px 1fr;
    gap:12px;
    align-items:center;
  }
  .jdrp-brand-proof-badges img{
    width:74px;
    height:74px;
    margin:0;
  }
  .jdrp-hero{
    grid-template-columns:1fr!important;
    width:100%!important;
    max-width:100%!important;
    overflow:hidden;
  }
  .jdrp-hero-copy,
  .jdrp-hero-media,
  .jdrp-hero-photo-stack,
  .jdrp-page-photo{
    min-width:0!important;
    width:100%!important;
    max-width:100%!important;
  }
  .jdrp-hero-photo-stack{
    grid-template-columns:1fr!important;
  }
  .jdrp-hero-photo:first-child,
  .jdrp-page-photo{
    min-height:260px!important;
  }
  .jdrp-site-nav nav a{
    min-height:44px!important;
  }
  .jdrp-site-nav .jdrp-brand,
  .jdrp-site-nav .jdrp-nav-cta{
    min-height:44px!important;
  }
  .jdrp-actions{
    width:100%;
  }
  .jdrp-actions .jdrp-button{
    flex:1 1 100%;
    white-space:normal;
    text-align:center;
  }
  .jdrp-actions .jdrp-button-secondary{
    flex:1 1 calc(50% - 6px);
  }
}

/* Phase 94 visual polish: premium contractor presentation */
body .jdrp-content{
  background:
    linear-gradient(90deg, rgba(8,31,28,.035), rgba(8,31,28,0) 18%, rgba(8,31,28,0) 82%, rgba(8,31,28,.035)),
    #f4efe4;
}
.jdrp-site-nav-wrap{
  width:min(1280px, calc(100% - 32px));
  margin:30px auto 0;
  border-radius:0;
  box-shadow:0 24px 60px rgba(7,18,16,.2);
  overflow:hidden;
}
.jdrp-site-band{
  min-height:42px;
  padding:8px 22px;
  background:#09312d;
}
.jdrp-band-pill{
  border:0;
  background:transparent;
  padding:0;
  color:#edf6f1;
  letter-spacing:.035em;
}
.jdrp-band-link{
  border-color:rgba(255,255,255,.2);
  background:rgba(255,255,255,.06);
}
.jdrp-site-nav{
  padding:18px 22px;
  background:#071714;
}
.jdrp-brand-mark{
  width:54px;
  height:54px;
  background:#fff;
  border:1px solid rgba(255,255,255,.22);
}
.jdrp-brand-copy strong{
  font-size:1.08rem;
}
.jdrp-site-nav nav a{
  color:#dce7e1;
  position:relative;
}
.jdrp-site-nav nav a::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-6px;
  height:2px;
  background:#d86e25;
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .18s ease;
}
.jdrp-site-nav nav a:hover::after{
  transform:scaleX(1);
}
.jdrp-nav-cta,.jdrp-button{
  border-radius:5px;
  font-weight:900;
}
.jdrp-button-secondary{
  background:#fff8ef;
  color:#082420;
  border-color:rgba(216,110,37,.22);
}
.jdrp-hero{
  width:min(1280px, calc(100% - 32px));
  margin:0 auto;
  padding:clamp(52px,5vw,82px) clamp(26px,4vw,54px) clamp(44px,4.6vw,68px);
  grid-template-columns:minmax(410px,.8fr) minmax(500px,1.05fr);
  gap:clamp(28px,4vw,64px);
  border-radius:0;
  background:
    linear-gradient(110deg, rgba(7,20,17,.99) 0%, rgba(8,31,28,.98) 48%, rgba(11,52,48,.92) 100%),
    radial-gradient(circle at 84% 20%, rgba(216,110,37,.18), rgba(216,110,37,0) 38%);
}
.jdrp-hero::before{
  opacity:.42;
}
.jdrp-hero h1{
  max-width:650px;
  font-size:clamp(3rem,4.15vw,4.65rem);
  line-height:1.01;
  letter-spacing:0;
}
.jdrp-hero-lede{
  max-width:610px;
  font-size:1.08rem;
  line-height:1.65;
}
.jdrp-hero-kicker{
  margin-top:22px;
}
.jdrp-hero-kicker span{
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.13);
  color:#f8fbf9;
}
.jdrp-hero .jdrp-actions{
  margin-top:24px;
}
.jdrp-hero-metrics{
  margin-top:26px;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.jdrp-hero .jdrp-hero-metric{
  min-height:112px;
  padding:16px;
  background:rgba(255,255,255,.075);
  border-color:rgba(255,255,255,.12);
}
.jdrp-hero .jdrp-hero-metric::after{
  display:none;
}
.jdrp-hero .jdrp-hero-metric span{
  color:#f2ba91;
}
.jdrp-hero .jdrp-hero-metric strong{
  color:#fff;
  font-size:.98rem;
}
.jdrp-hero-photo-stack{
  grid-template-columns:1.04fr .72fr;
  gap:14px;
}
.jdrp-hero-photo:first-child{
  min-height:455px;
}
.jdrp-hero-photo:not(:first-child){
  min-height:214px;
}
.jdrp-hero-photo,
.jdrp-page-photo{
  border-radius:8px;
  border-color:rgba(255,255,255,.2);
  box-shadow:0 26px 54px rgba(0,0,0,.3);
}
.jdrp-hero-photo figcaption,
.jdrp-page-photo figcaption{
  border-radius:5px;
  background:rgba(5,11,10,.9);
}
.jdrp-section{
  width:min(1220px, calc(100% - 40px));
  margin-top:52px;
  padding:34px;
  border-radius:8px;
  box-shadow:0 18px 48px rgba(18,28,24,.08);
}
.jdrp-section>h2{
  font-size:clamp(1.8rem,2.4vw,2.55rem);
  letter-spacing:0;
}
.jdrp-quote-prep{
  margin-top:42px;
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(520px,1fr);
  gap:34px;
  align-items:stretch;
  background:
    linear-gradient(135deg, rgba(255,255,255,.96), rgba(250,248,242,.96)),
    #fff;
}
.jdrp-quote-prep .jdrp-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.jdrp-quote-prep .jdrp-card{
  min-height:100%;
  padding:20px;
  background:#fff;
}
.jdrp-home-gallery{
  padding:38px;
}
.jdrp-home-gallery .jdrp-photo-rail{
  grid-template-columns:1.08fr 1fr 1fr;
  gap:16px;
}
.jdrp-home-gallery .jdrp-photo-card{
  border-radius:8px;
  overflow:hidden;
  box-shadow:0 18px 38px rgba(18,28,24,.1);
}
.jdrp-home-gallery .jdrp-photo-card-media{
  height:254px;
}
.jdrp-home-gallery .jdrp-photo-card-copy{
  min-height:142px;
  padding:18px;
}
.jdrp-brand-proof{
  margin-top:52px;
  padding:34px;
  gap:34px;
  background:
    linear-gradient(125deg, rgba(255,255,255,.98), rgba(248,246,240,.96)),
    #fff;
}
.jdrp-brand-proof-badges article{
  border-radius:8px;
  background:#fff;
}
.jdrp-related-services .jdrp-service-grid{
  gap:14px;
}
.jdrp-related-services .jdrp-card{
  padding:22px;
  box-shadow:none;
}
.jdrp-trust{
  padding:34px;
  border:0;
  box-shadow:0 26px 60px rgba(5,11,10,.22);
}
.jdrp-trust .jdrp-trust-grid{
  gap:14px;
}
.jdrp-process{
  background:transparent;
  border:0;
  box-shadow:none;
  padding-left:0;
  padding-right:0;
}
.jdrp-process .jdrp-card{
  border-radius:8px;
  background:#fffdf8;
  box-shadow:0 16px 34px rgba(18,28,24,.08);
}
.jdrp-cta-band{
  padding:36px;
  border:0;
  border-radius:8px;
  box-shadow:0 26px 60px rgba(5,11,10,.2);
}
.jdrp-next-pages{
  background:transparent;
  box-shadow:none;
  border:0;
  padding-left:0;
  padding-right:0;
}
.jdrp-link-grid a{
  min-height:58px;
  border-radius:7px;
  background:#fffdf8;
  box-shadow:0 10px 24px rgba(18,28,24,.05);
}
.jdrp-faq details{
  border-radius:7px;
  box-shadow:0 10px 22px rgba(18,28,24,.05);
}
.jdrp-footer{
  width:min(1280px, calc(100% - 32px));
  margin:64px auto 0;
  padding:40px 36px;
  border:0;
  border-top:4px solid #d86e25;
  background:
    linear-gradient(135deg, #081f1c, #0b3430);
  color:#e9f1ed;
}
.jdrp-footer-inner{
  gap:44px;
}
.jdrp-footer-brand{
  color:#fff!important;
  font-size:1.15rem;
}
.jdrp-footer p{
  color:#c9d7d0;
}
.jdrp-footer a{
  color:#fff7ef!important;
}
.jdrp-footer a:hover{
  color:#f4b37e!important;
}
.jdrp-footer-actions a,
.jdrp-footer-links a{
  padding:8px 0;
}
.jdrp-mobile-nav{
  display:none;
}
.jdrp-hero-metrics{
  display:none;
}
@media (min-width: 1101px){
  .jdrp-hero{
    padding:40px 48px 42px;
    grid-template-columns:minmax(500px,.94fr) minmax(430px,.9fr);
    gap:42px;
  }
  .jdrp-hero h1{
    max-width:680px;
    font-size:clamp(2.75rem,3.6vw,3.75rem);
    line-height:1;
  }
  .jdrp-hero-lede{
    margin-top:16px;
    font-size:1.02rem;
    line-height:1.55;
  }
  .jdrp-hero-kicker{
    gap:8px;
    margin-top:14px;
  }
  .jdrp-hero-kicker span{
    padding:6px 9px;
    font-size:.74rem;
  }
  .jdrp-hero .jdrp-actions{
    flex-wrap:nowrap;
    gap:8px;
    margin-top:18px;
  }
  .jdrp-hero .jdrp-button{
    padding:12px 14px;
    font-size:.84rem;
  }
  .jdrp-hero-media{
    min-height:0;
  }
  .jdrp-hero-photo:first-child{
    min-height:405px;
  }
  .jdrp-hero-photo:not(:first-child){
    min-height:195px;
  }
}
@media (min-width: 1400px){
  .jdrp-site-nav-wrap,
  .jdrp-hero,
  .jdrp-footer{
    width:min(1320px, calc(100% - 56px));
  }
}
@media (max-width: 1100px){
  .jdrp-hero{
    grid-template-columns:1fr;
  }
  .jdrp-quote-prep{
    grid-template-columns:1fr;
  }
  .jdrp-hero-media{
    min-height:0;
  }
}
@media (max-width: 760px){
  .jdrp-site-band{
    display:none;
  }
  .jdrp-site-nav-wrap,
  .jdrp-hero,
  .jdrp-footer{
    width:100%;
    margin-left:0;
    margin-right:0;
  }
  .jdrp-site-nav-wrap{
    margin-top:0;
    overflow:visible;
  }
  .jdrp-site-nav{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:10px;
    min-height:76px;
    padding:10px 14px;
  }
  .jdrp-site-nav>.jdrp-brand{
    min-width:0;
  }
  .jdrp-site-nav>.jdrp-brand .jdrp-brand-copy strong{
    font-size:.96rem;
  }
  .jdrp-site-nav>.jdrp-brand .jdrp-brand-copy small{
    font-size:.64rem;
  }
  .jdrp-site-nav>nav,
  .jdrp-site-nav>.jdrp-nav-cta{
    display:none!important;
  }
  .jdrp-mobile-nav{
    display:block;
    position:relative;
    z-index:120;
  }
  .jdrp-mobile-nav summary{
    display:grid;
    place-items:center;
    width:44px;
    height:44px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:6px;
    background:rgba(255,255,255,.08);
    color:#fff;
    cursor:pointer;
    font-size:1.35rem;
    line-height:1;
    list-style:none;
  }
  .jdrp-mobile-nav summary::-webkit-details-marker{
    display:none;
  }
  .jdrp-mobile-nav[open] summary{
    border-color:#d86e25;
    background:#d86e25;
  }
  .jdrp-mobile-nav nav{
    position:absolute;
    top:calc(100% + 10px);
    right:0;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    width:min(306px,calc(100vw - 28px));
    gap:4px!important;
    padding:10px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:7px;
    background:#071714;
    box-shadow:0 20px 44px rgba(0,0,0,.34);
  }
  .jdrp-mobile-nav nav a{
    display:flex;
    align-items:center;
    min-height:44px!important;
    padding:8px 10px!important;
    border-radius:4px;
    color:#fff!important;
    font-size:.78rem;
    line-height:1.2;
    text-align:left;
  }
  .jdrp-mobile-nav nav a:hover{
    background:rgba(255,255,255,.08);
  }
  .jdrp-mobile-nav nav a::after{
    display:none;
  }
  .jdrp-hero{
    padding:28px 18px 30px;
  }
  .jdrp-hero h1{
    font-size:clamp(2.05rem,9vw,2.6rem);
    line-height:1.02;
  }
  .jdrp-hero-lede{
    margin-top:16px;
    font-size:1rem;
    line-height:1.5;
  }
  .jdrp-hero-kicker,
  .jdrp-hero>.jdrp-hero-copy>.jdrp-actions,
  .jdrp-hero-media{
    display:none;
  }
  .jdrp-hero-metrics{
    grid-template-columns:1fr;
  }
  .jdrp-hero .jdrp-hero-metric{
    min-height:0;
    overflow:visible;
  }
  .jdrp-hero .jdrp-hero-metric strong{
    overflow-wrap:anywhere;
  }
  .jdrp-content:has(.jdrp-sticky-cta){
    padding-bottom:94px;
  }
  .jdrp-section{
    width:calc(100% - 24px);
    padding:22px;
    margin-top:28px;
  }
  .jdrp-quote-prep .jdrp-grid,
  .jdrp-home-gallery .jdrp-photo-rail{
    grid-template-columns:1fr;
  }
  .jdrp-home-gallery .jdrp-photo-card-media{
    height:230px;
  }
  .jdrp-sticky-cta .jdrp-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
  }
  .jdrp-sticky-cta .jdrp-button{
    min-width:0;
    min-height:44px;
    padding:9px 8px;
    font-size:.75rem;
    line-height:1.15;
    white-space:normal;
  }
  .jdrp-footer{
    padding:32px 22px;
  }
}

/* Source CSS bytes: 22856 */
