/* classic-editor-visual-roundtrip */
.jc-page-module{overflow:visible}
.jc-page-module .jc-med-v1-single-pin>.jc-med-v1-editor-media{display:flex!important;height:auto!important;align-items:center}
.jc-page-module .jc-med-v1-single-pin>.jc-med-v1-editor-media>img{width:300px;height:auto}
.jc-page-module .jc-med-v1-product-stage>.jc-med-v1-editor-media{display:flex!important;height:auto!important;align-items:center;justify-content:center}
.jc-page-module .jc-med-v1-product-stage>.jc-med-v1-editor-media>img{width:min(505px,92%);height:auto}
.jc-page-module .jc-med-v1-badge>.jc-med-v1-editor-media{display:flex!important;height:auto!important;align-items:center;justify-content:center}
.jc-page-module .jc-med-v1-badge>.jc-med-v1-editor-media>img{width:auto;height:auto}
.jc-page-module .jc-med-v1-testimonial-media>.jc-med-v1-editor-media{position:absolute;inset:0}
.jc-page-module .jc-med-v1-quote,.jc-page-module .jc-med-v1-testimonial-media{min-width:0}
.jc-page-module .jc-med-v1-quote blockquote>p{margin:0!important;padding:0!important;font:inherit;color:inherit;letter-spacing:inherit}
.jc-page-module .jc-med-v1-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.jc-page-module .jc-med-v1-editor-link{display:contents!important;margin:0!important;padding:0!important;border:0!important}
.jc-page-module .jc-med-v1-editor-media{display:block!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important;border:0!important;line-height:0!important;background:transparent!important}
.jc-page-module .jc-med-v1-editor-media>img{display:block;width:100%;height:100%;margin:0!important}
/* =========================================================
   JC MEDICAL — INDEPENDENT INCREMENT PREVIEW V1
   Base: JC Components Preview - HTML v1.2.1
   Scope: ONLY the two screenshot-selected reference regions.
   Preview only. Production splitting/deployment remains for Codex.
   WordPress Classic Editor friendly markup + jc- namespace.
========================================================= */



.jc-page-module {
  --jc-dark:#1E293B;
  --jc-dark2:#111827;
  --jc-slate:#334155;
  --jc-steel:#4F6B7A;
  --jc-steel-dark:#3F5867;
  --jc-steel-soft:#E8EEF2;
  --jc-gold:#C89B3C;
  --jc-gold-hover:#B8862B;
  --jc-bg:#F8FAFC;
  --jc-card:#FFFFFF;
  --jc-text:#111827;
  --jc-copy:#596474;
  --jc-muted:#6B7280;
  --jc-line:#E5E7EB;

  margin:0;
  color:var(--jc-text);
  font-family:Arial,Helvetica,sans-serif;
  background:#fff;
}

.jc-page-module, .jc-page-module * {
  box-sizing:border-box;
}

.jc-page-module img {
  display:block;
  max-width:100%;
  height:auto;
  border:0;
}

.jc-page-module h2, .jc-page-module h3, .jc-page-module p, .jc-page-module blockquote {
  margin-top:0;
}

.jc-page-module .jc-med-v1-fullwidth {
  position:relative;
  left:50%;
  width:var(--jc-viewport-width,100%);
  max-width:none!important;
  margin-left:calc(var(--jc-viewport-width,100%) / -2)!important;
  margin-right:0!important;
}

.jc-page-module .jc-med-v1-container {
  width:min(1240px,calc(100% - 40px));
  max-width:1240px;
  margin:0 auto;
}

.jc-page-module /* =========================================================
   MODULE MED-01 — Medical Intro / Pins / Certifications
========================================================= */

