/* The wall in the existing portrait supplies the darker blue-green reference. */
.horizontal-version{--teal:#286b61;--dark:#203f39;--mint:#e5efeb;--muted:#4f655e}
.horizontal-version header{padding-top:16px;padding-bottom:16px}
.horizontal-version .hero{grid-template-columns:minmax(0,1.35fr) minmax(0,.8fr);gap:48px;padding-top:28px;padding-bottom:28px}
.horizontal-version .hero h1{font-size:clamp(36px,4.6vw,60px);letter-spacing:-1.4px;margin:15px 0}
.horizontal-version .lead{max-width:580px;font-size:17px;line-height:1.65}
.horizontal-version .hero .portrait{width:100%;max-width:390px;justify-self:end;padding:12px 12px 0}
.horizontal-version .hero .portrait img{height:360px;object-position:center 25%}
.horizontal-version .portrait-label{padding:12px 8px;font-size:16px}
.horizontal-version .portrait-label small,.horizontal-version .note,.horizontal-version .eyebrow,.horizontal-version .proof small{font-size:14px}
.horizontal-version .brand small{font-size:12px;letter-spacing:.5px}
.horizontal-version .compact-booking{grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr);gap:30px;align-items:start}
.horizontal-version .booking-intro h2{font-size:34px;letter-spacing:-1px}
.horizontal-version .booking-intro>p{font-size:16px}
.booking-photo{margin:20px 0 0}
.booking-photo img{display:block;width:100%;height:210px;object-fit:cover;border-radius:9px}
.horizontal-version .booking-frame iframe{height:530px}
.horizontal-version .booking-fallback,.horizontal-version .first-session summary,.horizontal-version .first-session p,.horizontal-version .first-session a{font-size:14px!important}
.horizontal-version .ribbon{gap:30px;font-size:14px}
.information-tabs{padding-top:20px;padding-bottom:20px}
.tab-list:not([hidden]){display:flex;gap:10px;align-items:stretch;border-bottom:1px solid #bfd2cb;padding-bottom:12px}
.tab-list button,.tab-list .reading-tab{font:inherit;font-size:16px;padding:12px 20px;border:1px solid #b6cbc3;border-radius:6px;background:transparent;color:var(--dark);cursor:pointer;text-align:center}
.tab-list button[aria-selected=true]{background:var(--teal);color:white;border-color:var(--teal)}
.tab-list button:focus-visible{outline:3px solid #bd720d;outline-offset:3px}
.tabs-ready>.section-drawer{border:0;padding:0}
.tabs-ready>.section-drawer>summary{display:none}
.tabs-ready>.section-drawer[hidden]{display:none}
.horizontal-version .drawer-body{padding-top:20px}
.horizontal-version .drawer-body .section{padding:8px 0 20px}
.horizontal-version .cards article{padding:24px}
.horizontal-version .cards p,.horizontal-version .about p,.horizontal-version .contact-box p{font-size:16px}
.horizontal-version .section-top{gap:30px}
.horizontal-version .contact{gap:30px;border:0}
.horizontal-version .contact-links,.horizontal-version .cards a,.horizontal-version .credentials small{font-size:14px}
@media(max-width:800px){
 html{scroll-padding-top:16px}
 .horizontal-version header{padding:14px 18px;align-items:center;flex-wrap:wrap;gap:12px}
 .horizontal-version header nav{margin-left:auto;gap:10px}
 .horizontal-version header nav>a:not(.button){display:none!important}
 .horizontal-version .brand{font-size:16px}
 .horizontal-version .brand small{font-size:10px;letter-spacing:0}
 .horizontal-version .wrap{padding-left:18px;padding-right:18px}
 .horizontal-version .hero{grid-template-columns:minmax(0,1fr);gap:18px;padding-top:22px;padding-bottom:24px}
 .horizontal-version .hero h1{font-size:clamp(34px,9vw,46px);line-height:1.12;letter-spacing:-1px}
 .horizontal-version .lead{font-size:16px;line-height:1.65;margin-bottom:16px}
 .horizontal-version .actions{gap:18px;margin-top:18px;flex-wrap:wrap}
 .horizontal-version .hero .portrait{transform:none;justify-self:center;margin:0;width:100%;max-width:320px;display:block;padding:12px 12px 0;border-radius:8px;box-shadow:none;background:var(--mint)}
 .horizontal-version .hero .portrait img{width:100%;height:clamp(240px,72vw,300px);object-position:62% 22%;border-radius:5px}
 .horizontal-version .hero .portrait-label{text-align:center;padding:12px 6px 14px;font-size:16px}
 .horizontal-version .portrait:after{display:none}
 .horizontal-version .compact-booking{grid-template-columns:minmax(0,1fr);gap:18px;padding-top:22px}
 .horizontal-version .booking-intro h2{font-size:30px}
 .booking-photo img{height:185px}
 .horizontal-version .booking-frame iframe{height:570px}
 .horizontal-version .ribbon{gap:8px 18px;padding:14px 18px;font-size:14px;justify-content:flex-start}
 .horizontal-version .ribbon span:before{display:none}
 .tab-list:not([hidden]){gap:6px;overflow-x:auto;scrollbar-width:thin;padding-bottom:10px}
 .tab-list button,.tab-list .reading-tab{flex:0 0 auto;padding:11px 12px;font-size:14px;white-space:nowrap}
 .horizontal-version .drawer-body .about{padding:18px}
 .horizontal-version .about-grid,.horizontal-version .section-top,.horizontal-version .contact{grid-template-columns:minmax(0,1fr);gap:18px}
 .horizontal-version .drawer-body h2{font-size:30px}
 .horizontal-version .cards{grid-template-columns:minmax(0,1fr);gap:12px}
 .horizontal-version .consultation-gallery{display:grid;grid-template-columns:minmax(0,1fr);padding:0;gap:18px;overflow:visible}
 .horizontal-version .consultation-gallery img{height:200px}
 .horizontal-version .mobile-booking{left:18px;right:18px;bottom:max(12px,env(safe-area-inset-bottom));font-size:16px}
 .horizontal-version footer{font-size:14px;gap:12px;padding-bottom:100px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.horizontal-version .about-portrait{margin:20px 0 0;max-width:340px}
.horizontal-version .about-portrait img{display:block;width:100%;height:auto;border-radius:8px}
.horizontal-version .about blockquote{margin-top:20px;font-size:21px}
@media(max-width:800px){.horizontal-version .about-portrait{max-width:280px;margin:18px 0}.horizontal-version .about-portrait img{width:100%;height:auto}.horizontal-version .about-grid>div{min-width:0}}

/* Reading order: introduction, Docfav agenda, then optional contact and help. */
.horizontal-version .compact-booking{row-gap:16px}
.horizontal-version .compact-booking>.booking-intro{grid-column:1;grid-row:1}
.horizontal-version .compact-booking>.booking-widget{grid-column:2;grid-row:1 / span 2}
.horizontal-version .compact-booking>.booking-support{grid-column:1;grid-row:2;min-width:0}
@media(max-width:800px){
 .horizontal-version .compact-booking>.booking-intro{grid-column:1;grid-row:1}
 .horizontal-version .compact-booking>.booking-widget{grid-column:1;grid-row:2}
 .horizontal-version .compact-booking>.booking-support{grid-column:1;grid-row:3}
}
