:root{--paper:#faf8f3;--ink:#294d40;--muted:#5b645c;--line:#d5dcd2;--reading-text:#303b35;--sans:'Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif}body{color:var(--reading-text);font-family:var(--sans);line-height:1.9;letter-spacing:.015em}header{background:#faf8f3fa}h1,h2,h3{color:var(--ink)}header nav a{font-size:14px}.header-book{background:var(--ink);color:#fff}.eyebrow{font-size:13px;letter-spacing:.07em;font-weight:600}.breadcrumb{font-size:13px;color:var(--muted)}.page-intro{gap:54px;padding-top:42px;padding-bottom:48px}.page-intro h1{font-size:clamp(32px,3.4vw,46px);letter-spacing:.035em}.page-intro p:not(.eyebrow){line-height:1.9;max-width:34em}.page-intro img{height:280px;border-radius:65px 0 0 0}.section{padding-top:80px;padding-bottom:80px}.section-head{margin-bottom:32px}.copy p,.purpose-grid p,.choice-examples p,.reading-cards p,.additional-menus p{line-height:1.9}.purpose-grid article{background:#eaf0e9;border-color:#5a7660;padding:30px 32px}.purpose-grid article+article{background:#f3eae3;border-color:#8f6856}.purpose-grid h3,.reading-cards h3,.choice-examples h3{font-family:var(--sans);font-size:23px;font-weight:600;letter-spacing:.01em;line-height:1.55}.purpose-grid article>span,.reading-cards>a>span{font-size:13px;font-weight:600;color:#5b645c}.group-title{font-family:var(--sans);font-size:21px;font-weight:600}.reading-cards{gap:18px 32px}.reading-cards>a{padding:25px 12px 26px;border-color:#a4b19f}.reading-cards b{color:var(--ink);font-weight:600}.reading-cards>a:hover{background:#eaf0e9}.reading-layout{max-width:1100px;grid-template-columns:220px minmax(0,612px);gap:64px;padding-top:48px}.reading-body{max-width:36em;font-size:17px}.article-toc{padding:22px 20px;background:#efeee7;border:0;border-radius:4px;gap:16px}.article-toc p{font-weight:600;font-size:13px}.article-toc a{font-size:14px;line-height:1.65;border-left-color:#a4b19f;color:#294d40}.read-section{margin-bottom:56px}.read-section h2{font-family:var(--sans);font-size:27px;font-weight:600;line-height:1.6;letter-spacing:.015em;margin-bottom:18px;padding-top:18px;border-top:1px solid var(--line)}.read-section p{font-size:17px;line-height:1.9;letter-spacing:.015em;margin-bottom:20px;color:var(--reading-text);text-align:left;overflow-wrap:break-word}.read-section strong{font-weight:700;color:var(--ink)}.standalone{max-width:calc(36em + 70px);padding-top:45px}.jump-links{gap:10px 26px;font-size:14px}.jump-links a,.text-link{color:#294d40}.jump-links a{text-decoration-thickness:1px}.text-link{border-bottom-color:#7a8e79;font-weight:500}.choice-note{background:#eaf0e9;border-left:3px solid #5a7660}.choice-examples h3{font-size:22px}.quiet-book{background:#eaf0e9}.quiet-book .booking{background:#294d40;color:#fff;border-radius:3px;gap:32px}.quiet-book .booking:hover{background:#385d4e}.price-list dt{font-family:var(--sans);font-weight:600}.price-list dd{font-family:var(--sans);font-weight:600;font-size:30px;color:var(--ink);font-variant-numeric:tabular-nums}.price-list small{font-weight:400;color:#5b645c;font-size:14px}.source-note,footer small{color:#5b645c}.variant-switch{display:flex;justify-content:center;gap:24px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:24px}.variant-switch a{font-size:14px;text-decoration:underline;text-underline-offset:5px;min-height:44px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #795b47;outline-offset:4px}.faq summary{font-weight:600}.faq details p{max-width:36em}.hero .intro{font-size:16px;line-height:1.9}.next-reading{padding-top:30px}.reading-cards a:focus-visible{outline-offset:0}nav a:hover,.text-link:hover{color:#75533f}
@media(max-width:1000px){header nav a{font-size:12px}.reading-layout{gap:40px;grid-template-columns:200px minmax(0,1fr)}}
@media(max-width:800px){.reading-layout{display:block;max-width:710px;padding:30px 7% 0}.article-toc{display:grid;grid-template-columns:1fr;gap:13px;margin-bottom:38px;padding:20px}.article-toc p{grid-column:auto}.reading-body{max-width:100%}header nav a{font-size:16px}.section{padding-top:58px;padding-bottom:58px}.standalone{padding-top:32px}.page-intro{gap:30px}}
@media(max-width:580px){.breadcrumb{font-size:12px}.page-intro{padding-top:28px;padding-bottom:34px}.page-intro h1{font-size:32px;line-height:1.5}.page-intro p:not(.eyebrow){font-size:16px}.page-intro img{height:210px;margin-top:24px}.page-intro .eyebrow{font-size:12px}.read-section h2{font-size:23px;line-height:1.6;margin-bottom:16px}.read-section p{font-size:16.5px;line-height:1.9}.read-section{margin-bottom:42px}.purpose-grid article{padding:24px}.purpose-grid h3,.reading-cards h3,.choice-examples h3{font-size:22px}.reading-cards>a{padding:24px 0}.reading-cards{gap:0}.section h2{font-size:28px}.price-list dt{font-size:17px}.price-list dd{font-size:26px}.price-list small{font-size:13px}.hero .intro{font-size:15px}.jump-links{font-size:14px}.group-title{font-size:19px}.quiet-book h2{font-size:26px}.variant-switch{gap:10px 22px}}

/* Six primary destinations; use the menu drawer before links become cramped. */
@media(min-width:1101px){header nav{gap:21px}}
@media(min-width:801px) and (max-width:1100px){header{height:80px}.header-book{margin-left:auto}.toggle{display:flex;align-items:center;gap:6px;font-size:13px;border:0;background:transparent;color:var(--ink);padding:8px}header nav{display:none;position:absolute;top:80px;left:0;right:0;padding:24px 7%;background:var(--paper);box-shadow:0 10px 15px #0001}header nav.open{display:grid;gap:10px}header nav a{font-size:16px}}

/* Four-page reading journey: clear onward links and compact phone spacing. */
.journey-next .text-link{display:flex;align-items:center;justify-content:space-between;max-width:520px;min-height:52px;padding:14px 18px;border:1px solid #a4b19f;background:#eaf0e9;text-decoration:none;gap:18px}
@media(max-width:580px){
 .journey-page .section{padding-top:42px;padding-bottom:42px}
 .journey-page .page-intro{padding-bottom:26px}
 .journey-page .jump-links{display:grid;grid-template-columns:1fr;gap:0;padding-top:12px;padding-bottom:12px}
 .journey-page .jump-links a{justify-content:space-between;min-height:48px;border-bottom:1px solid var(--line);text-decoration:none}
 .journey-page .jump-links a:last-child{border-bottom:0}
 .journey-page .jump-links>span{padding-bottom:6px}
 .journey-page .reading-cards>a{padding:20px 0}
 .journey-page .reading-cards p{margin-bottom:12px}
 .journey-page .choice-examples{gap:12px;margin-top:22px}
 .journey-page .choice-examples article{padding-top:18px;padding-bottom:4px}
 .journey-page .choice-note{padding:18px}
 .journey-page .group-title{margin-top:30px}
 .page-about .split{display:flex;flex-direction:column;gap:24px}
 .page-about .split .copy{order:-1}
 .page-about .split .framed,.page-about .split>img{width:100%}
 .page-about .split img{height:220px;object-fit:cover}
 .journey-next .text-link{width:100%;font-size:16px}
 .page-first .read-section h3{font-family:var(--sans);font-size:18px;line-height:1.65;margin:28px 0 10px}
}

/* A single quiet bridge from treatment descriptions to relevant case histories. */
.case-entry{max-width:1160px;margin:0 auto 72px;padding:28px 36px;border-top:1px solid #c9d5cc;border-bottom:1px solid #c9d5cc;background:#f1f4ee}
.case-entry h2{font-size:clamp(1.25rem,2vw,1.65rem);line-height:1.6;margin:0 0 12px}
.case-entry p{max-width:46em;line-height:1.9;margin:0 0 18px}
.case-entry-links{display:flex;flex-wrap:wrap;gap:8px 24px;margin-bottom:16px}
.case-entry-links a{display:inline-block;padding:8px 0;color:#31584c;text-decoration:underline;text-underline-offset:5px;line-height:1.65}
.case-entry a:focus-visible{outline:2px solid #31584c;outline-offset:4px}
@media(max-width:700px){.case-entry{margin:0 22px 48px;padding:24px 18px}.case-entry-links{display:grid;grid-template-columns:1fr;gap:2px}.case-entry .text-link{line-height:1.8}}

#case-entry-title{scroll-margin-top:110px}

.related-case-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:20px 0}.related-case{display:block;color:inherit;text-decoration:none;padding:18px 0;border-top:1px solid #c9d5cc}.related-case h3{font-size:1.1rem;line-height:1.7;margin:0 0 10px}.related-case p{font-size:.95rem;margin-bottom:12px}.related-case-read{text-decoration:underline;text-underline-offset:5px;color:#31584c}.related-case:hover h3{text-decoration:underline}@media(max-width:700px){.related-case-grid{grid-template-columns:1fr;gap:4px}}

/* Reading hierarchy: short chapter navigation, distinct sections, and grouped prices. */
.guided-reading .reading-layout{max-width:1180px;grid-template-columns:210px minmax(0,700px);gap:42px}
.guided-reading .reading-body{max-width:none;min-width:0}
.guided-reading .article-toc{background:transparent;padding:0;gap:0}
.guided-reading .article-toc>p{margin:0 0 14px;color:var(--muted)}
.guided-reading .article-toc a{display:flex;align-items:center;gap:10px;padding:13px 0;border:0;border-bottom:1px solid var(--line);text-decoration:none;min-height:48px}
.toc-number{font-size:12px;color:#637969;font-variant-numeric:tabular-nums}.toc-arrow{margin-left:auto}
.guided-reading .read-section{background:#fffdf9;border:1px solid #dce1d8;border-radius:12px;padding:30px 36px;margin-bottom:24px;scroll-margin-top:104px}
.guided-reading .read-section .chapter-label{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;color:#526b5c;margin:0 0 14px;line-height:1.5}
.chapter-label span{display:inline-flex;align-items:center;justify-content:center;background:#e7eee5;border-radius:50%;width:30px;height:30px;font-size:12px}
.guided-reading .read-section h2{border:0;padding:0;margin:0 0 22px;font-size:25px;line-height:1.6}
.guided-reading .read-section p{line-height:1.95;margin-bottom:22px}.guided-reading .read-section p:last-child{margin-bottom:0}
.guided-reading .read-section p+p{margin-top:0}
.guided-reading .read-section .price-list{margin-top:10px}
.price-nav{display:flex;flex-wrap:wrap;gap:10px;margin:26px 0 32px}
.price-nav a{display:flex;gap:20px;align-items:center;justify-content:space-between;padding:12px 16px;border:1px solid #acbcae;border-radius:6px;text-decoration:none;font-size:14px;background:#fffdf9;min-height:48px}
.price-group{padding:28px 32px;background:#fffdf9;border:1px solid #dce1d8;border-radius:12px;margin:0 0 24px;scroll-margin-top:104px}
.price-group h3{font-family:var(--sans);font-size:23px;margin:0 0 12px}.price-group .price-list{margin-top:18px}.price-group .price-list>div:last-child{border-bottom:0}
.visit-step{padding:22px 26px;background:#fffdf9;border:1px solid #dce1d8;border-radius:10px;margin:16px 0}.page-first .visit-step h3{margin:0 0 12px}.visit-step p:last-child{margin-bottom:0}
.page-about .copy p{max-width:36em;margin-bottom:24px}.page-about .copy h2{margin-bottom:24px}
@media(max-width:800px){.guided-reading .reading-layout{display:block;padding:28px 5% 0}.guided-reading .article-toc{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:28px}.guided-reading .article-toc>p{grid-column:1/-1;margin-bottom:4px}.guided-reading .article-toc a{padding:12px;background:#edf1e9;border:1px solid #dce1d8;border-radius:6px;font-size:13px;gap:7px}.guided-reading .article-toc .toc-number{font-size:11px}.guided-reading .read-section{padding:24px;margin-bottom:20px}.price-nav{gap:8px}.price-group{padding:22px 20px}}
@media(max-width:580px){.guided-reading .read-section h2{font-size:22px;margin-bottom:20px}.guided-reading .read-section p{font-size:16px;line-height:1.95}.guided-reading .read-section .chapter-label{font-size:12px}.guided-reading .price-list dt,.price-group .price-list dt{font-size:15px}.guided-reading .price-list dd,.price-group .price-list dd{font-size:25px}.price-list>div{gap:12px}.price-nav{display:grid;grid-template-columns:1fr;margin:20px 0 24px}.price-group h3{font-size:21px}.price-group .price-list{margin-top:10px}.price-group .price-list>div{padding:20px 0}.visit-step{padding:22px 20px}.guided-reading .read-section{padding:24px 20px}.guided-reading .price-list small{font-size:13px}}

.guided-reading .reading-subhead{font-family:var(--sans);font-size:18px;line-height:1.6;margin:30px 0 14px;padding-left:12px;border-left:3px solid #78927d}.reading-key{background:linear-gradient(transparent 65%,#e4eddf 65%);font-weight:600}
.price-nav{position:static;inset:auto;z-index:auto;box-shadow:none;background:transparent;padding:0}.guided-reading .article-toc{inset:auto;z-index:auto;box-shadow:none}@media(max-width:800px){.guided-reading .article-toc{position:static}}
@media(min-width:801px){.guided-reading .article-toc{position:sticky;top:120px;align-self:start}}

/* Complete original logo, fitted without cropping or flex compression. */
header .brand{display:flex;align-items:center;justify-content:center;flex:0 0 auto;line-height:0}
header .brand img{display:block;width:106px;height:76px;object-fit:contain;object-position:center;max-width:none;mix-blend-mode:multiply}
@media(max-width:1100px){header .brand img{width:90px;height:64px}}
@media(max-width:580px){header{height:84px;padding-top:8px;padding-bottom:8px}header nav{top:84px}header .brand img{width:90px;height:64px}}

/* Footer mirrors the primary navigation, with uniform link baselines. */
footer .footer-links{display:flex;position:static;inset:auto;z-index:auto;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 28px;margin:28px auto 16px;padding:0;background:transparent;box-shadow:none;max-width:1000px;letter-spacing:normal}
footer .footer-links a{display:flex;align-items:center;justify-content:center;min-height:44px;margin:0;padding:8px 0;font-size:14px;line-height:1.6;border:0;text-decoration:none}
footer .footer-links a[aria-current=page]{text-decoration:underline;text-underline-offset:5px}
footer .footer-related{margin:8px 0 28px;font-size:13px;line-height:1.8;color:var(--muted)}
footer .footer-related a{display:inline-block;padding:8px 0;color:var(--ink);text-decoration:underline;text-underline-offset:4px}
@media(max-width:700px){footer .footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;max-width:400px;text-align:left}footer .footer-links a{justify-content:flex-start;border-bottom:1px solid var(--line);min-height:48px;padding:10px 0}footer .footer-related{margin-top:20px}}