.jc-med-v1-intro {
  position:relative;
  overflow:hidden;
  padding:92px 0 82px;
  background:
    radial-gradient(circle at 86% 18%,rgba(79,107,122,.075),transparent 28%),
    linear-gradient(180deg,#FFFFFF 0%,#FCFDFE 100%);
}

.jc-page-module .jc-med-v1-intro:before {
  content:"";
  position:absolute;
  right:-220px;
  top:-310px;
  width:610px;
  height:610px;
  border:1px solid rgba(79,107,122,.10);
  border-radius:50%;
  box-shadow:
    0 0 0 76px rgba(79,107,122,.020),
    0 0 0 150px rgba(200,155,60,.010);
  pointer-events:none;
}

.jc-page-module .jc-med-v1-intro-grid {
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:66px;
  align-items:center;
}

.jc-page-module .jc-med-v1-copy {
  min-width:0;
  padding-left:4px;
}

.jc-page-module .jc-med-v1-kicker {
  display:flex;
  align-items:center;
  gap:12px;
  margin:0 0 21px;
  color:var(--jc-steel);
  font-size:12px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:2px;
  text-transform:uppercase;
}

.jc-page-module .jc-med-v1-kicker:before {
  content:"";
  width:36px;
  height:2px;
  background:var(--jc-gold);
}

.jc-page-module .jc-med-v1-copy h2 {
  max-width:560px;
  margin:0 0 24px!important;
  color:var(--jc-dark2)!important;
  font-size:clamp(41px,4.05vw,58px)!important;
  line-height:1.06!important;
  letter-spacing:-1.7px!important;
  font-weight:700!important;
}

.jc-page-module .jc-med-v1-copy h2 span {
  color:var(--jc-steel-dark);
  background:linear-gradient(transparent 81%,rgba(200,155,60,.22) 81%);
}

.jc-page-module .jc-med-v1-lead {
  max-width:525px;
  margin:0!important;
  color:#4B5563!important;
  font-size:16px!important;
  line-height:1.82!important;
}

.jc-page-module .jc-med-v1-single-pin {
  position:relative;
  width:min(360px,80%);
  min-height:105px;
  margin:44px 0 0 34px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
}

.jc-page-module .jc-med-v1-single-pin:before {
  content:"";
  position:absolute;
  left:0;
  bottom:11px;
  width:78%;
  height:1px;
  background:linear-gradient(90deg,rgba(79,107,122,.18),rgba(200,155,60,.64),rgba(200,155,60,0));
}

.jc-page-module .jc-med-v1-single-pin img {
  position:relative;
  width:300px;
  max-height:94px;
  object-fit:contain;
  filter:drop-shadow(0 13px 12px rgba(15,23,42,.10));
  transition:transform .42s ease,filter .42s ease;
}

.jc-page-module .jc-med-v1-single-pin:hover img {
  transform:translateX(6px);
  filter:drop-shadow(0 16px 15px rgba(15,23,42,.14));
}

.jc-page-module .jc-med-v1-product {
  position:relative;
  min-width:0;
  padding-top:2px;
}

.jc-page-module .jc-med-v1-product-stage {
  position:relative;
  min-height:435px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0 28px 8px;
}

.jc-page-module .jc-med-v1-product-stage:before {
  content:"";
  position:absolute;
  width:430px;
  height:430px;
  border-radius:50%;
  background:
    radial-gradient(circle,rgba(79,107,122,.105) 0%,rgba(79,107,122,.04) 47%,rgba(79,107,122,0) 72%);
}

.jc-page-module .jc-med-v1-product-stage:after {
  content:"";
  position:absolute;
  top:22px;
  right:38px;
  width:66px;
  height:3px;
  background:var(--jc-gold);
}

.jc-page-module .jc-med-v1-product-image {
  position:relative;
  z-index:1;
  width:min(505px,92%);
  max-height:420px;
  object-fit:contain;
  filter:drop-shadow(0 23px 24px rgba(15,23,42,.14));
  transition:transform .55s ease,filter .55s ease;
}

.jc-page-module .jc-med-v1-product-stage:hover .jc-med-v1-product-image {
  transform:translateY(-7px) rotate(.5deg) scale(1.012);
  filter:drop-shadow(0 30px 31px rgba(15,23,42,.18));
}

.jc-page-module .jc-med-v1-badges-wrap {
  border-top:1px solid var(--jc-line);
  padding-top:18px;
}

.jc-page-module .jc-med-v1-badges-label {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin:0 0 13px;
  color:#64748B;
  font-size:10px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:1.65px;
  text-transform:uppercase;
}

.jc-page-module .jc-med-v1-badges-label:before, .jc-page-module .jc-med-v1-badges-label:after {
  content:"";
  width:28px;
  height:1px;
  background:rgba(79,107,122,.24);
}

.jc-page-module .jc-med-v1-badges {
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:88px;
}

.jc-page-module .jc-med-v1-badge {
  width:25%;
  min-height:78px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:5px 17px;
  border-left:1px solid var(--jc-line);
}

.jc-page-module .jc-med-v1-badge:first-child {
  border-left:0;
}

.jc-page-module .jc-med-v1-badge img {
  width:auto;
  max-width:85px;
  max-height:72px;
  object-fit:contain;
  opacity:.96;
  transition:transform .26s ease,opacity .26s ease;
}

.jc-page-module .jc-med-v1-badge:hover img {
  transform:translateY(-3px);
  opacity:1;
}

.jc-page-module /* =========================================================
   MODULE MED-02 — Medical Testimonial
========================================================= */

.jc-med-v1-testimonial {
  padding:0 0 88px;
  background:#fff;
}

.jc-page-module .jc-med-v1-testimonial-shell {
  width:100%;
  min-height:452px;
  display:grid;
  grid-template-columns:59% 41%;
  overflow:hidden;
  background:var(--jc-dark2);
  box-shadow:0 24px 58px rgba(15,23,42,.12);
}

.jc-page-module .jc-med-v1-testimonial-media {
  position:relative;
  min-height:452px;
  overflow:hidden;
  background:#0F172A;
}

.jc-page-module .jc-med-v1-testimonial-media:after {
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(15,23,42,.01) 65%,rgba(15,23,42,.15) 100%),
    linear-gradient(180deg,rgba(15,23,42,.025),rgba(15,23,42,.09));
  pointer-events:none;
}

