@font-face {
  font-family: "Marcellus-Regular";
  src: url("../fonts/Marcellus-Regular.woff2") format("woff2"),
    url("../fonts/Marcellus-Regular.ttf") format("truetype");
  font-display: swap;
}

@font-face {
  font-family: "Montserrat-Medium";
  src: url("../fonts/monserat/Montserrat-Medium.woff2") format("woff2"),
    url("../fonts/monserat/Montserrat-Medium.ttf") format("truetype");
  font-display: swap;
}

@font-face {
  font-family: "Montserrat-SemiBold";
  src: url("../fonts/monserat/Montserrat-SemiBold.woff2") format("woff2"),
    url("../fonts/monserat/Montserrat-SemiBold.ttf") format("truetype");
  font-display: swap;
}


/* HopeQure · OCD Counselling Online v2 — Page-Specific Styles */

.ocd-page {
  --ocd-teal: #0a3d38;
  --ocd-coral: #e8673a;
  --ocd-gold: #f4a55a;
  --ocd-cr: #f4f0e6;
  --ocd-bd: #dcd6c7;
  --ocd-tx: #2a3636;
  --ocd-tx2: #4a5c5c;
  --ocd-mu: #7a8a8a;
  --ocd-violet: #7b5ea8;
  --ocd-mint: #5ba890;
  --ocd-blue: #4a7ab8;
  --ocd-amber: #d49963;
  --ocd-sand: #b8a580;
  --ocd-rose: #c84d5e;
  color: var(--ocd-tx);
      --bd: #dcebe7;
  line-height: 1.6;
  background: #fffcf7;
}
.ocd-page * {
  box-sizing: border-box;
}
.ocd-page .ocd-violet {
  color: var(--ocd-violet);
  font-weight: 700;
}
.ocd-page .ocd-mint {
  color: var(--ocd-mint);
  font-weight: 700;
}
.ocd-page .ocd-blue {
  color: var(--ocd-blue);
  font-weight: 700;
}
.ocd-page .ocd-amber {
  color: var(--ocd-amber);
  font-weight: 700;
}
.ocd-page .ocd-sand {
  color: var(--ocd-sand);
  font-weight: 700;
}
.ocd-page .ocd-rose {
  color: var(--ocd-rose);
  font-weight: 700;
}
.ocd-page .ocd-coral {
  color: var(--ocd-coral);
  font-weight: 700;
}
.ocd-page .wrap {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 18px;
}

.ocd-page .live-ticker {
  background: linear-gradient(90deg, var(--ocd-violet), var(--ocd-teal));
  color: #fff;
  text-align: center;
  padding: 7px 14px;
  font-size: 0.82rem;
}
.ocd-page .live-ticker .ticker-av {
  display: inline-block;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #fff;
  color: var(--ocd-teal);
  text-align: center;
  line-height: 22px;
  font-weight: 800;
  margin-right: 8px;
  font-size: 0.74rem;
}
.ocd-page .float-side {
  position: fixed;
  left: 14px;
  bottom: 14px;
  z-index: 60;
  display: flex;
  flex-direction: column;
  gap: 11px;
}
.ocd-page .float-wa,
.ocd-page .float-call {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 14px rgba(10, 61, 56, 0.22);
}
.ocd-page .float-wa img,
.ocd-page .float-call img {
  width: 28px;
  height: 28px;
}
.ocd-page .breadcrumb {

  padding: 9px 0;
}
.ocd-page .breadcrumb ol {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  font-size: 0.78rem;
  color: var(--ocd-mu);
}
.ocd-page .breadcrumb li {
    display: flex;
    align-items: center;
    font-size: 15px;
}
.ocd-page .breadcrumb li:not(:last-child)::after {
  content: "›";
  margin: 0 6px;
  color: var(--ocd-mu);
}
.ocd-page .breadcrumb a {
  color: var(--ocd-teal);
  text-decoration: none;
  font-weight: 600;
}
.ocd-page .live-counter {
  background: #fff;
  border-bottom: 1px solid var(--ocd-bd);
  padding: 7px 14px;
  text-align: center;
  font-size: 0.78rem;
  color: var(--ocd-mu);
}

.ocd-page .hero {
  background: linear-gradient(135deg, #fffcf7 0%, #f4f0e6 100%);
  padding: 36px 0 30px;
}
.ocd-page .hero-in {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 30px;
  align-items: start;
}
.ocd-page .hero h1 {
  font-family: var(--fh);
  font-size: 2.05rem;
  color: var(--ocd-teal);
  margin: 0 0 14px;
  font-weight: 700;
  line-height: 1.18;
}
.ocd-page .hero-sub {
  font-size: 1.02rem;
  color: var(--ocd-tx2);
  margin-bottom: 16px;
  line-height: 1.62;
      font-family: Montserrat-Medium;
}
.ocd-page .hero ul {
  list-style: none;
  padding: 0;
  margin: 0 0 18px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 7px;
}
.ocd-page .hero ul li {
  font-size: 0.83rem;
  color: var(--ocd-tx2);
  padding-left: 22px;
  position: relative;
  line-height: 1.45;
}
.ocd-page .hero ul li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: var(--ocd-violet);
  font-weight: 800;
}
.ocd-page .hero-cta {
  display: flex;
  gap: 11px;
  flex-wrap: wrap;
  margin-bottom: 11px;
}
.ocd-page .btn-pri {
  background: var(--ocd-coral);
  color: #fff;
  padding: 13px 22px;
  border-radius: 10px;
  text-decoration: none;
  font-size: 0.92rem;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  gap: 7px;
}
.ocd-page .btn-wa {
  background: #25d366;
  color: #fff;
  padding: 13px 22px;
  border-radius: 10px;
  text-decoration: none;
  font-size: 0.92rem;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  gap: 7px;
}
.ocd-page .hero-stat-line {
  font-size: 0.84rem;
  color: var(--ocd-mu);
  margin: 0;
  line-height: 1.5;
}


.ocd-page .sec-white {
  background: #fff;
}
.ocd-page .sec-cream {
  background: var(--ocd-cr);
}
.ocd-page .sec-eyebrow {
  font-size: 0.74rem;
  text-transform: uppercase;
  letter-spacing: 1.8px;
  color: var(--ocd-coral);
  font-weight: 700;
  text-align: center;
  margin-bottom: 8px;
}
.ocd-page .sec h2 {
  font-family: var(--fh);
  font-size: 1.7rem;
  color: var(--ocd-teal);
  text-align: center;
  margin: 0 auto 11px;
  font-weight: 700;
  line-height: 1.25;
  max-width: 880px;
}
.ocd-page .sec h2 em {
  font-style: italic;
  color: var(--ocd-coral);
}
.ocd-page .sec-lede {
  font-size: 0.95rem;
  color: var(--ocd-tx2);
  text-align: center;
  margin: 0 auto 24px;
  line-height: 1.7;
  max-width: 820px;
}

