.asr-pd {
  --asr-ink: #242424;
  --asr-body: #374240;
  --asr-teal: #008a7d;
  --asr-teal-bright: #00a897;
  --asr-teal-dark: #183b38;
  --asr-teal-soft: #e7f4f1;
  --asr-sand: #f7f0e8;
  --asr-mist: #f4f8f8;
  --asr-line: #dce7e4;
  --asr-white: #fff;
  --asr-shadow: 0 14px 35px rgba(30, 67, 62, .11);
  color: var(--asr-body);
  font-size: 16px;
  line-height: 1.7;
}

.asr-pd *, .asr-pd *::before, .asr-pd *::after { box-sizing: border-box; }
.asr-pd a { text-decoration: none; }
.asr-pd h1, .asr-pd h2, .asr-pd h3 { color: var(--asr-ink); font-family: "Bodoni Moda", Georgia, serif; font-weight: 600; line-height: 1.15; }
.asr-pd h1, .asr-pd h2, .asr-pd h3, .asr-pd p { overflow-wrap: anywhere; }
.asr-pd-eyebrow { margin: 0 0 8px; color: var(--asr-teal); font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.asr-pd-eyebrow--light { color: #8ee5db; }

.asr-pd-hero,
.asr-pd-detail__hero {
  min-height: 500px;
  display: flex;
  align-items: center;
  overflow: hidden;
  background: linear-gradient(90deg, rgba(7,29,28,.92), rgba(7,29,28,.58) 58%, rgba(7,29,28,.2)), url("https://images.pexels.com/photos/3786157/pexels-photo-3786157.jpeg") center/cover;
}
.asr-pd-hero__content, .asr-pd-detail__hero > div { width: min(720px, 78%); padding: 64px; color: var(--asr-white); }
.asr-pd-hero h2, .asr-pd-detail__hero h2 { margin: 0; color: var(--asr-white); font-size: clamp(42px, 5vw, 68px); }
.asr-pd-hero p:not(.asr-pd-eyebrow), .asr-pd-detail__hero p:not(.asr-pd-eyebrow) { max-width: 650px; margin: 22px 0 0; color: rgba(255,255,255,.9); font-size: 17px; }
.asr-pd-detail__hero .asr-pd-pill { margin-bottom: 18px; }
.asr-pd-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 30px; }
.asr-pd-button { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; border-radius: 3px; padding: 12px 22px; font-weight: 700; transition: transform .2s ease, background .2s ease; }
.asr-pd-button:hover { transform: translateY(-2px); }
.asr-pd-button--primary { background: var(--asr-teal-bright); color: var(--asr-white) !important; }
.asr-pd-button--primary:hover { background: #008f81; }
.asr-pd-button--ghost { border: 1px solid rgba(255,255,255,.65); background: rgba(255,255,255,.08); color: var(--asr-white) !important; }
.asr-pd-button--light { background: var(--asr-white); color: var(--asr-teal-dark) !important; }

.asr-pd-disclosure { margin: 24px 0 0; display: grid; grid-template-columns: auto 1fr; gap: 18px; align-items: center; border-left: 4px solid var(--asr-teal); padding: 18px 22px; background: var(--asr-teal-soft); color: #3d5552; font-size: 14px; }
.asr-pd-disclosure strong { color: #075c52; }
.asr-pd-section { padding: 88px 0; }
.asr-pd-heading { max-width: 780px; }
.asr-pd-heading--centered { margin-inline: auto; text-align: center; }
.asr-pd-heading h2, .asr-pd-notice h2, .asr-pd-consultation h2 { margin: 0; font-size: clamp(34px, 4vw, 50px); }
.asr-pd-heading > p:last-child { color: #5c6564; }

.asr-pd-category-grid { margin-top: 44px; display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 28px; }
.asr-pd-category { position: relative; min-height: 390px; overflow: hidden; border: 1px solid var(--asr-line); border-radius: 14px; padding: 40px; box-shadow: var(--asr-shadow); }
.asr-pd-category--counterpart { background: linear-gradient(145deg, #f7fcfb, var(--asr-teal-soft)); }
.asr-pd-category--investigational { background: linear-gradient(145deg, #fff, var(--asr-sand)); }
.asr-pd-category h3 { max-width: 520px; margin: 88px 0 16px; font-size: 34px; }
.asr-pd-category p { color: #55615f; }
.asr-pd-pill { display: inline-flex; align-items: center; border-radius: 999px; padding: 7px 12px; font-size: 11px; font-weight: 700; letter-spacing: .035em; line-height: 1.25; text-transform: uppercase; }
.asr-pd-pill--counterpart { background: #ccefe9; color: #075c52; }
.asr-pd-pill--investigational { background: #f2dfca; color: #6c4828; }
.asr-pd-text-link { border: 0; padding: 0; background: transparent; color: var(--asr-teal) !important; cursor: pointer; font: inherit; font-weight: 700; }

.asr-pd-molecule { position: absolute; right: 38px; top: 36px; width: 94px; height: 94px; border: 1px solid rgba(43,76,72,.35); border-radius: 50%; opacity: .85; }
.asr-pd-molecule i { position: absolute; width: 10px; height: 10px; border-radius: 50%; background: #314b48; box-shadow: 0 0 0 4px rgba(255,255,255,.75); }
.asr-pd-molecule i:nth-child(1) { left: 42px; top: -5px; }
.asr-pd-molecule i:nth-child(2) { right: 2px; top: 20px; }
.asr-pd-molecule i:nth-child(3) { right: 2px; bottom: 20px; }
.asr-pd-molecule i:nth-child(4) { left: 42px; bottom: -5px; }
.asr-pd-molecule i:nth-child(5) { left: 2px; bottom: 20px; }
.asr-pd-molecule i:nth-child(6) { left: 2px; top: 20px; }
.asr-pd-molecule i:nth-child(7) { left: 42px; top: 42px; }

.asr-pd-catalog { margin-inline: calc(50% - 50vw); padding: 88px max(24px, calc((100vw - 1180px) / 2)); background: var(--asr-mist); }
.asr-pd-catalog__inner { max-width: 1180px; margin-inline: auto; }
.asr-pd-heading--catalog { max-width: none; display: grid; grid-template-columns: 1.35fr .75fr; gap: 56px; align-items: end; }
.asr-pd-availability { margin: 0; border-left: 3px solid var(--asr-teal); padding-left: 18px; color: #586564; }
.asr-pd-toolbar { margin-top: 34px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 18px; }
.asr-pd-search { flex: 1 1 260px; max-width: 380px; }
.asr-pd-search input { width: 100%; min-height: 46px; border: 1px solid #cfdcda; border-radius: 4px; padding: 10px 14px; background: var(--asr-white); outline: none; }
.asr-pd-search input:focus { border-color: var(--asr-teal); box-shadow: 0 0 0 3px rgba(0,138,125,.12); }
.asr-pd-filters { display: flex; flex-wrap: wrap; gap: 8px; }
.asr-pd-chip { min-height: 42px; border: 1px solid #c7d7d4; border-radius: 999px; padding: 8px 15px; background: var(--asr-white); color: #3f5350; cursor: pointer; }
.asr-pd-chip:hover, .asr-pd-chip.is-active { border-color: var(--asr-teal); background: var(--asr-teal); color: var(--asr-white); }
.asr-pd-count { margin: 22px 0 14px; color: #65716f; font-size: 14px; }
.asr-pd-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 20px; }
.asr-pd-card { min-height: 310px; display: flex; flex-direction: column; border: 1px solid #dbe6e4; border-radius: 10px; padding: 25px; background: var(--asr-white); box-shadow: 0 7px 22px rgba(32,74,68,.06); transition: transform .2s ease, box-shadow .2s ease; }
.asr-pd-card:hover { transform: translateY(-4px); box-shadow: var(--asr-shadow); }
.asr-pd-card h3 { margin: 18px 0 8px; font-size: 26px; }
.asr-pd-card > p { margin: 0 0 18px; color: #5e6967; font-size: 14px; }
.asr-pd-card__footer { margin-top: auto; padding-top: 16px; border-top: 1px solid #e7eeec; display: flex; align-items: center; justify-content: space-between; gap: 12px; color: #6a7472; font-size: 12px; }
.asr-pd-card__footer a { color: var(--asr-teal); font-weight: 700; text-align: right; }
.asr-pd-empty { grid-column: 1/-1; padding: 48px; border: 1px dashed #b8cbc7; background: var(--asr-white); text-align: center; }

.asr-pd-related-grid { margin-top: 36px; display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 24px; }
.asr-pd-related-card { border: 1px solid var(--asr-line); border-radius: 12px; padding: 32px; background: linear-gradient(145deg,#fff,#f7f3ee); box-shadow: 0 9px 25px rgba(32,74,68,.07); }
.asr-pd-related-card h3 { margin: 20px 0 8px; font-size: 30px; }
.asr-pd-related-card p { color: #5e6967; }
.asr-pd-notice { display: grid; grid-template-columns: .95fr 1.15fr; gap: 60px; align-items: center; border: 1px solid #e6d5c2; border-radius: 12px; padding: 44px; background: #fff9f3; }
.asr-pd-notice h2 { font-size: 36px; }
.asr-pd-notice > p { margin: 0; color: #5e5a56; }
.asr-pd-consultation { margin: 84px calc(50% - 50vw) 0; min-height: 360px; display: grid; grid-template-columns: 1fr auto; gap: 70px; align-items: center; padding: 60px max(24px, calc((100vw - 1180px) / 2)); background: var(--asr-teal-dark); color: var(--asr-white); }
.asr-pd-consultation h2 { max-width: 780px; color: var(--asr-white); }
.asr-pd-consultation p:not(.asr-pd-eyebrow) { max-width: 760px; color: rgba(255,255,255,.78); }
.asr-pd-sources { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; padding: 24px 15px; color: #65716f; font-size: 12px; }
.asr-pd-sources a { color: var(--asr-teal); }

.asr-pd-detail__hero { min-height: 410px; }
.asr-pd-detail__grid { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(280px,.6fr); gap: 52px; padding: 72px 0; }
.asr-pd-detail__main h2 { margin: 0 0 22px; font-size: clamp(34px,4vw,48px); }
.asr-pd-detail__main h3 { margin: 42px 0 12px; font-size: 28px; }
.asr-pd-detail__main p { color: #53605e; }
.asr-pd-source-box, .asr-pd-checklist, .asr-pd-reviewer { border: 1px solid var(--asr-line); border-radius: 12px; padding: 30px; background: var(--asr-mist); }
.asr-pd-source-box { margin-top: 42px; display: grid; gap: 12px; }
.asr-pd-source-box a { color: var(--asr-teal); font-weight: 700; }
.asr-pd-detail__aside { display: grid; align-content: start; gap: 20px; }
.asr-pd-checklist { position: sticky; top: 28px; background: linear-gradient(145deg,#f7fcfb,var(--asr-teal-soft)); }
.asr-pd-checklist h2 { margin: 0; font-size: 31px; }
.asr-pd-checklist ul { margin: 22px 0; padding-left: 20px; }
.asr-pd-checklist li { margin: 9px 0; }
.asr-pd-reviewer { background: #fff9f3; }
.asr-pd-reviewer p:last-child { margin-bottom: 0; }
.asr-pd-back { border-top: 1px solid var(--asr-line); padding: 28px 0 58px; }
.asr-pd-back a { color: var(--asr-teal); font-weight: 700; }

@media (max-width: 1024px) {
  .asr-pd-category-grid, .asr-pd-heading--catalog, .asr-pd-notice, .asr-pd-detail__grid { grid-template-columns: 1fr; }
  .asr-pd-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .asr-pd-disclosure { grid-template-columns: 1fr; gap: 6px; }
  .asr-pd-detail__aside { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .asr-pd-checklist { position: static; }
}

@media (max-width: 680px) {
  .asr-pd-hero, .asr-pd-detail__hero { min-height: 540px; background-position: 62% center; }
  .asr-pd-hero__content, .asr-pd-detail__hero > div { width: 100%; padding: 42px 24px; }
  .asr-pd-hero h2, .asr-pd-detail__hero h2 { font-size: 41px; }
  .asr-pd-section, .asr-pd-catalog { padding-top: 64px; padding-bottom: 64px; }
  .asr-pd-category { min-height: 410px; padding: 28px; }
  .asr-pd-category h3 { margin-top: 116px; font-size: 30px; }
  .asr-pd-grid, .asr-pd-related-grid, .asr-pd-detail__aside { grid-template-columns: 1fr; }
  .asr-pd-filters { width: 100%; flex-wrap: nowrap; overflow-x: auto; padding-bottom: 5px; }
  .asr-pd-chip { flex: 0 0 auto; }
  .asr-pd-notice { gap: 22px; padding: 30px 24px; }
  .asr-pd-consultation { min-height: 470px; grid-template-columns: 1fr; gap: 24px; align-content: center; }
  .asr-pd-card__footer { align-items: flex-start; flex-direction: column; }
  .asr-pd-card__footer a { text-align: left; }
}

@media (prefers-reduced-motion: reduce) {
  .asr-pd *, .asr-pd *::before, .asr-pd *::after { scroll-behavior: auto !important; transition: none !important; }
}

