/* ==========================================================================
   JDR SERVICE PAGE CONTENT — upload to public_html/css/jdr-pages.css
   Load AFTER css/style.css. Styles only the article body and sidebar.
   Colours are taken from YOUR css/style.css:
     #00bd56  theme primary (buttons, nav hover, footer links)
     #207dff -> #00bd55  theme gradient (top bar, page banner overlay)
     #1a1a1a  theme footer tone
   ========================================================================== */
.jdr-page{
  --jdr-dark:#1a1a1a;
  --jdr-green:#00bd56;
  --jdr-green-dk:#009a46;
  --jdr-blue:#207dff;
  --jdr-grad:linear-gradient(45deg,#207dff 0%,#00bd55 100%);
  --jdr-ink:#111;
  --jdr-text:#333;
  --jdr-muted:#666;
  --jdr-line:#e5e5e5;
  --jdr-wash:#f5f5f5;
}

.jdr-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:44px;align-items:start}

/* ---------------------------------------------------------------- article */
.jdr-content{color:var(--jdr-text);font-size:16px;line-height:1.8}
.jdr-content h2{font-size:1.5rem;font-weight:700;color:var(--jdr-ink);margin:38px 0 14px;line-height:1.35}
.jdr-content h3{font-size:1.12rem;font-weight:700;color:var(--jdr-ink);margin:26px 0 8px}
.jdr-content p{margin:0 0 15px}
.jdr-content ul,.jdr-content ol{margin:0 0 18px;padding-left:22px}
.jdr-content li{margin-bottom:8px}
.jdr-content strong{color:var(--jdr-ink)}
.jdr-content a{color:var(--jdr-blue);text-decoration:underline}
.jdr-content a:hover{color:var(--jdr-green)}

.jdr-eyebrow{margin:0 0 8px !important;font-size:12px;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:var(--jdr-green-dk)}
.jdr-lede{font-size:1.12rem;color:var(--jdr-ink);margin-bottom:24px !important}

/* answer block — the snippet AI engines and Google lift */
.jdr-answer{background:var(--jdr-wash);border-left:5px solid var(--jdr-green);
  padding:22px 26px;margin:0 0 30px;border-radius:0 4px 4px 0}
.jdr-answer h2{margin:0 0 8px !important;font-size:1.15rem !important;color:var(--jdr-green-dk) !important}
.jdr-answer p{margin:0 !important;color:var(--jdr-ink)}

/* tables — header row in the theme gradient */
.jdr-content table{width:100%;border-collapse:collapse;margin:20px 0 26px;font-size:15px}
.jdr-content th,.jdr-content td{border:1px solid var(--jdr-line);padding:11px 14px;text-align:left;vertical-align:top}
.jdr-content th{background:var(--jdr-grad);background-color:var(--jdr-blue);color:#fff;font-weight:600}
.jdr-content tr:nth-child(even) td{background:var(--jdr-wash)}

/* FAQ accordion */
.jdr-faq-head{margin-top:44px !important}
.jdr-faq{border:1px solid var(--jdr-line);border-radius:4px;margin:0 0 10px;background:#fff}
.jdr-faq summary{cursor:pointer;list-style:none;padding:15px 48px 15px 18px;font-weight:600;
  color:var(--jdr-ink);position:relative}
.jdr-faq summary::-webkit-details-marker{display:none}
.jdr-faq summary::after{content:"+";position:absolute;right:18px;top:50%;transform:translateY(-50%);
  font-size:20px;color:var(--jdr-green)}
.jdr-faq[open] summary{border-bottom:1px solid var(--jdr-line);color:var(--jdr-green)}
.jdr-faq[open] summary::after{content:"\2013"}
.jdr-faq-a{padding:14px 18px 2px}

.jdr-verified{font-size:13px;color:var(--jdr-muted);border-top:1px solid var(--jdr-line);
  padding-top:14px;margin-top:30px}

/* closing CTA — the theme gradient, like your top bar */
.jdr-cta{background:var(--jdr-grad);background-color:var(--jdr-blue);color:#fff;border-radius:4px;padding:32px 34px;margin:40px 0 0}
.jdr-cta .btn.btn-primary{background:#fff;border-color:#fff;color:#000}
.jdr-cta .btn.btn-primary:hover{background:transparent;color:#fff}
.jdr-cta h2{margin:0 0 10px !important;color:#fff !important;font-size:1.35rem !important}
.jdr-cta p{color:rgba(255,255,255,.9);margin-bottom:20px !important}

/* ---------------------------------------------------------------- sidebar */
.jdr-side{position:sticky;top:110px}
.jdr-card{border:1px solid var(--jdr-line);border-radius:4px;padding:22px 24px;margin-bottom:20px;background:#fff}
.jdr-card h2{margin:0 0 14px;font-size:1.05rem;font-weight:700;color:var(--jdr-ink);
  padding-bottom:10px;position:relative}
.jdr-card h2::after{content:"";position:absolute;left:0;bottom:-2px;width:40px;height:4px;background:var(--jdr-green)}
.jdr-card ul{list-style:none;margin:0;padding:0}
.jdr-card li{margin-bottom:9px;padding-left:15px;position:relative;font-size:14.5px}
.jdr-card li::before{content:"\203A";position:absolute;left:0;color:var(--jdr-green);font-weight:700}
.jdr-card li a{color:var(--jdr-text)}
.jdr-card li a:hover{color:var(--jdr-green)}
.jdr-card p{font-size:14.5px;margin:0 0 12px;color:var(--jdr-text)}
.jdr-card-contact{background:var(--jdr-wash)}
.jdr-card-phone{margin-bottom:6px !important}
.jdr-card-phone a{font-weight:700;font-size:17px;color:var(--jdr-ink)}
.jdr-card-phone a:hover{color:var(--jdr-green)}
.jdr-card-hours{font-size:13px !important;color:var(--jdr-muted) !important;
  border-top:1px solid var(--jdr-line);padding-top:10px}

/* ------------------------------------------------------------- responsive */
@media (max-width:991px){
  .jdr-layout{grid-template-columns:1fr;gap:34px}
  .jdr-side{position:static}
}
@media (max-width:640px){
  .jdr-content h2{font-size:1.3rem}
  .jdr-cta{padding:26px 22px}
  .jdr-content table{display:block;overflow-x:auto}
}
@media print{.jdr-side,.jdr-cta{display:none}.jdr-layout{display:block}}

/* buttons inside article content: no link underline */
.jdr-content a.btn,.jdr-content a.btn:hover{text-decoration:none}

/* the theme's .ftco-section is 6-7em top and bottom; tighten under the banner */
.jdr-page.ftco-section{padding-top:3.5em;padding-bottom:5em}