.ocd-page .bk-widget {
  background: #fff;
  border: 1px solid var(--ocd-bd);
  border-radius: 14px;
  padding: 22px;
  box-shadow: 0 10px 32px rgba(10, 61, 56, 0.08);
  position: relative;
}
.ocd-page .bk-discount {
  background: linear-gradient(135deg, var(--ocd-coral), var(--ocd-amber));
  color: #fff;
  padding: 8px 14px;
  border-radius: 8px;
  font-size: 0.78rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 13px;
}
.ocd-page .bk-h {
  font-family: var(--fh);
  font-size: 1.3rem;
  color: var(--ocd-teal);
  font-weight: 700;
  margin-bottom: 3px;
}
.ocd-page .bk-sub {
  font-size: 0.83rem;
  color: var(--ocd-mu);
  margin-bottom: 13px;
  line-height: 1.5;
}
.ocd-page .bk-steps {
  display: flex;
  justify-content: space-between;
  margin-bottom: 18px;
}
.ocd-page .bk-step {
  flex: 1;
  text-align: center;
  font-size: 0.7rem;
  color: var(--ocd-mu);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  position: relative;
}
.ocd-page .bk-step strong {
  display: block;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: var(--ocd-bd);
  color: #fff;
  line-height: 30px;
  margin: 0 auto 5px;
  font-size: 0.86rem;
  font-weight: 700;
}
.ocd-page .bk-step.on {
  color: var(--ocd-coral);
}
.ocd-page .bk-step.on strong {
  background: var(--ocd-coral);
}
.ocd-page .bk-step:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 14px;
  left: 55%;
  width: 90%;
  height: 2px;
  background: var(--ocd-bd);
  z-index: -1;
}
.ocd-page .bk-pane {
  display: none;
}
.ocd-page .bk-pane.on {
  display: block;
}
.ocd-page .bk-plan {
  border: 2px solid var(--ocd-bd);
  border-radius: 11px;
  padding: 14px;
  margin-bottom: 11px;
  position: relative;
  background: #fff;
}
.ocd-page .bk-plan-tag {
  position: absolute;
  top: -9px;
  right: 14px;
  background: var(--ocd-coral);
  color: #fff;
  padding: 3px 11px;
  border-radius: 9px;
  font-size: 0.7rem;
  font-weight: 700;
}
.ocd-page .bk-plan-name {
  font-family: var(--fh);
  font-size: 1rem;
  color: var(--ocd-teal);
  font-weight: 700;
  margin-bottom: 3px;
}
.ocd-page .bk-plan-price {
  font-family: var(--fh);
  font-size: 1.45rem;
  color: var(--ocd-coral);
  font-weight: 800;
  margin-bottom: 3px;
  line-height: 1.1;
}
.ocd-page .bk-plan-price s {
  color: var(--ocd-mu);
  font-size: 0.92rem;
  font-weight: 500;
  margin-right: 7px;
}
.ocd-page .bk-plan-price .off {
  background: #fce7da;
  color: var(--ocd-coral);
  font-size: 0.66rem;
  padding: 2px 7px;
  border-radius: 5px;
  margin-left: 7px;
  vertical-align: middle;
  font-weight: 700;
}
.ocd-page .bk-plan-mode {
  font-size: 0.78rem;
  color: var(--ocd-mu);
}
.ocd-page .bk-slots-h {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 13px 0 8px;
  font-size: 0.86rem;
  font-weight: 700;
  color: var(--ocd-teal);
}
.ocd-page .bk-slots-h a {
  font-size: 0.74rem;
  color: var(--ocd-coral);
  text-decoration: none;
  font-weight: 600;
}
.ocd-page .bk-slots {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 7px;
  margin-bottom: 13px;
}
.ocd-page .bk-slot {
  background: #fff;
  border: 1.5px solid var(--ocd-bd);
  border-radius: 9px;
  padding: 9px 5px;
  font-size: 0.74rem;
  text-align: center;
  cursor: pointer;
  color: var(--ocd-tx);
  
  line-height: 1.3;
  font-weight: 600;
}
.ocd-page .bk-slot.sel {
  background: var(--ocd-coral);
  color: #fff;
  border-color: var(--ocd-coral);
}
.ocd-page .bk-slot.unav {
  opacity: 0.4;
  cursor: not-allowed;
}
.ocd-page .bk-help {
  font-size: 0.78rem;
  color: var(--ocd-mu);
  margin-bottom: 9px;
  text-align: center;
}
.ocd-page .bk-help a {
  color: var(--ocd-coral);
  text-decoration: none;
}
.ocd-page .bk-cta {
  width: 100%;
  background: var(--ocd-coral);
  color: #fff;
  border: none;
  padding: 13px;
  border-radius: 10px;
  font-size: 0.96rem;
  font-weight: 700;
  cursor: pointer;
  font-family: inherit;
}
.ocd-page .bk-foot {
  font-size: 0.7rem;
  text-align: center;
  color: var(--ocd-mu);
  margin-top: 7px;
}
.ocd-page .bk-field {
  margin-bottom: 10px;
}
.ocd-page .bk-field label {
  display: block;
  font-size: 0.78rem;
  font-weight: 700;
  color: var(--ocd-teal);
  margin-bottom: 3px;
}
.ocd-page .bk-field input,
.ocd-page .bk-field select {
  width: 100%;
  border: 1px solid var(--ocd-bd);
  border-radius: 8px;
  padding: 9px 11px;
  font-size: 0.86rem;
  font-family: inherit;
  outline: none;
  background: #fff;
}
.ocd-page .bk-err {
  display: none;
  color: #b92c2c;
  font-size: 0.74rem;
  margin-top: 3px;
}
.ocd-page .bk-back {
  background: none;
  border: none;
  color: var(--ocd-mu);
  font-size: 0.78rem;
  cursor: pointer;
  margin-bottom: 9px;
  font-family: inherit;
}
.ocd-page .bk-summary {
  background: var(--ocd-cr);
  border-radius: 9px;
  padding: 11px;
  margin-bottom: 11px;
}
.ocd-page .bk-summary table {
  width: 100%;
  font-size: 0.83rem;
}
.ocd-page .bk-summary td {
  padding: 3px 0;
  color: var(--ocd-tx2);
}
.ocd-page .bk-summary td:first-child {
  color: var(--ocd-mu);
  width: 42%;
}
.ocd-page .bk-summary tr.save td {
  color: var(--ocd-mint);
  font-weight: 700;
  border-top: 1px solid var(--ocd-bd);
  padding-top: 6px;
  margin-top: 4px;
}
.ocd-page .bk-discount-applied {
  background: linear-gradient(135deg, var(--ocd-violet), var(--ocd-blue));
  color: #fff;
  padding: 11px;
  border-radius: 9px;
  text-align: center;
  margin-bottom: 11px;
}
.ocd-page .bk-discount-applied .pct {
  font-size: 1.35rem;
  font-weight: 800;
  font-family: var(--fh);
}
.ocd-page .bk-discount-applied p {
  margin: 3px 0;
  font-size: 0.82rem;
}
.ocd-page .bk-discount-applied .code {
  display: inline-block;
  background: rgba(255, 255, 255, 0.22);
  padding: 2px 11px;
  border-radius: 5px;
  font-family: monospace;
  font-weight: 700;
}

.ocd-page .doc-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}
.ocd-page .doc-card {
  background: #fff;
  border: 1px solid var(--ocd-bd);
  border-radius: 14px;
  padding: 18px;
  border-top: 3px solid var(--ocd-violet);
}
.ocd-page .doc-card .doc-head {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  margin-bottom: 10px;
}
.ocd-page .doc-card .doc-img {
  width: 62px;
  height: 62px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--ocd-violet), var(--ocd-blue));
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 1.1rem;
  flex: 0 0 62px;
  overflow: hidden;
}
.ocd-page .doc-card .doc-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}
.ocd-page .doc-card h4 {
  font-family: var(--fh);
  font-size: 1rem;
  color: var(--ocd-teal);
  margin: 0 0 2px;
  font-weight: 700;
}
.ocd-page .doc-card .doc-cred {
  font-size: 0.74rem;
  color: var(--ocd-mu);
  line-height: 1.4;
}
.ocd-page .doc-card .doc-exp {
  font-size: 0.74rem;
  color: var(--ocd-mu);
}
.ocd-page .doc-card .doc-spec {
  font-size: 0.74rem;
  color: var(--ocd-tx2);
  margin: 7px 0;
  padding: 5px 8px;
  background: var(--ocd-cr);
  border-radius: 6px;
}
.ocd-page .doc-card .doc-spec b {
  color: var(--ocd-teal);
}
.ocd-page .doc-card .doc-lang {
  font-size: 0.72rem;
  color: var(--ocd-mu);
  margin-bottom: 8px;
}
.ocd-page .doc-card .doc-cta {
  display: flex;
  gap: 6px;
}
.ocd-page .doc-card .doc-cta a {
  flex: 1;
  text-align: center;
  font-size: 0.78rem;
  font-weight: 700;
  padding: 7px;
  border-radius: 7px;
  text-decoration: none;
}
.ocd-page .doc-card .doc-cta .book {
  background: var(--ocd-coral);
  color: #fff;
}
.ocd-page .doc-card .doc-cta .view {
  background: #fff;
  color: var(--ocd-teal);
  border: 1px solid var(--ocd-bd);
}

