/* Shared baseline for disease and treatment detail pages. */
.treatment-page {
  --treat-navy: #0d4b68;
  --treat-blue: #0c91c8;
  --treat-sky: #dff3fa;
  --treat-pale: #f2fafc;
  --treat-line: #c7e3ee;
  --treat-text: #355b6d;
  --treat-orange: #df8c2f;
  color: var(--treat-text);
  background: #fff;
}

/* Cataract surgery page: independent navigation and reading layout. */
.cataract-surgery-page {
  width:min(1280px, calc(100% - 64px)); margin:0 auto; display:grid;
  grid-template-columns:minmax(0,1fr) 270px; column-gap:42px; align-items:start;
}
.cataract-surgery-page > .treat-hero { grid-column:1 / -1; }
.cataract-surgery-page > .treat-section,
.cataract-surgery-page > .treat-final,
.cataract-surgery-page > .sub-section { grid-column:1; min-width:0; }
.cataract-surgery-page > .treat-section .treat-shell,
.cataract-surgery-page > .treat-final .treat-shell { width:100%; }
.cataract-surgery-page > .sub-section .sub-container { width:100%; }

.cataract-surgery-page > .surgery-content-stage__body {
  grid-column:1 / -1; grid-row:2; min-width:0; position:relative; z-index:2; margin-top:-76px;
  overflow:hidden; padding-top:10px; border-radius:38px 38px 0 0; background:#fff;
  box-shadow:0 -1px 0 rgba(194,227,238,.85), 0 18px 40px rgba(17,76,103,.08);
}
.cataract-surgery-page > .surgery-content-stage__body > .treat-section,
.cataract-surgery-page > .surgery-content-stage__body > .treat-final,
.cataract-surgery-page > .surgery-content-stage__body > .sub-section { min-width:0; }
.cataract-surgery-page > .surgery-content-stage__body > .treat-section .treat-shell,
.cataract-surgery-page > .surgery-content-stage__body > .treat-final .treat-shell { width:min(900px,calc(100% - 390px)); margin-right:auto; margin-left:52px; }
.cataract-surgery-page > .surgery-content-stage__body > .sub-section .sub-container { width:min(900px,calc(100% - 390px)); margin-right:auto; margin-left:52px; }