.jc-page-module .jc-med-v1-testimonial-media img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;

  /* Lighting final-confirmed hover logic:
     transition lives on the resting state,
     only transform animates,
     linear progression prevents the initial "jump". */
  transform:scale(1);
  transform-origin:center center;
  transition:transform 1s linear!important;
  will-change:transform;
  backface-visibility:hidden;
}

.jc-page-module .jc-med-v1-testimonial-shell:hover .jc-med-v1-testimonial-media img {
  transform:scale(1.04);
}

.jc-page-module .jc-med-v1-quote {
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  padding:56px 58px;
  color:#fff;
  background:
    radial-gradient(circle at 100% 0,rgba(79,107,122,.30),transparent 40%),
    linear-gradient(145deg,#334155 0%,#1E293B 68%,#111827 120%);
}

.jc-page-module .jc-med-v1-quote:before {
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:3px;
  background:var(--jc-gold);
}

.jc-page-module .jc-med-v1-quote:after {
  content:"";
  position:absolute;
  width:312px;
  height:312px;
  right:-184px;
  bottom:-194px;
  border:1px solid rgba(200,155,60,.17);
  border-radius:50%;
  box-shadow:
    0 0 0 50px rgba(200,155,60,.025),
    0 0 0 100px rgba(200,155,60,.012);
}

.jc-page-module .jc-med-v1-quote-inner {
  position:relative;
  z-index:1;
  width:100%;
  max-width:520px;
  text-align:center;
}

.jc-page-module .jc-med-v1-quote-mark {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:16px;
  margin:0 0 24px;
}

.jc-page-module .jc-med-v1-quote-mark:before, .jc-page-module .jc-med-v1-quote-mark:after {
  content:"";
  width:40px;
  height:1px;
  background:rgba(200,155,60,.72);
}

.jc-page-module .jc-med-v1-quote-mark strong {
  color:var(--jc-gold);
  font-family:Georgia,"Times New Roman",serif;
  font-size:58px;
  line-height:.55;
  font-weight:700;
  transform:translateY(7px);
}

.jc-page-module .jc-med-v1-quote blockquote {
  margin:0!important;
  padding:0!important;
  border:0!important;
  color:#fff!important;
  background:none!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:clamp(23px,2.02vw,31px)!important;
  line-height:1.24!important;
  letter-spacing:-.48px!important;
  font-style:normal!important;
  font-weight:500!important;
}

.jc-page-module .jc-med-v1-quote-rule {
  width:43px;
  height:2px;
  margin:28px auto 21px;
  background:linear-gradient(90deg,rgba(200,155,60,.32),var(--jc-gold),rgba(200,155,60,.32));
}

.jc-page-module .jc-med-v1-attribution {
  margin:0!important;
  color:#CBD5E1!important;
  font-size:13px!important;
  line-height:1.55!important;
}

.jc-page-module .jc-med-v1-attribution strong {
  color:#fff!important;
}

.jc-page-module .jc-med-v1-preview-note {
  margin:9px 0 0!important;
  color:#94A3B8!important;
  font-size:10px!important;
  line-height:1.45!important;
  letter-spacing:.8px!important;
  text-transform:uppercase!important;
}

/* =========================================================
   Responsive
========================================================= */

@media (max-width:980px){
  .jc-page-module .jc-med-v1-intro {
    padding:72px 0 68px;
  }

  .jc-page-module .jc-med-v1-intro-grid {
    grid-template-columns:1fr;
    gap:38px;
  }

  .jc-page-module .jc-med-v1-copy {
    max-width:780px;
  }

  .jc-page-module .jc-med-v1-single-pin {
    width:min(390px,76%);
    margin-top:34px;
  }

  .jc-page-module .jc-med-v1-product-stage {
    min-height:390px;
  }

  .jc-page-module .jc-med-v1-testimonial-shell {
    grid-template-columns:1fr;
  }

  .jc-page-module .jc-med-v1-testimonial-media {
    min-height:420px;
  }

  .jc-page-module .jc-med-v1-quote {
    min-height:370px;
    padding:54px 38px;
  }

  .jc-page-module .jc-med-v1-quote:before {
    inset:0 0 auto 0;
    width:100%;
    height:3px;
  }
}

@media (max-width:680px){
  .jc-page-module .jc-med-v1-container {
    width:min(calc(100% - 28px),1240px);
  }

  .jc-page-module .jc-med-v1-intro {
    padding:58px 0 55px;
  }

  .jc-page-module .jc-med-v1-copy h2 {
    font-size:38px!important;
    letter-spacing:-1px!important;
  }

  .jc-page-module .jc-med-v1-lead {
    font-size:15px!important;
  }

  .jc-page-module .jc-med-v1-single-pin {
    width:100%;
    margin:30px 0 0;
  }

  .jc-page-module .jc-med-v1-single-pin img {
    width:min(300px,90%);
  }

  .jc-page-module .jc-med-v1-product-stage {
    min-height:315px;
    padding:0;
  }

  .jc-page-module .jc-med-v1-product-image {
    max-height:300px;
  }

  .jc-page-module .jc-med-v1-badges {
    display:grid;
    grid-template-columns:1fr 1fr;
    padding-top:2px;
  }

  .jc-page-module .jc-med-v1-badge {
    width:100%;
    min-height:82px;
    border-left:0;
    border-top:1px solid var(--jc-line);
  }

  .jc-page-module .jc-med-v1-badge:nth-child(odd) {
    border-right:1px solid var(--jc-line);
  }

  .jc-page-module .jc-med-v1-testimonial {
    padding-bottom:60px;
  }

  .jc-page-module .jc-med-v1-testimonial-media {
    min-height:300px;
  }

  .jc-page-module .jc-med-v1-quote {
    min-height:360px;
    padding:46px 24px;
  }

  .jc-page-module .jc-med-v1-quote blockquote {
    font-size:25px!important;
  }
}

@media (prefers-reduced-motion:reduce){
  .jc-page-module .jc-med-v1-single-pin img, .jc-page-module .jc-med-v1-product-image, .jc-page-module .jc-med-v1-badge img {
    transition:none!important;
  }

  /* Do NOT disable the testimonial image transition here.
     This selector was the reason changing duration could appear ineffective. */
}
