/* R33 focused visual changes. Does not touch R28 global-layout-lock.css. */
/* Hero: image integrated in true two-column composition; no empty framed placeholder */
body .b02-home .b02-hero-grid.r29-hero-content{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,.85fr);gap:clamp(22px,3vw,52px);align-items:center;max-width:none}
body .b02-home .b02-hero-grid.r29-hero-content > div:first-child{min-width:0}
body .b02-home .b02-hero h1{max-width:none;font-size:clamp(2.5rem,3.55vw,4.35rem);line-height:1.12}
body .b02-home .b02-hero .b02-body-copy{max-width:none;line-height:1.7}
body .r33-hero-visual{margin:0;min-width:0;width:100%;display:flex;align-items:center;justify-content:center}
body .r33-hero-visual img{display:block;width:100%;height:auto;max-width:680px;object-fit:contain;border:0;border-radius:0;box-shadow:none}
/* Natural copy flow: no fixed paragraph column on full-width sections. */
body .b02-home #home-02 > .b02-container > .b02-body-copy,
body .b02-home #home-06 > .b02-container > .b02-body-copy,
body .b02-home #home-08 > .b02-container > .b02-body-copy{width:100%;max-width:none!important;white-space:normal;overflow-wrap:normal;hyphens:none}
/* Footer: retain two disclaimer paragraphs, use available footer space instead of truncated column. */
body .site-footer .r31-disclaimer{width:100%;max-width:none!important;white-space:normal}
body .site-footer .r31-disclaimer p{max-width:none!important;width:100%;white-space:normal;line-height:1.7;margin-bottom:12px}
@media(max-width:1100px){body .b02-home .b02-hero-grid.r29-hero-content{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}body .b02-home .b02-hero h1{font-size:clamp(2.3rem,4.2vw,3.5rem)}}
@media(max-width:820px){body .b02-home .b02-hero-grid.r29-hero-content{grid-template-columns:1fr;gap:24px}body .r33-hero-visual img{max-width:520px}body .b02-home .b02-hero h1{font-size:clamp(2.2rem,6.3vw,3.5rem)}}
