/* Approved A refined hero, adjusted only for the owner-selected PIK photo. */
.b2b-refined { background:var(--paper); padding:48px 0 56px; }
.b2b-refined .b2b-shell { width:min(1280px,calc(100% - 96px)); }
.b2b-refined .b2b-hero-grid { grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr); gap:64px; align-items:center; }
.b2b-refined .b2b-hero-copy { min-width:0; }
.b2b-refined h1 { font:400 clamp(42px,3.55vw,52px)/1.14 Playfair,Georgia,serif; letter-spacing:-.035em; text-wrap:balance; }
.b2b-refined .b2b-eyebrow { margin-bottom:24px; }
.b2b-refined .b2b-hero-description { margin-top:28px; max-width:62ch; }
.b2b-refined .b2b-hero-description p { font-size:16px; line-height:1.75; color:var(--muted); }
.b2b-refined .b2b-hero-description p:first-child { font-size:17px; line-height:1.7; color:var(--ink); }
.b2b-refined .b2b-hero-description p+p { margin-top:20px; }
/* Owner lock: no directional icon; preserves a 56px minimum control height. */
.b2b-refined .b2b-hero-cta { margin-top:30px; min-width:0; min-height:56px; max-width:100%; padding:16px 28px; border-radius:0; font-size:15px; line-height:1.5; gap:0; }
.b2b-collage { position:relative; height:600px; min-width:0; isolation:isolate; container-type:inline-size; }
.b2b-collage-wash { position:absolute; inset:48px -24px 48px 104px; background:var(--soft); pointer-events:none; z-index:-1; }
.b2b-collage-line { display:none; }
.b2b-collage-portrait { width:66%; margin-left:auto; position:relative; z-index:1; }
.b2b-collage-portrait img { width:100%; height:auto; aspect-ratio:667/1000; }
.b2b-refined .b2b-photo-caption { font-size:13px; line-height:1.65; color:var(--muted); margin:0; padding-top:14px; }
.b2b-doctor-name { font-weight:500; }
/* Frame bottom tracks the portrait height, never the viewport. The max clause retains face clearance. */
.b2b-collage-interior { position:absolute; width:48%; left:0; top:max(calc(56.18cqw - 58px),calc(41.56cqw + 9px)); padding:0 0 8px; background:var(--paper); outline:8px solid var(--paper); z-index:2; }
.b2b-collage-interior img { display:block; width:100%; height:auto; aspect-ratio:560/499; object-fit:cover; }
.b2b-refined .b2b-collage-interior figcaption { padding-top:12px; line-height:1.6; }
.b2b-photo-name { display:block; color:var(--ink); font-weight:500; }
.b2b-photo-role { display:block; margin-top:2px; }
.b2b-page:lang(ko) .b2b-refined h1 { font-family:'Apple SD Gothic Neo','Malgun Gothic','Noto Sans CJK KR',sans-serif; font-size:clamp(34px,3.1vw,46px); font-weight:500; line-height:1.3; letter-spacing:-.04em; }
@media(max-width:1100px) {
 .b2b-refined .b2b-shell { width:calc(100% - 64px); }
 .b2b-refined .b2b-hero-grid { gap:36px; }
 .b2b-refined h1 { font-size:44px; }
 .b2b-collage { height:540px; }
 .b2b-collage-portrait { width:70%; }
 .b2b-collage-interior { width:50%; top:max(calc(60.40cqw - 58px),calc(44.08cqw + 9px)); }
 .b2b-collage-wash { right:-16px; left:64px; }
}
@media(max-width:900px) {
 .b2b-refined .b2b-hero-grid { grid-template-columns:1fr; gap:44px; }
 .b2b-collage { max-width:520px; width:100%; height:600px; justify-self:center; }
 .b2b-collage-portrait { width:66%; }
 .b2b-collage-interior { width:45%; top:max(calc(58.85cqw - 58px),calc(41.56cqw + 8px)); }
 .b2b-collage-wash { left:88px; right:0; bottom:48px; }
}
@media(max-width:640px) {
 .b2b-refined { padding:32px 0 40px; }
 .b2b-refined .b2b-shell { width:calc(100% - 40px); }
 .b2b-refined h1 { font-size:34px; line-height:1.16; letter-spacing:-.025em; text-wrap:pretty; }
 .b2b-page:lang(ko) .b2b-refined h1 { font-size:32px; }
 .b2b-refined .b2b-eyebrow { font-size:11px; margin-bottom:20px; }
 .b2b-refined .b2b-hero-description { margin-top:24px; }
 .b2b-refined .b2b-hero-description p+p { margin-top:16px; }
 .b2b-refined .b2b-hero-cta { margin-top:26px; }
 .b2b-refined .b2b-hero-grid { gap:40px; }
 .b2b-collage { height:480px; max-width:350px; }
 .b2b-collage-portrait { width:76%; }
 .b2b-refined .b2b-collage-portrait figcaption { font-size:12px; padding-top:14px; }
 .b2b-collage-interior { width:46%; top:max(calc(72.94cqw - 42px),calc(47.85cqw + 8px)); outline-width:6px; padding-bottom:6px; }
 .b2b-refined .b2b-collage-interior figcaption { font-size:12px; padding-top:10px; }
 .b2b-collage-wash { inset:32px 0 52px 48px; }
}
@media(max-width:359px) {
 .b2b-refined .b2b-shell { width:calc(100% - 32px); }
 .b2b-refined h1 { font-size:30px; }
 .b2b-page:lang(ko) .b2b-refined h1 { font-size:29px; }
 .b2b-collage { height:426px; }
 .b2b-collage-wash { left:32px; bottom:40px; }
 .b2b-refined .b2b-hero-cta { padding-inline:20px; font-size:14px; }
}
