/* Final presentation: fewer decisions hidden behind taps, content-led confidence. */
.pp-mobile-sections{display:none!important}
.pp-intro-copy{min-width:0}
.pp-about:not(.pp-about-personal){grid-template-columns:1fr}
.pp-intro-copy>p:not(.eyebrow){font:400 16px/1.8 var(--sans);color:#594839;margin-top:18px;max-width:650px}
.pp-intro-start{display:inline-flex;align-items:center;min-height:48px;margin-top:18px;font:500 15px/1.6 var(--sans);text-decoration:underline;text-underline-offset:5px;color:#704729}
.pp-about-personal{gap:26px;align-items:center}
.pp-intro-photo{margin:0;position:relative;overflow:hidden;border:1px solid #bda17e;border-radius:12px;background:#fffaf3}
.pp-intro-photo img{display:block;width:100%;height:250px;object-fit:cover;object-position:50% 45%}
.pp-intro-photo figcaption{font:400 14px/1.6 var(--sans);padding:12px 16px;color:#594839}
.pp-service-group ul{padding-inline:18px}
.pp-service-group li{grid-template-columns:minmax(0,1fr) auto;gap:10px 20px;padding:24px 0;align-items:start}
.pp-service-group .pp-service-name h3{font-size:17px;font-weight:500;line-height:1.45;color:#35251f}
.pp-service-description{font:400 16px/1.7 var(--sans);color:#594839;margin:11px 0 0;max-width:600px}
.pp-service-meta{display:flex;flex-direction:column;gap:4px;align-items:flex-end;text-align:right}
.pp-service-meta .pp-price{font:500 18px/1.5 var(--sans);color:#35251f;max-width:140px}
.pp-service-meta .pp-duration{font:400 14px/1.5 var(--sans);color:#594839;margin:0;max-width:115px}
.pp-service-actions{grid-column:1/-1;display:flex;justify-content:flex-end}
.pp-service-book{display:inline-flex;align-items:center;gap:12px;min-height:44px;border:1px solid #80512f;border-radius:25px;padding:9px 15px;color:#704729;background:#fffaf3;font:500 14px/1.5 var(--sans)}
.pp-service-book:hover{background:#35251f;color:#fff5e8}
.pp-service-book:focus-visible,.pp-intro-start:focus-visible{outline:3px solid #80512f;outline-offset:3px}
.pp-service-group li.is-featured-service{box-shadow:18px 0 #f2e1c8,-18px 0 #f2e1c8}
.pp-service-tools button{font-size:14px;min-height:48px}
.pp-reviews{padding:34px 0;border-bottom:1px solid #c4aa8d}
.pp-reviews .pp-section-heading{margin-bottom:14px}
.pp-reviews-intro{font:400 16px/1.75 var(--sans);color:#594839;margin-bottom:24px;max-width:580px}
.pp-review-grid{display:grid;gap:14px}
.pp-review{display:flex;flex-direction:column;position:relative;margin:0;padding:24px;background:#efe3d2;border:1px solid #bda17e;border-radius:12px;min-width:0}
.pp-quote-mark{font:400 54px/.8 var(--serif);color:#80512f;display:block;height:32px}
.pp-review blockquote{margin:10px 0 24px;font:400 26px/1.35 var(--serif);color:#35251f;letter-spacing:-.02em}
.pp-review figcaption{margin-top:auto;display:flex;flex-direction:column;gap:2px;font:400 14px/1.6 var(--sans);color:#594839}
.pp-review figcaption strong{font-weight:500;color:#35251f}
.pp-review-source{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:14px;color:#704729;text-decoration:underline;text-underline-offset:4px}
.pp-review-source:focus-visible{outline:3px solid #80512f;outline-offset:2px}
@media(min-width:700px){
 .pp-about-personal{grid-template-columns:200px minmax(0,1fr);padding-block:40px;gap:28px}
 .pp-intro-photo img{height:300px}
 .pp-reviews{padding-block:40px}
 .pp-review-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .pp-review{padding:22px 18px}
 .pp-review blockquote{font-size:25px}
 .pp-section-nav>.pp-desktop-sections{gap:clamp(18px,2.5vw,38px)}
}
@media(max-width:959px){
 .premium-page{--section-nav-height:54px;padding-bottom:90px}
 .premium-page .pp-booking-bar{display:flex}
 html:has(.premium-page){scroll-padding-bottom:var(--profile-bottom-clearance,86px)}
 .pp-section-nav{position:sticky;top:var(--header-height);z-index:39;padding:0 18px;background:#f8f3ea;border-bottom:1px solid #bda17e}
 .pp-section-nav>.pp-desktop-sections{display:none!important}
 .pp-section-nav>.pp-mobile-sections{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;overflow:visible}
 .pp-mobile-sections>a,.pp-nav-more>summary{display:flex;align-items:center;justify-content:center;gap:9px;font:500 14px/1.5 var(--sans);color:#594839;min-height:54px;padding:10px 0;white-space:nowrap;cursor:pointer;list-style:none}
 .pp-nav-more>summary::-webkit-details-marker{display:none}
 .pp-nav-more{position:relative}
 .pp-nav-more>summary>span{font-size:21px;font-weight:400;line-height:1}
 .pp-nav-more[open]>summary>span{font-size:0}
 .pp-nav-more[open]>summary>span:after{content:'−';font-size:21px}
 .pp-nav-more>div{position:absolute;right:0;top:100%;width:230px;max-width:calc(100vw - 36px);max-height:calc(100svh - 230px);overflow-y:auto;padding:9px 16px;background:#fffaf3;border:1px solid #a08366;border-radius:0 0 12px 12px;box-shadow:0 14px 26px #35251f22}
 .pp-nav-more>div>a{justify-content:flex-start!important;display:flex;font-size:15px;min-height:48px;padding:10px 5px;border-bottom:1px solid #d7c4ad}
 .pp-nav-more>div>a:last-child{border-bottom:0}
 .pp-mobile-sections>a[aria-current],.pp-nav-more.has-current>summary{color:#704729;box-shadow:inset 0 -3px #80512f}
 .pp-section-nav :focus-visible{outline:3px solid #80512f;outline-offset:-4px}
 .premium-page :is(a,button,input,summary,video){scroll-margin-bottom:var(--profile-bottom-clearance,86px)}
 .pp-video-copy,.pm-video-copy{padding-bottom:18px}
 .premium-page:has(.pp-section-nav a[href="#videos"][aria-current]) .pp-booking-bar{visibility:hidden}
 .pp-service-group li{grid-template-columns:minmax(0,1fr);gap:12px}
 .pp-service-meta{flex-direction:row;justify-content:flex-start;align-items:baseline;gap:12px;text-align:left}
 .pp-service-meta .pp-duration{max-width:none;padding-left:12px;border-left:1px solid #a08366}
 .pp-service-meta .pp-price{max-width:none}
 .pp-service-actions{justify-content:flex-start}
 .pp-service-book{font-size:14px}
 .pp-service-group ul{padding-inline:16px}
 .pp-service-group li.is-featured-service{box-shadow:16px 0 #f2e1c8,-16px 0 #f2e1c8}
}
@media(max-width:360px){
 .pp-section-nav{padding-inline:12px}
 .pp-intro-photo img{height:220px}
 .pp-nav-more>summary{gap:5px}
}

/* Optional review invitation; every client is welcome to share an experience. */
.pp-review-invitation{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:20px;padding:26px;border:1px solid #bda17e;border-radius:12px;background:#fffaf3}
.pp-review-invitation h3{font:400 29px/1.2 var(--serif);letter-spacing:-.025em;color:#35251f}
.pp-review-invitation p{font:400 16px/1.7 var(--sans);color:#594839;max-width:360px;margin-top:10px}
.pp-review-action{display:flex;flex-direction:column;align-items:center;gap:9px;flex-shrink:0;max-width:100%}
.pp-google-review{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:50px;padding:13px 20px;background:#35251f;color:#fff5e8;border:1px solid #35251f;border-radius:28px;font:500 15px/1.5 var(--sans);text-align:center}
.pp-google-review:hover{background:#704729;border-color:#704729}
.pp-google-review:focus-visible{outline:3px solid #80512f;outline-offset:4px}
.pp-review-action>span{font:400 14px/1.5 var(--sans);color:#594839}
@media(max-width:699px){.pp-review-invitation{align-items:stretch;flex-direction:column;padding:23px;gap:19px}.pp-review-action{align-items:stretch}.pp-review-action>span{text-align:center}.pp-review-invitation h3{font-size:28px}}

/* Preserve the full treatment scene in a confirmed professional introduction. */
.pp-intro-photo.pp-intro-photo-portrait img{height:auto;object-fit:contain}

/* Dated attribution for listings Rogers' directory alone supports (src/tenancy.py). */
.pp-listing-note{font-size:13px;line-height:1.55;color:#d8c8b0;margin:12px 0 0!important;max-width:44ch}
