.yam-identity{text-align:center;margin:12px 0 24px;color:inherit}.yam-identity strong{display:block;font:600 1.5rem 'Cormorant Garamond',Georgia,serif;letter-spacing:.12em}.yam-identity span{display:block;font-size:.69rem;font-weight:700;letter-spacing:.08em;margin:8px 0}.yam-identity small{display:block;font-size:.75rem;letter-spacing:.08em}.yam-identity:after{content:'';display:block;width:160px;height:12px;background:url('/assets/zen-brush.svg') center/contain no-repeat;margin:10px auto 0}.hero .yam-identity{color:#f3d49c;margin:0 0 15px}.footer-signature .yam-identity{color:#f3d49c}.cf-about .yam-identity{color:#e9ca92;text-align:left}.cf-about .yam-identity:after{margin-left:0}.cf-person-hero{display:flex;flex-direction:column;min-height:0;overflow:hidden;background:#241f4f}.cf-person-hero:after{display:none}.cf-banner-title{text-align:center;padding:35px 20px 28px;width:100%;background:#241f4f}.cf-person-hero h1{font-size:clamp(3rem,5.5vw,5.2rem);max-width:none;margin:0 auto 15px}.cf-person-hero .cf-subtitle{max-width:none;margin:0 auto;color:#f8f0e5}.cf-person-hero .cf-hero-photo{position:static;z-index:auto;width:100%;height:580px;object-fit:cover;object-position:center 30%}.cf-banner-booking{width:100%;display:flex;align-items:center;justify-content:center;gap:28px;background:#241f4f;padding:22px}.cf-banner-booking .cf-session{margin:0}.cf-intro{margin-top:35px}.brush-statements{display:block;max-width:950px}.cf-roots-detail p{font:500 clamp(1.7rem,3vw,2.5rem)/1.35 'Cormorant Garamond',Georgia,serif;color:#fff;text-align:center}.cf-statement:after,.brush-statements p:first-child:after{content:'';display:block;width:min(75%,500px);height:20px;background:url('/assets/zen-brush.svg') center/contain no-repeat;margin:35px auto}.cf-booking-portrait{display:grid;grid-template-columns:1.15fr 1fr;max-width:1200px;gap:40px;align-items:center;text-align:left}.cf-booking-portrait>img{width:100%;height:570px;object-fit:cover;object-position:top;border-radius:28px}.cf-booking-portrait>div>p{line-height:1.8}.cf-booking-portrait h2{font-size:3.5rem}
@media(max-width:700px){.hero .yam-identity strong{font-size:1.15rem}.hero .yam-identity span{font-size:.61rem}.hero .yam-identity small{font-size:.66rem}.hero-photo{inset:315px 0 0}.hero{height:945px}.cf-banner-title{padding:32px 16px 25px}.cf-person-hero h1{font-size:2.9rem;line-height:1.02}.cf-person-hero .cf-hero-photo{height:400px;object-fit:cover;object-position:center top}.cf-person-hero .cf-subtitle{font-size:1rem}.cf-banner-booking{flex-direction:column;gap:14px;padding:22px 24px}.cf-banner-booking .cf-session{max-width:280px;text-align:center}.cf-booking-portrait{grid-template-columns:1fr;text-align:center;gap:28px}.cf-booking-portrait>img{height:390px}.cf-booking-portrait h2{font-size:2.7rem}}
/* Integrated photographic banner: retain the full desktop frame. */
.cf-person-hero{display:block;min-height:0;background:none}
.cf-person-hero .cf-hero-photo{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;position:static}
.cf-banner-title{position:absolute;inset:0 0 auto;z-index:1;background:none;padding:clamp(12px,1.5vw,28px) 20px 0;text-shadow:0 2px 12px #160e18a0}
.cf-person-hero h1{font-size:clamp(2.6rem,4.6vw,5.2rem);line-height:1;margin:0 auto 8px}
.cf-person-hero .cf-subtitle{font-size:clamp(1rem,1.45vw,1.4rem)}
.cf-banner-booking{position:absolute;inset:auto 0 0;z-index:1;background:none;padding:18px 24px;gap:25px}
.cf-banner-booking .cf-session{text-shadow:0 1px 5px #000,0 2px 15px #000;font-weight:600}
.cf-banner-booking .button{box-shadow:0 5px 24px #1c122a30}
@media(max-width:700px){
.cf-person-hero .cf-hero-photo{height:740px;aspect-ratio:auto;object-fit:cover;object-position:center top}
.cf-banner-title{padding:18px 16px 0}
.cf-person-hero h1{font-size:2.3rem;line-height:1;max-width:360px;margin:0 auto 10px}
.cf-person-hero .cf-subtitle{font-size:.9rem;max-width:330px}
.cf-banner-booking{padding:18px 35px 20px;gap:10px}
.cf-banner-booking .cf-session{font-size:.72rem}
}
/* Panoramic generated photograph, without blur or compositing. */
.cf-person-hero{height:clamp(570px,72vh,660px)}
.cf-person-hero:before{display:none}
.cf-person-hero .cf-hero-photo{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center;mask-image:none;filter:none;transform:none}
.cf-person-hero h1{font-size:clamp(2.5rem,4vw,4.2rem)}
.cf-banner-title{padding-top:16px}
.cf-banner-booking{padding:12px 24px;gap:22px}
@media(max-width:700px){
.cf-person-hero{height:610px}
.cf-banner-title{padding:15px 14px 0}
.cf-person-hero h1{font-size:2rem;max-width:360px;margin-bottom:8px}
.cf-person-hero .cf-subtitle{font-size:.86rem;max-width:330px}
.cf-banner-booking{padding:12px 40px 16px;gap:8px}
}

/* v29: simplified professional signature in the hero, about sections and footer. */
.yam-identity span{font-size:clamp(.85rem,1.1vw,1rem);font-weight:600;letter-spacing:.03em;text-transform:none;line-height:1.5;margin:0}
.yam-identity:after{display:none}
@media(max-width:700px){.hero .yam-identity span{font-size:.84rem}}
