.rn-section { padding:76px 0; scroll-margin-top:100px; }
.rn-wrap { max-width:1152px; margin:0 auto; padding:0 24px; }
.rn-heading { max-width:760px; margin-bottom:30px; }
.rn-kicker { color:#567580; font-size:12px; font-weight:600; letter-spacing:.08em; margin:0 0 16px; }
.rn-heading h2 { color:#233455; font-size:clamp(27px,3.2vw,39px); line-height:1.45; letter-spacing:-.04em; margin:0 0 18px; }
.rn-heading>p:last-child { color:#526578; font-size:16px; line-height:1.9; }
.rn-section p,.rn-section h2,.rn-section h3,.rn-summary p { word-break:keep-all; overflow-wrap:anywhere; }
.rn-model { background:#f4f6f3; }
.rn-agency { background:#233455; color:#fff; border-radius:18px; padding:30px 34px; display:flex; align-items:center; gap:40px; }
.rn-agency h3 { font-size:26px; line-height:1.5; margin:0; flex:1; }
.rn-agency p { color:#d4e3e5; font-size:15px; line-height:1.9; margin:0; flex:1.4; }
.rn-conditions { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; padding:0; list-style:none; margin:18px 0; }
.rn-conditions li { background:#fff; border:1px solid #d7e1de; border-radius:14px; padding:22px 18px; min-width:0; }
.rn-conditions span { color:#647f82; font-size:11px; letter-spacing:.04em; }
.rn-conditions h3 { color:#233455; font-size:18px; margin:18px 0 10px; }
.rn-conditions p { color:#526578; font-size:13px; line-height:1.85; margin:0; }
.rn-note { color:#627582; font-size:12px; line-height:1.9; margin:20px 0 0; }
.rn-area-visual { margin:24px 0 20px; }
.rn-area-visual img { display:block; width:100%; height:auto; border:1px solid #dbe3e2; border-radius:14px; }
.rn-area-visual figcaption { color:#61737d; font-size:12px; line-height:1.9; margin-top:12px; display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px; }
.rn-area-visual a { color:#233455; text-underline-offset:3px; min-height:44px; display:inline-flex; align-items:center; }
.rn-area-visual>a { display:block; border-radius:14px; }
.rn-media-links { display:flex; flex-wrap:wrap; gap:8px 20px; }
.rn-media-links a:first-child { font-weight:600; }
.rn-media-caption { width:100%; }
.rn-media-caption p { font-size:12px!important; line-height:1.85; margin:4px 0 0; }
.rn-media-caption details { margin-top:8px; }
.rn-media-caption summary { cursor:pointer; min-height:36px; }
.rn-summary { background:#f2f6f6; padding:24px; border-radius:14px; margin:22px 0; }
.rn-summary strong { display:block; color:#233455; font-size:18px; line-height:1.6; margin-bottom:10px; }
.rn-summary p { font-size:14px!important; margin:0; }
.rn-deck { border:1px solid #d5e0e3; border-radius:18px; background:#fff; padding:22px; }
.rn-slide-picker { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:18px; }
.rn-slide-picker button,.rn-slide-controls button,.rn-dialog button { font:inherit; color:#233455; border:1px solid #c4d4d9; border-radius:10px; background:#fff; padding:10px 14px; min-height:44px; cursor:pointer; }
.rn-slide-picker button { font-size:12px; }
.rn-slide-picker button[aria-pressed="true"] { background:#233455; color:#fff; border-color:#233455; }
.rn-slide-picker small { font-size:10px; display:block; margin-bottom:3px; opacity:.8; }
.rn-slide-controls button:disabled { opacity:.35; cursor:default; }
.rn-slide-picker button:hover,.rn-slide-controls button:hover:enabled { border-color:#567580; }
.rn-slides figure { margin:0 0 28px; }
.rn-slides img { width:100%; height:auto; display:block; border-radius:10px; background:#f0f3f3; }
.rn-slides figcaption { display:flex; flex-wrap:wrap; justify-content:space-between; gap:15px; margin-top:20px; color:#526578; font-size:13px; line-height:1.85; }
.rn-slides figcaption strong { display:block; color:#233455; font-size:20px; margin-bottom:5px; }
.rn-slides figcaption a { display:flex; align-items:center; min-height:44px; color:#233455; white-space:nowrap; text-underline-offset:4px; }
.rn-slide-controls { display:flex; gap:14px; justify-content:space-between; align-items:center; margin-top:20px; }
.rn-slide-controls p { font-size:13px; color:#526578; text-align:center; margin:0; }
.rn-slide-controls[hidden],.rn-slide-picker[hidden],.rn-slides figure[hidden] { display:none; }
.rn-slides--ready figure { margin-bottom:0; }
.rn-provenance { border-top:1px solid #dbe3e5; margin-top:24px; padding-top:18px; }
.rn-dialog { width:calc(100% - 40px); max-width:1400px; max-height:calc(100dvh - 40px); border:0; border-radius:14px; padding:20px; color:#233455; }
.rn-dialog::backdrop { background:rgba(14,25,40,.8); }
.rn-dialog-head { display:flex; justify-content:space-between; flex-wrap:wrap; gap:14px; align-items:center; margin-bottom:18px; }
.rn-dialog-head h2 { font-size:18px; line-height:1.6; margin:0; }
.rn-dialog-tools { display:flex; gap:8px; }
.rn-dialog-caption { margin:0 0 14px; color:#526578; }
.rn-dialog-caption:empty { display:none; }
.rn-dialog-scroll { max-height:72dvh; overflow:auto; border-radius:8px; }
.rn-dialog img { width:100%; height:auto; display:block; }
.rn-dialog-scroll.rn-original img { width:var(--rn-image-width,1920px); max-width:none; }
.rn-learning { background:#f4f6f3; }
.rn-learning-steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; list-style:none; padding:0; margin:0 0 24px; }
.rn-learning-steps li { background:#fff; border:1px solid #d7e1de; padding:24px; border-radius:14px; }
.rn-learning-steps span { font-size:12px; color:#647f82; }
.rn-learning-steps h3 { font-size:19px; color:#233455; margin:16px 0 12px; }
.rn-learning-steps p { color:#526578; font-size:14px; line-height:1.9; margin:0; }
.rn-text-link { color:#233455; font-size:14px; font-weight:600; min-height:44px; display:inline-flex; align-items:center; text-decoration:none; }
.rn-text-link:hover { text-decoration:underline; text-underline-offset:4px; }
.rn-section :focus-visible,.rn-area-visual :focus-visible,.rn-deck :focus-visible,.rn-dialog :focus-visible { outline:3px solid #75a8bb; outline-offset:4px; }
@media(max-width:1000px) {
 .rn-conditions { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .rn-learning-steps { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:768px) {
 .rn-section { padding:52px 0; }
 .rn-wrap { padding:0 22px; }
 .rn-agency { display:block; padding:25px; }
 .rn-agency h3 { font-size:23px; margin-bottom:16px; }
 .rn-conditions { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .rn-conditions li:last-child { grid-column:1/-1; }
 .rn-deck { padding:14px; }
 .rn-slide-picker { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
 .rn-slide-picker button { padding:10px 8px; line-height:1.5; }
 .rn-slides figcaption strong { font-size:18px; }
 .rn-slide-controls { gap:8px; }
 .rn-slide-controls button { padding:10px; font-size:13px; }
 .rn-slide-controls p { font-size:12px; }
 .rn-dialog { width:calc(100% - 20px); padding:14px; }
}
@media(max-width:420px) {
 .rn-learning-steps { grid-template-columns:1fr; }
 .rn-conditions li { padding:20px 14px; }
 .rn-conditions h3 { font-size:17px; }
}

.rn-videos { background:#edf3f2; }
.rn-video-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.rn-video-card { min-width:0; background:#fff; border:1px solid #d4e0df; border-radius:16px; overflow:hidden; scroll-margin-top:110px; }
.rn-video-player { position:relative; aspect-ratio:16/9; background:#17263e; }
.rn-video-player video { display:block; width:100%; height:100%; object-fit:contain; }
.rn-video-start { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; width:100%; height:100%; border:0; color:#fff; font:inherit; font-size:14px; font-weight:600; background:linear-gradient(transparent,rgba(17,31,51,.48)); cursor:pointer; }
.rn-video-start>span:first-child { display:grid; place-items:center; width:54px; height:54px; border-radius:50%; background:#233455; box-shadow:0 3px 18px #0003; padding-left:3px; font-size:20px; }
.rn-video-start:hover>span:first-child { background:#345d6a; }
.rn-video-start[hidden],.rn-video-error[hidden] { display:none; }
.rn-video-copy { padding:24px; }
.rn-video-copy .rn-kicker { margin-bottom:12px; font-size:11px; }
.rn-video-copy h3 { color:#233455; font-size:21px; line-height:1.55; margin:0 0 12px; letter-spacing:-.035em; }
.rn-video-copy>p:not(.rn-kicker) { color:#526578; font-size:14px; line-height:1.9; margin:0 0 12px; }
.rn-video-copy .rn-text-link { font-size:12px; }
.rn-video-error { padding:0 24px 20px; color:#526578; font-size:13px; line-height:1.8; }
.rn-video-error a { color:#233455; }
@media(max-width:900px) { .rn-video-grid { grid-template-columns:1fr; max-width:680px; } .rn-video-copy h3 { font-size:23px; } }
