/* Inner page design. Shared nav, buttons, footer, dock and finder live in base.css. */
.inner-main { background: #fafaff; min-height: 70vh; display: flow-root; }
.inner-hero { position: relative; overflow: hidden; padding: clamp(54px, 8vw, 112px) var(--gutter) clamp(60px, 8vw, 112px); background: radial-gradient(55% 80% at 82% 45%, rgba(139,153,250,.26), rgba(139,153,250,0) 72%), linear-gradient(180deg, #fdfdff 0%, #f1f3ff 100%); border-bottom: 1px solid rgba(101,120,238,.16); }
.inner-grid { display: grid; grid-template-columns: minmax(0, 1.18fr) minmax(300px, .82fr); gap: clamp(36px, 7vw, 96px); align-items: center; }
.breadcrumb { display: flex; flex-wrap: wrap; gap: 7px; align-items: center; margin-bottom: 24px; font-size: 13.5px; color: var(--soft); }
.breadcrumb a { color: var(--accent-deep); text-decoration: none; }
.breadcrumb a:hover { text-decoration: underline; text-underline-offset: 3px; }
.eyebrow, .section-kicker, .aside-kicker { display: inline-flex; align-items: center; gap: 8px; font-size: 12.5px; font-weight: 600; }
.eyebrow { margin-bottom: 18px; padding: 7px 12px; border-radius: 999px; background: #eceeff; color: var(--accent-deep); }
.section-kicker, .aside-kicker { margin-bottom: 12px; color: var(--accent-deep); }
.inner-hero h1 { max-width: 10em; font-family: "Inter Tight", sans-serif; font-weight: 500; font-size: clamp(48px, 6.1vw, 90px); line-height: .98; letter-spacing: -.048em; text-wrap: balance; }
.inner-hero .lead { margin-top: 24px; max-width: 37em; font-size: clamp(17px, 1.5vw, 20px); line-height: 1.58; color: var(--soft); }
.inner-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.inner-actions .btn { height: 50px; }
.service-aside { position: relative; padding: clamp(28px, 3.4vw, 42px); border-radius: 30px; background: rgba(255,255,255,.9); box-shadow: 0 0 0 1px rgba(101,120,238,.13), 0 18px 48px rgba(70,85,200,.12); }
.service-aside::before { content: ""; position: absolute; width: 82px; height: 82px; border-radius: 50%; right: 24px; top: 22px; background: radial-gradient(circle, rgba(127,144,248,.2), rgba(127,144,248,0) 72%); pointer-events: none; }
.service-aside h2 { position: relative; max-width: 12em; font-family: "Inter Tight", sans-serif; font-weight: 500; font-size: clamp(26px, 2.5vw, 36px); line-height: 1.08; letter-spacing: -.03em; }
.service-aside > p { margin-top: 12px; color: var(--soft); line-height: 1.58; }
.treatment-doctor { margin: 0 0 24px; height: clamp(170px, 17vw, 220px); border-radius: 20px; overflow: hidden; background: #eef0ff; }
.treatment-doctor img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 20%; }
.treatment-doctor-group { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 0 0 24px; }
.treatment-doctor-group .treatment-doctor { height: clamp(120px, 11vw, 160px); margin: 0; border: 1px solid rgba(255,255,255,.28); }
.aside-checks { list-style: none; padding: 0; margin: 24px 0 0; display: grid; gap: 13px; }
.aside-checks li { display: grid; grid-template-columns: 26px 1fr; gap: 11px; align-items: start; color: #2d2e3b; line-height: 1.45; }
.aside-checks i { width: 26px; height: 26px; border-radius: 50%; display: grid; place-items: center; font-style: normal; font-size: 12px; color: #fff; background: var(--accent); }
.aside-link { display: inline-flex; align-items: center; gap: 8px; margin-top: 24px; color: var(--accent-deep); font-size: 14.5px; font-weight: 600; text-decoration: none; }
.service-aside-accent { background: linear-gradient(150deg, #6377ed, #8998fb); color: #fff; box-shadow: 0 18px 48px rgba(70,85,200,.22); }
.service-aside-accent .aside-kicker, .service-aside-accent p { color: rgba(255,255,255,.86); }
.service-aside-accent .btn { margin-top: 24px; background: #fff; color: var(--accent-deep); }
.inner-sec { padding: clamp(60px, 7vw, 98px) var(--gutter); background: #fafaff; }
.inner-sec + .inner-sec { padding-top: 0; }
.inner-sec-soft { padding-top: clamp(52px, 6vw, 82px) !important; background: linear-gradient(180deg, #fafaff, #f2f4ff); border-top: 1px solid rgba(101,120,238,.1); border-bottom: 1px solid rgba(101,120,238,.1); }
.inner-two { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(32px, 7vw, 96px); align-items: start; }
.inner-two h2, .inner-cta h2, .browser-head h2 { font-family: "Inter Tight", sans-serif; font-weight: 500; font-size: clamp(32px, 4vw, 54px); line-height: 1.04; letter-spacing: -.04em; text-wrap: balance; }
.prose { max-width: 45em; color: var(--soft); font-size: 16.5px; line-height: 1.7; }
.prose p + p { margin-top: 16px; }
.signal-list { list-style: none; padding: 0; margin: 0; border-top: 1px solid rgba(101,120,238,.2); }
.signal-list li { position: relative; padding: 18px 42px 18px 0; border-bottom: 1px solid rgba(101,120,238,.2); font-size: 16.5px; line-height: 1.5; }
.signal-list li::after { content: "↗"; position: absolute; right: 4px; top: 18px; color: #a3a9c5; }
.priority-box { position: relative; margin-top: 30px; padding: 3px 0 3px 22px; color: var(--soft); line-height: 1.62; border-left: 2px solid rgba(101,120,238,.72); }
.priority-box strong { color: var(--ink); font-weight: 600; }
.process-strip { margin: clamp(34px, 4.5vw, 62px) var(--gutter) clamp(60px, 7vw, 96px); display: grid; grid-template-columns: repeat(3, 1fr); border-radius: 28px; overflow: hidden; background: #fff; box-shadow: 0 0 0 1px rgba(101,120,238,.13); }
.process-strip article { padding: clamp(26px, 3vw, 38px); }
.process-strip article + article { border-left: 1px solid rgba(101,120,238,.14); }
.process-strip span { display: block; margin-bottom: 22px; color: #a1a7c3; font-family: "Inter Tight", sans-serif; font-size: 14px; }
.process-strip h3 { font-family: "Inter Tight", sans-serif; font-size: 21px; font-weight: 500; letter-spacing: -.02em; }
.process-strip p { margin-top: 8px; color: var(--soft); font-size: 14.5px; line-height: 1.55; }
.inner-cta { margin: 0 var(--gutter) clamp(56px, 7vw, 96px); padding: clamp(36px, 5vw, 66px); border-radius: 32px; background: linear-gradient(135deg, #5468e6, #8292f8); color: #fff; display: grid; grid-template-columns: 1fr auto; gap: 28px; align-items: center; }
.inner-cta h2 { max-width: 12em; }
.inner-cta p { margin-top: 10px; max-width: 40em; color: rgba(255,255,255,.88); font-size: 16px; line-height: 1.55; }
.inner-cta .btn { background: #fff; color: var(--accent-deep); height: 50px; white-space: nowrap; }
.inner-cta .btn:hover { background: #f4f5ff; }
.page-treatment .nav-treatments { color: var(--accent-deep); }
.page-treatment .nav-treatments::after { transform: scaleX(1); }

/* Treatments index */
.treatment-index-hero h1 { max-width: 9em; }
.treatment-browser { padding: clamp(64px, 8vw, 112px) var(--gutter); }
.browser-head { display: grid; grid-template-columns: 1fr minmax(280px, 420px); gap: 36px; align-items: end; margin-bottom: clamp(34px, 5vw, 58px); }
.browser-head p { color: var(--soft); font-size: 16px; line-height: 1.6; }
.treatment-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(14px, 1.6vw, 22px); }
.treatment-tile { min-height: 290px; display: flex; flex-direction: column; padding: clamp(24px, 2.6vw, 34px); border-radius: 28px; background: #fff; box-shadow: 0 0 0 1px rgba(101,120,238,.13), 0 12px 36px rgba(70,85,200,.07); transition: transform .22s, box-shadow .22s; }
.treatment-tile:hover { transform: translateY(-4px); box-shadow: 0 0 0 1px rgba(101,120,238,.22), 0 22px 48px rgba(70,85,200,.13); }
.tile-top { display: flex; justify-content: space-between; gap: 14px; align-items: center; color: #9ba1ba; font-size: 12px; }
.tile-category { padding: 6px 10px; border-radius: 999px; background: #f2f3ff; color: var(--accent-deep); }
.treatment-tile h2 { margin-top: 38px; font-family: "Inter Tight", sans-serif; font-size: clamp(25px, 2vw, 31px); font-weight: 500; letter-spacing: -.03em; line-height: 1.05; }
.treatment-tile h2 a { color: var(--ink); text-decoration: none; }
.treatment-tile p { margin-top: 12px; color: var(--soft); font-size: 15px; line-height: 1.55; }
.tile-actions { margin-top: auto; padding-top: 28px; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.tile-more, .tile-book { font-size: 14px; font-weight: 600; text-decoration: none; }
.tile-more { color: var(--accent-deep); }
.tile-book { padding: 8px 13px; border-radius: 999px; color: var(--ink); background: #f1f2ff; }
.tile-book:hover { background: #e6e9ff; color: var(--accent-deep); }

@media (max-width: 1000px) { .treatment-grid { grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (max-width: 900px) {
  .inner-grid, .inner-two, .browser-head { grid-template-columns: 1fr; }
  .inner-hero h1 { max-width: 11em; }
  .service-aside { max-width: 680px; }
  .inner-cta { grid-template-columns: 1fr; }
  .process-strip { grid-template-columns: 1fr; }
  .process-strip article + article { border-left: 0; border-top: 1px solid rgba(101,120,238,.14); }
}
@media (max-width: 620px) {
  .treatment-grid { grid-template-columns: 1fr; }
  .treatment-tile { min-height: 250px; }
}
@media (max-width: 560px) {
  .inner-hero { padding-top: 40px; }
  .inner-actions, .inner-actions .btn, .inner-cta .btn { width: 100%; justify-content: center; }
  .inner-cta { border-radius: 26px; }
}