.ocd-page .cond-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
}
.ocd-page .cond-card {
  background: #fff;
  border: 1px solid var(--ocd-bd);
  border-radius: 11px;
  padding: 16px;
}
.ocd-page .cond-ic {
  font-size: 1.4rem;
}
.ocd-page .cond-card h4 {
  font-family: var(--fh);
  font-size: 14px;
  color: var(--ocd-teal);
  margin: 4px 0 5px;
  font-weight: 700;
}
.ocd-page .cond-card p {
  font-size: 0.78rem;
  color: var(--ocd-tx2);
  margin: 0 0 7px;
  line-height: 1.5;
}
.ocd-page .cond-exp {
  font-size: 0.74rem;
  color: var(--ocd-teal);
  text-decoration: none;
  font-weight: 700;
}

.ocd-page .price-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 13px;
}
.ocd-page .price-card {
  background: #fff;
  border: 1px solid var(--ocd-bd);
  border-radius: 13px;
  padding: 18px;
  position: relative;
  display: flex;
  flex-direction: column;
}
.ocd-page .price-card.popular {
  border: 2px solid var(--ocd-coral);
}
.ocd-page .price-tag {
  position: absolute;
  top: -11px;
  left: 14px;
  background: var(--ocd-coral);
  color: #fff;
  padding: 3px 11px;
  border-radius: 9px;
  font-size: 0.7rem;
  font-weight: 700;
}
.ocd-page .price-name {
  font-family: var(--fh);
  font-size: 1rem;
  color: var(--ocd-teal);
  font-weight: 700;
  margin-bottom: 6px;
}
.ocd-page .price-amt {
  font-family: var(--fh);
  font-size: 1.6rem;
  color: var(--ocd-coral);
  font-weight: 800;
  line-height: 1.1;
}
.ocd-page .price-amt s {
  color: var(--ocd-mu);
  font-size: 0.92rem;
  font-weight: 500;
  margin-right: 6px;
}
.ocd-page .price-save {
  display: inline-block;
  background: #fce7da;
  color: var(--ocd-coral);
  font-size: 0.7rem;
  font-weight: 700;
  padding: 2px 7px;
  border-radius: 5px;
  margin: 2px 0 7px;
}
.ocd-page .price-dur {
  font-size: 0.78rem;
  color: var(--ocd-mu);
}
.ocd-page .price-mode {
  font-size: 0.74rem;
  color: var(--ocd-tx2);
  margin-bottom: 7px;
}
.ocd-page .price-feat {
  list-style: none;
  padding: 0;
  margin: 7px 0;
}
.ocd-page .price-feat li {
  font-size: 0.78rem;
  color: var(--ocd-tx2);
  padding: 4px 0 4px 18px;
  position: relative;
  line-height: 1.45;
}
.ocd-page .price-feat li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: var(--ocd-mint);
  font-weight: 800;
}
.ocd-page .price-btn {
  display: block;
  text-align: center;
  background: var(--ocd-coral);
  color: #fff;
  padding: 9px;
  border-radius: 8px;
  text-decoration: none;
  font-weight: 700;
  font-size: 0.84rem;
  margin-top: auto;
}

.ocd-page .qa-box {
  background: #fff;
  border: 1px solid var(--ocd-bd);
  border-radius: 14px;
  padding: 22px;
  margin-bottom: 22px;
}
.ocd-page .qa-box .qa-lbl {
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 1.4px;
  color: var(--ocd-coral);
  font-weight: 700;
  margin-bottom: 6px;
}
.ocd-page .qa-box h3 {
  font-family: var(--fh);
  font-size: 1.1rem;
  color: var(--ocd-teal);
  margin: 0 0 7px;
  font-weight: 700;
}
.ocd-page .qa-box p {
  font-size: 0.92rem;
  color: var(--ocd-tx2);
  margin: 0;
  line-height: 1.65;
}

.ocd-page .toc {
  background: #fff;
  border-bottom: 1px solid var(--ocd-bd);
  position: sticky;
  top: 0;
  z-index: 50;
}
.ocd-page .toc-in {
  display: flex;
  gap: 16px;
  padding: 11px 0;
  font-size: 0.78rem;
  overflow-x: auto;
}
.ocd-page .toc-lbl {
  font-weight: 700;
  color: var(--ocd-teal);
  flex: 0 0 auto;
}
.ocd-page .toc a {
  color: var(--ocd-tx2);
  text-decoration: none;
  flex: 0 0 auto;
}

.ocd-page .cmp-wrap {
  overflow-x: auto;
}
.ocd-page .cmp {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.84rem;
  background: #fff;
  border-radius: 10px;
}
.ocd-page .cmp th {
  background: var(--ocd-cr);
  color: var(--ocd-teal);
  padding: 11px 13px;
  text-align: left;
  font-weight: 700;
  font-size: 0.79rem;
  border-bottom: 2px solid var(--ocd-bd);
   border-top: 2px solid var(--ocd-bd);
   font-family: var(--fh);
   text-transform: uppercase;
}
.ocd-page .cmp td {
  padding: 11px 13px;
  border-bottom: 1px solid var(--ocd-bd);
  color: var(--ocd-tx2);
  vertical-align: top;
  line-height: 1.55;
      font-family: Montserrat-Medium;
}
.ocd-page .cmp td:first-child {
  font-weight: 700;
  color: var(--ocd-tx);
}

.ocd-page details {
  background: #fff;
  border: 1px solid var(--ocd-bd);
  border-radius: 10px;
  margin-bottom: 9px;
}
.ocd-page details summary {
  font-family: var(--fh);
  font-size: 0.96rem;
  color: var(--ocd-teal);
  padding: 14px 18px;
  cursor: pointer;
  font-weight: 700;
  list-style: none;
}
.ocd-page details summary::after {
  content: "+";
  float: right;
  color: var(--ocd-coral);
  font-weight: 800;
}
.ocd-page details[open] summary::after {
  content: "−";
}
.ocd-page details p {
  padding: 0 18px 16px;
  font-size: 0.86rem;
  color: var(--ocd-tx2);
  margin: 0;
  line-height: 1.65;
}

.ocd-page .concern-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-bottom: 14px;
  justify-content: center;
}
.ocd-page .concern-tab {
  background: #fff;
  border: 1px solid var(--ocd-bd);
  border-radius: 18px;
  padding: 7px 14px;
  font-size: 0.78rem;
  color: var(--ocd-tx2);
  cursor: pointer;
  font-weight: 600;
}
.ocd-page .concern-tab.on {
  background: var(--ocd-coral);
  color: #fff;
  border-color: var(--ocd-coral);
}

.ocd-page .reviewer-bio {
  background: linear-gradient(135deg, #fff, #f4f0e6);
  border: 1px solid var(--ocd-bd);
  border-radius: 14px;
  padding: 18px;
  display: grid;
  grid-template-columns: 88px 1fr auto;
  gap: 16px;
  align-items: center;
}
.ocd-page .reviewer-bio .rv-photo {
  width: 88px;
  height: 88px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--ocd-violet), var(--ocd-blue));
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 1.5rem;
  overflow: hidden;
  border: 3px solid var(--ocd-gold);
}
.ocd-page .reviewer-bio .rv-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}
.ocd-page .reviewer-bio .rv-lbl {
  font-size: 0.66rem;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  color: var(--ocd-coral);
  font-weight: 700;
  margin-bottom: 2px;
}
.ocd-page .reviewer-bio h3 {
  font-family: var(--fh);
  font-size: 1.08rem;
  color: var(--ocd-teal);
  margin: 0 0 2px;
  font-weight: 700;
}
.ocd-page .reviewer-bio .rv-cred {
  font-size: 0.82rem;
  color: var(--ocd-tx2);
  margin-bottom: 2px;
}
.ocd-page .reviewer-bio .rv-bio {
  font-size: 0.78rem;
  color: var(--ocd-mu);
  line-height: 1.5;
  margin: 2px 0;
}
.ocd-page .reviewer-bio .rv-meta {
  font-size: 0.74rem;
  color: var(--ocd-mu);
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  margin-top: 6px;
}
.ocd-page .reviewer-bio .rv-meta a {
  color: var(--ocd-teal);
  font-weight: 600;
  text-decoration: none;
}
.ocd-page .reviewer-bio .rv-action {
  text-align: center;
}
.ocd-page .reviewer-bio .rv-action a {
  background: var(--ocd-teal);
  color: #fff;
  padding: 8px 14px;
  border-radius: 8px;
  font-size: 0.78rem;
  font-weight: 700;
  text-decoration: none;
  display: inline-block;
}

