/* ==========================================================================
   Treatments/Forms Resource Pages Fix
   Scoped to treatments-procedures.html and patient-forms.html.
   ========================================================================== */

.resource-doc-page { background:#fff; }

.resource-doc-hero {
  padding: 58px 0 46px;
  background: radial-gradient(circle at 84% 18%, rgba(169, 213, 238, 0.24), transparent 30rem), linear-gradient(180deg, #ffffff 0%, #f7fbfd 100%);
}

.resource-doc-hero-grid {
  display:grid;
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
  gap:clamp(44px,6vw,82px);
  align-items:center;
}

.resource-doc-hero h1 {
  font-size:clamp(48px,5.2vw,82px);
  line-height:.92;
  margin-bottom:var(--space-5);
}

.resource-doc-hero h1 em { color:var(--aim-olive); }

.resource-doc-hero .body-copy {
  max-width:58ch;
  font-size:17.5px;
  line-height:1.78;
}

.resource-doc-hero-image {
  position:relative;
  min-height:380px;
  overflow:hidden;
  border-radius:var(--radius-image);
  border:1px solid rgba(79,163,217,.14);
  background:var(--aim-sage);
  box-shadow:var(--shadow-hero);
}

.resource-doc-hero-image img {
  width:100%;
  height:100%;
  min-height:380px;
  object-fit:cover;
  object-position:center top;
  display:block;
}

.resource-doc-callout {
  position:absolute;
  right:26px;
  bottom:26px;
  max-width:250px;
  padding:24px;
  border-radius:22px;
  background:rgba(255,255,255,.92);
  box-shadow:0 16px 42px rgba(4,34,73,.11);
  backdrop-filter:blur(10px);
}

.resource-doc-callout p {
  margin:0;
  color:var(--aim-blue);
  font-family:var(--font-heading);
  font-size:23px;
  line-height:1.12;
}

.resource-doc-section { padding:var(--space-9) 0; background:#fff; }

.resource-doc-layout {
  display:grid;
  grid-template-columns:minmax(0,1.65fr) minmax(300px,.9fr);
  gap:clamp(34px,5vw,72px);
  align-items:start;
}

.resource-doc-main h2 {
  font-size:clamp(36px,3.4vw,56px);
  line-height:1;
  margin-bottom:var(--space-5);
}

.resource-doc-intro {
  max-width:68ch;
  color:var(--aim-text-soft);
  font-size:17px;
  line-height:1.78;
  margin-bottom:var(--space-6);
}

.resource-doc-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--space-4);
}

.resource-doc-card {
  min-height:210px;
  padding:28px 30px;
  border:1px solid rgba(79,163,217,.16);
  border-radius:24px;
  background:radial-gradient(circle at 96% 96%, rgba(234,245,251,.76), transparent 6rem),#fff;
  box-shadow:0 12px 28px rgba(4,34,73,.055);
}

.resource-doc-icon {
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--aim-sky-soft);
  color:var(--aim-sky-700);
  border:1px solid rgba(79,163,217,.22);
  margin-bottom:var(--space-4);
}

.resource-doc-card h3 {
  margin:0 0 10px;
  color:var(--aim-blue);
  font-family:var(--font-body);
  font-size:18px;
  line-height:1.25;
  font-weight:850;
}

.resource-doc-card p {
  margin:0;
  color:var(--aim-text-soft);
  font-size:15.5px;
  line-height:1.62;
}

.resource-doc-list { display:grid; gap:var(--space-4); }

.resource-doc-row {
  display:grid;
  grid-template-columns:54px 1fr auto;
  gap:var(--space-4);
  align-items:center;
  padding:var(--space-5);
  border:1px solid rgba(79,163,217,.16);
  border-radius:24px;
  background:#fff;
  box-shadow:0 12px 28px rgba(4,34,73,.055);
}

.resource-doc-row-icon {
  width:50px;
  height:50px;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:var(--aim-sky-soft);
  color:var(--aim-sky-700);
  border:1px solid rgba(79,163,217,.22);
}

.resource-doc-row h3 {
  margin:0 0 4px;
  color:var(--aim-blue);
  font-family:var(--font-body);
  font-size:17px;
  line-height:1.25;
  font-weight:850;
}

.resource-doc-row p {
  margin:0;
  color:var(--aim-text-soft);
  font-size:15px;
  line-height:1.55;
}

.resource-doc-side-card {
  position:sticky;
  top:120px;
  padding:var(--space-6);
  border:1px solid rgba(79,163,217,.16);
  border-radius:26px;
  background:radial-gradient(circle at 96% 96%, rgba(234,245,251,.78), transparent 7rem),#fff;
  box-shadow:var(--shadow-soft);
}

.resource-doc-side-card h3 {
  margin:0 0 var(--space-4);
  color:var(--aim-blue);
  font-size:clamp(24px,2vw,32px);
  line-height:1.05;
}

.resource-doc-side-card p {
  color:var(--aim-text-soft);
  font-size:15.5px;
  line-height:1.68;
}

.resource-doc-side-card .btn {
  width:100%;
  justify-content:center;
  margin-top:var(--space-4);
}

.resource-doc-note {
  margin-top:var(--space-6);
  padding:var(--space-5);
  border:1px solid rgba(138,51,36,.18);
  border-radius:20px;
  background:#fff8f5;
  color:var(--aim-text-soft);
  font-size:14.5px;
  line-height:1.62;
}

@media(max-width:980px){
  .resource-doc-hero-grid,.resource-doc-layout{grid-template-columns:1fr;}
  .resource-doc-side-card{position:static;}
}

@media(max-width:720px){
  .resource-doc-grid{grid-template-columns:1fr;}
  .resource-doc-row{grid-template-columns:50px 1fr;}
  .resource-doc-row .btn{grid-column:1/-1;width:100%;justify-content:center;}
  .resource-doc-hero-image,.resource-doc-hero-image img{min-height:310px;}
}


/* Final image cleanup: no text box overlay on treatments/procedures hero image. */
.resource-doc-page .resource-doc-hero-image .resource-doc-callout {
  display: none !important;
}
