.lca-page { --lca-paper:#fbfaf7; --lca-warm-line:#e9e1d3; }
.lca-page .booking-label-short { display:none; }
.lca-page .booking-label-full { display:inline; }
.lca-page .lca-opening { padding:32px 0 0; background:linear-gradient(180deg,#fbfaf7 0%,#fff 100%); }
.lca-page .lca-breadcrumb { display:flex; flex-wrap:wrap; gap:8px 12px; align-items:center; font-size:11px; line-height:1.6; color:var(--muted); margin-bottom:36px; }
.lca-page .lca-breadcrumb a { text-decoration:none; }
.lca-page .lca-breadcrumb a:hover { text-decoration:underline; }
.lca-page .lca-opening .eyebrow { margin-bottom:17px; }
.lca-page h1 { max-width:1040px; font-size:clamp(32px,3.8vw,49px); line-height:1.22; letter-spacing:-1.65px; font-weight:500; margin:0 0 23px; }
.lca-page h1 span { display:block; font-size:.72em; letter-spacing:-.8px; line-height:1.4; margin-top:8px; }
.lca-page .lca-meta { display:flex; flex-wrap:wrap; gap:10px; font-size:11px; color:var(--muted); align-items:center; margin-bottom:32px; }
.lca-page .lca-meta>span:first-child { color:var(--navy); font-weight:600; }
.lca-page .lca-hero-figure { margin:0; }
.lca-page .lca-zoom-link { display:block; position:relative; overflow:hidden; border-radius:5px; border:1px solid var(--lca-warm-line); background:#faf9f5; }
.lca-page .lca-zoom-link>img { display:block; width:100%; height:auto; }
.lca-page .lca-zoom-label { position:absolute; right:15px; bottom:15px; display:flex; align-items:center; gap:8px; padding:10px 14px; background:#fff; border:1px solid var(--line); border-radius:4px; font-size:11px; font-weight:600; box-shadow:0 3px 15px #001a4110; }
.lca-page .lca-zoom-label>span { font-size:19px; line-height:1; }
.lca-page .lca-hero-figure>figcaption { margin:12px 0 0; color:var(--muted); font-size:11px; line-height:1.75; max-width:880px; }
.lca-page .lca-reading-layout { display:grid; grid-template-columns:210px minmax(0,1fr); gap:60px; align-items:start; padding-top:57px; padding-bottom:65px; }
.lca-page .lca-reading { min-width:0; max-width:850px; font-size:16px; line-height:1.9; }
.lca-page .lca-reading p { margin:0 0 20px; }
.lca-page .lca-reading h2 { font-size:clamp(28px,2.7vw,35px); line-height:1.3; font-weight:500; margin:0 0 24px; letter-spacing:-.9px; }
.lca-page .lca-reading h3 { font-size:22px; line-height:1.4; font-weight:600; letter-spacing:-.45px; margin:31px 0 15px; }
.lca-page .lca-reading h4 { color:var(--navy); font-size:16px; line-height:1.6; font-weight:600; margin:22px 0 14px; letter-spacing:-.2px; }
.lca-page .lca-reading strong { color:var(--navy); font-weight:600; }
.lca-page .lca-lead { font-size:19px; line-height:1.8; font-weight:500; color:var(--navy); }
.lca-page .lca-introduction { padding-bottom:5px; }
.lca-page .lca-section { padding-top:45px; margin-top:38px; border-top:1px solid var(--line); scroll-margin-top:117px; }
.lca-page .lca-section>p:last-child { margin-bottom:0; }
.lca-page .lca-toc { position:sticky; top:130px; font-size:12px; align-self:start; }
.lca-page .lca-toc details { border-top:2px solid var(--gold); padding:18px 0 0; }
.lca-page .lca-toc summary { list-style:none; color:var(--navy); text-transform:uppercase; font-size:10px; letter-spacing:1.2px; font-weight:700; cursor:pointer; padding:4px 0 16px; }
.lca-page .lca-toc summary::-webkit-details-marker { display:none; }
.lca-page .lca-toc ol { list-style:none; margin:0; padding:0; }
.lca-page .lca-toc li { margin:0; }
.lca-page .lca-toc a { display:flex; align-items:baseline; gap:13px; text-decoration:none; line-height:1.65; padding:10px 0; color:var(--muted); }
.lca-page .lca-toc a>span { font-size:10px; color:#8c6a32; }
.lca-page .lca-toc a:hover,.lca-page .lca-toc a[aria-current="location"] { color:var(--navy); text-decoration:underline; text-decoration-color:var(--gold); text-underline-offset:5px; }
.lca-page .lca-cite { white-space:nowrap; color:#64502d; font-size:.76em; font-weight:600; vertical-align:super; line-height:0; text-decoration:none; padding:0 2px; }
.lca-page .lca-cite:hover { text-decoration:underline; color:var(--navy); }
.lca-page .lca-anatomy { margin:31px 0 35px; }
.lca-page .lca-point { border-left:3px solid var(--gold); background:var(--lca-paper); padding:20px 24px; margin:23px 0 31px; font-size:14px; }
.lca-page .lca-point p:last-child { margin-bottom:0; }
.lca-page .lca-warning-marker { display:inline-flex; justify-content:center; align-items:center; border:1px solid #8c6a32; border-radius:50%; width:18px; height:18px; vertical-align:middle; margin-right:5px; font-size:0; color:#70511e; }
.lca-page .lca-warning-marker::before { content:'!'; font-size:12px; font-weight:600; }
.lca-page .lca-principles { list-style:none; margin:18px 0 29px; padding:0; counter-reset:principle; border-top:1px solid var(--lca-warm-line); }
.lca-page .lca-principles>li { position:relative; counter-increment:principle; margin:0; padding:16px 2px 16px 40px; border-bottom:1px solid var(--lca-warm-line); font-size:15px; line-height:1.8; }
.lca-page .lca-principles>li::before { content:counter(principle,decimal-leading-zero); position:absolute; left:0; top:18px; color:#8c6a32; font-weight:600; font-size:11px; }
.lca-page .lca-grafts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; list-style:none; margin:0 0 25px; padding:0; }
.lca-page .lca-grafts li { border-top:2px solid var(--gold); padding:13px 0 0; font-size:13px; line-height:1.8; }
.lca-page .lca-rehab-steps { list-style:none; margin:27px 0 32px; padding:0; }
.lca-page .lca-rehab-steps>li { display:grid; grid-template-columns:40px minmax(0,1fr); gap:19px; position:relative; padding:0 0 27px; }
.lca-page .lca-rehab-steps>li::before { content:''; position:absolute; top:38px; bottom:7px; left:18px; width:1px; background:var(--lca-warm-line); }
.lca-page .lca-rehab-steps>li:last-child { padding-bottom:0; }
.lca-page .lca-rehab-steps>li:last-child::before { display:none; }
.lca-page .lca-step-number { display:flex; align-items:center; justify-content:center; border:1px solid var(--lca-warm-line); border-radius:50%; width:38px; height:38px; font-size:11px; color:#805c22; background:var(--lca-paper); }
.lca-page .lca-rehab-steps h4 { margin:3px 0 8px; font-size:17px; }
.lca-page .lca-rehab-steps p { font-size:15px; line-height:1.85; margin:0; }
.lca-page .lca-outlook { margin:38px 0 12px; padding-top:32px; display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); gap:35px; align-items:center; border-top:1px solid var(--line); }
.lca-page .lca-outlook figure { margin:0; }
.lca-page .lca-outlook img { display:block; width:100%; height:auto; border-radius:3px; }
.lca-page .lca-outlook figcaption { font-size:10px; line-height:1.7; color:var(--muted); margin-top:10px; }
.lca-page .lca-outlook-message::before { content:''; display:block; width:40px; height:2px; background:var(--gold); margin-bottom:24px; }
.lca-page .lca-outlook-message p { font-family:Georgia,'Times New Roman',serif; font-size:16px; line-height:1.5; color:var(--navy); margin:0; }
.lca-page .lca-faq details { border-top:1px solid var(--line); }
.lca-page .lca-faq details:last-child { border-bottom:1px solid var(--line); }
.lca-page .lca-faq summary { position:relative; list-style:none; padding:19px 37px 19px 0; cursor:pointer; font-size:15px; font-weight:600; color:var(--navy); line-height:1.7; }
.lca-page .lca-faq summary::-webkit-details-marker { display:none; }
.lca-page .lca-faq summary::after { content:'+'; position:absolute; right:4px; top:18px; font-size:22px; font-weight:400; line-height:1.2; }
.lca-page .lca-faq details[open] summary::after { content:'−'; }
.lca-page .lca-faq .lca-answer { padding:0 20px 19px 0; font-size:14px; line-height:1.9; color:var(--muted); }
.lca-page .lca-faq .lca-answer p { margin:0; }
.lca-page .lca-related { background:var(--lca-paper); padding:22px 24px; font-size:12px; line-height:1.9; margin:35px 0 0; color:var(--muted); }
.lca-page .lca-related p { margin:0; }
.lca-page .lca-related a { color:var(--navy); }
.lca-page .lca-references { margin-top:32px; padding-top:32px; }
.lca-page .lca-references h2 { font-size:25px; }
.lca-page .lca-references>details>summary { display:flex; justify-content:space-between; align-items:center; gap:20px; cursor:pointer; padding:17px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); color:var(--navy); list-style:none; font-size:13px; font-weight:600; }
.lca-page .lca-references>details>summary::-webkit-details-marker { display:none; }
.lca-page .lca-references>details>summary::after { content:'+'; font-size:21px; font-weight:400; }
.lca-page .lca-references>details[open]>summary::after { content:'−'; }
.lca-page .lca-ref-list { list-style:none; margin:0; padding:0; }
.lca-page .lca-ref-list>li { display:grid; grid-template-columns:33px minmax(0,1fr); gap:11px; padding:21px 0; border-bottom:1px solid var(--line); font-size:12px; line-height:1.8; scroll-margin-top:117px; overflow-wrap:anywhere; }
.lca-page .lca-ref-number { font-weight:600; color:var(--navy); }
.lca-page .lca-ref-list p { margin:0 0 5px; }
.lca-page .lca-ref-list p:last-child { margin:0; }
.lca-page .lca-ref-note { color:var(--muted); font-size:11px; }
.lca-page .lca-ref-list>li:target { background:#f8f4eb; box-shadow:0 0 0 9px #f8f4eb; }
.lca-page .lca-site-footer { padding:28px 0 20px; border-top:1px solid var(--line); background:var(--lca-paper); }
.lca-page .lca-footer-inner { display:flex; align-items:center; justify-content:space-between; gap:26px; margin-bottom:18px; }
.lca-page .lca-footer-inner>a:first-child { width:155px; flex-shrink:0; }
.lca-page .lca-footer-inner img { width:155px; height:auto; display:block; mix-blend-mode:multiply; }
.lca-page .lca-footer-inner strong { font-size:12px; font-weight:600; }
.lca-page .lca-footer-inner p,.lca-page .lca-footer-inner>a:last-child { font-size:11px; color:var(--muted); margin:4px 0 0; }
.lca-page .lca-back-top { display:flex; position:fixed; right:22px; bottom:22px; align-items:center; justify-content:center; width:42px; height:42px; background:#fff; border:1px solid var(--line); color:var(--navy); border-radius:50%; text-decoration:none; font-size:19px; z-index:15; box-shadow:0 2px 10px #001a4109; }
.lca-page .lca-image-dialog { border:0; padding:0; width:min(1600px,96vw); max-width:96vw; max-height:94dvh; border-radius:7px; background:#faf9f5; color:var(--navy); box-shadow:0 20px 90px #0004; }
.lca-page .lca-image-dialog::backdrop { background:#001a41d4; }
.lca-page .lca-dialog-tools { position:sticky; top:0; z-index:1; display:flex; justify-content:space-between; align-items:center; gap:20px; padding:12px 19px; background:#fff; border-bottom:1px solid var(--line); font-size:12px; }
.lca-page .lca-dialog-tools button { font:inherit; border:1px solid var(--line); background:#fff; color:var(--navy); min-height:42px; padding:7px 12px; cursor:pointer; border-radius:4px; }
.lca-page .lca-dialog-tools button>span { font-size:22px; line-height:1; margin-left:8px; vertical-align:middle; }
.lca-page .lca-dialog-image img { width:100%; height:auto; display:block; }
.lca-page .lca-image-dialog>p { padding:11px 17px; margin:0; font-size:11px; color:var(--muted); }
@media (max-width:1120px) {
  .lca-page .lca-reading-layout { grid-template-columns:180px minmax(0,1fr); gap:35px; }
  .lca-page .lca-toc { font-size:11px; }
  .lca-page .lca-outlook { gap:26px; }
  .lca-page .lca-outlook-message p { font-size:26px; }
}
@media (max-width:960px) {
  .lca-page .lca-reading-layout { display:block; padding-top:30px; }
  .lca-page .lca-reading { max-width:800px; margin-inline:auto; }
  .lca-page .lca-toc { position:static; max-width:800px; margin:0 auto 34px; }
  .lca-page .lca-toc details { border:1px solid var(--line); border-radius:4px; padding:0 17px; }
  .lca-page .lca-toc summary { position:relative; padding:15px 0; font-size:11px; }
  .lca-page .lca-toc summary::after { content:'+'; position:absolute; right:0; top:9px; font-size:22px; font-weight:400; }
  .lca-page .lca-toc details[open] summary::after { content:'−'; }
  .lca-page .lca-toc ol { display:grid; grid-template-columns:1fr 1fr; padding-bottom:12px; }
  .lca-page .lca-toc a { font-size:12px; }
  .lca-page .lca-section { scroll-margin-top:103px; }
  .lca-page .lca-ref-list>li { scroll-margin-top:103px; }
  .lca-page .header-tools>.booking-header { display:inline-flex; }
  .lca-page .booking-label-full { display:none; }
  .lca-page .booking-label-short { display:inline; }
  .lca-page .header-tools>.button { min-height:42px; padding:8px 10px; font-size:10px; gap:6px; }
  .lca-page .header-tools { gap:13px; }
}
@media (max-width:680px) {
  .lca-page .lca-opening { padding-top:23px; }
  .lca-page .lca-breadcrumb { font-size:10px; margin-bottom:28px; gap:7px; }
  .lca-page h1 { font-size:32px; line-height:1.23; letter-spacing:-1px; margin-bottom:20px; }
  .lca-page h1 span { font-size:.69em; line-height:1.45; letter-spacing:-.5px; margin-top:10px; }
  .lca-page .lca-meta { font-size:10px; gap:8px; margin-bottom:25px; }
  .lca-page .lca-hero-figure { margin-inline:-7px; }
  .lca-page .lca-hero-figure>figcaption { margin-inline:7px; font-size:10px; line-height:1.7; }
  .lca-page .lca-zoom-label { right:8px; bottom:8px; padding:7px 9px; font-size:9px; gap:5px; }
  .lca-page .lca-zoom-label>span { font-size:14px; }
  .lca-page .lca-reading-layout { padding-top:27px; padding-bottom:40px; }
  .lca-page .lca-reading { font-size:15px; line-height:1.9; }
  .lca-page .lca-lead { font-size:17px; line-height:1.85; }
  .lca-page .lca-reading h2 { font-size:27px; letter-spacing:-.7px; line-height:1.35; }
  .lca-page .lca-reading h3 { font-size:20px; line-height:1.4; margin-top:28px; }
  .lca-page .lca-reading h4 { font-size:15px; }
  .lca-page .lca-section { padding-top:33px; margin-top:31px; scroll-margin-top:91px; }
  .lca-page .lca-point { font-size:13px; padding:18px; }
  .lca-page .lca-principles>li { font-size:14px; padding-left:32px; }
  .lca-page .lca-grafts { grid-template-columns:1fr; gap:11px; }
  .lca-page .lca-grafts li { border-top-width:1px; padding-top:11px; font-size:14px; }
  .lca-page .lca-rehab-steps>li { grid-template-columns:33px minmax(0,1fr); gap:13px; padding-bottom:26px; }
  .lca-page .lca-rehab-steps>li::before { left:15px; }
  .lca-page .lca-step-number { width:32px; height:32px; font-size:10px; }
  .lca-page .lca-rehab-steps h4 { font-size:16px; margin-top:0; }
  .lca-page .lca-rehab-steps p { font-size:14px; }
  .lca-page .lca-outlook { grid-template-columns:1fr; gap:25px; margin-top:28px; padding-top:26px; }
  .lca-page .lca-outlook figure { max-width:370px; margin-inline:auto; }
  .lca-page .lca-outlook-message { max-width:430px; margin-inline:auto; }
  .lca-page .lca-outlook-message p { font-size:25px; }
  .lca-page .lca-outlook-message::before { margin-bottom:17px; }
  .lca-page .lca-faq summary { font-size:14px; }
  .lca-page .lca-faq .lca-answer { font-size:13px; }
  .lca-page .lca-related { padding:19px; font-size:11px; }
  .lca-page .lca-references h2 { font-size:23px; }
  .lca-page .lca-ref-list>li { grid-template-columns:28px minmax(0,1fr); gap:8px; scroll-margin-top:91px; }
  .lca-page .lca-footer-inner { display:grid; grid-template-columns:1fr; gap:12px; }
  .lca-page .lca-footer-inner>a:first-child,.lca-page .lca-footer-inner img { width:145px; }
  .lca-page .lca-back-top { right:12px; bottom:13px; width:38px; height:38px; }
  .lca-page .lca-dialog-tools { padding:8px 10px; gap:12px; font-size:10px; }
  .lca-page .lca-dialog-tools button { font-size:11px; flex-shrink:0; }
  .lca-page .lca-dialog-image { overflow:auto; }
  .lca-page .lca-dialog-image img { min-width:760px; }
  .lca-page .lca-image-dialog>p { font-size:10px; }
}
@media (max-width:370px) {
  .lca-page .header-tools { gap:9px; }
  .lca-page .header-tools>.button { font-size:9px; padding:7px; }
  .lca-page .header-tools>.button>span:last-child { display:none; }
  .lca-page h1 { font-size:30px; }
  .lca-page .lca-toc ol { grid-template-columns:1fr; }
}
@media (prefers-reduced-motion:reduce) { .lca-page { scroll-behavior:auto; } }
@media print {
  .lca-page .lca-toc,.lca-page .lca-site-footer,.lca-page .lca-back-top,.lca-page .lca-zoom-label,.lca-page .lca-image-dialog { display:none!important; }
  .lca-page .lca-opening { padding:0; background:#fff; }
  .lca-page h1 { font-size:24pt; }
  .lca-page .lca-reading-layout { display:block; padding-top:20px; }
  .lca-page .lca-reading { font-size:11pt; max-width:none; }
  .lca-page .lca-section { margin-top:20px; padding-top:20px; }
  .lca-page .lca-hero-figure { max-width:17cm; }
  .lca-page .lca-anatomy,.lca-page .lca-outlook,.lca-page .lca-rehab-steps>li { break-inside:avoid; }
  .lca-page .lca-outlook { grid-template-columns:5cm 1fr; }
  .lca-page .lca-faq details .lca-answer { display:block; }
}