.ocd-page .med-disclaimer {
  background: #fff8f0;
  border: 1.5px solid #f4a55a;
  border-radius: 12px;
  padding: 14px 18px;
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
.ocd-page .med-disclaimer .md-ic {
  font-size: 1.4rem;
  flex: 0 0 auto;
}
.ocd-page .med-disclaimer .md-lbl {
  font-size: 0.66rem;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  color: #7c2d1b;
  font-weight: 700;
  margin-bottom: 3px;
}
.ocd-page .med-disclaimer p {
  font-size: 0.82rem;
  color: var(--ocd-tx2);
  margin: 0;
  line-height: 1.55;
}

.ocd-page .integrated-banner {
  background: linear-gradient(135deg, #0f4c46 0%, #0a3d38 100%);
  color: #fff;
  padding: 20px 22px;
  border-radius: 14px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  align-items: center;
}
.ocd-page .integrated-banner h3 {
  font-family: var(--fh);
  font-size: 1.15rem;
  margin: 0 0 6px;
  color: #fff;
  font-weight: 700;
}
.ocd-page .integrated-banner p {
  font-size: 0.86rem;
  color: rgba(255, 255, 255, 0.85);
  margin: 0;
  line-height: 1.6;
}
.ocd-page .integrated-banner .ib-roles {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
.ocd-page .integrated-banner .ib-role {
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 10px;
  padding: 11px 14px;
}
.ocd-page .integrated-banner .ib-role b {
  display: block;
  color: #f4a55a;
  font-size: 0.92rem;
  margin-bottom: 3px;
  font-family: var(--fh);
}
.ocd-page .integrated-banner .ib-role span {
  font-size: 0.78rem;
  color: rgba(255, 255, 255, 0.85);
  line-height: 1.5;
}

.ocd-page .decision-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 11px;
}
.ocd-page .decision-card {
  background: #fff;
  border: 2px solid;
  border-radius: 14px;
  padding: 18px 15px;
}
.ocd-page .decision-card.mild {
  border-color: var(--ocd-mint);
}
.ocd-page .decision-card.moderate {
  border-color: var(--ocd-amber);
}
.ocd-page .decision-card.modsev {
  border-color: var(--ocd-coral);
}
.ocd-page .decision-card.severe {
  border-color: var(--ocd-rose);
}
.ocd-page .decision-card .dc-sev {
  font-family: var(--fh);
  font-size: 0.94rem;
  font-weight: 700;
  margin-bottom: 4px;
}
.ocd-page .decision-card.mild .dc-sev {
  color: var(--ocd-mint);
}
.ocd-page .decision-card.moderate .dc-sev {
  color: var(--ocd-amber);
}
.ocd-page .decision-card.modsev .dc-sev {
  color: var(--ocd-coral);
}
.ocd-page .decision-card.severe .dc-sev {
  color: var(--ocd-rose);
}
.ocd-page .decision-card .dc-phq {
  font-size: 0.72rem;
  color: var(--ocd-mu);
  font-weight: 600;
  margin-bottom: 8px;
}
.ocd-page .decision-card .dc-rec {
  background: var(--ocd-cr);
  border-radius: 8px;
  padding: 8px 11px;
  font-size: 0.78rem;
  color: var(--ocd-tx);
  font-weight: 600;
  margin-bottom: 8px;
  line-height: 1.4;
}
.ocd-page .decision-card .dc-rec b {
  display: block;
  color: var(--ocd-teal);
  font-size: 0.84rem;
  margin-bottom: 2px;
}
.ocd-page .decision-card ul {
  padding-left: 16px;
  margin: 0;
  font-size: 0.76rem;
  color: var(--ocd-tx2);
  line-height: 1.5;
}

.ocd-page .acc-badges {
  background: #fff;
  border: 1px solid var(--ocd-bd);
  border-radius: 14px;
  padding: 22px;
}
.ocd-page .acc-badges h3 {
  font-family: var(--fh);
  font-size: 28px;
  color: var(--ocd-teal);
  margin: 0 0 18px;
  font-weight: 700;
  text-align: center;
}
.ocd-page .acc-row {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 11px;
}
.ocd-page .acc-badge {
  background: var(--ocd-cr);
  border: 1px solid var(--ocd-bd);
  border-radius: 11px;
  padding: 14px 11px;
  text-align: center;
}
.ocd-page .acc-badge .ab-ic {
  font-size: 1.6rem;
  display: block;
  margin-bottom: 5px;
}
.ocd-page .acc-badge .ab-ttl {
  font-family: var(--fh);
  font-size: 0.84rem;
  font-weight: 700;
  color: var(--ocd-teal);
  margin-bottom: 2px;
  line-height: 1.3;
}
.ocd-page .acc-badge .ab-sub {
  font-size: 0.7rem;
  color: var(--ocd-mu);
  line-height: 1.4;
}

.ocd-page .decoder-wrap {
  overflow-x: auto;
  border: 1px solid var(--ocd-bd);
  border-radius: 12px;
}
.ocd-page .decoder {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.83rem;
  background: #fff;
}
.ocd-page .decoder caption {
  padding: 14px;
  font-weight: 700;
  color: var(--ocd-teal);
  background: var(--ocd-cr);
  text-align: left;
  font-family: var(--fh);
}
.ocd-page .decoder th {
  background: var(--ocd-cr);
  color: var(--ocd-teal);
  padding: 11px 13px;
  text-align: left;
  font-weight: 700;
  font-size: 0.79rem;
  border-bottom: 2px solid var(--ocd-bd);
}
.ocd-page .decoder td {
  padding: 11px 13px;
  border-bottom: 1px solid var(--ocd-bd);
  color: var(--ocd-tx2);
  vertical-align: top;
  line-height: 1.5;
}
.ocd-page .decoder td:first-child {
  font-weight: 700;
  color: var(--ocd-tx);
}

.ocd-page .gad2 {
  background: linear-gradient(135deg, #efedf5, #e6f0ec);
  border: 2px dashed var(--ocd-violet);
  border-radius: 14px;
  padding: 22px;
}
.ocd-page .gad2 h3 {
  font-family: var(--fh);
  font-size: 1.1rem;
  color: var(--ocd-teal);
  margin: 0 0 6px;
  font-weight: 700;
}
.ocd-page .gad2 .gad2-sub {
  font-size: 0.83rem;
  color: var(--ocd-tx2);
  margin-bottom: 14px;
  line-height: 1.55;
}
.ocd-page .gad2-q {
  background: #fff;
  border: 1px solid var(--ocd-bd);
  border-radius: 10px;
  padding: 12px 14px;
  margin-bottom: 10px;
}
.ocd-page .gad2-q-text {
  font-size: 0.86rem;
  color: var(--ocd-tx);
  font-weight: 600;
  margin-bottom: 8px;
  line-height: 1.45;
}
.ocd-page .gad2-opts {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 6px;
}
.ocd-page .gad2-opt {
  background: #fff;
  border: 1.5px solid var(--ocd-bd);
  border-radius: 8px;
  padding: 7px 4px;
  text-align: center;
  font-size: 0.72rem;
  cursor: pointer;
  color: var(--ocd-tx2);
  font-family: inherit;
  line-height: 1.3;
  font-weight: 600;
}
.ocd-page .gad2-opt.sel {
  background: var(--ocd-violet);
  color: #fff;
  border-color: var(--ocd-violet);
}
.ocd-page .gad2-result {
  display: none;
  background: #fff;
  border: 1px solid var(--ocd-bd);
  border-radius: 10px;
  padding: 14px;
  margin-top: 12px;
}
.ocd-page .gad2-result.on {
  display: block;
}
.ocd-page .gad2-result .pr-score {
  font-family: var(--fh);
  font-size: 1.4rem;
  color: var(--ocd-coral);
  font-weight: 800;
  margin-bottom: 4px;
}
.ocd-page .gad2-result .pr-text {
  font-size: 0.84rem;
  color: var(--ocd-tx2);
  line-height: 1.55;
  margin-bottom: 10px;
}
.ocd-page .gad2-result a {
  background: var(--ocd-teal);
  color: #fff;
  padding: 8px 16px;
  border-radius: 8px;
  text-decoration: none;
  font-size: 0.82rem;
  font-weight: 700;
  display: inline-block;
}
.ocd-page .gad2-disclaimer {
  font-size: 0.7rem;
  color: var(--ocd-mu);
  margin-top: 10px;
  line-height: 1.55;
  font-style: italic;
}

.ocd-page .btn-pri,
.ocd-page .btn-wa,
.ocd-page .price-btn,
.ocd-page .bk-cta,
.ocd-page .cond-exp {
  position: relative;
  overflow: hidden;
  transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.25s,
    background 0.25s, color 0.25s;
}
.ocd-page .btn-pri:hover,
.ocd-page .price-btn:hover,
.ocd-page .bk-cta:hover {
  transform: translateY(-2px) scale(1.02);
  box-shadow: 0 12px 28px rgba(232, 103, 58, 0.32);
}
.ocd-page .btn-wa:hover {
  transform: translateY(-2px) scale(1.02);
  box-shadow: 0 12px 28px rgba(37, 211, 102, 0.32);
  background: #1ebe57;
}
.ocd-page .cond-exp:hover {
  transform: translateX(3px);
  color: var(--ocd-coral);
}
.ocd-page .doc-card,
.ocd-page .cond-card,
.ocd-page .price-card,
.ocd-page .decision-card,
.ocd-page .acc-badge {
  transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.25s,
    border-color 0.25s;
}
.ocd-page .doc-card:hover,
.ocd-page .cond-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 36px rgba(10, 61, 56, 0.14);
  border-color: var(--ocd-coral);
}
.ocd-page .price-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 44px rgba(10, 61, 56, 0.18);
}
.ocd-page .decision-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 14px 30px rgba(10, 61, 56, 0.12);
}
.ocd-page .acc-badge:hover {
  transform: translateY(-3px) scale(1.04);
  box-shadow: 0 10px 22px rgba(10, 61, 56, 0.14);
  border-color: var(--ocd-coral);
}
.ocd-page .bk-plan {
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}
.ocd-page .bk-plan:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(10, 61, 56, 0.12);
}
.ocd-page .bk-slot:not(.unav) {
  transition: all 0.2s;
}
.ocd-page .bk-slot:not(.unav):hover {
  transform: translateY(-1px);
  border-color: var(--ocd-coral);
  background: #fff5f0;
}
.ocd-page .gad2-opt {
  transition: all 0.2s;
}
.ocd-page .gad2-opt:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 10px rgba(123, 94, 168, 0.18);
}
.ocd-page .toc a,
.ocd-page .breadcrumb a {
  transition: color 0.2s;
}
.ocd-page .toc a:hover,
.ocd-page .breadcrumb a:hover {
  color: var(--ocd-coral);
}
.ocd-page details summary {
  transition: color 0.2s;
}
.ocd-page details summary:hover {
  color: var(--ocd-coral);
}
.ocd-page .float-wa,
.ocd-page .float-call {
  transition: transform 0.25s;
}
.ocd-page .float-wa:hover,
.ocd-page .float-call:hover {
  transform: scale(1.12);
}
.ocd-page .reviewer-bio .rv-action a {
  transition: all 0.25s;
}
.ocd-page .reviewer-bio .rv-action a:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 18px rgba(10, 61, 56, 0.22);
  background: var(--ocd-coral);
}
.ocd-page .rv-meta a:hover {
  text-decoration: underline;
}

