/*
Theme Name: Clinic116
Theme URI: https://example.com/clinic116
Author: OpenAI
Author URI: https://openai.com/
Description: Fast, medical-style affiliate WordPress theme for pharmaceutical and prescription content. Includes Medicine CPT, sticky affiliate summary box, BMI calculator template, category cards, search, schema, and responsive layouts.
Version: 1.0.7.2
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 8.0
Text Domain: clinic116
License: GPL v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Tags: medical, affiliate, responsive, custom-logo, custom-menu, editor-style, featured-images, blog
*/

:root{
  --c116-bg:#f5f4ef;
  --c116-surface:#ffffff;
  --c116-surface-2:#f0eee8;
  --c116-text:#182128;
  --c116-muted:#5d6a73;
  --c116-border:#d7ddd9;
  --c116-accent:#2d6e69;
  --c116-accent-2:#6da9a1;
  --c116-accent-soft:#dceeea;
  --c116-warm:#e7dfd3;
  --c116-warm-2:#f1ebe3;
  --c116-dark:#101517;
  --c116-radius:24px;
  --c116-radius-sm:16px;
  --c116-shadow:0 14px 38px rgba(16,21,23,.08);
  --c116-shadow-soft:0 10px 24px rgba(16,21,23,.05);
  --c116-content:760px;
  --c116-wrap:min(1240px, calc(100vw - 32px));
  --c116-sticky:112px;
  --wp--style--global--content-size:760px;
  --wp--style--global--wide-size:1240px;
}


html,body{
  max-width:100%;
  overflow-x:hidden;
}

.site-main,
.entry-content,
.page-content,
.accordion-item__content{
  max-width:100%;
  overflow-x:hidden;
}

.entry-content .wp-block-table,
.page-content .wp-block-table,
.accordion-item__content .wp-block-table{
  max-width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-x:contain;
}

*,
*::before,
*::after{box-sizing:border-box}

html{
  scroll-behavior:smooth;
  -webkit-text-size-adjust:100%;
}

html,body{
  max-width:100%;
  overflow-x:hidden;
}

body{
  margin:0;
  color:var(--c116-text);
  overflow-x:clip;
  background:linear-gradient(180deg,#f7f7f4 0%,#f4f3ee 100%);
  font-family: "Avenir Next", Aptos, Inter, "Segoe UI", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  font-size:18px;
  line-height:1.65;
  text-rendering:optimizeLegibility;
  font-feature-settings:"ss01" 1;
}

h1,h2,h3,h4,h5,h6,.site-title,.button,.header-nav a{
  font-family:"Avenir Next", Aptos, Inter, "Segoe UI", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  letter-spacing:-.025em;
}

h1,h2,h3,h4,h5,h6{
  font-weight:650;
}

img{
  max-width:100%;
  height:auto;
  display:block;
}

a{
  color:var(--c116-accent);
  text-decoration-thickness:1px;
  text-underline-offset:.18em;
}

a:hover{color:#215854}

button,
input,
textarea,
select{
  font:inherit;
}

.screen-reader-text{
  position:absolute!important;
  width:1px;height:1px;
  padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);
  white-space:nowrap;border:0;
}

.skip-link{
  position:absolute;
  left:12px;top:-100px;
  background:#fff;
  color:#000;
  padding:10px 14px;
  z-index:9999;
  border-radius:10px;
}
.skip-link:focus{top:12px}

.c116-wrap{width:var(--c116-wrap);margin-inline:auto}

.site-header{
  position:sticky;
  top:0;
  z-index:50;
  backdrop-filter:saturate(1.2) blur(14px);
  background:rgba(247,247,244,.82);
  border-bottom:1px solid rgba(24,33,40,.06);
}

.site-header__inner{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:18px;
  align-items:center;
  min-height:76px;
  padding:12px 0;
}

.site-branding{
  display:flex;
  align-items:center;
  gap:14px;
  min-width:0;
}

.custom-logo-link img{
  width:auto;
  max-height:48px;
}

.site-title{
  margin:0;
  font-size:1.2rem;
  line-height:1.1;
}

.site-title a{
  color:var(--c116-text);
  text-decoration:none;
}

.site-description{
  margin:2px 0 0;
  color:var(--c116-muted);
  font-size:.9rem;
}

.header-nav{
  justify-self:center;
}

.header-nav ul{
  list-style:none;
  padding:0;margin:0;
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}

.header-nav a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 16px;
  border-radius:999px;
  color:var(--c116-text);
  text-decoration:none;
}