.cataract-surgery-page .treat-hero--surgery {
  position:sticky; z-index:0; top:104px; align-self:start; height:min(480px,calc(100vh - 122px)); isolation:isolate; padding:26px 0 78px; background:transparent;
}
.cataract-surgery-page .treat-hero--surgery::before {
  content:""; position:absolute; z-index:0; top:0; bottom:0; left:50%; width:100vw;
  background:linear-gradient(112deg,#075f82 0%,#087da9 58%,#1596ba 100%); transform:translateX(-50%);
}
.cataract-surgery-page .treat-hero--surgery .treat-hero__stage {
  z-index:1; min-height:316px; padding:48px 54px; overflow:hidden; border-radius:22px; background:transparent;
  box-shadow:none; isolation:isolate;
}
.cataract-surgery-page .treat-hero--surgery .treat-hero__stage::before { content:""; position:absolute; z-index:0; top:35px; right:0; bottom:35px; width:34%; border-left:1px solid rgba(255,255,255,.18); background:linear-gradient(90deg,rgba(255,255,255,.03),rgba(255,255,255,.09)); }
.cataract-surgery-page .treat-hero--surgery .treat-hero__stage::after { content:""; position:absolute; z-index:0; right:11%; bottom:-76px; width:230px; height:230px; border:1px solid rgba(255,255,255,.2); border-radius:50%; }
.cataract-surgery-page .surgery-hero__arc { display:none; }
.cataract-surgery-page .surgery-hero__brand { position:absolute; z-index:1; top:42px; right:54px; width:164px; padding:0 0 10px; border-bottom:1px solid rgba(255,255,255,.45); }
.cataract-surgery-page .surgery-hero__brand img { display:block; width:100%; height:auto; }
.cataract-surgery-page .treat-hero--surgery .treat-breadcrumb { position:relative; z-index:1; margin:0 0 22px; color:rgba(255,255,255,.88); font-size:.75rem; }
.cataract-surgery-page .treat-hero--surgery .treat-breadcrumb a { color:inherit; }
.cataract-surgery-page .surgery-hero__category { position:relative; z-index:1; margin:0 0 12px; color:#bfeefa; font-size:.64rem; font-weight:900; letter-spacing:.2em; }
.cataract-surgery-page .treat-hero--surgery h1 { position:relative; z-index:1; max-width:680px; color:#fff; font-size:clamp(2.2rem,4.2vw,3.35rem); letter-spacing:.04em; }
.cataract-surgery-page .treat-hero--surgery .treat-hero__lead { position:relative; z-index:1; margin:16px 0 0; color:#fff; font-size:1.03rem; font-weight:750; line-height:1.7; }
.cataract-surgery-page .treat-chapter-no { display:inline-flex; align-items:center; min-height:25px; margin:0 0 8px; padding:3px 9px; border-radius:99px; color:#087da9; background:#e4f4fa; font-size:.69rem; font-weight:900; letter-spacing:.12em; line-height:1; }
.cataract-surgery-page .treat-section--chapter { scroll-margin-top:120px; }
.cataract-surgery-page .treat-section--chapter .treat-head::before { display:none; }
.cataract-surgery-page .treat-section--chapter .treat-head h2 { position:relative; padding-left:15px; }
.cataract-surgery-page .treat-section--chapter .treat-head h2::before { content:""; position:absolute; top:.2em; bottom:.2em; left:0; width:3px; border-radius:9px; background:#21a8da; }
.cataract-surgery-page .treat-surgery-photo { margin:24px 0 0; overflow:hidden; border-radius:16px; background:#103e57; }
.cataract-surgery-page .treat-surgery-photo img { width:100%; height:260px; display:block; object-fit:cover; object-position:46% 36%; transform:scale(1.28); transform-origin:46% 36%; }
.cataract-surgery-page .treat-surgery-photo figcaption { padding:9px 13px; color:#fff; background:#13536f; font-size:.72rem; line-height:1.6; }

.surgery-sidebar { grid-column:2; grid-row:2; position:sticky; z-index:3; top:112px; align-self:start; display:grid; gap:22px; margin-top:-36px; }
.surgery-sidebar h2 { margin:0; color:var(--treat-navy); font-size:.95rem; }
.surgery-sidebar__toc { padding:19px 18px 15px; border-top:3px solid var(--treat-blue); background:#fff; box-shadow:0 7px 22px rgba(24,82,108,.08); }
.surgery-page-toc { display:grid; margin-top:12px; }
.surgery-page-toc a { position:relative; min-height:39px; display:grid; grid-template-columns:34px 1fr; gap:6px; align-items:center; color:#416777; border-top:1px solid #dcebf0; font-size:.78rem; font-weight:700; text-decoration:none; }
.surgery-page-toc a:last-child { border-bottom:1px solid #dcebf0; }
.surgery-page-toc b { color:#7394a1; font-size:.64rem; letter-spacing:.08em; }
.surgery-page-toc a.is-child { padding-left:14px; }
.surgery-page-toc a.is-child::before { content:""; position:absolute; top:-1px; bottom:-1px; left:4px; width:1px; background:#b9dce7; }
.surgery-page-toc a.is-child::after { content:""; position:absolute; top:50%; left:4px; width:7px; height:1px; background:#b9dce7; }
.surgery-page-toc a:hover,.surgery-page-toc a:focus-visible,.surgery-page-toc a.is-current { color:#087da9; font-weight:900; outline:none; }
.surgery-page-toc a:focus-visible { outline:2px solid #087da9; outline-offset:2px; }
.surgery-page-toc a.is-current span::after { content:"現在地"; margin-left:5px; color:#087da9; font-size:.57rem; letter-spacing:.04em; }
.surgery-sidebar__care { padding:18px; background:#eaf7fb; }
.surgery-sidebar__care h2 { margin-bottom:10px; }
.surgery-sidebar__care a { min-height:35px; display:flex; align-items:center; justify-content:space-between; gap:8px; color:#315d70; border-top:1px solid rgba(120,188,209,.42); font-size:.74rem; font-weight:700; text-decoration:none; }
.surgery-sidebar__care a:last-child { border-bottom:1px solid rgba(120,188,209,.42); }
.surgery-sidebar__care a span { color:#087da9; }
.surgery-sidebar__care a:hover,.surgery-sidebar__care a:focus-visible { color:#087da9; text-decoration:underline; outline:none; }
.surgery-mobile-nav { display:none; }

@media (max-width: 900px) {
  .cataract-surgery-page { width:100%; display:block; }
  .cataract-surgery-page > .surgery-content-stage__body { margin-top:-14px; padding-top:0; border-radius:24px 24px 0 0; box-shadow:0 -1px 0 rgba(194,227,238,.85); }
  .cataract-surgery-page > .surgery-content-stage__body > .treat-section .treat-shell,
  .cataract-surgery-page > .surgery-content-stage__body > .treat-final .treat-shell { width:min(100% - 32px,720px); }
  .cataract-surgery-page > .surgery-content-stage__body > .sub-section .sub-container { width:min(100% - 32px,720px); }
  .cataract-surgery-page .treat-hero--surgery { position:relative; top:auto; height:auto; padding:18px 0 38px; }
  .cataract-surgery-page > .treat-section .treat-shell,
  .cataract-surgery-page > .treat-final .treat-shell { width:min(100% - 32px,720px); }
  .cataract-surgery-page > .sub-section .sub-container { width:min(100% - 32px,720px); }
  .cataract-surgery-page .treat-hero--surgery .treat-hero__stage { width:min(100% - 32px,720px); }
  .surgery-sidebar { display:none; }
  .surgery-mobile-nav { position:relative; z-index:3; display:grid; gap:8px; margin-top:-20px; padding:0 0 24px; }
  .surgery-mobile-disclosure { overflow:hidden; border:1px solid #b8deeb; border-radius:12px; background:#fff; box-shadow:0 6px 16px rgba(17,76,103,.06); }
  .surgery-mobile-disclosure summary { min-height:54px; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:9px 13px 9px 15px; color:var(--treat-navy); cursor:pointer; list-style:none; }
  .surgery-mobile-disclosure summary::-webkit-details-marker { display:none; }
  .surgery-mobile-disclosure summary > span { display:grid; gap:2px; font-size:.88rem; font-weight:900; }
  .surgery-mobile-disclosure summary small { color:#168cb9; font-size:.51rem; font-weight:900; letter-spacing:.15em; }
  .surgery-mobile-disclosure summary em { display:flex; align-items:center; gap:7px; color:#5b8191; font-size:.64rem; font-style:normal; font-weight:750; white-space:nowrap; }
  .surgery-mobile-disclosure summary em::after { content:"＋"; width:21px; height:21px; display:grid; place-items:center; border-radius:50%; color:#fff; background:#0c91c8; font-size:.84rem; line-height:1; transition:transform .2s ease; }
  .surgery-mobile-disclosure[open] summary { border-bottom:1px solid #d6eaf1; background:#f6fcfe; }
  .surgery-mobile-disclosure[open] summary em::after { content:"−"; transform:rotate(180deg); }
  .surgery-page-toc--mobile { grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; margin:0; padding:10px; }
  .surgery-page-toc--mobile a { min-height:41px; padding:6px 8px; grid-template-columns:23px 1fr; border:1px solid var(--treat-line); background:#fff; font-size:.69rem; }
  .surgery-page-toc--mobile a:last-child { border-bottom:1px solid var(--treat-line); }
  .surgery-page-toc--mobile a::after { content:"↓"; position:absolute; right:7px; color:#087da9; font-size:.64rem; }
  .surgery-mobile-care { display:grid; grid-template-columns:1fr 1fr; gap:1px; padding:1px; background:#cde8f1; }
  .surgery-mobile-care a { min-height:42px; display:flex; align-items:center; padding:8px 10px; color:#315d70; background:#fff; font-size:.72rem; font-weight:800; text-decoration:none; }
  .surgery-mobile-care a::after { content:"→"; margin-left:auto; color:#0c91c8; }
  .surgery-mobile-care a:focus-visible { outline:2px solid #087da9; outline-offset:-2px; }
}

@media (max-width: 560px) {
  .cataract-surgery-page .treat-hero--surgery { padding:6px 0 8px; }
  .cataract-surgery-page .treat-hero--surgery .treat-hero__stage { min-height:118px; padding:14px 16px; border-radius:15px; }
  .cataract-surgery-page .treat-hero--surgery .treat-hero__stage::before { top:14px; bottom:14px; width:29%; }
  .cataract-surgery-page .treat-hero--surgery .treat-hero__stage::after { right:9%; bottom:-50px; width:118px; height:118px; }
  .cataract-surgery-page .surgery-hero__brand { top:auto; right:16px; bottom:13px; width:92px; padding:0 0 5px; }
  .cataract-surgery-page .treat-hero--surgery .treat-breadcrumb { max-width:220px; margin-bottom:14px; font-size:.62rem; line-height:1.45; }
  .cataract-surgery-page .surgery-hero__category { margin-bottom:7px; font-size:.45rem; letter-spacing:.14em; }
  .cataract-surgery-page .treat-hero--surgery h1 { max-width:none; white-space:nowrap; font-size:clamp(1.35rem,6.3vw,1.62rem); line-height:1.12; letter-spacing:.01em; }
  .cataract-surgery-page .treat-hero--surgery .treat-hero__lead { max-width:210px; margin-top:6px; font-size:.66rem; line-height:1.4; }
  .cataract-surgery-page .treat-surgery-photo img { height:185px; transform:scale(1.22); transform-origin:46% 36%; }
  .cataract-surgery-page .treat-surgery-photo figcaption { font-size:.66rem; }
  .cataract-surgery-page .treat-section--chapter { scroll-margin-top:88px; }
}

.treatment-page * { box-sizing: border-box; }
.treat-shell { width: min(1180px, calc(100% - 64px)); margin-inline: auto; }

.treat-hero { padding: 28px 0 44px; background: linear-gradient(180deg, #f6fbfd, #fff); }
.treat-hero__stage { position: relative; min-height: 410px; overflow: hidden; border-radius: 26px; box-shadow: 0 20px 54px rgba(22,79,105,.15); }
.treat-hero__photo { position: absolute; inset: 0; margin: 0; }
.treat-hero__photo::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(235,248,252,.42),rgba(255,255,255,.03) 70%); }
.treat-hero__photo img { width:100%; height:100%; display:block; object-fit:cover; object-position:center; }
.treat-hero__card { position:relative; z-index:1; width:min(570px,52%); margin-left:42px; top:38px; padding:30px 36px 32px; border:1px solid rgba(162,211,229,.8); border-radius:22px; background:rgba(255,255,255,.94); box-shadow:0 18px 42px rgba(19,77,103,.15); backdrop-filter:blur(8px); }
.treat-breadcrumb { margin:0 0 22px; display:flex; gap:9px; flex-wrap:wrap; color:#668796; font-size:.76rem; }
.treat-breadcrumb a { color:inherit; text-decoration:none; }
.treat-kicker { margin:0 0 9px; color:var(--treat-blue); font-size:.72rem; font-weight:900; letter-spacing:.2em; text-transform:uppercase; }
.treat-hero h1 { margin:0; color:var(--treat-navy); font-size:clamp(2.05rem,3.7vw,3.2rem); line-height:1.22; letter-spacing:.04em; }
.treat-hero__lead { margin:16px 0 0; color:#385f71; font-size:1rem; font-weight:650; line-height:1.85; }
.treat-hero__note { margin:14px 0 0; color:#658391; font-size:.78rem; line-height:1.7; }

/* The surgery image carries important context, so its card is intentionally compact. */
.treat-hero--surgery .treat-hero__stage { min-height:390px; background:#e8f5f9; }
.treat-hero--surgery .treat-hero__photo img { filter:brightness(1.14) saturate(1.06); }
.treat-hero--surgery .treat-hero__photo::after { background:linear-gradient(90deg,rgba(5,44,63,.08),rgba(5,44,63,0) 52%,rgba(229,247,252,.12)); }
.treat-hero--surgery .treat-hero__card { position:absolute; right:28px; width:min(445px,38%); margin:0; top:50%; padding:22px 26px 24px; border-left:4px solid var(--treat-blue); background:rgba(255,255,255,.95); transform:translateY(-50%); }
.treat-hero--surgery h1 { font-size:clamp(1.9rem,3.1vw,2.65rem); }
.treat-hero--surgery .treat-hero__lead { margin-top:13px; font-size:.9rem; line-height:1.75; }
.treat-hero--surgery .treat-hero__note { margin-top:10px; font-size:.7rem; }
.treat-hero__points { margin:15px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:7px; list-style:none; }
.treat-hero__points li { padding:6px 10px; border-radius:999px; color:var(--treat-navy); background:#e5f5fa; font-size:.68rem; font-weight:800; line-height:1.3; }

.treat-nav { padding:0 0 36px; background:#fff; }
.treat-nav__inner { padding:17px 20px; display:flex; align-items:center; gap:14px 22px; flex-wrap:wrap; border:1px solid var(--treat-line); border-radius:14px; background:#fff; box-shadow:0 10px 28px rgba(24,82,108,.07); }
.treat-nav strong { color:var(--treat-navy); font-size:.78rem; }
.treat-nav a { color:#3e6a7d; font-size:.75rem; font-weight:700; text-decoration:none; }

.treat-section { padding:68px 0; }
.treat-section.is-tint { background:var(--treat-pale); }
.treat-head { max-width:800px; margin-bottom:32px; }
.treat-head::before { content:""; display:block; width:54px; height:3px; margin-bottom:14px; border-radius:99px; background:linear-gradient(90deg,#21a8da,#70c7bd); }
.treat-head .treat-kicker { margin-bottom:7px; }
.treat-head h2 { margin:0; color:var(--treat-navy); font-size:clamp(1.65rem,2.5vw,2.35rem); line-height:1.42; letter-spacing:.035em; }
.treat-head p:last-child { margin:13px 0 0; font-size:.98rem; line-height:1.9; }
.treat-copy h3 { margin:0 0 15px; color:var(--treat-navy); font-size:1.35rem; line-height:1.5; }
.treat-copy p { margin:0 0 15px; line-height:2; }
.treat-copy p:last-child { margin-bottom:0; }
.treat-split { display:grid; grid-template-columns:minmax(0,1fr) minmax(360px,.9fr); gap:50px; align-items:center; }
.treat-split.is-reverse { grid-template-columns:minmax(360px,.9fr) minmax(0,1fr); }
.treat-split.is-reverse .treat-media { order:-1; }
.treat-media { margin:0; overflow:hidden; border-radius:18px; background:#e4f1f5; }
.treat-media img { width:100%; height:340px; display:block; object-fit:cover; }
.treat-media figcaption { padding:9px 13px; color:#6d8793; background:#fff; font-size:.68rem; }

.treat-replacement { max-width:1080px; margin-inline:auto; overflow:hidden; border:1px solid var(--treat-line); border-radius:20px; background:#fff; box-shadow:0 16px 42px rgba(24,82,108,.07); }
.treat-replacement__labels { padding:24px 38px 10px; display:grid; grid-template-columns:1fr 58px 1fr; gap:18px; align-items:center; }
.treat-replacement__labels > div { text-align:center; }
.treat-replacement__labels span:not(.treat-replacement__arrow) { color:var(--treat-blue); font-size:.65rem; font-weight:900; letter-spacing:.18em; }
.treat-replacement__labels h3 { margin:7px 0 5px; color:var(--treat-navy); font-size:1.12rem; line-height:1.5; }
.treat-replacement__labels p { margin:0; color:#587989; font-size:.76rem; line-height:1.7; }
.treat-replacement__arrow { width:42px; height:42px; display:grid; place-items:center; justify-self:center; border-radius:50%; color:#fff; background:var(--treat-blue); font-size:1.3rem; font-weight:800; }
.treat-replacement__visual { padding:2px 38px 18px; display:grid; grid-template-columns:1fr 58px 1fr; gap:18px; align-items:center; }
.treat-replacement__visual figure { height:300px; margin:0; display:flex; justify-content:center; }
.treat-replacement__visual img { width:100%; height:100%; display:block; object-fit:contain; }
.treat-replacement__visual > span { width:1px; height:80px; justify-self:center; background:var(--treat-line); }
.treat-eye-diagram { position:relative; align-items:center; overflow:hidden; isolation:isolate; }
.treat-eye-diagram__lines { position:absolute; z-index:2; inset:0; width:100%; height:100%; overflow:visible; pointer-events:none; }
.treat-eye-diagram__leader { fill:none; stroke:#397487; stroke-width:1.1; stroke-linecap:round; stroke-linejoin:round; }
.treat-eye-diagram__label { position:absolute; z-index:3; top:9%; left:4%; margin:0; color:#305c70; font-size:clamp(.64rem,1.1vw,.82rem); font-weight:850; line-height:1.35; pointer-events:none; }
.treat-eye-diagram--after .treat-eye-diagram__label { top:9%; right:auto; left:4%; text-align:left; }
.treat-replacement__summary { margin:0; padding:15px 20px 17px; display:flex; align-items:center; justify-content:center; gap:20px; color:var(--treat-navy); background:#eaf7fb; font-size:.92rem; }
.treat-replacement__summary span { color:var(--treat-blue); font-size:1.2rem; }
.treat-replacement__after { max-width:850px; margin-top:26px; }

.treat-feature-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; overflow:hidden; border:1px solid var(--treat-line); border-radius:17px; background:var(--treat-line); }
.treat-feature { min-height:170px; padding:25px 22px; background:#fff; }
.treat-feature span { display:block; margin-bottom:14px; color:var(--treat-blue); font-size:.7rem; font-weight:900; letter-spacing:.14em; }
.treat-feature h3 { margin:0 0 9px; color:var(--treat-navy); font-size:1rem; line-height:1.55; }
.treat-feature p { margin:0; font-size:.78rem; line-height:1.75; }

.treat-check-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 34px; margin:0; padding:0; list-style:none; }
.treat-check-grid li { position:relative; padding:15px 15px 15px 42px; border-bottom:1px solid var(--treat-line); color:#31586c; font-weight:750; line-height:1.6; }
.treat-check-grid li::before { content:"✓"; position:absolute; top:14px; left:8px; width:23px; height:23px; display:grid; place-items:center; border-radius:50%; color:#fff; background:var(--treat-blue); font-size:.72rem; }

.treat-view-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.treat-view { overflow:hidden; border:1px solid var(--treat-line); border-radius:18px; background:#fff; }
.treat-view figure { position:relative; height:280px; margin:0; overflow:hidden; }
.treat-view img { width:100%; height:100%; display:block; object-fit:cover; }
.treat-view.is-cloudy img { filter:blur(2px) saturate(.55) contrast(.78) brightness(1.2); transform:scale(1.04); }
.treat-view.is-cloudy figure::after { content:""; position:absolute; inset:0; background:rgba(245,238,213,.34); }
.treat-view div { padding:18px 20px 20px; }
.treat-view h3 { margin:0 0 5px; color:var(--treat-navy); font-size:1rem; }
.treat-view p { margin:0; font-size:.78rem; line-height:1.7; }
.treat-caption { margin:12px 0 0; color:#718995; font-size:.72rem; }

.treat-cause-list { display:grid; grid-template-columns:repeat(4,1fr); gap:0; margin:0; padding:0; border-block:1px solid var(--treat-line); list-style:none; }
.treat-cause-list li { padding:25px 20px; border-right:1px solid var(--treat-line); }
.treat-cause-list li:last-child { border-right:0; }
.treat-cause-list strong { display:block; margin-bottom:8px; color:var(--treat-navy); }
.treat-cause-list span { font-size:.78rem; line-height:1.65; }

.treat-selfcheck { padding:30px; border:1px solid #b9deeb; border-radius:18px; background:#eef9fc; }
.treat-selfcheck h3 { margin:0 0 9px; color:var(--treat-navy); }
.treat-selfcheck > p { margin:0 0 18px; line-height:1.8; }
.treat-selfcheck label { display:flex; gap:10px; align-items:flex-start; padding:12px 0; border-bottom:1px solid rgba(137,194,216,.45); font-size:.88rem; line-height:1.6; }
.treat-selfcheck label:last-of-type { border-bottom:0; }
.treat-selfcheck input { width:19px; height:19px; margin-top:3px; accent-color:var(--treat-blue); }
.treat-selfcheck small { display:block; margin-top:15px; color:#687f8b; line-height:1.7; }

.treat-path { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.treat-path article { padding:25px 24px; border-top:3px solid #8bd2e9; border-radius:0 0 14px 14px; background:#fff; box-shadow:0 10px 28px rgba(29,85,109,.07); }
.treat-path b { display:block; color:var(--treat-blue); font-size:.7rem; letter-spacing:.15em; }
.treat-path h3 { margin:10px 0 8px; color:var(--treat-navy); }
.treat-path p { margin:0; font-size:.8rem; line-height:1.8; }

.treat-button-row { margin-top:26px; display:flex; gap:12px; flex-wrap:wrap; }
.treat-button { min-height:48px; padding:12px 22px; display:inline-flex; align-items:center; justify-content:center; gap:16px; border:1px solid var(--treat-blue); border-radius:999px; color:#fff; background:var(--treat-blue); font-size:.82rem; font-weight:850; text-decoration:none; transition:.2s ease; }
.treat-button.is-ghost { color:var(--treat-blue); background:#fff; }
@media (hover:hover) { .treat-button:hover { transform:translateY(-2px); box-shadow:0 9px 20px rgba(12,145,200,.17); } }

.treat-method { counter-reset:method; display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.treat-method article { position:relative; padding:28px 24px 25px; overflow:hidden; border:1px solid var(--treat-line); border-radius:17px; background:#fff; }
.treat-method article::after { counter-increment:method; content:"0" counter(method); position:absolute; right:14px; bottom:-15px; color:#e2f4f9; font-size:5rem; font-weight:900; line-height:1; }
.treat-method__icon { width:64px; height:64px; margin-bottom:18px; display:grid; place-items:center; border-radius:50%; color:var(--treat-blue); background:#eaf7fb; }
.treat-method__icon svg { width:38px; height:38px; fill:none; stroke:currentColor; stroke-width:1.6; }
.treat-method h3 { position:relative; z-index:1; margin:0 0 8px; color:var(--treat-navy); font-size:1rem; }
.treat-method p { position:relative; z-index:1; margin:0; font-size:.78rem; line-height:1.75; }
.treat-method--illustrated { grid-template-columns:repeat(4,minmax(0,1fr)); margin:0; padding:0; list-style:none; }
.treat-method--illustrated li { position:relative; min-width:0; padding:18px 18px 22px; overflow:hidden; border:1px solid var(--treat-line); border-radius:17px; background:#fff; }
.treat-method--illustrated figure { height:150px; margin:8px 0 18px; display:flex; align-items:center; justify-content:center; overflow:hidden; border-radius:12px; background:#fff; }
.treat-method--illustrated img { width:100%; height:100%; display:block; object-fit:contain; }
.treat-method__number { width:34px; height:34px; display:grid; place-items:center; border-radius:50%; color:#fff; background:var(--treat-blue); font-size:.68rem; font-weight:900; letter-spacing:.06em; }
.treat-method--illustrated h3 { min-height:3.1em; margin-bottom:8px; }
.treat-method__caption { margin-top:14px; }

.treat-lens-intro { align-items:start; }
.treat-alcon-note { margin-top:34px; padding:22px 26px; display:grid; grid-template-columns:210px 1fr; gap:28px; align-items:center; border-block:1px solid var(--treat-line); background:rgba(255,255,255,.56); }
.treat-alcon-note strong { color:var(--treat-navy); font-size:1rem; }
.treat-alcon-note p { margin:0; font-size:.84rem; line-height:1.85; }
.treat-distance-list { border-block:1px solid var(--treat-line); }
.treat-distance-list article { padding:21px 10px; display:grid; grid-template-columns:250px 1fr; align-items:center; gap:32px; border-bottom:1px solid var(--treat-line); }
.treat-distance-list article:last-child { border-bottom:0; }
.treat-distance-list article > div { display:grid; grid-template-columns:95px 70px 1fr; align-items:baseline; gap:12px; }
.treat-distance-list span { color:var(--treat-blue); font-size:.64rem; font-weight:900; letter-spacing:.13em; }
.treat-distance-list h3 { margin:0; color:var(--treat-navy); font-size:1.06rem; }
.treat-distance-list b { color:#668492; font-size:.75rem; }
.treat-distance-list p { margin:0; font-size:.83rem; line-height:1.75; }
.treat-lens-rows { border-top:1px solid var(--treat-line); }
.treat-lens-rows article { padding:25px 6px; display:grid; grid-template-columns:170px 240px 1fr; gap:28px; align-items:center; border-bottom:1px solid var(--treat-line); }
.treat-lens-rows figure { height:160px; margin:0; display:flex; align-items:center; justify-content:center; overflow:hidden; border:1px solid #dbeaf0; border-radius:14px; background:#fff; }
.treat-lens-rows figure img { width:100%; height:100%; display:block; object-fit:contain; }
.treat-lens-rows header { display:grid; grid-template-columns:38px 1fr; gap:13px; align-items:start; }
.treat-lens-rows header span { width:31px; height:31px; display:grid; place-items:center; border-radius:50%; color:#fff; background:var(--treat-blue); font-size:.63rem; font-weight:900; }
.treat-lens-rows h3 { margin:3px 0 0; color:var(--treat-navy); font-size:1rem; line-height:1.55; }
.treat-lens-rows strong { display:block; margin-bottom:7px; color:#265c75; font-size:.88rem; }
.treat-lens-rows p { margin:0; font-size:.8rem; line-height:1.8; }
.treat-lens-check { margin-top:34px; padding:25px 28px; display:grid; grid-template-columns:250px 1fr; gap:30px; align-items:center; border-radius:17px; background:#fff; box-shadow:0 10px 30px rgba(29,85,109,.06); }
.treat-lens-check h3 { margin:0; color:var(--treat-navy); font-size:1.16rem; }
.treat-lens-check ul { margin:0; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:12px 28px; list-style:none; }
.treat-lens-check li { position:relative; padding-left:25px; color:#31586c; font-size:.8rem; font-weight:750; line-height:1.6; }
.treat-lens-check li::before { content:"✓"; position:absolute; left:0; top:0; color:var(--treat-blue); font-weight:900; }
.treat-lens-caution { margin:18px 0 0; padding:16px 18px; border:1px solid #efd4ab; border-radius:12px; color:#76542d; background:#fffaf2; font-size:.75rem; line-height:1.75; }

.treat-timeline { margin:0; padding:0; display:grid; grid-template-columns:repeat(5,1fr); list-style:none; }
.treat-timeline li { position:relative; padding:0 18px 22px; border-top:2px solid #9bd4e7; }
.treat-timeline li::before { content:""; position:absolute; top:-7px; left:18px; width:12px; height:12px; border:3px solid #fff; border-radius:50%; background:var(--treat-blue); box-shadow:0 0 0 1px var(--treat-blue); }
.treat-timeline span { display:block; margin-top:20px; color:var(--treat-blue); font-size:.68rem; font-weight:900; letter-spacing:.12em; }
.treat-timeline strong { display:block; margin:7px 0; color:var(--treat-navy); }
.treat-timeline p { margin:0; font-size:.72rem; line-height:1.7; }

.treat-day { margin:0; padding:0; list-style:none; }
.treat-day li { display:grid; grid-template-columns:90px 1fr; gap:26px; padding:25px 0; border-bottom:1px solid var(--treat-line); }
.treat-day__no { color:var(--treat-blue); font-size:1.55rem; font-weight:900; letter-spacing:.06em; }
.treat-day small { display:block; color:#7a939e; font-weight:800; letter-spacing:.1em; }
.treat-day h3 { margin:5px 0 7px; color:var(--treat-navy); font-size:1.08rem; }
.treat-day p { margin:0; font-size:.82rem; line-height:1.8; }

.treatment-page .surgery-day-intro,
.treatment-page .surgery-day-after { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); align-items:center; gap:42px; }
.treatment-page .surgery-day-intro { margin-bottom:34px; }
.treatment-page .surgery-day-intro figure,
.treatment-page .surgery-day-after figure { margin:0; overflow:hidden; border-radius:18px; }
.treatment-page .surgery-day-intro img,
.treatment-page .surgery-day-after img { width:100%; height:300px; display:block; object-fit:cover; }
.treatment-page .surgery-day-intro h3,
.treatment-page .surgery-day-after h3 { margin:0 0 11px; color:var(--treat-navy); font-size:1.3rem; line-height:1.55; }
.treatment-page .surgery-day-intro p,
.treatment-page .surgery-day-after p { color:var(--treat-text); font-size:.88rem; line-height:1.9; }
.cataract-surgery-page .surgery-day-intro .sub-list li { padding-left:0; }
.cataract-surgery-page .surgery-day-intro .sub-list li::before { content:none; display:none; }
.treatment-page .surgery-day-steps.treat-day { display:grid; gap:14px; }
.treatment-page .surgery-day-steps.treat-day::before { display:none; }
.treatment-page .surgery-day-steps.treat-day li { position:relative; min-height:0; padding:16px; display:grid; grid-template-columns:minmax(210px,250px) 1fr; align-items:center; gap:24px; border:1px solid var(--treat-line); border-radius:18px; background:#fff; box-shadow:none; }
.surgery-day-step__media { height:170px; margin:0; overflow:hidden; border-radius:13px; background:#eaf5f8; }
.surgery-day-step__media img,
.surgery-day-step__extra img { width:100%; height:100%; display:block; object-fit:cover; }
.surgery-day-step__heading { display:flex; align-items:center; gap:13px; margin-bottom:5px; }
.surgery-day-step__number { color:var(--treat-blue); font-size:1.45rem; font-weight:900; letter-spacing:.06em; line-height:1; }
.surgery-day-step__heading small { color:#6f8c99; }
.surgery-day-step__extra { grid-column:1 / -1; display:grid; grid-template-columns:minmax(210px,250px) 1fr; align-items:center; gap:24px; margin-top:0; padding-top:16px; border-top:1px solid var(--treat-line); }
.surgery-day-step__extra figure { height:150px; margin:0; overflow:hidden; border-radius:13px; }
.surgery-day-step__extra p { margin:0; }
.surgery-day-step__extra strong { display:block; margin-bottom:6px; color:var(--treat-navy); font-size:.92rem; }
.treatment-page .surgery-day-after { margin-top:34px; padding:25px; border:1px solid var(--treat-line); border-radius:18px; background:#fff; }
.cataract-surgery-page .surgery-day-after { display:block; }
.treatment-page .surgery-day-after .sub-kicker { margin:0 0 8px; color:var(--treat-blue); font-size:.68rem; font-weight:900; letter-spacing:.18em; }

.treat-notes { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; overflow:hidden; border:1px solid var(--treat-line); border-radius:16px; background:var(--treat-line); }
.treat-note { min-height:150px; padding:22px; background:#fff; }
.treat-note h3 { margin:0 0 8px; color:var(--treat-navy); font-size:.95rem; }
.treat-note p { margin:0; font-size:.76rem; line-height:1.75; }
.treat-confirm { display:inline-block; margin-top:10px; padding:4px 8px; border-radius:5px; color:#9a5b19; background:#fff2dc; font-size:.62rem; font-weight:900; }
.treat-alert { margin-top:22px; padding:18px 20px; border:1px solid #efd4ab; border-radius:13px; color:#76542d; background:#fffaf2; font-size:.8rem; line-height:1.75; }

.treat-risk { padding:28px 30px; border-radius:18px; background:#edf8fb; }
.treat-risk h3 { margin:0 0 10px; color:var(--treat-navy); }
.treat-risk p { margin:0 0 10px; line-height:1.85; }
.treat-risk p:last-child { margin-bottom:0; }

.treat-section--record { background:linear-gradient(135deg,#f7fcfe,#e8f7fb); }
.treat-record { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); overflow:hidden; border:1px solid var(--treat-line); border-radius:18px; background:#fff; box-shadow:0 15px 36px rgba(24,82,108,.06); }
.treat-record__main,.treat-record__total { min-height:210px; padding:28px; display:flex; flex-direction:column; justify-content:center; }
.treat-record__main { color:#fff; background:linear-gradient(135deg,#087daf,#13abd5); }
.treat-record__total { color:var(--treat-navy); background:#fff; }
.treat-record span { font-size:.72rem; font-weight:900; letter-spacing:.14em; }
.treat-record strong { margin-top:7px; font-size:clamp(2.6rem,5vw,4.5rem); line-height:1; letter-spacing:-.04em; }
.treat-record strong small { margin-left:5px; font-size:.34em; letter-spacing:0; }
.treat-record p { margin:10px 0 0; font-size:.76rem; line-height:1.65; }
.treat-record__main p { color:rgba(255,255,255,.8); }
.treat-record__total p { color:#628391; }
.treat-record__note { grid-column:1 / -1; margin:0; padding:16px 28px; border-top:1px solid var(--treat-line); color:#496c7c; background:#fbfeff; font-size:.8rem; line-height:1.75; }
.treat-record__note a { display:inline-block; margin-left:.7em; color:#0875b8; font-weight:800; text-underline-offset:3px; }

.treat-fee-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.treat-fee-grid article { min-height:220px; padding:25px 23px; border:1px solid var(--treat-line); border-radius:16px; background:#fff; }
.treat-fee-grid__eyebrow { margin:0 0 14px; color:var(--treat-blue); font-size:.62rem; font-weight:900; letter-spacing:.15em; }
.treat-fee-grid h3 { margin:0 0 10px; color:var(--treat-navy); font-size:1rem; line-height:1.5; }
.treat-fee-grid article > p:not(.treat-fee-grid__eyebrow) { margin:0; color:#496c7c; font-size:.8rem; line-height:1.8; }
.treat-fee-grid a { display:inline-flex; gap:6px; margin-top:15px; color:var(--treat-blue); font-size:.76rem; font-weight:850; text-decoration:none; }
.treat-fee-note { margin:14px 0 0; color:#64818e; font-size:.72rem; line-height:1.7; }
.treat-fee-list { display:grid; gap:0; margin:14px 0 0; border-top:1px solid var(--treat-line); }
.treat-fee-list div { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:9px 0; border-bottom:1px solid var(--treat-line); }
.treat-fee-list dt { color:#496c7c; font-size:.76rem; font-weight:750; }
.treat-fee-list dd { margin:0; color:var(--treat-navy); font-size:.88rem; font-weight:900; white-space:nowrap; }

.treat-followup { margin-top:36px; padding:26px 28px 28px; border:1px solid var(--treat-line); border-radius:17px; background:#fff; }
.treat-followup > div { display:grid; grid-template-columns:220px minmax(0,1fr); gap:28px; align-items:start; }
.treat-followup .treat-kicker { margin:0 0 8px; }
.treat-followup h3 { margin:0; color:var(--treat-navy); font-size:1.15rem; }
.treat-followup > div > p:last-child { grid-column:1/-1; width:100%; max-width:none; margin:0; color:#496c7c; font-size:.8rem; line-height:1.8; }
.treat-followup ol { margin:27px 0 0; padding:0; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); list-style:none; }
.treat-followup li { position:relative; padding:28px 12px 0; border-top:2px solid #9bd4e7; text-align:center; }
.treat-followup li::before { content:""; position:absolute; top:-6px; left:50%; width:10px; height:10px; border:2px solid #fff; border-radius:50%; background:var(--treat-blue); transform:translateX(-50%); box-shadow:0 0 0 1px var(--treat-blue); }
.treat-followup li span { display:block; color:var(--treat-navy); font-size:.82rem; font-weight:850; }
.treat-followup li p { margin:5px 0 0; color:#60808e; font-size:.68rem; line-height:1.55; }

@media(min-width:761px) {
  .cataract-surgery-page .treat-followup li:last-child::after { content:""; position:absolute; top:-7px; right:-8px; width:0; height:0; border-top:7px solid transparent; border-bottom:7px solid transparent; border-left:10px solid #9bd4e7; }
}

.treat-aftercare-notes { margin-top:18px; padding:24px 28px; display:grid; grid-template-columns:200px minmax(0,1fr); gap:28px; border-block:1px solid var(--treat-line); }
.treat-aftercare-notes .treat-kicker { margin:0 0 8px; }
.treat-aftercare-notes h3 { margin:0; color:var(--treat-navy); font-size:1.1rem; }
.treat-aftercare-notes ul { margin:0; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:0 20px; list-style:none; }
.treat-aftercare-notes li { padding:11px 0; display:grid; grid-template-columns:96px minmax(0,1fr); gap:12px; border-bottom:1px solid var(--treat-line); }
.treat-aftercare-notes li:nth-last-child(-n+2) { border-bottom:0; }
.treat-aftercare-notes strong { color:var(--treat-blue); font-size:.76rem; }
.treat-aftercare-notes span { color:#496c7c; font-size:.75rem; line-height:1.65; }

.treat-faq { display:grid; gap:8px; }
.treat-faq details { border:1px solid var(--treat-line); border-radius:13px; background:#fff; }
.treat-faq summary { position:relative; padding:15px 52px 15px 52px; color:var(--treat-navy); font-weight:800; cursor:pointer; list-style:none; }
.treat-faq summary::before { content:"Q"; position:absolute; left:18px; color:var(--treat-blue); font-weight:900; }
.treat-faq summary::after { content:"＋"; position:absolute; right:18px; color:var(--treat-blue); }
.treat-faq details[open] summary::after { content:"−"; }
.treat-faq details p { margin:0; padding:0 22px 16px 52px; color:#496c7c; font-size:.84rem; line-height:1.85; }
.treat-faq-more { margin-top:4px; }
.treat-faq-more > summary { padding-inline:24px 50px; color:var(--treat-blue); text-align:center; }
.treat-faq-more > summary::before { content:none; }
.treat-faq-more__items { display:grid; gap:8px; padding:0 8px 8px; }

.treat-final { padding:64px 0 80px; text-align:center; background:linear-gradient(135deg,#e8f7fb,#f8fcfd); }
.treat-final h2 { margin:0; color:var(--treat-navy); font-size:clamp(1.55rem,2.4vw,2.2rem); }
.treat-final p { max-width:720px; margin:15px auto 0; line-height:1.9; }
.treat-final .treat-button-row { justify-content:center; }

@media (max-width: 900px) {
  .treat-shell { width:min(100% - 32px,720px); }
  .treat-hero { padding:16px 0 30px; }
  .treat-hero__stage { min-height:490px; border-radius:22px; }
  .treat-hero__card { width:calc(100% - 32px); margin-left:16px; top:16px; padding:22px 22px 24px; }
  .treat-hero__photo img { object-position:62% center; }
  .treat-split,.treat-split.is-reverse { grid-template-columns:1fr; gap:26px; }
  .treat-split.is-reverse .treat-media { order:0; }
  .treat-replacement__labels { padding-inline:24px; }
  .treat-feature-grid { grid-template-columns:1fr 1fr; }
  .treat-cause-list { grid-template-columns:1fr 1fr; }
  .treat-cause-list li:nth-child(2) { border-right:0; }
  .treat-cause-list li:nth-child(-n+2) { border-bottom:1px solid var(--treat-line); }
  .treat-path,.treat-method { grid-template-columns:1fr; }
  .treat-method--illustrated { grid-template-columns:1fr 1fr; }
  .treat-alcon-note { grid-template-columns:180px 1fr; }
  .treat-distance-list article { grid-template-columns:220px 1fr; }
  .treat-distance-list article > div { grid-template-columns:82px 62px 1fr; }
  .treat-lens-rows article { grid-template-columns:140px 190px 1fr; gap:20px; }
  .treat-lens-rows figure { height:140px; }
  .treat-lens-check { grid-template-columns:200px 1fr; }
  .treat-timeline { grid-template-columns:1fr; }
  .treat-timeline li { padding:4px 0 24px 38px; border-top:0; border-left:2px solid #9bd4e7; }
  .treat-timeline li::before { top:6px; left:-7px; }
  .treat-timeline li:last-child::after { content:""; position:absolute; bottom:5px; left:-5px; width:8px; height:8px; border-right:2px solid var(--treat-blue); border-bottom:2px solid var(--treat-blue); transform:rotate(45deg); }
  .treat-timeline span { margin-top:0; }
  .treat-notes { grid-template-columns:1fr 1fr; }
  .treatment-page .surgery-day-intro,
  .treatment-page .surgery-day-after { grid-template-columns:1fr; gap:23px; }
}

@media (max-width: 560px) {
  .treat-section { padding:48px 0; }
  .treat-hero__stage { min-height:430px; }
  .treat-hero__card { padding:18px 18px 20px; border-radius:17px; }
  .treat-breadcrumb { margin-bottom:15px; font-size:.65rem; }
  .treat-hero h1 { font-size:clamp(1.65rem,8vw,2.1rem); }
  .treat-hero__lead { margin-top:11px; font-size:.86rem; line-height:1.7; }
  .treat-hero__note { margin-top:8px; font-size:.68rem; }
  .treat-hero--surgery { padding:10px 0 16px; }
  .treat-hero--surgery .treat-hero__stage { min-height:250px; display:grid; grid-template-rows:142px 108px; border-radius:18px; background:#fff; }
  .treat-hero--surgery .treat-hero__photo { position:relative; inset:auto; grid-row:1; overflow:hidden; }
  .treat-hero--surgery .treat-hero__photo img { object-position:center 48%; filter:brightness(1.16) saturate(1.08); }
  .treat-hero--surgery .treat-hero__photo::after { background:linear-gradient(180deg,rgba(5,44,63,0),rgba(5,44,63,.08)); }
  .treat-hero--surgery .treat-hero__card { position:relative; right:auto; width:100%; margin:0; top:auto; bottom:auto; grid-row:2; padding:10px 14px 11px 16px; border:0; border-top:3px solid var(--treat-blue); border-radius:0; background:#fff; box-shadow:none; transform:none; }
  .treat-hero--surgery .treat-breadcrumb,
  .treat-hero--surgery .treat-hero__note { display:none; }
  .treat-hero--surgery .treat-kicker { margin-bottom:2px; font-size:.48rem; letter-spacing:.15em; }
  .treat-hero--surgery h1 { font-size:clamp(1.12rem,5.1vw,1.34rem); line-height:1.18; letter-spacing:.025em; }
  .treat-hero--surgery .treat-hero__lead { margin-top:4px; font-size:.61rem; line-height:1.42; }
  .treat-hero--surgery .treat-hero__points { margin-top:5px; gap:5px; }
  .treat-hero--surgery .treat-hero__points li { padding:4px 7px; font-size:.52rem; }
  .treat-nav { padding-bottom:20px; }
  .treat-nav__inner { gap:11px 15px; padding:14px 15px; }
  .treat-nav strong { width:100%; }
  .treat-head { margin-bottom:24px; }
  .treat-head h2 { font-size:1.55rem; }
  .treat-head p:last-child { font-size:.9rem; line-height:1.8; }
  .treat-media img { height:230px; }
  .treat-replacement { border-radius:16px; }
  .treat-replacement__labels { padding:17px 12px 5px; grid-template-columns:1fr 30px 1fr; gap:7px; }
  .treat-replacement__labels h3 { margin-top:5px; font-size:.82rem; line-height:1.45; }
  .treat-replacement__labels p { display:none; }
  .treat-replacement__arrow { width:28px; height:28px; font-size:.9rem; }
  .treat-replacement__visual { padding:4px 10px 10px; grid-template-columns:1fr 30px 1fr; gap:5px; }
  .treat-replacement__visual figure { height:205px; }
  .treat-replacement__visual > span { height:56px; }
  .treat-replacement__summary { padding:12px 10px 13px; gap:10px; font-size:.76rem; }
  .treat-replacement__summary span { font-size:1rem; }
  .treat-eye-diagram__label { top:9%; font-size:.58rem; }
  .treat-replacement__after { margin-top:21px; }
  .treat-feature-grid,.treat-view-grid,.treat-check-grid,.treat-notes { grid-template-columns:1fr; }
  .treat-feature { min-height:0; padding:19px 18px; }
  .treat-view figure { height:190px; }
  .treat-cause-list { grid-template-columns:1fr; }
  .treat-cause-list li { padding:18px 12px; border-right:0; border-bottom:1px solid var(--treat-line); }
  .treat-cause-list li:last-child { border-bottom:0; }
  .treat-selfcheck { padding:22px 18px; }
  .treat-method--illustrated { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .treat-method--illustrated li { padding:12px 10px 15px; border-radius:14px; }
  .treat-method--illustrated figure { height:112px; margin:3px 0 10px; }
  .treat-method--illustrated h3 { min-height:3.2em; margin-bottom:6px; font-size:.84rem; line-height:1.55; }
  .treat-method--illustrated p { font-size:.7rem; line-height:1.65; }
  .treat-method__number { width:28px; height:28px; font-size:.59rem; }
  .treat-alcon-note { margin-top:26px; padding:18px 4px; grid-template-columns:1fr; gap:7px; background:transparent; }
  .treat-distance-list article { padding:18px 2px; grid-template-columns:1fr; gap:8px; }
  .treat-distance-list article > div { grid-template-columns:88px 60px 1fr; gap:8px; }
  .treat-lens-rows article { padding:21px 2px; grid-template-columns:108px 1fr; gap:8px 14px; align-items:start; }
  .treat-lens-rows figure { grid-row:1 / 3; height:145px; }
  .treat-lens-rows article > div { grid-column:2; }
  .treat-lens-rows header { grid-template-columns:34px 1fr; gap:10px; }
  .treat-lens-rows header span { width:28px; height:28px; }
  .treat-lens-check { margin-top:26px; padding:20px 18px; grid-template-columns:1fr; gap:18px; }
  .treat-lens-check ul { grid-template-columns:1fr; gap:10px; }
  .treat-lens-caution { padding:14px 15px; }
  .treat-day li { grid-template-columns:54px 1fr; gap:13px; padding:21px 0; }
  .treat-day__no { font-size:1.15rem; }
  .treatment-page .surgery-day-steps.treat-day li { grid-template-columns:45px 1fr; gap:12px; padding:20px 0; }
  .treatment-page .surgery-day-steps.treat-day li > span { font-size:1.1rem; }
  .treatment-page .surgery-day-intro img,
  .treatment-page .surgery-day-after img { height:210px; }
  .treatment-page .surgery-day-after { padding:17px; }
  .treat-faq summary { padding:13px 43px 13px 42px; font-size:.9rem; }
  .treat-faq summary::before { left:15px; }
  .treat-faq details p { padding:0 17px 14px 42px; font-size:.8rem; }
  .treat-button-row { display:grid; }
  .treat-button { width:100%; }

  /* 白内障日帰り手術ページは、スマホで要点を追いやすい密度に整える */
  .cataract-surgery-page .treat-section { padding:36px 0; }
  .cataract-surgery-page .treat-head { margin-bottom:18px; }
  .cataract-surgery-page .treat-head::before { width:42px; margin-bottom:9px; }
  .cataract-surgery-page .treat-head .treat-kicker { margin-bottom:5px; font-size:.62rem; }
  .cataract-surgery-page .treat-head h2 { font-size:clamp(1.18rem,5.2vw,1.35rem); line-height:1.35; letter-spacing:.015em; }
  .cataract-surgery-page .treat-head p:last-child { margin-top:9px; font-size:.82rem; line-height:1.65; }
  .cataract-surgery-page .treat-copy h3 { margin-bottom:9px; font-size:1.05rem; line-height:1.45; }
  .cataract-surgery-page .treat-copy p { margin-bottom:10px; font-size:.84rem; line-height:1.72; }
  .cataract-surgery-page .treat-feature-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cataract-surgery-page .treat-feature { padding:14px 12px; }
  .cataract-surgery-page .treat-feature span { margin-bottom:7px; font-size:.58rem; }
  .cataract-surgery-page .treat-feature h3 { margin-bottom:5px; font-size:.82rem; }
  .cataract-surgery-page .treat-feature p { font-size:.7rem; line-height:1.6; }
  .cataract-surgery-page .treat-replacement__visual figure { height:160px; }
  .cataract-surgery-page .treat-replacement__after { margin-top:15px; }
  .cataract-surgery-page .treat-method__caption { margin-top:9px; }
  .cataract-surgery-page .treat-split,
  .cataract-surgery-page .treat-split.is-reverse { gap:18px; }
  .cataract-surgery-page .treat-media img { height:180px; }
  .cataract-surgery-page .treat-alcon-note { margin-top:18px; padding-block:13px; }
  .cataract-surgery-page .treat-alcon-note p { font-size:.76rem; line-height:1.65; }
  .cataract-surgery-page .treat-distance-list article { padding:13px 2px; gap:5px; }
  .cataract-surgery-page .treat-distance-list p { font-size:.76rem; line-height:1.6; }
  .cataract-surgery-page .treat-lens-rows article { padding:15px 2px; grid-template-columns:92px 1fr; gap:6px 12px; }
  .cataract-surgery-page .treat-lens-rows figure { height:112px; }
  .cataract-surgery-page .treat-lens-rows h3 { font-size:.86rem; }
  .cataract-surgery-page .treat-lens-rows strong { margin-bottom:4px; font-size:.78rem; }
  .cataract-surgery-page .treat-lens-rows p { font-size:.7rem; line-height:1.62; }
  .cataract-surgery-page .treat-lens-check { margin-top:18px; padding:15px; gap:11px; }
  .cataract-surgery-page .treat-lens-check h3 { white-space:nowrap; font-size:clamp(.8rem,4vw,1rem); letter-spacing:-.06em; }
  .cataract-surgery-page .treat-lens-check ul { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 12px; }
  .cataract-surgery-page .treat-lens-check li { padding-left:18px; font-size:.7rem; }
  .cataract-surgery-page .treat-lens-caution { margin-top:12px; padding:11px 12px; font-size:.68rem; line-height:1.6; }
  .cataract-surgery-page .treat-timeline li { padding:2px 0 15px 29px; }
  .cataract-surgery-page .treat-timeline span { font-size:.61rem; }
  .cataract-surgery-page .treat-timeline strong { margin:4px 0; font-size:.88rem; }
  .cataract-surgery-page .treat-timeline p { font-size:.69rem; line-height:1.55; }
  .cataract-surgery-page .surgery-day-intro { margin-bottom:20px; }
  .cataract-surgery-page .surgery-day-intro img,
  .cataract-surgery-page .surgery-day-after img { height:155px; }
  .cataract-surgery-page .surgery-day-intro h3,
  .cataract-surgery-page .surgery-day-after h3 { margin-bottom:7px; font-size:1rem; line-height:1.45; }
  .cataract-surgery-page .surgery-day-intro p,
  .cataract-surgery-page .surgery-day-after p { margin-block:7px; font-size:.78rem; line-height:1.65; }
  .cataract-surgery-page .surgery-day-intro .sub-list { font-size:.72rem; line-height:1.55; }
  .cataract-surgery-page .surgery-day-steps.treat-day { grid-template-columns:1fr; gap:10px; overflow:visible; border:0; border-radius:0; background:transparent; }
  .cataract-surgery-page .surgery-day-steps.treat-day li { padding:10px; grid-template-columns:96px 1fr; align-content:start; align-items:center; gap:11px; border:1px solid var(--treat-line); border-radius:13px; background:#fff; }
  .cataract-surgery-page .surgery-day-step__media { height:112px; border-radius:9px; }
  .cataract-surgery-page .surgery-day-step__heading { gap:7px; margin-bottom:3px; }
  .cataract-surgery-page .surgery-day-step__number { font-size:.76rem; }
  .cataract-surgery-page .treat-day small { display:inline; font-size:.6rem; }
  .cataract-surgery-page .treat-day h3 { margin:2px 0 4px; font-size:.82rem; line-height:1.45; }
  .cataract-surgery-page .treat-day p { font-size:.68rem; line-height:1.58; }
  .cataract-surgery-page .surgery-day-step__extra { grid-template-columns:96px 1fr; gap:11px; padding-top:10px; }
  .cataract-surgery-page .surgery-day-step__extra figure { height:82px; border-radius:9px; }
  .cataract-surgery-page .surgery-day-step__extra strong { margin-bottom:3px; font-size:.72rem; }
  .cataract-surgery-page .surgery-day-after { margin-top:20px; padding:14px; }
  .cataract-surgery-page .treat-notes { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cataract-surgery-page .treat-note { min-height:0; padding:13px 11px; }
  .cataract-surgery-page .treat-note h3 { margin-bottom:5px; font-size:.82rem; }
  .cataract-surgery-page .treat-note p { font-size:.68rem; line-height:1.58; }
  .cataract-surgery-page .treat-confirm { margin-top:7px; font-size:.55rem; }
  .cataract-surgery-page .treat-alert { margin-top:14px; padding:12px 13px; font-size:.7rem; line-height:1.6; }
  .cataract-surgery-page .treat-risk { padding:18px 16px; }
  .cataract-surgery-page .treat-risk h3 { margin-bottom:7px; font-size:.98rem; }
  .cataract-surgery-page .treat-risk p { margin-bottom:7px; font-size:.78rem; line-height:1.68; }
  .cataract-surgery-page .treat-faq { gap:6px; }
  .cataract-surgery-page .treat-faq summary { padding-block:10px; font-size:.82rem; }
  .cataract-surgery-page .treat-faq details p { padding-bottom:12px; font-size:.75rem; line-height:1.65; }
  .cataract-surgery-page .treat-faq-more { margin-top:5px; }
  .cataract-surgery-page .treat-faq-more > summary { padding-block:12px; font-size:.8rem; }
  .cataract-surgery-page .treat-faq-more__items { gap:6px; padding:0 6px 6px; }
  .cataract-surgery-page .treat-button-row { margin-top:17px; }
  .cataract-surgery-page .treat-button { min-height:43px; padding-block:9px; }
  .cataract-surgery-page .sub-link-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; margin-top:18px; }
  .cataract-surgery-page .sub-link-card { min-height:92px; padding:14px 12px; border-radius:14px; }
  .cataract-surgery-page .sub-link-card span { font-size:.84rem; line-height:1.4; }
  .cataract-surgery-page .sub-link-card small { margin-top:5px; font-size:.66rem; line-height:1.45; }
  .cataract-surgery-page .treat-final { padding:38px 0 48px; }
  .cataract-surgery-page .treat-final h2 { font-size:1.3rem; }
  .cataract-surgery-page .treat-final p { margin-top:10px; font-size:.82rem; line-height:1.65; }
  .cataract-surgery-page .sub-section { padding-block:34px; }
  .cataract-surgery-page .sub-all-links { gap:7px; }
  .cataract-surgery-page .sub-all-links a { padding:7px 11px; font-size:.68rem; }

  /* 手術手順は、スマホでは図と説明を横並びにした1カラムの流れにする。 */
  .cataract-surgery-page .treat-method--illustrated { grid-template-columns:1fr; gap:8px; }
  .cataract-surgery-page .treat-method--illustrated li { min-height:112px; display:grid; grid-template-columns:98px minmax(0,1fr); grid-template-rows:auto 1fr; gap:4px 12px; padding:12px; }
  .cataract-surgery-page .treat-method--illustrated figure { grid-column:1; grid-row:1 / 3; width:98px; height:88px; margin:0; }
  .cataract-surgery-page .treat-method--illustrated h3 { grid-column:2; grid-row:1; min-height:0; margin:0; align-self:end; font-size:.86rem; line-height:1.45; }
  .cataract-surgery-page .treat-method--illustrated p { grid-column:2; grid-row:2; margin:0; font-size:.7rem; line-height:1.58; }
  .cataract-surgery-page .treat-method--illustrated .treat-method__number { position:absolute; top:7px; left:7px; z-index:1; width:24px; height:24px; font-size:.53rem; }
}

/* White content needs to stay above the fixed blue field, including the injected review section. */
.cataract-surgery-page > .medical-supervisor { grid-column:1 / -1; position:relative; z-index:5; }
.cataract-surgery-page .treat-replacement__labels h3 { white-space:nowrap; font-size:clamp(.9rem,1.2vw,1.12rem); }

/* Replace large generic warning boxes with compact, editorial guidance rows. */
.cataract-surgery-page .treat-guidance-note,
.cataract-surgery-page .treat-contact-note { display:grid; grid-template-columns:120px minmax(0,1fr); gap:20px; align-items:start; margin-top:22px; padding:16px 0; border-top:1px solid var(--treat-line); border-bottom:1px solid var(--treat-line); color:#456977; }
.cataract-surgery-page .treat-guidance-note > span,
.cataract-surgery-page .treat-contact-note > strong { color:var(--treat-blue); font-size:.72rem; font-weight:900; letter-spacing:.12em; }
.cataract-surgery-page .treat-contact-note > strong { display:block; white-space:nowrap; }
.cataract-surgery-page .treat-contact-note > strong span { display:block; }
.cataract-surgery-page .treat-contact-note > strong span:first-of-type { display:inline; }
.cataract-surgery-page .treat-guidance-note > span::before,
.cataract-surgery-page .treat-contact-note > strong::before { content:"— "; }
.cataract-surgery-page .treat-guidance-note p,
.cataract-surgery-page .treat-contact-note p { margin:0; font-size:.78rem; line-height:1.8; }
.cataract-surgery-page .treat-contact-note { margin-top:20px; }

@media (min-width:901px) {
  .cataract-surgery-page .treat-timeline { position:relative; }
  .cataract-surgery-page .treat-timeline::before { content:""; position:absolute; top:0; right:14px; left:0; height:2px; background:linear-gradient(90deg,#9bd4e7,#0c91c8); }
  .cataract-surgery-page .treat-timeline::after { content:""; position:absolute; top:-4px; right:1px; width:9px; height:9px; border-top:2px solid #0c91c8; border-right:2px solid #0c91c8; transform:rotate(45deg); }
  .cataract-surgery-page .treat-timeline li { border-top:0; }
  .cataract-surgery-page .treat-timeline li::before { z-index:1; }
}

/* Related links use the page's editorial navigation style, not generic square cards. */
.cataract-surgery-page .sub-link-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 34px; margin-top:20px; border-top:1px solid var(--treat-line); }
.cataract-surgery-page .sub-link-card { position:relative; min-height:0; padding:18px 35px 18px 0; overflow:visible; border:0; border-bottom:1px solid var(--treat-line); border-radius:0; background:transparent; box-shadow:none; }
.cataract-surgery-page .sub-link-card::before { display:none; }
.cataract-surgery-page .sub-link-card::after { content:"→"; position:absolute; top:50%; right:3px; color:var(--treat-blue); font-size:1.05rem; font-weight:800; transform:translateY(-50%); transition:transform .2s ease; }
.cataract-surgery-page .sub-link-card span { color:var(--treat-navy); font-size:1rem; line-height:1.45; }
.cataract-surgery-page .sub-link-card small { margin-top:5px; color:#168cb9; font-size:.72rem; line-height:1.5; }
@media (hover:hover) {
  .cataract-surgery-page .sub-link-card:hover { border-color:var(--treat-blue); transform:none; }
  .cataract-surgery-page .sub-link-card:hover::after { transform:translate(4px,-50%); }
}

@media (max-width:900px) {
  .cataract-surgery-page > .medical-supervisor { display:block; }
  .cataract-surgery-page .treat-guidance-note,
  .cataract-surgery-page .treat-contact-note { grid-template-columns:1fr; gap:5px; margin-top:16px; padding:12px 0; }
  .cataract-surgery-page .treat-contact-note > strong span { display:inline; }
  .cataract-surgery-page .treat-guidance-note p,
  .cataract-surgery-page .treat-contact-note p { font-size:.72rem; line-height:1.68; }
  .cataract-surgery-page .sub-link-grid { grid-template-columns:1fr; gap:0; margin-top:14px; }
  .cataract-surgery-page .sub-link-card { min-height:0; padding:14px 31px 14px 0; border-radius:0; }
  .cataract-surgery-page .sub-link-card span { font-size:.88rem; }
  .cataract-surgery-page .sub-link-card small { margin-top:3px; font-size:.67rem; }
}
@media (max-width:560px) {
  .cataract-surgery-page .treat-replacement__labels h3 { font-size:.69rem; letter-spacing:-.035em; }
}

/* The cataract page loads after shared styles; retain the same mobile CTA bar as the top page. */
@media (max-width:767px) {
  body.is-lower-page .mobile-quick-actions { right:8px !important; bottom:max(6px, env(safe-area-inset-bottom)) !important; left:8px !important; grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr) !important; gap:7px !important; height:44px !important; min-height:44px !important; }
  body.is-lower-page .mobile-quick-actions__phone-wrap,
  body.is-lower-page .mobile-quick-actions__phone-wrap > a,
  body.is-lower-page .mobile-hours-toggle { height:44px !important; min-height:44px !important; }
  body.is-lower-page .mobile-quick-actions__phone-wrap > a,
  body.is-lower-page .mobile-hours-toggle { border-radius:999px !important; box-shadow:0 5px 14px rgba(3,72,111,.2), inset 0 1px 0 rgba(255,255,255,.55) !important; }
  body.is-lower-page .mobile-quick-actions__phone-wrap > a { gap:7px !important; padding:5px 12px !important; border:1px solid #057ab9 !important; background:linear-gradient(135deg,#13a9e1,#0573b5) !important; }
  body.is-lower-page .mobile-quick-actions__phone-wrap > a::after,
  body.is-lower-page .mobile-quick-actions__bubble,
  body.is-lower-page .mobile-hours-toggle__hint,
  body.is-lower-page .mobile-quick-actions__phone-copy small { display:none !important; content:none !important; }
  body.is-lower-page .mobile-quick-actions__phone-wrap > a svg,
  body.is-lower-page .mobile-hours-toggle > svg { width:19px !important; min-width:19px !important; height:19px !important; flex-basis:19px !important; }
  body.is-lower-page .mobile-quick-actions__phone-copy strong { font-size:clamp(13px,3.9vw,16px) !important; line-height:1 !important; }
  body.is-lower-page .mobile-hours-toggle { position:relative !important; grid-template-columns:1fr auto auto 1fr !important; column-gap:6px !important; padding:5px 9px !important; border:1.5px solid #159fd3 !important; background:rgba(255,255,255,.98) !important; }
  body.is-lower-page .mobile-hours-toggle > svg { grid-column:2 !important; justify-self:end !important; }
  body.is-lower-page .mobile-hours-toggle__copy { display:block !important; grid-column:3 !important; justify-self:start !important; text-align:left !important; }
  body.is-lower-page .mobile-hours-toggle__copy strong { font-size:12px !important; line-height:1 !important; }
  body.is-lower-page .mobile-hours-toggle__chevron { position:absolute !important; top:50% !important; right:9px !important; width:20px !important; height:20px !important; transform:translateY(-50%) !important; }
  body.is-lower-page .mobile-hours-toggle__chevron::after { width:5px !important; height:5px !important; margin-top:3px !important; transform:rotate(225deg) !important; }
  body.is-lower-page .mobile-hours-toggle[aria-expanded="true"] .mobile-hours-toggle__chevron { transform:translateY(-50%) rotate(180deg) !important; }
}

/* Prevent decorative layers from creating a horizontal scroll area on mobile. */
@media (max-width:767px) {
  html:has(.cataract-surgery-page),
  body:has(.cataract-surgery-page) {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  .cataract-surgery-page {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: clip !important;
  }

  .cataract-surgery-page .treat-hero--surgery::before {
    left: 0 !important;
    width: 100% !important;
    transform: none !important;
  }

  .cataract-surgery-page .treat-shell,
  .cataract-surgery-page .surgery-mobile-nav,
  .cataract-surgery-page .surgery-content-stage__body {
    max-width: 100% !important;
  }
}

/* Compact, brighter mobile version of the shared treatment-page hero. */
@media (max-width:560px) {
  .cataract-surgery-page .treat-hero--surgery {
    height: 214px !important;
    min-height: 214px !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #128db5 !important;
  }

  .cataract-surgery-page .treat-hero--surgery::before {
    background:
      radial-gradient(circle at 86% 12%, rgba(184, 242, 255, .42), transparent 28%),
      radial-gradient(circle at 14% 115%, rgba(2, 100, 144, .34), transparent 52%),
      linear-gradient(118deg, #087a9e 0%, #1297be 52%, #36bce0 100%) !important;
  }

  .cataract-surgery-page .treat-hero--surgery .treat-hero__stage {
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    width: 100% !important;
    height: 214px !important;
    min-height: 214px !important;
    padding: 24px 20px 19px !important;
    border-radius: 0 !important;
    background: transparent !important;
  }

  .cataract-surgery-page .treat-hero--surgery .treat-hero__stage::before {
    top: 18px !important;
    right: -13px !important;
    bottom: 18px !important;
    width: 35% !important;
    border-left: 1px solid rgba(255, 255, 255, .26) !important;
    background: linear-gradient(90deg, rgba(255,255,255,.03), rgba(255,255,255,.16)) !important;
  }

  .cataract-surgery-page .treat-hero--surgery .treat-hero__stage::after {
    right: 11% !important;
    bottom: -62px !important;
    width: 132px !important;
    height: 132px !important;
    border-color: rgba(236, 252, 255, .42) !important;
  }

  .cataract-surgery-page .surgery-hero__brand {
    top: 18px !important;
    right: 20px !important;
    bottom: auto !important;
    width: 88px !important;
    padding: 0 0 5px !important;
    border-bottom-color: rgba(255, 255, 255, .62) !important;
  }

  .cataract-surgery-page .treat-hero--surgery .treat-breadcrumb { display: none !important; }

  .cataract-surgery-page .surgery-hero__category {
    margin: 22px 0 7px !important;
    color: #d5f6ff !important;
    font-size: .5rem !important;
    letter-spacing: .17em !important;
  }

  .cataract-surgery-page .treat-hero--surgery h1 {
    max-width: none !important;
    color: #fff !important;
    font-size: clamp(1.42rem, 6.8vw, 1.72rem) !important;
    line-height: 1.15 !important;
    letter-spacing: .02em !important;
    text-shadow: 0 2px 10px rgba(0, 79, 112, .12) !important;
  }

  .cataract-surgery-page .treat-hero--surgery .treat-hero__lead {
    max-width: none !important;
    margin-top: 8px !important;
    color: rgba(255, 255, 255, .94) !important;
    font-size: .68rem !important;
    line-height: 1.45 !important;
  }

  .cataract-surgery-page > .surgery-content-stage__body {
    margin-top: -16px !important;
    border-radius: 20px 20px 0 0 !important;
  }
}

/* A single left/right rhythm keeps mobile copy, imagery and navigation aligned. */
@media (max-width:767px) {
  .cataract-surgery-page .treat-shell,
  .cataract-surgery-page .surgery-mobile-nav,
  .cataract-surgery-page > .surgery-content-stage__body > .treat-section .treat-shell,
  .cataract-surgery-page > .surgery-content-stage__body > .treat-final .treat-shell,
  .cataract-surgery-page > .surgery-content-stage__body > .sub-section .sub-container,
  .cataract-surgery-page > .medical-supervisor {
    width: calc(100% - 32px) !important;
    max-width: 720px !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }
}

/* The desktop hero keeps its deep-blue identity, softened with layered light. */
@media (min-width:561px) {
  .cataract-surgery-page .treat-hero--surgery::before {
    background:
      radial-gradient(circle at 84% 18%, rgba(173, 239, 255, .19), transparent 18%),
      radial-gradient(circle at 62% 104%, rgba(44, 181, 219, .26), transparent 35%),
      linear-gradient(112deg, #076982 0%, #0b86aa 54%, #1ca7ca 100%) !important;
  }

  .cataract-surgery-page .treat-hero--surgery .treat-hero__stage::before {
    border-left-color: rgba(233, 251, 255, .24) !important;
    background: linear-gradient(90deg, rgba(255,255,255,.025), rgba(222,249,255,.14)) !important;
  }

  .cataract-surgery-page .treat-hero--surgery .treat-hero__stage::after {
    border-color: rgba(231, 251, 255, .34) !important;
    box-shadow: 0 0 0 20px rgba(220, 248, 255, .035) !important;
  }
}

@media (max-width:767px) {
  .cataract-surgery-page .treat-shell,
  .cataract-surgery-page .surgery-mobile-nav,
  .cataract-surgery-page > .surgery-content-stage__body > .treat-section .treat-shell,
  .cataract-surgery-page > .surgery-content-stage__body > .treat-final .treat-shell,
  .cataract-surgery-page > .surgery-content-stage__body > .sub-section .sub-container,
  .cataract-surgery-page > .medical-supervisor {
    width: calc(100% - 64px) !important;
  }

  /* The caption repeats the surrounding explanation and can collapse to a lone character on small screens. */
  .cataract-surgery-page .treat-surgery-photo figcaption {
    display: none !important;
  }

  .cataract-surgery-page .treat-surgery-photo img {
    border-radius: 14px !important;
  }
}

/* Optical motif: abstract iris and lens rings for the surgery hero. */
.cataract-surgery-page .treat-hero--surgery .treat-hero__stage::before {
  border-left: 1px solid rgba(232, 251, 255, .28) !important;
  background:
    linear-gradient(135deg, rgba(255,255,255,.09), rgba(255,255,255,.015)),
    repeating-linear-gradient(90deg, transparent 0 27px, rgba(229,250,255,.055) 28px),
    repeating-linear-gradient(0deg, transparent 0 27px, rgba(229,250,255,.045) 28px) !important;
  -webkit-mask-image: linear-gradient(90deg, rgba(0,0,0,.45), #000 35%);
  mask-image: linear-gradient(90deg, rgba(0,0,0,.45), #000 35%);
}

.cataract-surgery-page .treat-hero--surgery .treat-hero__stage::after {
  width: 220px !important;
  height: 220px !important;
  border: 1px solid rgba(222, 249, 255, .48) !important;
  border-radius: 50% !important;
  background:
    radial-gradient(circle at 39% 35%, rgba(255,255,255,.92) 0 3px, transparent 4px),
    radial-gradient(circle,
      rgba(5, 99, 139, .28) 0 15px,
      rgba(215, 247, 255, .72) 16px 18px,
      rgba(18, 143, 181, .16) 19px 35px,
      rgba(224, 249, 255, .46) 36px 37px,
      transparent 38px 60px,
      rgba(218, 248, 255, .32) 61px 62px,
      transparent 63px) !important;
  box-shadow:
    inset 0 0 36px rgba(213, 248, 255, .12),
    0 0 0 18px rgba(224, 250, 255, .035) !important;
}

@media (max-width:560px) {
  .cataract-surgery-page .treat-hero--surgery .treat-hero__stage::before {
    top: 16px !important;
    right: -8px !important;
    bottom: 16px !important;
    width: 34% !important;
  }

  .cataract-surgery-page .treat-hero--surgery .treat-hero__stage::after {
    right: 8px !important;
    bottom: -42px !important;
    width: 126px !important;
    height: 126px !important;
    background:
      radial-gradient(circle at 39% 35%, rgba(255,255,255,.92) 0 2px, transparent 3px),
      radial-gradient(circle,
        rgba(5, 99, 139, .28) 0 9px,
        rgba(215, 247, 255, .75) 10px 12px,
        rgba(18, 143, 181, .16) 13px 22px,
        rgba(224, 249, 255, .5) 23px 24px,
        transparent 25px 38px,
        rgba(218, 248, 255, .36) 39px 40px,
        transparent 41px) !important;
    box-shadow:
      inset 0 0 24px rgba(213, 248, 255, .14),
      0 0 0 12px rgba(224, 250, 255, .04) !important;
  }
}

/* Advanced ophthalmic HUD: iris scan, lens axis and focus markers. */
.cataract-surgery-page .surgery-hero__arc {
  position: absolute !important;
  z-index: 0 !important;
  right: 5% !important;
  bottom: -96px !important;
  display: block !important;
  width: 310px !important;
  height: 310px !important;
  border: 1px solid rgba(223, 250, 255, .38) !important;
  border-radius: 50% !important;
  background:
    radial-gradient(circle at 50% 50%, rgba(226,250,255,.78) 0 2px, transparent 3px 17px, rgba(221,249,255,.38) 18px 19px, transparent 20px 41px, rgba(222,249,255,.24) 42px 43px, transparent 44px 72px, rgba(218,248,255,.2) 73px 74px, transparent 75px),
    conic-gradient(from 8deg, transparent 0 8%, rgba(229,251,255,.42) 8% 9%, transparent 9% 24%, rgba(229,251,255,.28) 24% 25%, transparent 25% 48%, rgba(229,251,255,.36) 48% 49%, transparent 49% 74%, rgba(229,251,255,.28) 74% 75%, transparent 75%) !important;
  box-shadow:
    inset 0 0 54px rgba(214, 247, 255, .08),
    0 0 0 12px rgba(221, 249, 255, .025),
    0 0 42px rgba(117, 224, 246, .1) !important;
  opacity: .86 !important;
  pointer-events: none !important;
}

.cataract-surgery-page .surgery-hero__arc::before,
.cataract-surgery-page .surgery-hero__arc::after {
  position: absolute !important;
  content: "" !important;
  pointer-events: none !important;
}

.cataract-surgery-page .surgery-hero__arc::before {
  top: 50% !important;
  right: -34px !important;
  left: -34px !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, rgba(226,250,255,.58) 18%, rgba(255,255,255,.8) 50%, rgba(226,250,255,.58) 82%, transparent) !important;
  box-shadow: 0 -18px 0 rgba(225,249,255,.07), 0 18px 0 rgba(225,249,255,.07) !important;
}

.cataract-surgery-page .surgery-hero__arc::after {
  top: 50% !important;
  left: 50% !important;
  width: 22px !important;
  height: 22px !important;
  border: 1px solid rgba(238,253,255,.88) !important;
  border-radius: 50% !important;
  background: radial-gradient(circle, rgba(238,253,255,.95) 0 2px, rgba(5,103,143,.32) 3px 7px, transparent 8px) !important;
  box-shadow: 0 0 18px rgba(205,246,255,.44) !important;
  transform: translate(-50%, -50%) !important;
}

@media (max-width:560px) {
  .cataract-surgery-page .surgery-hero__arc {
    right: -7px !important;
    bottom: -52px !important;
    width: 150px !important;
    height: 150px !important;
    background:
      radial-gradient(circle at 50% 50%, rgba(226,250,255,.82) 0 2px, transparent 3px 11px, rgba(221,249,255,.42) 12px 13px, transparent 14px 27px, rgba(222,249,255,.28) 28px 29px, transparent 30px 46px, rgba(218,248,255,.22) 47px 48px, transparent 49px),
      conic-gradient(from 8deg, transparent 0 8%, rgba(229,251,255,.44) 8% 10%, transparent 10% 24%, rgba(229,251,255,.3) 24% 26%, transparent 26% 48%, rgba(229,251,255,.38) 48% 50%, transparent 50% 74%, rgba(229,251,255,.3) 74% 76%, transparent 76%) !important;
    opacity: .78 !important;
  }

  .cataract-surgery-page .surgery-hero__arc::before {
    right: -18px !important;
    left: -18px !important;
  }

  .cataract-surgery-page .surgery-hero__arc::after {
    width: 16px !important;
    height: 16px !important;
  }
}

/* Reference-led final hero: luminous optics, flowing light and a quiet brand promise. */
.cataract-surgery-page .treat-hero--surgery::before {
  background:
    radial-gradient(circle at 67% 32%, rgba(202, 247, 255, .36), transparent 15%),
    radial-gradient(circle at 92% -4%, rgba(164, 238, 255, .42), transparent 26%),
    linear-gradient(120deg, #006b9d 0%, #078ccc 48%, #24b8e1 100%) !important;
}

.cataract-surgery-page .treat-hero--surgery .treat-hero__stage::before {
  top: -20% !important;
  right: 8% !important;
  bottom: auto !important;
  width: 48% !important;
  height: 140% !important;
  border: 0 !important;
  background: linear-gradient(112deg, transparent 5%, rgba(232,251,255,.03) 30%, rgba(235,252,255,.22) 49%, rgba(255,255,255,.04) 68%, transparent 82%) !important;
  transform: rotate(8deg) !important;
  -webkit-mask-image: linear-gradient(180deg, transparent, #000 22%, #000 75%, transparent) !important;
  mask-image: linear-gradient(180deg, transparent, #000 22%, #000 75%, transparent) !important;
}

.cataract-surgery-page .treat-hero--surgery .treat-hero__stage::after {
  right: -12% !important;
  bottom: -205px !important;
  width: 128% !important;
  height: 280px !important;
  border: 1px solid rgba(225, 250, 255, .58) !important;
  border-radius: 50% !important;
  background: transparent !important;
  box-shadow:
    0 -11px 0 rgba(223, 250, 255, .09),
    0 -30px 0 rgba(217, 248, 255, .045),
    0 -52px 0 rgba(210, 246, 255, .025) !important;
  transform: rotate(-5deg) !important;
}

.cataract-surgery-page .surgery-hero__arc {
  right: 20% !important;
  bottom: -72px !important;
  width: 286px !important;
  height: 286px !important;
  opacity: .72 !important;
}

.cataract-surgery-page .surgery-hero__promise {
  position: absolute !important;
  z-index: 2 !important;
  top: 50% !important;
  right: 2.5% !important;
  display: grid !important;
  gap: 5px !important;
  margin: 0 !important;
  padding: 4px 0 4px 17px !important;
  color: rgba(255,255,255,.94) !important;
  border-left: 1px solid rgba(230,250,255,.66) !important;
  font-size: .72rem !important;
  font-weight: 650 !important;
  letter-spacing: .12em !important;
  line-height: 1.35 !important;
  text-shadow: 0 2px 10px rgba(0,74,112,.2) !important;
  transform: translateY(-50%) !important;
}

.cataract-surgery-page .surgery-hero__promise span {
  display: block !important;
  white-space: nowrap !important;
}

@media (max-width:560px) {
  .cataract-surgery-page .treat-hero--surgery::before {
    background:
      radial-gradient(circle at 68% 26%, rgba(210, 248, 255, .38), transparent 17%),
      radial-gradient(circle at 100% 0%, rgba(168, 238, 255, .45), transparent 31%),
      linear-gradient(124deg, #02759f 0%, #0796c8 52%, #31bfe0 100%) !important;
  }

  .cataract-surgery-page .treat-hero--surgery .treat-hero__stage::before {
    top: -30% !important;
    right: 4% !important;
    width: 52% !important;
    height: 155% !important;
  }

  .cataract-surgery-page .treat-hero--surgery .treat-hero__stage::after {
    right: -36% !important;
    bottom: -89px !important;
    width: 150% !important;
    height: 122px !important;
  }

  .cataract-surgery-page .surgery-hero__arc {
    right: 15% !important;
    bottom: -46px !important;
    width: 146px !important;
    height: 146px !important;
    opacity: .68 !important;
  }

  .cataract-surgery-page .surgery-hero__promise {
    top: 52% !important;
    right: 13px !important;
    gap: 3px !important;
    padding-left: 9px !important;
    font-size: .49rem !important;
    letter-spacing: .08em !important;
    line-height: 1.25 !important;
  }
}

.cataract-surgery-page .surgery-hero__arc > img {
  position: absolute !important;
  z-index: 2 !important;
  top: 50% !important;
  left: 50% !important;
  display: block !important;
  width: auto !important;
  height: 64px !important;
  max-width: none !important;
  opacity: .9 !important;
  clip-path: inset(0 72% 0 0) !important;
  filter: drop-shadow(0 0 12px rgba(223, 249, 255, .42)) !important;
  transform: translate(-14%, -50%) !important;
}

@media (max-width:560px) {
  .cataract-surgery-page .surgery-hero__arc > img {
    height: 36px !important;
    filter: drop-shadow(0 0 8px rgba(223, 249, 255, .4)) !important;
  }
}

/* Oversized logo mark: a restrained, low-contrast background layer. */
.cataract-surgery-page .surgery-hero__watermark {
  position: absolute;
  z-index: 0;
  top: -96px;
  right: -112px;
  display: block;
  width: 510px;
  height: 510px;
  overflow: hidden;
  opacity: .13;
  pointer-events: none;
}

.cataract-surgery-page .surgery-hero__watermark img {
  position: absolute;
  top: 50%;
  left: -3px;
  display: block;
  width: auto;
  height: 450px;
  max-width: none;
  filter: saturate(.75) brightness(1.25);
  transform: translateY(-50%);
}

@media (max-width:560px) {
  .cataract-surgery-page .surgery-hero__watermark {
    top: -43px;
    right: -66px;
    width: 275px;
    height: 275px;
    opacity: .12;
  }

  .cataract-surgery-page .surgery-hero__watermark img {
    height: 245px;
  }
}

/* On desktop, make the clinic mark a generous, deliberately cropped
   background layer across the pale-blue side of the hero. */
@media (min-width:901px) {
  .cataract-surgery-page .surgery-hero__watermark {
    top:-108px;
    right:-142px;
    width:640px;
    height:560px;
    opacity:.14;
  }

  .cataract-surgery-page .surgery-hero__watermark img {
    top:50%;
    left:0;
    height:500px;
    transform:translateY(-50%);
  }
}

/* Let the shared treatment hero artwork fill its full-bleed blue backdrop.
   Keep the copy aligned with the site's 1180px content grid. */
@media (min-width:901px) {
  .cataract-surgery-page .treat-hero--surgery .treat-hero__stage {
    left: 50%;
    top: -26px;
    width: 100vw;
    max-width: none;
    height: min(480px, calc(100vh - 122px));
    min-height: 0;
    margin: 0;
    padding-top: 74px;
    padding-right: calc(max(32px, (100vw - 1180px) / 2) + 54px);
    padding-left: calc(max(32px, (100vw - 1180px) / 2) + 54px);
    border-radius: 0;
    transform: translateX(-50%);
  }

  .cataract-surgery-page .treat-hero--surgery .treat-hero__stage::after {
    bottom: -67px !important;
  }

  .cataract-surgery-page .surgery-hero__brand {
    right: calc(max(32px, (100vw - 1180px) / 2) + 54px);
  }

  .cataract-surgery-page .surgery-hero__watermark {
    right: 0;
  }
}

/* Use the same floating mobile contact menu as the top page.  This sheet is
   loaded only by the cataract-surgery page, so other lower pages keep their
   own presentation. */
@media (max-width:767px) {
  body.is-lower-page .mobile-quick-actions {
    right:10px !important;
    bottom:max(7px, env(safe-area-inset-bottom)) !important;
    left:10px !important;
    z-index:120 !important;
    grid-template-columns:minmax(0, 1.08fr) minmax(0, .92fr) !important;
    gap:9px !important;
    height:55px !important;
    min-height:55px !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
  }

  body.is-lower-page .mobile-quick-actions__phone-wrap,
  body.is-lower-page .mobile-quick-actions__phone-wrap > a,
  body.is-lower-page .mobile-hours-toggle {
    height:55px !important;
    min-height:55px !important;
  }

  body.is-lower-page .mobile-quick-actions__phone-wrap > a,
  body.is-lower-page .mobile-hours-toggle {
    border-radius:14px !important;
    box-shadow:0 9px 24px rgba(3,72,111,.23), 0 2px 5px rgba(3,72,111,.12), inset 0 1px 0 rgba(255,255,255,.72) !important;
  }

  body.is-lower-page .mobile-quick-actions__phone-wrap > a {
    gap:9px !important;
    border:1px solid #0786c8 !important;
    background:linear-gradient(145deg, #12a6e4 0%, #0577bd 67%, #0467aa 100%) !important;
  }

  body.is-lower-page .mobile-quick-actions__phone-wrap > a::after {
    top:5px !important;
    left:10px !important;
    padding:1px 5px !important;
    border-radius:4px !important;
    background:rgba(255,255,255,.16) !important;
    font-size:8px !important;
  }

  body.is-lower-page .mobile-quick-actions__phone-wrap > a svg,
  body.is-lower-page .mobile-hours-toggle > svg {
    width:21px !important;
    min-width:21px !important;
    height:21px !important;
    flex-basis:21px !important;
  }

  body.is-lower-page .mobile-quick-actions__phone-copy strong {
    font-size:clamp(14px, 4.15vw, 17px) !important;
  }

  body.is-lower-page .mobile-hours-toggle {
    grid-template-columns:22px minmax(0, 1fr) 22px !important;
    gap:7px !important;
    padding:6px 9px !important;
    border:1px solid #4aaad1 !important;
    background:linear-gradient(145deg, rgba(255,255,255,.99), rgba(225,246,254,.98)) !important;
    color:#075f93 !important;
  }

  body.is-lower-page .mobile-hours-toggle__copy {
    display:grid !important;
    gap:1px !important;
    text-align:left !important;
  }

  body.is-lower-page .mobile-hours-toggle__copy strong {
    font-size:13px !important;
    line-height:1.15 !important;
  }

  body.is-lower-page .mobile-hours-toggle__chevron {
    width:22px !important;
    height:22px !important;
  }

  body.is-lower-page .mobile-hours-toggle__chevron::after {
    width:6px !important;
    height:6px !important;
  }
}

@media (max-width:760px) {
  .cataract-surgery-page .treat-record { grid-template-columns:1fr 1fr; }
  .cataract-surgery-page .treat-record__main,
  .cataract-surgery-page .treat-record__total { min-height:0; padding:19px 14px; }
  .cataract-surgery-page .treat-record strong { font-size:2rem; }
  .cataract-surgery-page .treat-record span { font-size:.58rem; letter-spacing:.09em; }
  .cataract-surgery-page .treat-record p { margin-top:7px; font-size:.64rem; line-height:1.55; }
  .cataract-surgery-page .treat-record__note { padding:13px 15px; font-size:.71rem; line-height:1.65; }
  .cataract-surgery-page .treat-fee-grid { grid-template-columns:1fr; gap:8px; }
  .cataract-surgery-page .treat-fee-grid article { min-height:0; padding:18px 16px; }
  .cataract-surgery-page .treat-fee-grid__eyebrow { margin-bottom:8px; font-size:.56rem; }
  .cataract-surgery-page .treat-fee-grid h3 { margin-bottom:6px; font-size:.9rem; }
  .cataract-surgery-page .treat-fee-grid article > p:not(.treat-fee-grid__eyebrow) { font-size:.73rem; line-height:1.68; }
  .cataract-surgery-page .treat-fee-grid a { margin-top:10px; font-size:.7rem; }
  .cataract-surgery-page .treat-fee-note { margin-top:10px; font-size:.65rem; }
  .cataract-surgery-page .treat-followup { margin-top:21px; padding:18px 15px; }
  .cataract-surgery-page .treat-followup > div { grid-template-columns:1fr; gap:7px; }
  .cataract-surgery-page .treat-followup h3 { font-size:1rem; }
  .cataract-surgery-page .treat-followup > div > p:last-child { font-size:.73rem; line-height:1.65; }
  .cataract-surgery-page .treat-followup ol { margin-top:20px; grid-template-columns:1fr; gap:0; }
  .cataract-surgery-page .treat-followup li { min-height:48px; padding:0 0 0 25px; display:grid; grid-template-columns:108px 1fr; align-items:center; border-top:0; border-left:2px solid #9bd4e7; text-align:left; }
  .cataract-surgery-page .treat-followup li::before { top:50%; left:-6px; transform:translateY(-50%); }
  .cataract-surgery-page .treat-followup li:last-child::after { content:""; position:absolute; left:-1px; bottom:-8px; width:0; height:0; border-right:6px solid transparent; border-left:6px solid transparent; border-top:9px solid #9bd4e7; transform:translateX(-50%); }
  .cataract-surgery-page .treat-followup li p { margin:0; font-size:.64rem; }
  .cataract-surgery-page .treat-aftercare-notes { margin-top:14px; padding:18px 0; grid-template-columns:1fr; gap:14px; }
  .cataract-surgery-page .treat-aftercare-notes h3 { font-size:1rem; }
  .cataract-surgery-page .treat-aftercare-notes ul { grid-template-columns:1fr; }
  .cataract-surgery-page .treat-aftercare-notes li,
  .cataract-surgery-page .treat-aftercare-notes li:nth-last-child(-n+2) { padding:9px 0; grid-template-columns:84px minmax(0,1fr); gap:8px; border-bottom:1px solid var(--treat-line); }
  .cataract-surgery-page .treat-aftercare-notes li:last-child { border-bottom:0; }
  .cataract-surgery-page .treat-aftercare-notes strong { font-size:.69rem; }
  .cataract-surgery-page .treat-aftercare-notes span { font-size:.69rem; line-height:1.58; }
}

/* Final mobile pass: keep the overview compact and give the surgery-day steps a clearer reading rhythm. */
@media (max-width:560px) {
  .cataract-surgery-page #before .treat-timeline { margin-left:4px; }
  .cataract-surgery-page #before .treat-timeline li { padding-bottom:12px; }
  .cataract-surgery-page #before .treat-timeline li:last-child { padding-bottom:0; }

  .cataract-surgery-page #surgery-day .surgery-day-steps.treat-day {
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
    overflow:visible;
    border:0;
    border-radius:0;
    background:transparent;
  }
  .cataract-surgery-page #surgery-day .surgery-day-steps.treat-day li {
    min-height:0;
    padding:14px 13px;
    display:grid;
    grid-template-columns:96px minmax(0,1fr);
    gap:12px;
    border:1px solid var(--treat-line);
    border-radius:12px;
    background:#fff;
    box-shadow:0 4px 12px rgba(18,105,139,.05);
  }
  .cataract-surgery-page #surgery-day .surgery-day-step__media { height:82px; }
  .cataract-surgery-page #surgery-day .surgery-day-steps.treat-day li:nth-child(even) { background:#fbfeff; }
  .cataract-surgery-page #surgery-day .surgery-day-steps.treat-day li > span { font-size:.82rem; line-height:1.35; }
  .cataract-surgery-page #surgery-day .treat-day h3 { margin:0 0 4px; font-size:.92rem; line-height:1.45; }
  .cataract-surgery-page #surgery-day .treat-day p { font-size:.72rem; line-height:1.62; }

  .cataract-surgery-page .treat-lens-rows article { grid-template-columns:108px minmax(0,1fr); gap:8px 14px; }
  .cataract-surgery-page .treat-lens-rows figure { height:126px; }
  .cataract-surgery-page .treat-lens-rows h3 { font-size:.9rem; line-height:1.45; }
  .cataract-surgery-page .treat-lens-rows p { font-size:.73rem; line-height:1.65; }
  .cataract-surgery-page .treat-lens-check { padding:17px 15px; }
  .cataract-surgery-page .treat-lens-check h3 { white-space:normal; letter-spacing:0; line-height:1.45; }

  .cataract-surgery-page .treat-record__main { padding:21px 15px; }
  .cataract-surgery-page .treat-record__total { padding:18px 13px; }
  .cataract-surgery-page .treat-record__main strong { font-size:2.18rem; line-height:1; }
  .cataract-surgery-page .treat-record__main p { margin-top:9px; font-size:.68rem; font-weight:700; }
  .cataract-surgery-page .treat-record__note { margin-top:1px; }

  .cataract-surgery-page .treat-final { padding:36px 0 44px; }
  .cataract-surgery-page .treat-final .treat-button-row { grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
  .cataract-surgery-page .treat-final .treat-button:first-child { min-height:52px; grid-column:1 / -1; font-size:.88rem; }
  .cataract-surgery-page .treat-final .treat-button.is-ghost { min-height:44px; padding-inline:7px; font-size:.71rem; }
}

/* The treatment page stylesheet loads after shared chrome styles. Keep its CTA proportions identical to the top page. */
@media (max-width:767px) {
  body.is-lower-page .mobile-quick-actions { grid-template-columns:minmax(0,.8fr) minmax(0,1fr) !important; }
  body.is-lower-page .mobile-quick-actions__phone-wrap { width:auto !important; min-width:0 !important; }
  body.is-lower-page .mobile-hours-toggle__copy { display:block !important; visibility:visible !important; opacity:1 !important; width:auto !important; min-width:0 !important; }
  body.is-lower-page .mobile-hours-toggle__copy strong { display:block !important; color:#075f93 !important; white-space:nowrap !important; }
}

/* Explicit placement keeps the two fixed actions side by side on this page. */
@media (max-width:767px) {
  body.is-lower-page > nav.mobile-quick-actions { display:grid !important; grid-template-columns:minmax(0,.8fr) minmax(0,1fr) !important; align-items:stretch !important; }
  body.is-lower-page > nav.mobile-quick-actions > .mobile-quick-actions__phone-wrap { display:block !important; grid-column:1 !important; grid-row:1 !important; width:auto !important; min-width:0 !important; }
  body.is-lower-page > nav.mobile-quick-actions > .mobile-hours-toggle { display:grid !important; grid-column:2 !important; grid-row:1 !important; width:auto !important; min-width:0 !important; grid-template-columns:19px minmax(0,1fr) 20px !important; align-items:center !important; gap:5px !important; }
  body.is-lower-page > nav.mobile-quick-actions > .mobile-hours-toggle > svg { grid-column:auto !important; justify-self:auto !important; }
  body.is-lower-page > nav.mobile-quick-actions > .mobile-hours-toggle .mobile-hours-toggle__copy { display:block !important; grid-column:auto !important; justify-self:auto !important; overflow:visible !important; text-align:center !important; }
}

/* Final layout lock: never allow the fixed actions to overlap on lower pages. */
@media (max-width:767px) {
  body.is-lower-page > nav.mobile-quick-actions { display:flex !important; align-items:stretch !important; gap:8px !important; }
  body.is-lower-page > nav.mobile-quick-actions > .mobile-quick-actions__phone-wrap { flex:0 0 calc((100% - 8px) * .44) !important; }
  body.is-lower-page > nav.mobile-quick-actions > .mobile-hours-toggle { flex:1 1 0 !important; }
}