@media (max-width: 768px) {
  .ocd-page .hero-in,
  .ocd-page .doc-grid,
  .ocd-page .price-grid,
  .ocd-page .cond-grid,
  .ocd-page .decision-grid,
  .ocd-page .acc-row,
  .ocd-page .gad2-opts,
  .ocd-page .integrated-banner,
  .ocd-page .integrated-banner .ib-roles {
    grid-template-columns: 1fr !important;
  }
  .ocd-page .reviewer-bio {
    grid-template-columns: 1fr;
    text-align: center;
  }
  .ocd-page .reviewer-bio .rv-photo {
    margin: 0 auto;
  }
}


.ocd-page .toc-lbl{
  font-family: var(--fh);
  padding-right: 5px;
    border-right: 1px solid #e5d5da;
}

.ocd-page .reviewer-bio .rv-meta{
      font-family: Montserrat-Medium;
}

.ocd-page .reviewer-bio .rv-cred{

      font-family: Montserrat-Medium;
}

.ocd-page .integrated-banner .ib-role span{
  font-family: Montserrat-Medium;
}

.ocd-page .decision-card .dc-rec{
   font-size: 12px;
   font-family: Montserrat-Medium;
}

.ocd-page .decision-card .dc-rec b{
  font-size: 13px;
}

.ocd-page .cond-card{
  display: block;
}

.ocd-page .cond-exp {
    
    border: 1px dashed;
}

.ocd-track-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}

.ocd-track-card{
  background:#fff;
  border:1px solid var(--ocd-bd);
  border-radius:14px;
  padding:22px;
  transition:.3s ease;
}

.ocd-track-card:nth-child(1){
  border-top:4px solid var(--ocd-mint);
}

.ocd-track-card:nth-child(2){
  border-top:4px solid var(--ocd-coral);
}

.ocd-track-card:nth-child(3){
  border-top:4px solid var(--ocd-amber);
}

.ocd-track-card:hover{
  transform:translateY(-4px);
  box-shadow:0 12px 30px rgba(0,0,0,.08);
}

.ocd-track-icon{
  font-size:1.8rem;
  margin-bottom:6px;
}

.ocd-track-title{
  font-family:var(--fh);
  font-size:1.1rem;
  color:var(--ocd-teal);
  margin:0 0 6px;
  font-weight:700;
  line-height:1.35;
}

.ocd-track-desc{
  font-size:.83rem;
  color:var(--ocd-tx2);
  margin:0 0 10px;
  line-height:1.6;
}

.ocd-track-meta{
  font-size:.78rem;
  color:var(--ocd-mu);
  line-height:1.6;
}

.ocd-track-item{
  margin-bottom:8px;
}

.ocd-track-item:last-child{
  margin-bottom:0;
}

.ocd-track-item strong{
  display:block;
  margin-bottom: 0px;
  color:var(--ocd-teal);
  font-weight:700;
}

@media(max-width:991px){
  .ocd-track-grid{
    grid-template-columns:1fr;
  }
}

.ocd-track-item{
      font-family: Montserrat-Medium;
}

.ocd-track-meta {
    
    background: #fffbf3;
    padding: 10px;
    border-radius: 10px;
}

.plan_stepe {
    margin-top: 40px;
}

.ocd-support-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
}

.ocd-support-card{
  background:#fff;
  border:1px solid var(--ocd-bd);
  border-radius:11px;
  padding:16px;
  transition:.3s ease;
}

.ocd-support-card:hover{
  transform:translateY(-4px);
  box-shadow:0 10px 25px rgba(0,0,0,.08);
}