.header-nav a:hover,
.header-nav .current-menu-item > a{
  background:var(--c116-surface);
  box-shadow:var(--c116-shadow-soft);
}

.header-tools{
  display:flex;
  align-items:center;
  gap:12px;
}

.mini-search{
  position:relative;
  display:flex;
  align-items:center;
}

.mini-search input[type="search"]{
  width:min(280px, 34vw);
  min-width:160px;
  height:44px;
  border-radius:999px;
  border:1px solid rgba(24,33,40,.10);
  padding:0 46px 0 16px;
  background:#fff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85);
}

.mini-search button{
  position:absolute;
  right:6px;
  top:50%;
  transform:translateY(-50%);
  width:34px;
  height:34px;
  border:1px solid rgba(24,33,40,.12);
  border-radius:999px;
  background:#fff;
  color:#1d5f59;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
  cursor:pointer;
  line-height:0;
  box-shadow:0 1px 2px rgba(16,21,23,.08);
}

.mini-search button:hover{
  background:var(--c116-accent-soft);
}

.mini-search button svg,
.mini-search button .mini-search-svg{
  display:block;
  width:18px;
  height:18px;
  stroke:currentColor;
  color:var(--c116-accent);
  fill:none;
  stroke-linecap:round;
  stroke-linejoin:round;
  flex:0 0 auto;
}

.mini-search__icon{
  display:block;
  width:18px;
  height:18px;
  background-repeat:no-repeat;
  background-position:center;
  background-size:18px 18px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231d5f59' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='6.5'/%3E%3Cpath d='M16 16l5 5'/%3E%3C/svg%3E");
}

.mini-search__icon::before,
.mini-search__icon::after{
  content:none;
}

.mobile-menu-toggle{
  display:none;
  border:0;
  background:#fff;
  width:42px;height:42px;border-radius:50%;
  box-shadow:var(--c116-shadow-soft);
}

.site-main{min-height:50vh}

.section{
  padding:42px 0;
}

.hero{
  padding:40px 0 24px;
}

.hero-card{
  background:linear-gradient(135deg, var(--c116-warm-2), #f7f7f4 52%, var(--c116-accent-soft));
  border:1px solid rgba(24,33,40,.06);
  border-radius:34px;
  padding:clamp(22px, 4vw, 42px);
  box-shadow:var(--c116-shadow-soft);
}

.hero-grid{
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:28px;
  align-items:center;
}

.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:36px;
  padding:0 14px;
  border-radius:999px;
  background:rgba(255,255,255,.75);
  color:var(--c116-muted);
  font-size:.92rem;
  font-weight:600;
}

.hero h1,
.page-title{
  margin:16px 0 10px;
  font-size:clamp(2.1rem, 5vw, 4.2rem);
  line-height:.98;
  letter-spacing:-.04em;
}

.hero p{
  margin:0 0 18px;
  max-width:58ch;
  color:var(--c116-muted);
  font-size:1.05rem;
}

.button,
.wp-block-button__link,
input[type="submit"],
button[type="submit"]{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:52px;
  padding:0 24px;
  border-radius:999px;
  border:1px solid transparent;
  font-weight:700;
  text-decoration:none;
  transition:transform .18s ease, background-color .18s ease, color .18s ease, border-color .18s ease;
  cursor:pointer;
}

.button:hover,
.wp-block-button__link:hover{transform:translateY(-1px)}

