/* V22 – strict text-safe layout and accessible registration modal */
.hero {grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;column-gap:clamp(30px,4vw,70px)!important;padding-top:66px!important;padding-bottom:70px!important;min-height:650px!important}
.hero-copy,.hero-visual{min-width:0!important;max-width:100%;}
.hero h1{font-family:'Arial Narrow','Arial',system-ui,sans-serif!important;font-weight:900!important;font-size:clamp(44px,5.0vw,80px)!important;line-height:1.03!important;letter-spacing:-.055em!important;overflow-wrap:normal;word-break:normal;text-transform:uppercase;max-width:100%;}
.hero h1 em{display:inline-block!important;font-style:normal!important;color:#8ee8ff!important;background:none!important;-webkit-background-clip:initial!important;background-clip:border-box!important;-webkit-text-fill-color:#8ee8ff!important;text-shadow:0 0 25px rgba(75,187,255,.38)!important;max-width:100%;}
.hero-pretitle{font-size:clamp(9px,1vw,13px)!important;line-height:1.8!important;letter-spacing:.2em!important;overflow-wrap:anywhere}
.hero .eyebrow{max-width:100%;line-height:1.6!important;white-space:normal!important;overflow-wrap:anywhere}
.hero-description{max-width:500px!important;font-size:15px!important;line-height:1.75!important;overflow-wrap:anywhere}
.hero-meta{flex-wrap:wrap!important;gap:12px 22px!important;margin-top:35px!important;line-height:1.7!important}
.hero-bottom-line{left:6vw!important;right:6vw!important;bottom:20px!important;gap:14px!important;flex-wrap:wrap!important;white-space:normal!important}
.hero-visual{height:clamp(390px,37vw,540px)!important;min-height:390px!important;isolation:isolate}
.hero-visual::after{content:'АКАДЕМИЯ УФСБ · RMRP'!important;max-width:90%;white-space:normal!important;text-align:center;overflow-wrap:anywhere}
.hero-emblem .hero-a-sub{display:none!important}
.hero-emblem .emblem-shield{width:clamp(190px,22vw,290px)!important;height:clamp(190px,22vw,290px)!important}
.hero-letter-a{font-size:clamp(96px,12vw,170px)!important}
.visual-caption{right:0!important;bottom:4%!important;text-align:right;max-width:42%;overflow-wrap:anywhere}
.visual-label{font-size:9px!important;line-height:1.5!important;max-width:42%;white-space:normal!important;text-align:center}
.visual-reticle{max-width:32%;overflow-wrap:anywhere}
.v19-home-index{position:relative!important;inset:auto!important;right:auto!important;bottom:auto!important;max-width:100%;overflow-wrap:anywhere;display:none!important}
.page-head h1,.section-head h2,.panel h2,.lecture-card b,.chapter h2,.review-item b,.reader-head h1{overflow-wrap:anywhere;hyphens:auto;line-height:1.22!important}
.panel,.lecture-card,.history-section,.page-head,.chapter,.review,.certificate-history-item{min-width:0}
.panel-head-row{display:flex;gap:16px;align-items:start;flex-wrap:wrap}
.editor-grid,.builder-grid,.cards{min-width:0}
.table-wrap{max-width:100%;overflow:auto}
table{min-width:680px}
input,textarea,select,button{max-width:100%;min-width:0}
.first-visit-overlay{position:fixed!important;inset:0!important;display:flex!important;align-items:flex-start!important;justify-content:center!important;overflow-y:auto!important;overscroll-behavior:contain;padding:clamp(12px,3vh,26px) 12px!important;scrollbar-gutter:stable;}
.first-visit-overlay[hidden]{display:none!important}
.first-visit-card{margin:auto 0!important;flex:0 1 610px!important;max-height:none!important;width:min(610px,100%)!important;padding:clamp(20px,3vw,32px)!important;}
.first-visit-card h2{font-size:clamp(26px,4vw,38px)!important;line-height:1.1!important;margin:12px 0!important}
.first-visit-card p{font-size:13px!important;line-height:1.65!important;margin:10px 0!important}
.first-visit-card input:not([type=checkbox]){padding:10px 12px!important;min-height:40px!important}
.first-visit-card label{margin:9px 0 4px!important}
.first-visit-card button{min-height:44px!important}
.first-visit-foot{margin-top:14px!important;line-height:1.5;overflow-wrap:anywhere}
@media(max-width:1120px){.hero{grid-template-columns:1fr!important;row-gap:18px!important}.hero-visual{height:340px!important;min-height:340px!important}.hero h1{font-size:clamp(42px,9vw,80px)!important}.hero-meta{margin-top:20px!important}}
@media(max-width:700px){.hero{padding:30px 22px 72px!important}.hero h1{font-size:clamp(37px,10vw,58px)!important}.hero-visual{min-height:290px!important;height:290px!important}.hero-bottom-line{left:22px!important;right:22px!important}.hero-emblem .emblem-shield{width:200px!important;height:200px!important}.visual-caption{bottom:0!important}.first-visit-card{margin:auto 0!important}}