.ocd-support-icon{
  font-size:1.4rem;
  line-height:1;
  background: #f4f0e6;
  padding: 10px;
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  margin-bottom: 10px;
}

.ocd-support-title{
  font-family:var(--fh);
  font-size:.92rem;
  color:var(--ocd-teal);
  margin:4px 0 5px;
  font-weight:700;
  line-height:1.4;
}

.ocd-support-text{
  font-size:.78rem;
  color:var(--ocd-tx2);
  margin:0;
  line-height:1.55;
}

.ocd-support-link{
  display: block;
  margin-top:6px;
  font-size: 14px;
  font-weight:700;
  color: #fff;
  text-decoration:none;
  background: var(--ocd-coral);
  padding: 10px;
  border-radius: 10px;
  text-align: center;
  text-transform: capitalize;
  font-family: Montserrat-SemiBold;
  margin-top: 15px;
}

.ocd-support-link:hover{
  text-decoration:underline;
}

@media(max-width:991px){
  .ocd-support-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:576px){
  .ocd-support-grid{
    grid-template-columns:1fr;
  }
}

.ocd-lang-grid{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:9px;
}

.ocd-lang-card{
  background:#fff;
  border:1px solid var(--ocd-bd);
  border-radius:10px;
  padding:13px;
  text-align:center;
  transition:.3s ease;
}

.ocd-lang-card:hover{
  transform:translateY(-3px);
  box-shadow:0 8px 20px rgba(0,0,0,.08);
}

.ocd-lang-icon{
  font-size:1.4rem;
  margin-bottom: 8px;
  line-height:1;
}

.ocd-lang-name{
  font-size:.84rem;
  font-weight:700;
  color:var(--ocd-teal);
  line-height:1.4;
  font-family: var(--fh);
}

.ocd-lang-meta{
  font-size:.7rem;
  color:var(--ocd-mu);
  margin-top:2px;
  line-height:1.4;
  font-family: Montserrat-Medium;
}

@media(max-width:991px){
  .ocd-lang-grid{
    grid-template-columns:repeat(3,1fr);
  }
}

@media(max-width:576px){
  .ocd-lang-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

.ocd-outcome-table-wrap{
  overflow-x:auto;
  background:#fff;
  border:1px solid var(--ocd-bd);
  border-radius:12px;
}

.ocd-outcome-table{
  width:100%;
  border-collapse:collapse;
  font-size:.85rem;
}

.ocd-outcome-table th{
  background:var(--ocd-cr);
  color:var(--ocd-teal);
  padding:11px 13px;
  text-align:left;
  font-size:.79rem;
  font-weight:700;
  border-bottom:2px solid var(--ocd-bd);
  white-space:nowrap;
  font-family: var(--fh);
  text-transform: uppercase;

}

.ocd-outcome-table td{
  padding:11px 13px;
  color:var(--ocd-tx2);
  border-bottom:1px solid var(--ocd-bd);
  line-height:1.55;
  font-family: Montserrat-Medium;
}

.ocd-outcome-table tbody tr:last-child td{
  border-bottom:none;
}

.ocd-outcome-table td:first-child{
  color:var(--ocd-tx);
  font-weight:700;
}

.ocd-outcome-highlight{
  color:var(--ocd-violet);
  font-weight:700;
}

@media(max-width:768px){
  .ocd-outcome-table{
    min-width:720px;
  }
}

.ocd-stats-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
  margin-top: 25px;
}

.ocd-stats-card{
  background:#fff;
  border:1px solid var(--ocd-bd);
  border-radius:14px;
  padding:22px;
  text-align:center;
  transition:.3s ease;
}

.ocd-stats-card:hover{
  transform:translateY(-4px);
  box-shadow:0 12px 28px rgba(0,0,0,.08);
}

.ocd-stats-num{
  font-family:var(--fh);
  font-size: 28px;
  font-weight:800;
  line-height:1;
}

.ocd-stats-coral{
  color:var(--ocd-coral);
}

.ocd-stats-violet{
  color:var(--ocd-violet);
}

.ocd-stats-teal{
  color:var(--ocd-teal);
}

.ocd-stats-amber{
  color:var(--ocd-amber);
}

.ocd-stats-label{
  margin-top:6px;
  font-size:.82rem;
  font-weight:600;
  color:var(--ocd-tx2);
  line-height:1.5;
}

@media(max-width:991px){
  .ocd-stats-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:576px){
  .ocd-stats-grid{
    grid-template-columns:1fr;
  }

  .ocd-stats-num{
    font-size:1.7rem;
  }
}

.ocd-phase-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}

.ocd-phase-card{
  background:#fff;
  border:1px solid var(--ocd-bd);
  border-radius:13px;
  padding:20px;
  transition:.3s ease;
}

.ocd-phase-card:hover{
  transform:translateY(-4px);
  box-shadow:0 12px 28px rgba(0,0,0,.08);
}

.ocd-phase-violet{
  border-top:3px solid var(--ocd-violet);
}

.ocd-phase-mint{
  border-top:3px solid var(--ocd-mint);
}

.ocd-phase-coral{
  border-top:3px solid var(--ocd-coral);
}

.ocd-phase-blue{
  border-top:3px solid var(--ocd-blue);
}

.ocd-phase-violet .ocd-phase-tag{
  color:var(--ocd-violet);
}

.ocd-phase-mint .ocd-phase-tag{
  color:var(--ocd-mint);
}

.ocd-phase-coral .ocd-phase-tag{
  color:var(--ocd-coral);
}

.ocd-phase-blue .ocd-phase-tag{
  color:var(--ocd-blue);
}

.ocd-phase-tag{
  font-size: 11px;
  text-transform:uppercase;
  letter-spacing: 1px;
  font-weight:700;
  margin-bottom:5px;
}

.ocd-phase-title{
  font-family:var(--fh);
  font-size:1rem;
  color:var(--ocd-teal);
  margin:0 0 7px;
  font-weight:700;
  line-height:1.4;
}

.ocd-phase-desc{
  font-size:.79rem;
  color:var(--ocd-tx2);
  margin:0;
  line-height:1.6;
}

@media(max-width:991px){
  .ocd-phase-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:576px){
  .ocd-phase-grid{
    grid-template-columns:1fr;
  }
}

/* OCD Subtypes Grid */
.ocd-subtype-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap: 16px;
}

.ocd-subtype-card{
  background:#fff;
  border:1px solid var(--ocd-bd);
  border-radius:11px;
  padding: 18px 22px;
}

.ocd-subtype-title{
  display:block;
  margin-bottom:8px;
  color:var(--ocd-teal);
  font-family:var(--fh);
  font-size:.95rem;
  font-weight:700;
}

.ocd-subtype-list{
  margin:0;
  padding-left:18px;
  color:var(--ocd-tx2);
  line-height:1.8;
}

.ocd-subtype-list li{
  margin-bottom:2px;
  list-style: disc;
  font-size: 14px;
}

.ocd-subtype-list li:last-child{
  margin-bottom:0;
}

/* Tablet */
@media (max-width:991px){
  .ocd-subtype-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

/* Mobile */
@media (max-width:767px){
  .ocd-subtype-grid{
    grid-template-columns:1fr;
  }

  .ocd-subtype-card{
    padding:14px;
  }

  .ocd-subtype-title{
    font-size:.9rem;
  }

  .ocd-subtype-list{
    font-size:.8rem;
  }
}

/* OCD Self-Help Tools */
.ocd-help-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}

.ocd-help-card{
  background:#fff;
  border:1px solid var(--ocd-bd);
  border-radius:13px;
  padding:18px;
}

.ocd-help-card.violet{
  border-left:4px solid var(--ocd-violet);
}

.ocd-help-card.mint{
  border-left:4px solid var(--ocd-mint);
}

.ocd-help-card.blue{
  border-left:4px solid var(--ocd-blue);
}

.ocd-help-card.amber{
  border-left:4px solid var(--ocd-amber);
}