.button--primary,
.wp-block-button.is-style-fill .wp-block-button__link,
.wp-block-button__link:not(.has-background){
  background:var(--c116-dark);
  color:#fff;
}

.button--secondary{
  background:rgba(255,255,255,.85);
  color:var(--c116-text);
  border-color:var(--c116-border);
}

.button--ghost{
  background:transparent;
  color:var(--c116-accent);
  border-color:var(--c116-accent);
}

.mini-search button,
.mini-search button[type="submit"]{
  position:absolute;
  right:6px;
  top:50%;
  transform:translateY(-50%);
  width:34px;
  height:34px;
  min-height:34px;
  min-width:34px;
  padding:0;
  gap:0;
  border:1px solid rgba(24,33,40,.12);
  border-radius:999px;
  background:#fff;
  color:#1d5f59;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 34px;
  line-height:0;
  box-shadow:0 1px 2px rgba(16,21,23,.08);
}

.mini-search button svg,
.mini-search button[type="submit"] svg,
.mini-search button .mini-search-svg{
  display:block;
  width:18px;
  height:18px;
  min-width:18px;
  min-height:18px;
  stroke:#1d5f59;
  color:#1d5f59;
  fill:none;
  flex:0 0 18px;
  pointer-events:none;
}

.site-header .mini-search button .mini-search-svg,
.site-header .mini-search button[type="submit"] .mini-search-svg{
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  stroke:#1d5f59 !important;
  color:#1d5f59 !important;
  fill:none !important;
}

.metrics{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}

.metric-pill,
.info-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:38px;
  padding:0 14px;
  border-radius:999px;
  background:var(--c116-surface);
  color:var(--c116-muted);
  border:1px solid rgba(24,33,40,.06);
}

.card-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:22px;
}

.category-card,
.product-card,
.consult-card,
.search-card,
.archive-card{
  display:flex;
  flex-direction:column;
  gap:14px;
  background:var(--c116-surface);
  border:1px solid rgba(24,33,40,.06);
  border-radius:28px;
  overflow:hidden;
  box-shadow:var(--c116-shadow-soft);
}

.category-card__image,
.product-card__image,
.archive-card__image{
  position:relative;
  aspect-ratio:1.25/1;
  background:linear-gradient(135deg, var(--c116-accent-soft), var(--c116-warm));
  overflow:hidden;
}

.category-card__image img,
.product-card__image img,
.archive-card__image img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.category-card__content,
.product-card__content,
.consult-card__content,
.search-card__content,
.archive-card__content{
  padding:0 20px 22px;
}

.card-tag{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:34px;
  padding:0 12px;
  border-radius:999px;
  background:var(--c116-accent-soft);
  color:#245550;
  font-size:.9rem;
  font-weight:700;
  width:max-content;
}

.card-title{
  margin:6px 0 0;
  font-size:1.58rem;
  line-height:1.1;
}

.card-title a{
  color:var(--c116-text);
  text-decoration:none;
}

.card-excerpt,
.card-meta{
  color:var(--c116-muted);
}

.card-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:auto;
}

.consult-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:18px;
}

