/* Radio-only letter navigation. Portrait PNGs are original, unmodified assets. */
.onhen-radio-letter-cta{display:none}
@media(max-width:840px){
.onhen-radio-letter-cta{display:block;position:fixed;inset:auto 0 0;z-index:25;background:rgba(255,255,255,.8);padding:12px 0 calc(12px + env(safe-area-inset-bottom,0px));box-shadow:none}
.onhen-radio-letter-banner{--portrait-visible-height:clamp(80px,26.6667vw,96px);display:block;position:relative;width:90%;max-width:440px;height:102px;margin:0 auto;container-type:inline-size;isolation:isolate;color:#fff;text-decoration:none}
.onhen-radio-letter-banner:focus-visible{outline:3px solid #222;outline-offset:4px}
.onhen-radio-letter-red{position:absolute;left:8%;right:8%;bottom:0;height:66px;background:#E60012;border-radius:20px}
.onhen-radio-letter-person{position:absolute;bottom:0;max-width:none;width:auto;object-fit:contain;z-index:1}
/* Alpha bounds: Iida 24,90–816,1098; Kokusho 93,106–1047,1224. Equal visible height. */
.onhen-radio-letter-iida{height:calc(var(--portrait-visible-height)*1098/1008);left:calc(var(--portrait-visible-height)*-24/1008)}
.onhen-radio-letter-kokusho{height:calc(var(--portrait-visible-height)*1224/1118);right:calc(var(--portrait-visible-height)*-161/1118)}
.onhen-radio-letter-caption{position:absolute;left:25%;right:26%;top:23px;height:26px;box-sizing:border-box;display:flex;align-items:center;justify-content:center;background:#fff;color:#E60012;border:1px solid #f5aaa9;border-radius:999px;padding:0 3px;margin:0;text-align:center;font-size:clamp(9.5px,3.35cqw,13px);font-weight:700;line-height:1;white-space:nowrap;z-index:2}
.onhen-radio-letter-copy{position:absolute;left:25%;right:26%;top:59px;display:flex;align-items:center;justify-content:center;gap:6px;padding:0;margin:0;color:#fff;font-size:clamp(21px,7.1cqw,26px);font-weight:900;line-height:1;white-space:nowrap;z-index:2}
.onhen-radio-letter-arrow{font-size:24px;font-weight:700;line-height:1}
}
/* Dedicated page reuses the index design's invitation, notebook and form. */
body.radio-letter-page #onhen-radio-design .onhen-radio-hero{display:block;height:auto;min-height:0;padding:0;background-size:cover;background-position:center center}
body.radio-letter-page #onhen-radio-design .onhen-radio-stage{display:block;position:relative;left:auto;width:100%;height:auto;transform:none;padding:20px 0}
body.radio-letter-page #onhen-radio-design .onhen-radio-stage h1{position:static;width:90%;max-width:420px;height:auto;margin:0 auto}
body.radio-letter-page #onhen-radio-design .onhen-radio-stage h1 img{display:block;width:100%;height:auto}
body.radio-letter-page #onhen-radio-design .onhen-radio-letter{padding:32px 20px 64px}
body.radio-letter-page #onhen-radio-design .onhen-radio-notebook{margin-top:44px}
body.radio-letter-page #onhen-radio-design .form-status:has(.onhen-radio-confirmation)>h3{position:static;width:auto;height:auto;overflow:visible;clip-path:none;white-space:normal;margin:0 0 28px;font-size:22px;line-height:1.5}
body.radio-letter-page #onhen-radio-design .onhen-radio-tags{position:relative;left:auto;bottom:auto;display:block;font-size:12px;padding:0 0 10px;margin:0}
@media(max-width:767px){body.radio-letter-page #onhen-radio-design .onhen-radio-stage{padding:16px 0}body.radio-letter-page #onhen-radio-design .onhen-radio-letter{padding:28px 15px 64px}body.radio-letter-page #onhen-radio-design .onhen-radio-notebook{margin-top:40px}}

/* Shared field feedback for the index, dedicated page and article sidebars. */
.letter-form .letter-field-error,.letter-form .letter-message-count{display:block;margin:8px 0 0;font-size:14px;font-weight:400;line-height:1.6;overflow-wrap:anywhere}
.letter-form .letter-field-error{color:#b00012}
.letter-form .letter-message-count{color:#444}
.letter-form .letter-field-error[hidden]{display:none}
.letter-form label:has([aria-invalid="true"]){scroll-margin-top:88px}
.letter-form .consent{flex-wrap:wrap}
.letter-form .consent>span:not(.letter-field-error){flex:1}
.letter-form .consent>.letter-field-error{flex-basis:100%}
#onhen-radio-design .letter-form label:has(>.red)>:is(.letter-field-error,.letter-message-count){width:calc(100% + 52px);margin-left:-52px}