.ocd-help-card.coral{
  border-left:4px solid var(--ocd-coral);
}

.ocd-help-card.teal{
  border-left:4px solid var(--ocd-teal);
}

.ocd-help-icon{
  font-size:1.4rem;
  margin-bottom:6px;
}

.ocd-help-title{
  font-family:var(--fh);
  font-size:.96rem;
  color:var(--ocd-teal);
  margin:0 0 6px;
  font-weight:700;
}

.ocd-help-text{
  font-size:.8rem;
  color:var(--ocd-tx2);
  margin:0;
  line-height:1.6;
}

@media(max-width:991px){
  .ocd-help-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:767px){
  .ocd-help-grid{
    grid-template-columns:1fr;
  }

  .ocd-help-card{
    padding:16px;
  }
}

.ocd-page .decoder th{
  font-family: var(--fh);
  text-transform: uppercase;
}

.ocd-page .decoder td{
      font-family: Montserrat-Medium;
}

.ocd-protocol-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap: 18px;
}

.ocd-protocol-card{
  background:#fff;
  border:1px solid var(--ocd-bd);
  border-radius:14px;
  padding:22px;
}

.ocd-protocol-mild{
  border-top:4px solid var(--ocd-mint);
}

.ocd-protocol-moderate{
  border-top:4px solid var(--ocd-amber);
}

.ocd-protocol-severe{
  border-top:4px solid var(--ocd-coral);
}

.ocd-protocol-resistant{
  border-top:4px solid var(--ocd-rose);
}

.ocd-protocol-code{
  font-size:.7rem;
  text-transform:uppercase;
  letter-spacing:1.4px;
  font-weight:700;
  margin-bottom:5px;
}

.ocd-protocol-mild .ocd-protocol-code{
  color:var(--ocd-mint);
}

.ocd-protocol-moderate .ocd-protocol-code{
  color:var(--ocd-amber);
}

.ocd-protocol-severe .ocd-protocol-code{
  color:var(--ocd-coral);
}

.ocd-protocol-resistant .ocd-protocol-code{
  color:var(--ocd-rose);
}

.ocd-protocol-title{
  font-family:var(--fh);
  font-size:1.06rem;
  color:var(--ocd-teal);
  margin:0 0 8px;
  font-weight:700;
  line-height:1.4;
}

.ocd-protocol-list{
  margin:0;
  padding-left:18px;
  color:var(--ocd-tx2);
  font-size:.83rem;
  line-height:1.65;
}

.ocd-protocol-list li{
  margin-bottom:6px;
  list-style: disc;
}

.ocd-protocol-list li:last-child{
  margin-bottom:0;
}

@media(max-width:768px){

  .ocd-protocol-grid{
    grid-template-columns:1fr;
  }

}

.ocd-case-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:14px;
}

.ocd-case-card{
  background:#fff;
  border:1px solid var(--ocd-bd);
  border-radius:14px;
  padding:20px;
}

.ocd-case-head{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:12px;
}

.ocd-case-avatar{
  width:54px;
  height:54px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-size:1.1rem;
  font-weight:800;
  flex:0 0 54px;
}

.ocd-case-purple{
  background:linear-gradient(135deg,var(--ocd-violet),var(--ocd-blue));
}

.ocd-case-coral{
  background:linear-gradient(135deg,var(--ocd-coral),var(--ocd-amber));
}

.ocd-case-blue{
  background:linear-gradient(135deg,var(--ocd-blue),var(--ocd-teal));
}

.ocd-case-red{
  background:linear-gradient(135deg,#B92C2C,var(--ocd-rose));
}

.ocd-case-name{
  font-family:var(--fh);
  font-size:1rem;
  color:var(--ocd-teal);
  font-weight:700;
}

.ocd-case-role{
  font-size:.74rem;
  color:var(--ocd-mu);
  margin-top:2px;
  font-family: Montserrat-Medium;
}

.ocd-case-box{
  background:var(--ocd-cr);
  border-radius:10px;
  padding:12px;
  margin-bottom:10px;
  font-size:.82rem;
  color:var(--ocd-tx2);
  line-height:1.65;
  font-family: Montserrat-Medium;
}

.ocd-case-box strong{
  color:var(--ocd-teal);
}

.ocd-case-result{
  border-radius:10px;
  padding:12px;
  font-size: 12px;
  color:var(--ocd-tx2);
  line-height:1.65;
  font-family: Montserrat-Medium;
}

.ocd-case-result strong{
  font-weight:700;
}

.ocd-case-result-purple{
  background:#efedf5;
}

.ocd-case-result-purple strong{
  color:var(--ocd-violet);
}

.ocd-case-result-coral{
  background:#fff5f0;
}

.ocd-case-result-coral strong{
  color:var(--ocd-coral);
}

.ocd-case-result-blue{
  background:#e6eff5;
}

.ocd-case-result-blue strong{
  color:var(--ocd-blue);
}

.ocd-case-result-red{
  background:#fff1f2;
}

.ocd-case-result-red strong{
  color:#B92C2C;
}

@media(max-width:991px){
  .ocd-case-grid{
    grid-template-columns:1fr;
  }
}

.ocd-review-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap: 18px;
}

.ocd-review-card{
  background:#fff;
  border:1px solid var(--ocd-bd);
  border-radius:13px;
  padding: 20px 16px;
}

.review-mint{
  border-left:4px solid var(--ocd-mint);
}

.review-coral{
  border-left:4px solid var(--ocd-coral);
}

.review-violet{
  border-left:4px solid var(--ocd-violet);
}

.review-blue{
  border-left:4px solid var(--ocd-blue);
}

.review-amber{
  border-left:4px solid var(--ocd-amber);
}

.review-teal{
  border-left:4px solid var(--ocd-teal);
}

.ocd-review-stars{
  font-size:1rem;
  color:var(--ocd-coral);
  margin-bottom:7px;
}

.ocd-review-text{
  font-size: 14px;
  margin:0 0 11px;
  line-height:1.65;
  font-style:italic;
}

.ocd-review-meta{
  font-size:.76rem;
  color:var(--ocd-mu);
  line-height:1.6;
}

.ocd-review-meta strong{
  color:var(--ocd-teal);
}

.ocd-review-mint{
  border-left:4px solid var(--ocd-mint);
}

.ocd-review-coral{
  border-left:4px solid var(--ocd-coral);
}

.ocd-review-violet{
  border-left:4px solid var(--ocd-violet);
}

.ocd-review-blue{
  border-left:4px solid var(--ocd-blue);
}

.ocd-review-amber{
  border-left:4px solid var(--ocd-amber);
}

.ocd-review-teal{
  border-left:4px solid var(--ocd-teal);
}

.testi-author{
  display:flex;
  align-items:center;
  gap:12px;
  margin-top:14px;
      padding-top: 11px;
    border-top: 1px solid var(--bd);
}

.testi-av{
  width: 36px;
  height: 36px;
  border-radius:50%;
  background:var(--ocd-teal);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size: 12px;
  font-weight:700;
  flex-shrink:0;
}

.testi-name{
  font-size:.88rem;
  font-weight:700;
  color:var(--ocd-teal);
  line-height:1.4;
}

.testi-loc{
  font-size:.75rem;
  color:var(--ocd-mu);
  line-height:1.5;
      font-family: Montserrat-Medium;
}

@media(max-width:991px){
  .ocd-review-grid{
    grid-template-columns:1fr;
  }
}

.ocd-editorial-box{
  background:#fff;
  border:1px solid var(--ocd-bd);
  border-radius:14px;
  padding:24px;
}

.ocd-editorial-top{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px;
  margin-bottom:14px;
}

.ocd-editorial-label{
  font-size:.74rem;
  text-transform:uppercase;
  letter-spacing:1.3px;
  color:var(--ocd-coral);
  font-weight:700;
  margin-bottom:8px;
}

.ocd-editorial-title{
  font-family:var(--fh);
  font-size:1rem;
  color:var(--ocd-teal);
  font-weight:700;
  margin-bottom:4px;
}