.consult-card{
  min-height:260px;
  justify-content:space-between;
  padding:26px;
  background:linear-gradient(180deg, #f4f1ec 0%, #efece6 100%);
}

.consult-card__top{
  display:flex;
  flex-direction:column;
  gap:18px;
}

.consult-card h3{
  margin:0;
  font-size:clamp(1.8rem, 3vw, 3rem);
  line-height:1.02;
  letter-spacing:-.04em;
  max-width:10ch;
}

.consult-card--accent{
  background:linear-gradient(135deg, #eef6f5, #f7f7f4 55%, #ddecea);
}

.consult-card__icon{
  width:94px;height:94px;border-radius:50%;
  background:radial-gradient(circle at 40% 35%, #fff, var(--c116-accent-soft) 70%);
  box-shadow:inset 0 3px 10px rgba(255,255,255,.7), 0 12px 18px rgba(16,21,23,.08);
  display:grid;place-items:center;
  color:var(--c116-accent);
}

.consult-card__icon--svg svg{
  width:40px;
  height:40px;
  display:block;
  stroke:currentColor;
  fill:none;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.consult-card__icon--svg svg path:first-child:only-child{
  fill:none;
}

.card-actions--stack-mobile{
  flex-wrap:wrap;
}

.site-footer{
  margin-top:48px;
  padding:42px 0 24px;
  background:#161c1f;
  color:rgba(255,255,255,.82);
}

.footer-grid{
  display:grid;
  grid-template-columns:1.2fr .8fr .8fr;
  gap:22px;
}

.footer-card{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  border-radius:24px;
  padding:22px;
}

.site-footer h2,
.site-footer h3{
  margin:0 0 12px;
  color:#fff;
}

.site-footer a{
  color:rgba(255,255,255,.9);
  text-decoration:none;
}

.site-footer ul{
  list-style:none;padding:0;margin:0;display:grid;gap:10px;
}

.footer-bottom{
  margin-top:26px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.08);
  display:flex;
  gap:12px;
  justify-content:space-between;
  flex-wrap:wrap;
  color:rgba(255,255,255,.58);
  font-size:.94rem;
}

.archive-shell{
  display:grid;
  grid-template-columns:280px minmax(0,1fr);
  gap:28px;
  align-items:start;
}

.archive-sidebar{
  position:sticky;
  top:var(--c116-sticky);
  background:linear-gradient(180deg, #ffffff 0%, #f7f7f3 100%);
  border:1px solid rgba(24,33,40,.06);
  border-radius:30px;
  padding:20px;
  box-shadow:var(--c116-shadow-soft);
}

.archive-sidebar h2{
  margin:0 0 14px;
  font-size:1.1rem;
}

.archive-sidebar ul{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:10px;
}

.archive-sidebar li{margin:0}

.archive-sidebar a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:52px;
  padding:0 16px;
  border-radius:18px;
  color:var(--c116-text);
  text-decoration:none;
  border:1px solid rgba(24,33,40,.06);
  background:rgba(255,255,255,.82);
  transition:transform .18s ease, background-color .18s ease, border-color .18s ease;
}

.archive-sidebar a:hover,
.archive-sidebar a.is-active{
  background:var(--c116-accent-soft);
  border-color:rgba(45,110,105,.16);
  color:#214b47;
  transform:translateY(-1px);
}

.archive-sidebar__count{
  display:inline-grid;
  place-items:center;
  min-width:32px;
  height:32px;
  padding:0 10px;
  border-radius:999px;
  background:#fff;
  color:var(--c116-muted);
  font-size:.88rem;
}

.archive-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:22px;
}

.archive-head{
  margin-bottom:18px;
}

.archive-head h1{
  margin:0 0 8px;
  font-size:clamp(2rem,4vw,3.4rem);
  letter-spacing:-.04em;
  line-height:1;
}

.archive-head p{
  margin:0;
  color:var(--c116-muted);
  max-width:60ch;
}

.single-shell{
  padding:26px 0 16px;
}

.breadcrumbs{
  margin-bottom:16px;
  color:var(--c116-muted);
  font-size:.94rem;
}

.breadcrumbs a{
  color:var(--c116-muted);
  text-decoration:none;
}

.medicine-hero{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);
  gap:28px;
  align-items:stretch;
}

.medicine-media{
  background:linear-gradient(135deg, var(--c116-warm), #efece6);
  border-radius:32px;
  overflow:hidden;
  box-shadow:var(--c116-shadow-soft);
  min-height:420px;
  position:relative;
}

.medicine-media img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.medicine-summary{
  background:var(--c116-surface);
  border-radius:32px;
  border:1px solid rgba(24,33,40,.06);
  padding:26px;
  box-shadow:var(--c116-shadow-soft);
  display:flex;
  flex-direction:column;
}

.medicine-summary h1{
  margin:12px 0 10px;
  font-size:clamp(2rem, 4vw, 3.3rem);
  line-height:.98;
  letter-spacing:-.04em;
}

.medicine-summary__text{
  margin:0 0 18px;
  color:var(--c116-muted);
  font-size:1.04rem;
}

.medicine-meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:20px;
}

.info-row{
  display:grid;
  gap:8px;
  margin-top:8px;
}

.single-content-grid{
  margin-top:26px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 340px;
  gap:28px;
  align-items:start;
}

.entry-content,
.page-content{
  width:min(100%, var(--c116-content));
}

.entry-content > *:first-child,
.page-content > *:first-child{margin-top:0}

.entry-content h2,
.entry-content h3,
.entry-content h4,
.page-content h2,
.page-content h3,
.page-content h4{
  margin:1.6em 0 .58em;
  line-height:1.12;
  letter-spacing:-.03em;
}

.entry-content h2,
.page-content h2{font-size:clamp(1.65rem, 2vw, 2.2rem)}
.entry-content h3,
.page-content h3{font-size:clamp(1.36rem, 1.8vw, 1.75rem)}

.entry-content p,
.page-content p,
.entry-content ul,
.entry-content ol,
.page-content ul,
.page-content ol{
  margin:0 0 1.05em;
}

.entry-content strong,
.page-content strong{
  color:#0f161a;
  font-weight:800;
}

.entry-content em,
.page-content em{
  color:#315f5a;
  font-style:italic;
}

.entry-content ul,
.entry-content ol,
.page-content ul,
.page-content ol{
  padding-left:1.2em;
}

.entry-content li,
.page-content li{margin-bottom:.45em}

.entry-content blockquote,
.page-content blockquote{
  margin:1.6em 0;
  padding:22px 22px 22px 78px;
  background:linear-gradient(135deg, #f0f7f6, #f7f7f4);
  border:1px solid rgba(45,110,105,.12);
  border-radius:26px;
  position:relative;
  box-shadow:var(--c116-shadow-soft);
  font-style:normal;
}

.entry-content blockquote::before,
.page-content blockquote::before{
  content:"“";
  position:absolute;
  left:22px; top:14px;
  width:42px;height:42px;
  border-radius:50%;
  display:grid;place-items:center;
  background:var(--c116-accent);
  color:#fff;
  font-size:1.9rem;
  line-height:1;
}

.table-scroll{
  width:100%;
  max-width:100%;
  display:block;
  overflow-x:auto;
  overflow-y:hidden;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-x:contain;
  overscroll-behavior-y:none;
  touch-action:auto;
  margin:1.4em 0;
  padding-bottom:2px;
  border-radius:18px;
  border:1px solid rgba(24,33,40,.08);
  background:#fff;
  scrollbar-gutter:stable both-edges;
}


@media (min-width: 769px){
  .table-scroll{
    overscroll-behavior:auto;
    scrollbar-gutter:auto;
  }
}

.table-scroll::-webkit-scrollbar{
  height:10px;
}

.table-scroll::-webkit-scrollbar-thumb{
  background:rgba(29,95,89,.28);
  border-radius:999px;
}

.entry-content table,
.page-content table,
.accordion-item__content table{
  width:max-content;
  min-width:640px;
  border-collapse:separate;
  border-spacing:0;
  margin:0;
  background:#fff;
  border-right:1px solid rgba(24,33,40,.12);
  border-left:1px solid rgba(24,33,40,.12);
  border-top:1px solid rgba(24,33,40,.12);
  border-bottom:1px solid rgba(24,33,40,.12);
}

.entry-content th,
.entry-content td,
.page-content th,
.page-content td,
.accordion-item__content th,
.accordion-item__content td{
  padding:12px 14px;
  border-bottom:1px solid rgba(24,33,40,.12);
}

.entry-content th + th,
.entry-content td + td,
.page-content th + th,
.page-content td + td,
.accordion-item__content th + th,
.accordion-item__content td + td{
  border-left:1px solid rgba(24,33,40,.12);
}

.entry-content tr + tr th,
.entry-content tr + tr td,
.page-content tr + tr th,
.page-content tr + tr td,
.accordion-item__content tr + tr th,
.accordion-item__content tr + tr td{
  border-top:1px solid rgba(24,33,40,.12);
}

.entry-content th,
.page-content th,
.accordion-item__content th{
  text-align:left;
  background:#f6f7f4;
}

.sticky-affiliate{
  position:sticky;
  top:var(--c116-sticky);
  display:flex;
  flex-direction:column;
  gap:14px;
  background:linear-gradient(135deg, #f4f7f6, #ffffff 48%, #ece6db 100%);
  border:1px solid rgba(24,33,40,.06);
  border-radius:28px;
  padding:20px;
  box-shadow:var(--c116-shadow);
}

.sticky-affiliate h2{
  margin:0;
  font-size:1.7rem;
  line-height:1.04;
  letter-spacing:-.04em;
}

.sticky-affiliate p{
  margin:0;
  color:var(--c116-muted);
}

.sticky-affiliate > .button{width:100%}

.affiliate-banner{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:22px;
  align-items:center;
  margin:1.4em 0;
  padding:24px;
  border-radius:30px;
  background:linear-gradient(135deg, #ecf6f4, #f7f7f4 55%, #efe9df);
  border:1px solid rgba(24,33,40,.06);
  box-shadow:var(--c116-shadow-soft);
}

.affiliate-banner__eyebrow{
  display:inline-flex;
  min-height:32px;
  align-items:center;
  width:max-content;
  padding:0 12px;
  border-radius:999px;
  background:rgba(255,255,255,.8);
  font-size:.9rem;
  color:#2d6e69;
  font-weight:700;
}

.affiliate-banner h3{
  margin:10px 0 8px;
  font-size:clamp(1.55rem, 2.2vw, 2.35rem);
  line-height:1.03;
  letter-spacing:-.04em;
}

.affiliate-banner p{margin:0;color:var(--c116-muted)}
.affiliate-banner__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}
.affiliate-banner__media{
  width:min(240px, 35vw);
  aspect-ratio:1/1;
  border-radius:26px;
  overflow:hidden;
  background:radial-gradient(circle at 40% 35%, #ffffff, #dceeea 70%);
  box-shadow:inset 0 5px 10px rgba(255,255,255,.7);
}
.affiliate-banner__media img{width:100%;height:100%;object-fit:cover}
.affiliate-banner.is-style-dark{
  background:linear-gradient(135deg, #1b2427, #11181a);
  color:#fff;
}
.affiliate-banner.is-style-dark p{color:rgba(255,255,255,.72)}
.affiliate-banner.is-style-dark .affiliate-banner__eyebrow{background:rgba(255,255,255,.09); color:#d6efea}
.affiliate-banner.is-style-dark .button--secondary{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.16)}

.accordion{
  margin-top:26px;
  display:grid;
  gap:12px;
}

.accordion-item{
  background:var(--c116-surface);
  border:1px solid rgba(24,33,40,.08);
  border-radius:22px;
  overflow:hidden;
  box-shadow:var(--c116-shadow-soft);
}

.accordion-item summary{
  list-style:none;
  cursor:pointer;
  padding:18px 22px;
  font-weight:800;
  display:flex;
  align-items:center;
  justify-content:space-between;
}

.accordion-item summary::-webkit-details-marker{display:none}
.accordion-item summary::after{
  content:"+";
  font-size:1.4rem;
  color:var(--c116-accent);
}
.accordion-item[open] summary::after{content:"–"}

.accordion-item__content{
  padding:0 22px 20px;
  color:var(--c116-muted);
}
.accordion-item__heading{
  font-size:clamp(1.2rem, 1.5vw, 1.55rem);
  line-height:1.15;
  font-weight:800;
  color:var(--c116-text);
}

.doctor-card{
  display:grid;
  grid-template-columns:minmax(240px, .9fr) minmax(0, 1.1fr);
  gap:0;
  margin-top:26px;
  background:var(--c116-surface);
  border:1px solid rgba(24,33,40,.06);
  border-radius:30px;
  overflow:hidden;
  box-shadow:var(--c116-shadow-soft);
}

.doctor-card__media{
  min-height:320px;
  background:linear-gradient(135deg, #ddecea, #f2ebe2);
}

.doctor-card__media img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.doctor-card__placeholder{
  height:100%;
  display:grid;
  place-items:center;
  font-size:4rem;
  color:var(--c116-accent);
}

.doctor-card__content{
  padding:26px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.doctor-card__content h3{
  margin:14px 0 8px;
  font-size:clamp(1.9rem, 3vw, 3rem);
  line-height:1.02;
}

.doctor-card__role{
  color:var(--c116-muted);
  font-weight:700;
  margin-bottom:12px;
}

.search-hero-card{
  background:linear-gradient(135deg, #f2efe9, #f7f7f4 58%, #e6f0ee);
  border:1px solid rgba(24,33,40,.06);
  border-radius:30px;
  padding:22px;
  box-shadow:var(--c116-shadow-soft);
}

.search-page-form{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:18px;
}

.search-page-form input[type="search"]{
  flex:1 1 320px;
  min-height:52px;
  border-radius:999px;
  border:1px solid var(--c116-border);
  padding:0 18px;
  background:#fff;
}

.search-page-form button{
  min-width:120px;
}

.alternatives{
  margin-top:36px;
}

.section-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:16px;
}

.section-head h2{
  margin:0;
  font-size:clamp(1.6rem, 2vw, 2.2rem);
  line-height:1.05;
  letter-spacing:-.04em;
}

.slider-shell{
  position:relative;
}

.slider-track{
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:minmax(280px, 32%);
  gap:18px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  padding-bottom:8px;
  scrollbar-width:thin;
}

.slider-track > *{
  scroll-snap-align:start;
}

.slider-nav{
  display:flex;
  gap:10px;
}

.slider-button{
  width:44px;height:44px;border-radius:50%;
  border:1px solid var(--c116-border);
  background:#fff;
  cursor:pointer;
}

.bmi-calculator{
  background:var(--c116-surface);
  border-radius:32px;
  border:1px solid rgba(24,33,40,.06);
  padding:26px;
  box-shadow:var(--c116-shadow-soft);
  margin-bottom:26px;
}

.bmi-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:16px;
}

.bmi-field{
  display:grid;
  gap:8px;
}

.bmi-field label{font-weight:700}
.bmi-field input,
.bmi-field select{
  min-height:52px;
  border-radius:18px;
  border:1px solid var(--c116-border);
  background:#fff;
  padding:0 14px;
}

.bmi-result{
  margin-top:18px;
  padding:18px;
  border-radius:22px;
  background:linear-gradient(135deg, #eef6f5, #f6f5f1);
  border:1px solid rgba(24,33,40,.06);
  display:none;
}
.bmi-result.is-visible{display:block}
.bmi-result__value{
  font-size:2.2rem;
  font-weight:900;
  line-height:1;
  letter-spacing:-.05em;
  margin-bottom:6px;
}

.pagination{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:24px;
}

.pagination .page-numbers{
  min-width:46px;
  height:46px;
  border-radius:999px;
  display:grid;
  place-items:center;
  border:1px solid var(--c116-border);
  background:#fff;
  color:var(--c116-text);
  text-decoration:none;
}

.pagination .current{
  background:var(--c116-dark);
  color:#fff;
}

.search-header,
.error-shell{
  padding:34px 0 18px;
}

.error-card{
  background:linear-gradient(135deg,#eff6f4,#f7f7f4 60%,#ede6dc);
  border-radius:34px;
  padding:clamp(24px,4vw,42px);
  border:1px solid rgba(24,33,40,.06);
  box-shadow:var(--c116-shadow-soft);
}

.error-symbol{
  width:112px;height:112px;border-radius:28px;
  background:linear-gradient(135deg, #2d6e69, #6da9a1);
  color:#fff;
  display:grid;
  place-items:center;
  font-size:2.8rem;
  font-weight:900;
  margin-bottom:18px;
  box-shadow:var(--c116-shadow);
}

.not-found-title{
  margin:0 0 10px;
  font-size:clamp(2rem, 4vw, 3.5rem);
  letter-spacing:-.05em;
  line-height:1;
}

.post-meta-line{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  color:var(--c116-muted);
  font-size:.96rem;
  margin-bottom:12px;
}

.search-card__content{padding:22px}

.search-grid{
  display:grid;
  gap:18px;
}

.wp-caption,
.gallery{
  max-width:100%;
}

.alignwide{width:min(100%, var(--wp--style--global--wide-size));margin-inline:auto}
.alignfull{width:100vw;max-width:100vw;margin-left:50%;transform:translateX(-50%)}

@media (max-width: 1080px){
  .hero-grid,
  .medicine-hero,
  .single-content-grid,
  .archive-shell,
  .footer-grid{
    grid-template-columns:1fr;
  }

  .archive-sidebar,
  .sticky-affiliate{position:static}

  .card-grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }

  .slider-track{
    grid-auto-columns:minmax(260px, 55%);
  }
}

@media (max-width: 820px){
  body{font-size:17px}
  .site-header__inner{
    grid-template-columns:1fr auto;
  }
  .header-nav{
    display:none;
    grid-column:1 / -1;
    justify-self:stretch;
  }
  .header-nav.is-open{display:block}
  .header-nav ul{
    background:#fff;
    padding:12px;
    border-radius:24px;
    box-shadow:var(--c116-shadow-soft);
    flex-direction:column;
  }
  .mini-search input[type="search"]{
    width:min(58vw, 260px);
  }
  .mobile-menu-toggle{display:grid;place-items:center}
  .card-grid,
  .consult-grid,
  .archive-grid,
  .bmi-grid{
    grid-template-columns:1fr;
  }

  .card-actions--stack-mobile .button{
    width:100%;
  }
  .slider-track{
    grid-auto-columns:80%;
  }
  .affiliate-banner{
    grid-template-columns:1fr;
  }
  .affiliate-banner__media{
    width:100%;
    max-width:260px;
  }
  .doctor-card{
    grid-template-columns:1fr;
  }
  .search-page-form{
    flex-direction:column;
  }
  .table-scroll{
    margin-inline:0;
  }
}

@media (max-width: 768px){
  .entry-content table,
  .page-content table,
  .accordion-item__content table{
    min-width:640px;
  }

  .table-scroll{
    width:100%;
    max-width:100%;
    margin-inline:0;
    overscroll-behavior:contain;
  }

  .table-scroll table{
    min-width:640px;
  }
}

@media (max-width: 560px){
  body{font-size:18px}
  .c116-wrap{width:min(100vw - 20px, 100%)}
  .hero-card,
  .medicine-summary,
  .sticky-affiliate,
  .archive-sidebar,
  .bmi-calculator,
  .error-card{
    border-radius:24px;
    padding:18px;
  }
  .medicine-media{min-height:290px;border-radius:24px}
  .category-card__content,
  .product-card__content,
  .archive-card__content{
    padding:0 16px 18px;
  }
  .button,
  .wp-block-button__link{width:100%}
  .card-actions .button{flex:1}
  .metrics,
  .medicine-meta,
  .card-actions{gap:10px}
  .site-footer{padding-top:32px}
}


.footer-disclaimer{margin-top:18px;padding:16px 18px;border-radius:20px;background:rgba(255,255,255,.6);border:1px solid rgba(24,33,40,.08);color:var(--c116-muted);font-size:.96rem;line-height:1.6}
.footer-disclaimer p{margin:0}


/* v1.0.7c sticky restore: revert desktop sticky behavior from v1.0.1 */
.site-main{overflow:visible;}
.sticky-affiliate{align-self:start;}