.ocd-editorial-text{
  font-size:.82rem;
  color:var(--ocd-tx2);
  line-height:1.6;
  margin:0;
}

.ocd-editorial-link{
  color:var(--ocd-coral);
  font-weight:700;
  text-decoration:none;
}

.ocd-editorial-link:hover{
  text-decoration:underline;
}

.ocd-editorial-history,
.ocd-editorial-sources{
  border-top:1px solid var(--ocd-bd);
  padding-top:14px;
  margin-top:14px;
}

.ocd-editorial-history-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:11px;
}

.ocd-editorial-history-card{
  font-size:.78rem;
  color:var(--ocd-tx2);
  line-height:1.6;
      font-family: Montserrat-Medium;
}

.ocd-editorial-history-card strong{
  display:block;
  color:var(--ocd-teal);
  margin-bottom:4px;
}

.ocd-editorial-source-text{
  font-size:.78rem;
  color:var(--ocd-tx2);
  line-height:1.7;
    font-family: Montserrat-Medium;
}

@media(max-width:991px){

  .ocd-editorial-top{
    grid-template-columns:1fr;
  }

  .ocd-editorial-history-grid{
    grid-template-columns:1fr;
  }

}

.ocd-page .acc-badge .ab-sub{
      font-family: Montserrat-Medium;
}

.ocd-faq-card-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap: 18px;
  margin-top: 30px;
}

.ocd-faq-card-item{
  background:var(--ocd-cr);
  border-radius:11px;
  padding:16px;
}

.ocd-faq-card-title{
  display:block;
  color:var(--ocd-teal);
  font-size:.92rem;
  font-weight:700;
  margin-bottom:6px;
  line-height:1.4;
  font-family: var(--fh);
}

.ocd-faq-card-text{
  margin:0;
  font-size: 13px;
  color:var(--ocd-tx);
  line-height:1.6;
}

@media(max-width:991px){
  .ocd-faq-card-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:767px){
  .ocd-faq-card-grid{
    grid-template-columns:1fr;
  }
}

.faq_iner {
    margin-bottom: 25px;
}

.ocd-related-services-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap: 11px;
  margin-top: 22px;
}

.ocd-related-service-card{
  background:#fff;
  border:1px solid var(--ocd-bd);
  border-radius:11px;
  padding:14px;
  text-decoration:none;
  color:var(--ocd-tx2);
  transition:.3s ease;
}

.ocd-related-service-card:hover{
  transform:translateY(-3px);
  border-color:var(--ocd-teal);
}

.ocd-related-service-title{
  display:block;
  margin-bottom:3px;
  color:var(--ocd-teal);
  font-size:.9rem;
  font-weight:700;
}

.ocd-related-service-text{
  display:block;
  font-size:.78rem;
  line-height:1.55;
}

@media(max-width:991px){
  .ocd-related-services-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:767px){
  .ocd-related-services-grid{
    grid-template-columns:1fr;
  }
}

.ocd-glossary-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:9px;
}

.ocd-glossary-card{
  background:var(--ocd-cr);
  padding:11px 14px;
  border-radius:8px;
}

.ocd-glossary-title{
  color:var(--ocd-teal);
  font-size:.86rem;
  font-weight:700;
  margin-bottom:4px;
}

.ocd-glossary-text{
  margin:0;
  color:var(--ocd-tx2);
  font-size:.82rem;
  line-height:1.55;
}

@media(max-width:767px){
  .ocd-glossary-grid{
    grid-template-columns:1fr;
  }
}

.ocd-reference-box{
  background:#fff;
  border:1px solid var(--ocd-bd);
  border-radius:14px;
  padding:22px;
  font-size:.81rem;
  color:var(--ocd-tx2);
  line-height:1.8;
}

.ocd-reference-item{
  margin:0 0 10px;
  font-size: 15px;
}

.ocd-reference-item:last-child{
  margin-bottom:0;
}

.ocd-reference-num{
  color:var(--ocd-teal);
  font-weight:700;
}

.ocd-reference-link{
  color:var(--ocd-coral);
  font-weight:600;
  text-decoration:none;
  transition:.3s;
}

.ocd-reference-link:hover{
  text-decoration:underline;
}

.ocd-reference-item em{
  font-style:italic;
}

.ocd-page .bk-field input, .ocd-page .bk-field select{
      font-family: Montserrat-Medium;
      font-size: 13px;
}

.bk-cta{
font-family: Montserrat-SemiBold !important;
}

.ocd-page .decision-card ul li {
    list-style: disc;
    margin-bottom: 7px;
}

div#dc-popup{
	z-index: 9999 !important;
}
div#cb-modal{
	z-index: 9999 !important;
}
.ocd-page .toc {
    top: 102px;
}

.ocd-page .doc-card .doc-head {
    background: linear-gradient(135deg, #F2FDFC 0%, #FFFFFF 100%);
    padding: 15px;
    border-bottom: 1px solid #C2EFED !important;
}

.ocd-page .doc-card .doc-cred {
    font-family: Montserrat-Medium;
}

.ocd-page .doc-card .doc-exp {
    font-family: Montserrat-Medium;
}

.ocd-page .doc-card .doc-img {
    width: 82px;
    height: 82px;
    flex: 0 0 82px;
}

.hqo-avail {
    position: absolute;
    right: 7px;
    top: 1px;
    font-family: Montserrat-Medium;
}
.ocd-page .gad2-q-text{
	    font-family: Montserrat-Medium;
}
.hqo-avail span{
	font-size: 9.5px !important;
}

.ocd-page .doc-card{
	    padding: 0px;
}

.ocd-page .doc-card .doc-spec {
    font-family: Montserrat-Medium;
}

.ocd-page .doc-card .doc-cta {
    padding: 10px 16px;
    border-top: 1px solid #C2EFED !important;
    display: flex;
    gap: 30px;
    background: #FAFAFA;
	    justify-content: space-between;
}

.ocd-page .doc-card .doc-cta a {
    flex: inherit;
}
.ocd-page  .doc-card .doc-cta .view {
    padding: 8px 14px;
}

.hqo-book-btn{
	padding: 8px 14px;
    border-radius: 10px;
    font-size: 13px;
    font-weight: 600;
    border: none;
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    text-decoration: none;
    font-family: Montserrat-SemiBold;
}

.ocd-page .doc-card {
    overflow: hidden;
    position: relative;
}

.doc-meta-wrap {
    padding: 0px 15px 15px;
}

.ocd-page .doc-card .doc-lang {
    display: flex;
    gap: 8px;
    font-family: Montserrat-Medium;
    margin-top: 12px;
}

.ocd-page .doc-card .doc-head {
    align-items: center;
}
.hqo-avail {
    margin: 0px 0 4px !important;

}

@media(max-width: 767px){
		.cmn_grid{
		grid-template-columns: inherit !important;
	}
	.blck_bx {
    display: block !important;
}
.cta_scn{
	margin-bottom: 15px;
}


.hq-config-step .hq-config-options{
	grid-template-columns: repeat(2, 1fr) !important;
}
.hq-config-options {
    grid-template-columns: inherit !important;
	gap: 15px !important;
}
.hq-config-summary {
    display: block !important;
}
.plan_stepe{
	grid-template-columns: inherit !important;
}
.ocd-page .toc {
   
    position: inherit;

}

.ocd-page .hero-in {
    
   display: block;
   
}
.ocd-page .hero ul {
    grid-template-columns: inherit;
   
}
.ocd-page .hero-stat-line {
  
    margin-bottom: 25px;
}
    .sec {
        padding: 40px 12px;
    }
	.doc-meta-wrap {
    padding: 0px 10px 10px;
}
.tcm-modes {
   
    gap: 7px;
    
}
.ocd-page .doc-card .doc-head {
 
    padding: 15px 10px 10px;

}

.ocd-page .hero h1 { 
    font-size: 26px;
    line-height: 37px;
}
}