.ct-section {
width:100%;
background-size:cover;
background-repeat:repeat;
}
.ct-section>.ct-section-inner-wrap {
display:flex;
flex-direction:column;
align-items:flex-start;
}
.ct-div-block {
display:flex;
flex-wrap:nowrap;
flex-direction:column;
align-items:flex-start;
}
.ct-new-columns {
display:flex;
width:100%;
flex-direction:row;
align-items:stretch;
justify-content:center;
flex-wrap:wrap;
}
.ct-link-text {
display:inline-block;
}
.ct-link {
display:flex;
flex-wrap:wrap;
text-align:center;
text-decoration:none;
flex-direction:column;
align-items:center;
justify-content:center;
}
.ct-link-button {
display:inline-block;
text-align:center;
text-decoration:none;
}
.ct-link-button {
background-color: #1e73be;
border: 1px solid #1e73be;
color: #ffffff;
padding: 10px 16px;
}
.ct-image {
max-width:100%;
}
.ct-fancy-icon>svg {
width:55px;height:55px;}
.ct-inner-content {
width:100%;
}
.ct-slide {
display:flex;
flex-wrap:wrap;
text-align:center;
flex-direction:column;
align-items:center;
justify-content:center;
}
.ct-nestable-shortcode {
display:flex;
flex-wrap:nowrap;
flex-direction:column;
align-items:flex-start;
}
.oxy-comments {
width:100%;
text-align:left;
}
.oxy-comment-form {
width:100%;
}
.oxy-login-form {
width:100%;
}
.oxy-search-form {
width:100%;
}
.oxy-tabs-contents {
display:flex;
width:100%;
flex-wrap:nowrap;
flex-direction:column;
align-items:flex-start;
}
.oxy-tab {
display:flex;
flex-wrap:nowrap;
flex-direction:column;
align-items:flex-start;
}
.oxy-tab-content {
display:flex;
width:100%;
flex-wrap:nowrap;
flex-direction:column;
align-items:flex-start;
}
.oxy-testimonial {
width:100%;
}
.oxy-icon-box {
width:100%;
}
.oxy-pricing-box {
width:100%;
}
.oxy-posts-grid {
width:100%;
}
.oxy-gallery {
width:100%;
}
.ct-slider {
width:100%;
}
.oxy-tabs {
display:flex;
flex-wrap:nowrap;
flex-direction:row;
align-items:stretch;
}
.ct-modal {
flex-direction:column;
align-items:flex-start;
}
.ct-span {
display:inline-block;
text-decoration:inherit;
}
.ct-widget {
width:100%;
}
.oxy-dynamic-list {
width:100%;
}
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
			.ct-div-block,
			.oxy-post-content,
			.ct-text-block,
			.ct-headline,
			.oxy-rich-text,
			.ct-link-text { max-width: 100%; }
			img { flex-shrink: 0; }
			body * { min-height: 1px; }
		}            .oxy-testimonial {
                flex-direction: row;
                align-items: center;
            }
                        .oxy-testimonial .oxy-testimonial-photo-wrap {
                order: 1;
            }
            
                        .oxy-testimonial .oxy-testimonial-photo {
                width: 125px;                height: 125px;                margin-right: 20px;
            }
            
                        .oxy-testimonial .oxy-testimonial-photo-wrap, 
            .oxy-testimonial .oxy-testimonial-author-wrap, 
            .oxy-testimonial .oxy-testimonial-content-wrap {
                align-items: flex-start;                text-align: left;            }
            
                                                            .oxy-testimonial .oxy-testimonial-text {
                margin-bottom:8px;font-size: 21px;
line-height: 1.4;
-webkit-font-smoothing: subpixel-antialiased;
            }
            
                                    .oxy-testimonial .oxy-testimonial-author {
                font-size: 18px;
-webkit-font-smoothing: subpixel-antialiased;
            }
                            

                                                .oxy-testimonial .oxy-testimonial-author-info {
                font-size: 12px;
-webkit-font-smoothing: subpixel-antialiased;
            }
            
             
            
                        .oxy-icon-box {
                text-align: left;                flex-direction: column;            }
            
                        .oxy-icon-box .oxy-icon-box-icon {
                margin-bottom: 12px;
                align-self: flex-start;            }
            
                                                                        .oxy-icon-box .oxy-icon-box-heading {
                font-size: 21px;
margin-bottom: 12px;            }
            
                                                                                    .oxy-icon-box .oxy-icon-box-text {
                font-size: 16px;
margin-bottom: 12px;align-self: flex-start;            }
            
                        .oxy-icon-box .oxy-icon-box-link {
                margin-top: 20px;                            }
            
            
            /* GLOBALS */

                                                            .oxy-pricing-box .oxy-pricing-box-section {
                padding-top: 20px;
padding-left: 20px;
padding-right: 20px;
padding-bottom: 20px;
text-align: center;            }
                        
                        .oxy-pricing-box .oxy-pricing-box-section.oxy-pricing-box-price {
                justify-content: center;            }
            
            /* IMAGE */
                                                                                    .oxy-pricing-box .oxy-pricing-box-section.oxy-pricing-box-graphic {
                justify-content: center;            }
            
            /* TITLE */
                                                            
                                    .oxy-pricing-box .oxy-pricing-box-title-title {
                font-size: 48px;
            }
            
                                    .oxy-pricing-box .oxy-pricing-box-title-subtitle {
                font-size: 24px;
            }
            

            /* PRICE */
                                                .oxy-pricing-box .oxy-pricing-box-section.oxy-pricing-box-price {
                                                flex-direction: row;                                            }
            
                                    .oxy-pricing-box .oxy-pricing-box-currency {
                font-size: 28px;
            }
            
                                    .oxy-pricing-box .oxy-pricing-box-amount-main {
                font-size: 80px;
line-height: 0.7;
            }
            
                                    .oxy-pricing-box .oxy-pricing-box-amount-decimal {
                font-size: 13px;
            }
                        
                                    .oxy-pricing-box .oxy-pricing-box-term {
                font-size: 16px;
            }
            
                                    .oxy-pricing-box .oxy-pricing-box-sale-price {
                font-size: 12px;
color: rgba(0,0,0,0.5);
                margin-bottom: 20px;            }
            
            /* CONTENT */

                                                                        .oxy-pricing-box .oxy-pricing-box-section.oxy-pricing-box-content {
                font-size: 16px;
color: rgba(0,0,0,0.5);
            }
            
            /* CTA */

                                                                        .oxy-pricing-box .oxy-pricing-box-section.oxy-pricing-box-cta {
                justify-content: center;            }
            
        
                                .oxy-progress-bar .oxy-progress-bar-background {
            background-color: #000000;            background-image: linear-gradient(-45deg,rgba(255,255,255,.12) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.12) 50%,rgba(255,255,255,.12) 75%,transparent 75%,transparent);            animation: none 0s paused;        }
                
                .oxy-progress-bar .oxy-progress-bar-progress-wrap {
            width: 85%;        }
        
                                                        .oxy-progress-bar .oxy-progress-bar-progress {
            background-color: #66aaff;padding: 40px;animation: none 0s paused, none 0s paused;            background-image: linear-gradient(-45deg,rgba(255,255,255,.12) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.12) 50%,rgba(255,255,255,.12) 75%,transparent 75%,transparent);        
        }
                
                        .oxy-progress-bar .oxy-progress-bar-overlay-text {
            font-size: 30px;
font-weight: 900;
-webkit-font-smoothing: subpixel-antialiased;
        }
        
                        .oxy-progress-bar .oxy-progress-bar-overlay-percent {
            font-size: 12px;
        }
        
        .ct-slider .unslider-nav ol li {border-color: #ffffff; }.ct-slider .unslider-nav ol li.unslider-active {background-color: #ffffff; }.ct-slider .ct-slide {
				padding: 0px;			}
		
                        .oxy-superbox .oxy-superbox-secondary, 
            .oxy-superbox .oxy-superbox-primary {
                transition-duration: 0.5s;            }
            
            
            
            
            
        
        
        
        
            .oxy-shape-divider {
                width: 0px;
                height: 0px;
                
            }
            
            .oxy_shape_divider svg {
                width: 100%;
            }
            .oxy-pro-menu .oxy-pro-menu-container:not(.oxy-pro-menu-open-container):not(.oxy-pro-menu-off-canvas-container) .sub-menu{
box-shadow:px px px px ;}

.oxy-pro-menu .oxy-pro-menu-show-dropdown .oxy-pro-menu-list .menu-item-has-children > a svg{
transition-duration:0.4s;
}

.oxy-pro-menu .oxy-pro-menu-show-dropdown .oxy-pro-menu-list .menu-item-has-children > a div{
margin-left:0px;
}

.oxy-pro-menu .oxy-pro-menu-mobile-open-icon svg{
width:30px;
height:30px;
}

.oxy-pro-menu .oxy-pro-menu-mobile-open-icon{
padding-top:15px;
padding-right:15px;
padding-bottom:15px;
padding-left:15px;
}

.oxy-pro-menu .oxy-pro-menu-mobile-open-icon, .oxy-pro-menu .oxy-pro-menu-mobile-open-icon svg{
transition-duration:0.4s;
}

.oxy-pro-menu .oxy-pro-menu-mobile-close-icon{
top:20px;
left:20px;
}

.oxy-pro-menu .oxy-pro-menu-mobile-close-icon svg{
width:24px;
height:24px;
}

.oxy-pro-menu .oxy-pro-menu-mobile-close-icon, .oxy-pro-menu .oxy-pro-menu-mobile-close-icon svg{
transition-duration:0.4s;
}

.oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-off-canvas-container, .oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-open-container{
background-color:#ffffff;
}

.oxy-pro-menu .oxy-pro-menu-off-canvas-container, .oxy-pro-menu .oxy-pro-menu-open-container{
background-image:url();
}

.oxy-pro-menu .oxy-pro-menu-off-canvas-container .oxy-pro-menu-list .menu-item-has-children > a svg, .oxy-pro-menu .oxy-pro-menu-open-container .oxy-pro-menu-list .menu-item-has-children > a svg{
font-size:24px;
}

.oxy-pro-menu .oxy-pro-menu-dropdown-links-toggle.oxy-pro-menu-open-container .menu-item-has-children ul, .oxy-pro-menu .oxy-pro-menu-dropdown-links-toggle.oxy-pro-menu-off-canvas-container .menu-item-has-children ul{
background-color:rgba(0,0,0,0.2);
border-top-style:solid;
}

.oxy-pro-menu .oxy-pro-menu-container:not(.oxy-pro-menu-open-container):not(.oxy-pro-menu-off-canvas-container) .oxy-pro-menu-list{
                    flex-direction: row;
               }
.oxy-pro-menu .oxy-pro-menu-container .menu-item a{
                    text-align: left;
                    justify-content: flex-start;
                }
.oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-open-container .menu-item, .oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-off-canvas-container .menu-item{
                    align-items: flex-start;
                }

            .oxy-pro-menu .oxy-pro-menu-off-canvas-container{
                    top: 0;
                    bottom: 0;
                    right: auto;
                    left: 0;
               }
.oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-open-container .oxy-pro-menu-list .menu-item a, .oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-off-canvas-container .oxy-pro-menu-list .menu-item a{
                    text-align: left;
                    justify-content: flex-start;
                }

            .oxy-site-navigation {
--oxynav-brand-color:#4831B0;
--oxynav-neutral-color:#FFFFFF;
--oxynav-activehover-color:#EFEDF4;
--oxynav-background-color:#4831B0;
--oxynav-border-radius:0px;
--oxynav-other-spacing:8px;
--oxynav-transition-duration:0.3s;
--oxynav-transition-timing-function:cubic-bezier(.84,.05,.31,.93);
}

.oxy-site-navigation .oxy-site-navigation__mobile-close-wrapper{
text-align:left;
}

.oxy-site-navigation > ul{ left: 0; }
.oxy-site-navigation {
                        --oxynav-animation-name: none; 
                    }

                .oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(1){ 
                    background-color: var(--oxynav-brand-color);
                    transition: var(--oxynav-transition-duration);
                    margin-left: var(--oxynav-other-spacing);
                    border: none;
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(2){ 
                    background: transparent;
                    border: 1px solid currentColor;
                    transition: var(--oxynav-transition-duration);
                    margin-left: var(--oxynav-other-spacing);
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(2):not(:hover) > img{
                    filter: invert(0) !important;
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:hover{
                    background-color: var(--oxynav-activehover-color);
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(1) > a{
                    color: var(--oxynav-neutral-color);
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(2) > a{
                    color: var(--oxynav-brand-color);
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:hover > a{
                    color: var(--oxynav-brand-color);
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(1) > a::after{
                    color: var(--oxynav-neutral-color);   
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(2) > a::after{
                    color: var(--oxynav-brand-color);   
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:hover > a::after{
                    color: var(--oxynav-brand-color);   
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true'] > ul{
                    display: none;
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true'] > button, .oxy-site-navigation > ul:not(.open) > li[data-cta='true'] > ul{
                    display: none;
                }

                .ct-section-inner-wrap, .oxy-header-container{
  max-width: 1280px;
}
body {font-family: Arial, Helvetica, sans-serif;}body {line-height: 1.5;font-size: clamp(1.4rem, calc(1.4rem + ((1vw - 0.32rem) * 1.25)), 1.6rem); ;font-weight: 400;color: #404040;}.oxy-nav-menu-hamburger-line {background-color: #404040;}h1, h2, h3, h4, h5, h6 {font-family: Arial, Helvetica, sans-serif;font-size: clamp(2.8rem, calc(2.8rem + ((1vw - 0.32rem) * 1.25)), 4rem); ;font-weight: 700;line-height: 1.1;}h2, h3, h4, h5, h6{font-size: clamp(2.6rem, calc(2.6rem + ((1vw - 0.32rem) * 1.25)), 3.8rem); ;line-height: 1.1;}h3, h4, h5, h6{font-size: clamp(2.4rem, calc(2.4rem + ((1vw - 0.32rem) * 1.25)), 3.6rem); ;line-height: 1.1;}h4, h5, h6{font-size: clamp(2.2rem, calc(2.2rem + ((1vw - 0.32rem) * 1.25)), 3.4rem); ;line-height: 1.1;}h5, h6{font-size: clamp(2rem, calc(2rem + ((1vw - 0.32rem) * 1.25)), 3.2rem); ;line-height: 1.1;}h6{font-size: clamp(1.8rem, calc(1.8rem + ((1vw - 0.32rem) * 1.25)), 3rem); ;line-height: 1.1;}a {color: #009dff;text-decoration: none;}a:hover {text-decoration: none;}.ct-link-text {text-decoration: ;}.ct-link {color: #02a0ef;text-decoration: ;}.ct-link-button {border-radius: 3px;}.ct-section-inner-wrap {
padding-top: clamp(3rem, calc(3rem + ((1vw - 0.32rem) * 4.1667)), 7rem); ;
padding-right: clamp(1rem, calc(1rem + ((1vw - 0.32rem) * 1.0417)), 2rem); ;
padding-bottom: clamp(3rem, calc(3rem + ((1vw - 0.32rem) * 4.1667)), 7rem); ;
padding-left: clamp(1rem, calc(1rem + ((1vw - 0.32rem) * 1.0417)), 2rem); ;
}.ct-new-columns > .ct-div-block {
padding-top: 20px;
padding-right: 20px;
padding-bottom: 20px;
padding-left: 20px;
}.oxy-header-container {
padding-right: clamp(1rem, calc(1rem + ((1vw - 0.32rem) * 1.0417)), 2rem); ;
padding-left: clamp(1rem, calc(1rem + ((1vw - 0.32rem) * 1.0417)), 2rem); ;
}@media (max-width: 992px) {
				.ct-columns-inner-wrap {
					display: block !important;
				}
				.ct-columns-inner-wrap:after {
					display: table;
					clear: both;
					content: "";
				}
				.ct-column {
					width: 100% !important;
					margin: 0 !important;
				}
				.ct-columns-inner-wrap {
					margin: 0 !important;
				}
			}
.linkwrapper01:hover{
transform:scale(1.1,1.1); box-shadow:4px 4px 8px 4px rgba(0,0,0,0.45);
}
.linkwrapper01 {
 border-top-style:solid;
 border-right-style:solid;
 border-bottom-style:solid;
 border-left-style:solid;
 border-radius:2rem;
 border-top-color:#02a0ef;
 border-right-color:#02a0ef;
 border-bottom-color:#02a0ef;
 border-left-color:#02a0ef;
 border-top-width:5px;
 border-right-width:5px;
 border-bottom-width:5px;
 border-left-width:5px;
 transition-duration:0.4s;
 text-align:center;
 box-shadow:2px 2px 6px 2px rgba(0,0,0,0.51);
}
@media (max-width: 479px) {
.linkwrapper01 {
}
}

.button01:hover{
}.button01:hover{
 transition-duration:0.4s;
 box-shadow:inset 2px 2px 5px 3px rgba(0,0,0,0.57);
 text-shadow:0px 0px 4px #000000;
}
.button01 {
padding: 7px 11.2px;
}.button01 {
 font-size:2rem;
 button-hover_color:rgba(0,193,0,0.67);
 border-radius:1.8rem;
 transition-duration:0.4s;
 box-shadow:2px 2px 4px 1px rgba(0,0,0,0.57);
 text-shadow:2px 1px 3px rgba(0,0,0,0.57);
}
.owl-spacing--l {
 border-top-color:#02a0ef;
 border-right-color:#02a0ef;
 border-bottom-color:#02a0ef;
 border-left-color:#02a0ef;
 border-bottom-width:1rem;
 border-bottom-style:solid;
}
.textlink01:hover{
transform:scale(1.05,1.05); text-shadow:2px 2px 1px rgba(0,0,0,0.46);
}
.textlink01 {
 transition-duration:0.4s;
}
html {
height: 100%;
	font-size: 62.5%;
}

/* Owl Spacing - отступы */

.ct-section.owl-spacing--s .ct-section-inner-wrap > * + *,
.owl-spacing--s:not(.ct-section) > * + * {
margin-top: .5vmax;
}

.ct-section.owl-spacing--m .ct-section-inner-wrap > * + *,
.owl-spacing--m:not(.ct-section) > * + * {
margin-top: 1vmax;
}

.ct-section.owl-spacing--l .ct-section-inner-wrap > * + *,
.owl-spacing--l:not(.ct-section) > * + * {
margin-top: 2vmax;
}

.ct-section.owl-spacing--xl .ct-section-inner-wrap > * + *,
.owl-spacing--xl:not(.ct-section) > * + * {
margin-top: 4vmax;
}

________________________________________
страница "Русскоязычный собеседник в США"

.rususa-page {
    --rususa-page-bg: #eef7fa;
    --rususa-white: #ffffff;
    --rususa-ice: #f5fbfd;
    --rususa-sky: #e0f4fa;
    --rususa-sky-strong: #ccecf5;
    --rususa-blue: #079bd3;
    --rususa-blue-dark: #08779e;
    --rususa-navy: #153844;
    --rususa-navy-deep: #0c2a35;
    --rususa-heading: #18323c;
    --rususa-text: #384f58;
    --rususa-muted: #667a82;
    --rususa-border: #c8dfe6;
    --rususa-border-dark: rgba(21, 56, 68, 0.18);
    --rususa-shadow: 0 18px 45px rgba(21, 56, 68, 0.11);
    --rususa-shadow-small: 0 9px 24px rgba(21, 56, 68, 0.08);
    --rususa-radius-small: 14px;
    --rususa-radius-medium: 24px;
    --rususa-radius-large: 34px;
    --rususa-content-width: 1160px;

    width: 100%;
    max-width: 100%;
    overflow: hidden;
    background: var(--rususa-page-bg);
    color: var(--rususa-text);
    font-family: Arial, Helvetica, sans-serif;
    font-size: 19px;
    font-weight: 400;
    line-height: 1.68;
}

.rususa-page *,
.rususa-page *::before,
.rususa-page *::after {
    box-sizing: border-box;
}

.rususa-page main,
.rususa-page section,
.rususa-page article,
.rususa-page div {
    min-width: 0;
    min-height: 0;
}

.rususa-page section {
    position: relative;
    width: 100%;
    height: auto;
    margin: 0;
}

.rususa-page img {
    display: block;
    max-width: 100%;
    height: auto;
}

.rususa-page p,
.rususa-page li {
    color: inherit;
    font-size: 1rem;
    line-height: 1.68;
}

.rususa-page p {
    margin: 0;
}

.rususa-page h1,
.rususa-page h2,
.rususa-page h3 {
    color: var(--rususa-heading);
    font-family: Arial, Helvetica, sans-serif;
    font-weight: 700;
    text-wrap: balance;
}

.rususa-page a {
    color: inherit;
}

.rususa-page .rususa-wrap {
    width: min(calc(100% - 96px), var(--rususa-content-width));
    margin-right: auto;
    margin-left: auto;
}

.rususa-page .rususa-label,
.rususa-page .rususa-kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 17px;
    color: var(--rususa-blue-dark);
    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0.13em;
    line-height: 1.35;
    text-transform: uppercase;
}

.rususa-page .rususa-label::before,
.rususa-page .rususa-kicker::before {
    display: block;
    width: 30px;
    height: 2px;
    flex: 0 0 auto;
    background: var(--rususa-blue);
    content: "";
}

.rususa-page .rususa-label--light {
    color: #9ee8ff;
}

.rususa-page .rususa-label--light::before {
    background: #72dfff;
}

.rususa-page .rususa-heading {
    max-width: 840px;
    margin: 0;
    color: var(--rususa-heading);
    font-size: clamp(2.15rem, 4vw, 3.55rem);
    font-weight: 700;
    letter-spacing: -0.045em;
    line-height: 1.08;
}

.rususa-page .rususa-heading--light {
    color: var(--rususa-white);
}

.rususa-page .rususa-section-head {
    max-width: 880px;
    margin: 0 0 46px;
}

.rususa-page .rususa-section-head--wide {
    max-width: 980px;
}

.rususa-page .rususa-section-head--split {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(300px, 0.75fr);
    gap: 64px;
    max-width: none;
    align-items: end;
}

.rususa-page .rususa-section-intro {
    max-width: 690px;
    margin: 20px 0 0;
    color: var(--rususa-muted);
    font-size: 1.06rem;
    line-height: 1.65;
}

.rususa-page .rususa-section-head--split .rususa-section-intro {
    margin: 0 0 5px;
}

.rususa-page .rususa-link {
    color: var(--rususa-blue-dark);
    font-weight: 700;
    text-decoration-line: underline;
    text-decoration-color: rgba(7, 155, 211, 0.42);
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;
    transition:
        color 180ms ease,
        text-decoration-color 180ms ease;
}

.rususa-page .rususa-link:hover {
    color: var(--rususa-blue);
    text-decoration-color: currentColor;
}

.rususa-page .rususa-btn {
    display: inline-flex;
    min-height: 56px;
    align-items: center;
    justify-content: center;
    padding: 15px 27px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 0.9rem;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    transition:
        color 180ms ease,
        background-color 180ms ease,
        border-color 180ms ease,
        box-shadow 180ms ease,
        transform 180ms ease;
}

.rususa-page .rususa-btn:hover {
    transform: translateY(-2px);
}

.rususa-page .rususa-btn:focus-visible,
.rususa-page .rususa-link:focus-visible,
.rususa-page .rususa-arrow-link:focus-visible,
.rususa-page .rususa-final__email:focus-visible {
    outline: 3px solid rgba(7, 155, 211, 0.44);
    outline-offset: 4px;
}

.rususa-page .rususa-btn--primary {
    border-color: var(--rususa-blue);
    background: var(--rususa-blue);
    box-shadow: 0 12px 28px rgba(7, 155, 211, 0.25);
    color: var(--rususa-white);
}

.rususa-page .rususa-btn--primary:hover {
    border-color: var(--rususa-blue-dark);
    background: var(--rususa-blue-dark);
    box-shadow: 0 17px 34px rgba(7, 155, 211, 0.3);
    color: var(--rususa-white);
}

.rususa-page .rususa-btn--outline {
    border-color: #a9c9d3;
    background: var(--rususa-white);
    color: var(--rususa-navy);
}

.rususa-page .rususa-btn--outline:hover {
    border-color: var(--rususa-blue);
    background: var(--rususa-ice);
    color: var(--rususa-blue-dark);
}

.rususa-page .rususa-btn--white {
    border-color: var(--rususa-white);
    background: var(--rususa-white);
    color: var(--rususa-navy-deep);
}

.rususa-page .rususa-btn--white:hover {
    border-color: var(--rususa-sky);
    background: var(--rususa-sky);
    color: var(--rususa-navy-deep);
}

.rususa-page .rususa-btn--ghost {
    border-color: rgba(255, 255, 255, 0.55);
    background: transparent;
    color: var(--rususa-white);
}

.rususa-page .rususa-btn--ghost:hover {
    border-color: var(--rususa-white);
    background: rgba(255, 255, 255, 0.1);
    color: var(--rususa-white);
}

/* Первый экран */

.rususa-page .rususa-hero {
    padding: 70px 0 82px;
    border-bottom: 1px solid var(--rususa-border);
    background:
        radial-gradient(circle at 95% 0%, rgba(7, 155, 211, 0.12), transparent 31%),
        linear-gradient(135deg, #f8fdfe 0%, #e8f7fb 58%, #d9f0f7 100%);
}

.rususa-page .rususa-hero::before {
    position: absolute;
    top: -210px;
    right: -155px;
    width: 500px;
    height: 500px;
    border: 1px solid rgba(7, 155, 211, 0.18);
    border-radius: 50%;
    content: "";
    pointer-events: none;
}

.rususa-page .rususa-hero__grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(380px, 0.9fr);
    gap: 64px;
    align-items: center;
}

.rususa-page .rususa-hero__content {
    max-width: 710px;
}

.rususa-page .rususa-hero__title {
    margin: 0;
    color: var(--rususa-heading);
    font-size: clamp(2.8rem, 5.25vw, 4.85rem);
    font-weight: 700;
    letter-spacing: -0.058em;
    line-height: 0.99;
}

.rususa-page .rususa-hero__lead {
    max-width: 690px;
    margin: 27px 0 0;
    color: var(--rususa-text);
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 1.58;
}

.rususa-page .rususa-hero__text {
    max-width: 670px;
    margin: 17px 0 0;
    color: var(--rususa-text);
    font-size: 1rem;
}

.rususa-page .rususa-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 29px;
}

.rususa-page .rususa-hero__hint {
    max-width: 600px;
    margin: 16px 0 0;
    color: var(--rususa-muted);
    font-size: 0.82rem;
    line-height: 1.5;
}

.rususa-page .rususa-hero__media {
    position: relative;
    padding: 14px 14px 68px;
}

.rususa-page .rususa-hero__photo {
    position: relative;
    overflow: hidden;
    border: 9px solid var(--rususa-white);
    border-radius: var(--rususa-radius-large);
    background: var(--rususa-white);
    box-shadow: var(--rususa-shadow);
}

.rususa-page .rususa-hero__photo::after {
    position: absolute;
    inset: 0;
    border: 1px solid rgba(21, 56, 68, 0.08);
    border-radius: inherit;
    content: "";
    pointer-events: none;
}

.rususa-page .rususa-hero__photo img {
    width: 100%;
    aspect-ratio: 708 / 540;
    object-fit: cover;
}

.rususa-page .rususa-hero__caption {
    position: absolute;
    right: -6px;
    bottom: 0;
    width: min(390px, 88%);
    padding: 21px 24px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 20px;
    background: var(--rususa-navy);
    box-shadow: 0 17px 38px rgba(12, 42, 53, 0.24);
    color: var(--rususa-white);
}

.rususa-page .rususa-hero__caption-mark {
    display: block;
    height: 23px;
    color: #75ddff;
    font-family: Georgia, serif;
    font-size: 2.7rem;
    line-height: 1;
}

.rususa-page .rususa-hero__caption p {
    margin: 5px 0 0;
    color: var(--rususa-white);
    font-size: 0.87rem;
    font-style: italic;
    line-height: 1.55;
}

/* Вступление */

.rususa-page .rususa-opening {
    padding: 84px 0;
    border-bottom: 1px solid var(--rususa-border);
    background: var(--rususa-white);
}

.rususa-page .rususa-opening__grid {
    display: grid;
    grid-template-columns: minmax(290px, 0.84fr) minmax(0, 1.16fr);
    gap: 74px;
    align-items: start;
}

.rususa-page .rususa-opening__side {
    padding: 30px;
    border: 1px solid var(--rususa-border);
    border-radius: var(--rususa-radius-medium);
    background: var(--rususa-ice);
}

.rususa-page .rususa-opening__side .rususa-heading {
    font-size: clamp(2rem, 3.6vw, 3rem);
}

.rususa-page .rususa-opening__body {
    max-width: 730px;
    padding-top: 6px;
}

.rususa-page .rususa-opening__body > p {
    margin: 0 0 21px;
    color: var(--rususa-text);
    font-size: 1.03rem;
}

.rususa-page .rususa-opening__quote {
    margin-top: 31px;
    padding: 28px 31px;
    border: 1px solid #bce1eb;
    border-left: 5px solid var(--rususa-blue);
    border-radius: var(--rususa-radius-small);
    background: var(--rususa-sky);
    box-shadow: var(--rususa-shadow-small);
}

.rususa-page .rususa-opening__quote p {
    margin: 0;
    color: var(--rususa-navy);
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.48;
}

/* Узнаваемые ситуации */

.rususa-page .rususa-recognition {
    padding: 84px 0 91px;
    border-bottom: 1px solid var(--rususa-border);
    background: var(--rususa-ice);
}

.rususa-page .rususa-recognition__grid {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 18px;
}

.rususa-page .rususa-situation {
    grid-column: span 4;
    padding: 28px;
    border: 1px solid var(--rususa-border);
    border-top: 5px solid var(--rususa-blue);
    border-radius: var(--rususa-radius-medium);
    background: var(--rususa-white);
    box-shadow: var(--rususa-shadow-small);
}

.rususa-page .rususa-situation--feature {
    grid-column: span 8;
    border-top-color: var(--rususa-navy);
    background:
        linear-gradient(135deg, var(--rususa-white), var(--rususa-sky));
}

.rususa-page .rususa-situation__number {
    display: inline-flex;
    width: 43px;
    height: 43px;
    align-items: center;
    justify-content: center;
    margin-bottom: 26px;
    border: 1px solid #aed8e4;
    border-radius: 50%;
    background: var(--rususa-ice);
    color: var(--rususa-blue-dark);
    font-size: 0.73rem;
    font-weight: 700;
}

.rususa-page .rususa-situation h3 {
    margin: 0;
    color: var(--rususa-heading);
    font-size: 1.27rem;
    letter-spacing: -0.02em;
    line-height: 1.25;
}

.rususa-page .rususa-situation p {
    margin: 15px 0 0;
    color: var(--rususa-text);
    font-size: 0.93rem;
    line-height: 1.62;
}

.rususa-page .rususa-recognition__closing {
    max-width: 880px;
    margin: 28px 0 0 auto;
    padding: 31px 36px;
    border-radius: var(--rususa-radius-medium);
    background:
        linear-gradient(135deg, var(--rususa-navy), var(--rususa-navy-deep));
    box-shadow: var(--rususa-shadow);
}

.rususa-page .rususa-recognition__closing p {
    margin: 0;
    color: var(--rususa-white);
    font-size: 1.34rem;
    font-weight: 600;
    letter-spacing: -0.02em;
    line-height: 1.45;
}

/* Родной язык */

.rususa-page .rususa-language {
    padding: 88px 0;
    border-bottom: 1px solid var(--rususa-border);
    background: var(--rususa-white);
}

.rususa-page .rususa-language__grid {
    display: grid;
    grid-template-columns: minmax(320px, 0.74fr) minmax(0, 1.26fr);
    gap: 75px;
    align-items: center;
}

.rususa-page .rususa-language__media {
    position: relative;
    width: min(100%, 440px);
    margin: 0 auto;
    padding: 25px 25px 62px;
    border: 1px solid var(--rususa-border);
    border-radius: var(--rususa-radius-large);
    background: var(--rususa-sky);
}

.rususa-page .rususa-language__photo {
    overflow: hidden;
    border: 7px solid var(--rususa-white);
    border-radius: 44% 44% 24px 24px;
    box-shadow: var(--rususa-shadow);
}

.rususa-page .rususa-language__photo img {
    width: 100%;
    aspect-ratio: 394 / 356;
    object-fit: cover;
}

.rususa-page .rususa-language__note {
    position: absolute;
    right: -18px;
    bottom: 20px;
    width: min(315px, 84%);
    padding: 18px 21px;
    border: 1px solid #aedbe8;
    border-radius: var(--rususa-radius-small);
    background: var(--rususa-white);
    box-shadow: var(--rususa-shadow-small);
}

.rususa-page .rususa-language__note p {
    margin: 0;
    color: var(--rususa-navy);
    font-size: 0.84rem;
    font-weight: 600;
    line-height: 1.5;
}

.rususa-page .rususa-language__content > p:not(.rususa-label) {
    max-width: 740px;
    margin: 20px 0 0;
    color: var(--rususa-text);
    font-size: 1.02rem;
}

.rususa-page .rususa-language__list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-top: 30px;
}

.rususa-page .rususa-language__item {
    padding: 22px;
    border: 1px solid var(--rususa-border);
    border-radius: var(--rususa-radius-small);
    background: var(--rususa-ice);
}

.rususa-page .rususa-language__item:nth-child(2) {
    background: var(--rususa-sky);
}

.rususa-page .rususa-language__item h3 {
    margin: 0;
    color: var(--rususa-heading);
    font-size: 1.03rem;
    line-height: 1.3;
}

.rususa-page .rususa-language__item p {
    margin: 11px 0 0;
    color: var(--rususa-text);
    font-size: 0.84rem;
    line-height: 1.55;
}

/* Цитата */

.rususa-page .rususa-phrase {
    padding: 63px 0;
    background:
        radial-gradient(circle at 80% 30%, rgba(114, 223, 255, 0.15), transparent 28%),
        linear-gradient(135deg, var(--rususa-blue-dark), var(--rususa-navy-deep));
}

.rususa-page .rususa-phrase__inner {
    max-width: 920px;
    margin: 0 auto;
    text-align: center;
}

.rususa-page .rususa-phrase__small,
.rususa-page .rususa-phrase__text {
    margin: 0;
    color: rgba(255, 255, 255, 0.75);
    font-size: 0.96rem;
}

.rususa-page .rususa-phrase__large {
    margin: 10px 0 13px;
    color: var(--rususa-white);
    font-size: clamp(2.1rem, 4.5vw, 4rem);
    font-weight: 700;
    letter-spacing: -0.048em;
    line-height: 1.1;
}

/* Как проходит общение */

.rususa-page .rususa-format {
    padding: 86px 0;
    border-bottom: 1px solid var(--rususa-border);
    background: var(--rususa-page-bg);
}

.rususa-page .rususa-format__steps {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.rususa-page .rususa-format-step {
    padding: 28px;
    border: 1px solid var(--rususa-border);
    border-radius: var(--rususa-radius-medium);
    background: var(--rususa-white);
    box-shadow: var(--rususa-shadow-small);
}

.rususa-page .rususa-format-step:nth-child(2),
.rususa-page .rususa-format-step:nth-child(3) {
    background: var(--rususa-sky);
}

.rususa-page .rususa-format-step__top {
    display: flex;
    gap: 16px;
    align-items: center;
    margin-bottom: 18px;
    padding-bottom: 18px;
    border-bottom: 1px solid var(--rususa-border);
}

.rususa-page .rususa-format-step__top span {
    display: inline-flex;
    width: 46px;
    height: 46px;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--rususa-navy);
    color: var(--rususa-white);
    font-size: 0.73rem;
    font-weight: 700;
}

.rususa-page .rususa-format-step h3 {
    margin: 0;
    color: var(--rususa-heading);
    font-size: 1.25rem;
    line-height: 1.28;
}

.rususa-page .rususa-format-step p {
    margin: 11px 0 0;
    color: var(--rususa-text);
    font-size: 0.91rem;
}

.rususa-page .rususa-format__cta {
    display: flex;
    gap: 34px;
    align-items: center;
    justify-content: space-between;
    margin-top: 22px;
    padding: 27px 30px;
    border: 1px solid #addae7;
    border-radius: var(--rususa-radius-medium);
    background: var(--rususa-sky);
}

.rususa-page .rususa-format__cta h3 {
    margin: 0;
    color: var(--rususa-heading);
    font-size: 1.28rem;
}

.rususa-page .rususa-format__cta p {
    max-width: 640px;
    margin: 7px 0 0;
    color: var(--rususa-text);
}

.rususa-page .rususa-format__cta .rususa-btn {
    flex: 0 0 auto;
}

/* Темы */

.rususa-page .rususa-conversation {
    padding: 86px 0;
    border-bottom: 1px solid var(--rususa-border);
    background: var(--rususa-white);
}

.rususa-page .rususa-conversation__grid {
    display: grid;
    grid-template-columns: minmax(0, 0.94fr) minmax(0, 1.06fr);
    gap: 72px;
    align-items: start;
}

.rususa-page .rususa-conversation__main {
    padding: 30px;
    border: 1px solid var(--rususa-border);
    border-radius: var(--rususa-radius-medium);
    background: var(--rususa-ice);
}

.rususa-page .rususa-conversation__main > p:not(.rususa-label) {
    margin: 19px 0 0;
    color: var(--rususa-text);
    font-size: 1rem;
}

.rususa-page .rususa-conversation__topics {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.rususa-page .rususa-topic {
    padding: 23px;
    border: 1px solid var(--rususa-border);
    border-radius: var(--rususa-radius-small);
    background: var(--rususa-white);
    box-shadow: var(--rususa-shadow-small);
}

.rususa-page .rususa-topic:nth-child(1),
.rususa-page .rususa-topic:nth-child(4),
.rususa-page .rususa-topic:nth-child(5) {
    background: var(--rususa-sky);
}

.rususa-page .rususa-topic span {
    display: block;
    padding-bottom: 12px;
    border-bottom: 2px solid var(--rususa-blue);
    color: var(--rususa-heading);
    font-size: 1.04rem;
    font-weight: 700;
}

.rususa-page .rususa-topic p {
    margin: 13px 0 0;
    color: var(--rususa-text);
    font-size: 0.85rem;
    line-height: 1.56;
}

/* О собеседнике */

.rususa-page .rususa-listening {
    padding: 88px 0;
    border-bottom: 1px solid var(--rususa-border);
    background: var(--rususa-sky);
}

.rususa-page .rususa-listening__grid {
    display: grid;
    grid-template-columns: minmax(310px, 0.72fr) minmax(0, 1.28fr);
    gap: 76px;
    align-items: center;
}

.rususa-page .rususa-listening__portrait {
    width: min(100%, 430px);
    margin: 0 auto;
    padding: 24px;
    border: 1px solid #acd8e4;
    border-radius: var(--rususa-radius-large);
    background: var(--rususa-white);
    box-shadow: var(--rususa-shadow);
}

.rususa-page .rususa-listening__portrait-frame {
    overflow: hidden;
    border-radius: 130px 130px 23px 23px;
    background: var(--rususa-sky);
}

.rususa-page .rususa-listening__portrait-frame img {
    width: 100%;
    aspect-ratio: 383 / 476;
    object-fit: cover;
}

.rususa-page .rususa-listening__caption {
    margin: 17px 0 0;
    padding: 13px 18px;
    border-radius: 999px;
    background: var(--rususa-navy);
    color: var(--rususa-white);
    font-size: 0.79rem;
    font-weight: 600;
    text-align: center;
}

.rususa-page .rususa-listening__content {
    padding: 34px;
    border: 1px solid #b4dce7;
    border-radius: var(--rususa-radius-medium);
    background: rgba(255, 255, 255, 0.82);
}

.rususa-page .rususa-listening__content > p:not(.rususa-label) {
    max-width: 730px;
    margin: 19px 0 0;
    color: var(--rususa-text);
    font-size: 1rem;
}

.rususa-page .rususa-listening__principles {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 13px;
    margin-top: 28px;
}

.rususa-page .rususa-listening__principles > div {
    padding: 20px;
    border: 1px solid var(--rususa-border);
    border-radius: var(--rususa-radius-small);
    background: var(--rususa-white);
}

.rususa-page .rususa-listening__principles h3 {
    margin: 0;
    color: var(--rususa-heading);
    font-size: 1rem;
}

.rususa-page .rususa-listening__principles p {
    margin: 10px 0 0;
    color: var(--rususa-text);
    font-size: 0.82rem;
    line-height: 1.52;
}

.rususa-page .rususa-arrow-link {
    display: inline-flex;
    gap: 9px;
    align-items: center;
    margin-top: 26px;
    color: var(--rususa-blue-dark);
    font-weight: 700;
    text-decoration: none;
}

.rususa-page .rususa-arrow-link::after {
    content: "→";
    transition: transform 180ms ease;
}

.rususa-page .rususa-arrow-link:hover {
    color: var(--rususa-blue);
}

.rususa-page .rususa-arrow-link:hover::after {
    transform: translateX(5px);
}

/* Почему разговор платный */

.rususa-page .rususa-difference {
    padding: 86px 0;
    border-bottom: 1px solid var(--rususa-border);
    background: var(--rususa-white);
}

.rususa-page .rususa-difference__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(350px, 0.92fr);
    gap: 68px;
}

.rususa-page .rususa-difference__essay {
    max-width: 710px;
    padding: 30px;
    border-left: 5px solid var(--rususa-blue);
    border-radius: 0 var(--rususa-radius-medium) var(--rususa-radius-medium) 0;
    background: var(--rususa-ice);
}

.rususa-page .rususa-difference__essay p {
    margin: 0 0 19px;
    color: var(--rususa-text);
    font-size: 1rem;
}

.rususa-page .rususa-difference__essay p:last-child {
    margin-bottom: 0;
}

.rususa-page .rususa-difference__points {
    display: grid;
    gap: 13px;
}

.rususa-page .rususa-difference__points article {
    padding: 23px 24px;
    border: 1px solid var(--rususa-border);
    border-radius: var(--rususa-radius-small);
    background: var(--rususa-sky);
}

.rususa-page .rususa-difference__points article:nth-child(2) {
    background: var(--rususa-white);
    box-shadow: var(--rususa-shadow-small);
}

.rususa-page .rususa-difference__points span {
    display: inline-flex;
    width: 36px;
    height: 36px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--rususa-navy);
    color: var(--rususa-white);
    font-size: 0.68rem;
    font-weight: 700;
}

.rususa-page .rususa-difference__points h3 {
    margin: 14px 0 0;
    color: var(--rususa-heading);
    font-size: 1.13rem;
    line-height: 1.28;
}

.rususa-page .rususa-difference__points p {
    margin: 9px 0 0;
    color: var(--rususa-text);
    font-size: 0.85rem;
}

/* География */

.rususa-page .rususa-geography {
    padding: 84px 0;
    border-bottom: 1px solid #a8d5e2;
    background:
        linear-gradient(135deg, #d8f0f7, #edf9fc);
}

.rususa-page .rususa-geography__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.95fr);
    gap: 68px;
    align-items: center;
}

.rususa-page .rususa-geography__content {
    padding: 31px;
    border: 1px solid #acd8e4;
    border-radius: var(--rususa-radius-medium);
    background: rgba(255, 255, 255, 0.82);
}

.rususa-page .rususa-geography__content > p:not(.rususa-label) {
    margin: 19px 0 0;
    color: var(--rususa-text);
    font-size: 1rem;
}

.rususa-page .rususa-geography__map {
    padding: 30px;
    border: 1px solid #acd7e3;
    border-radius: var(--rususa-radius-medium);
    background: var(--rususa-white);
    box-shadow: var(--rususa-shadow-small);
}

.rususa-page .rususa-geography__map-title {
    margin: 0;
    color: var(--rususa-heading);
    font-size: 1.16rem;
    font-weight: 700;
}

.rususa-page .rususa-geography__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: 21px;
}

.rususa-page .rususa-geography__tags span {
    display: inline-flex;
    min-height: 41px;
    align-items: center;
    padding: 8px 15px;
    border: 1px solid #9fd1df;
    border-radius: 999px;
    background: var(--rususa-ice);
    color: var(--rususa-navy);
    font-size: 0.76rem;
    font-weight: 700;
}

.rususa-page .rususa-geography__tags span:nth-child(3n + 1) {
    background: var(--rususa-sky);
}

.rususa-page .rususa-geography__map-note {
    margin: 21px 0 0;
    padding-top: 18px;
    border-top: 1px solid var(--rususa-border);
    color: var(--rususa-muted);
    font-size: 0.82rem;
}

/* Преимущества */

.rususa-page .rususa-benefits {
    padding: 86px 0 92px;
    border-bottom: 1px solid var(--rususa-border);
    background: var(--rususa-white);
}

.rususa-page .rususa-benefits__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 15px;
}

.rususa-page .rususa-benefit {
    padding: 27px;
    border: 1px solid var(--rususa-border);
    border-radius: var(--rususa-radius-small);
    background: var(--rususa-ice);
}

.rususa-page .rususa-benefit:nth-child(even) {
    background: var(--rususa-sky);
}

.rususa-page .rususa-benefit__line {
    display: block;
    width: 43px;
    height: 4px;
    margin-bottom: 23px;
    border-radius: 999px;
    background: var(--rususa-blue);
}

.rususa-page .rususa-benefit h3 {
    margin: 0;
    color: var(--rususa-heading);
    font-size: 1.18rem;
    line-height: 1.28;
}

.rususa-page .rususa-benefit p {
    margin: 13px 0 0;
    color: var(--rususa-text);
    font-size: 0.87rem;
}

/* Границы услуги */

.rususa-page .rususa-boundaries {
    padding: 88px 0;
    background:
        radial-gradient(circle at 90% 5%, rgba(83, 204, 239, 0.16), transparent 30%),
        linear-gradient(145deg, var(--rususa-navy), var(--rususa-navy-deep));
}

.rususa-page .rususa-boundaries__head {
    max-width: 900px;
}

.rususa-page .rususa-boundaries__head > p:last-child {
    max-width: 730px;
    margin: 21px 0 0;
    color: rgba(255, 255, 255, 0.76);
    font-size: 1.02rem;
}

.rususa-page .rususa-boundaries__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 17px;
    margin-top: 38px;
}

.rususa-page .rususa-boundaries__card {
    padding: 31px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: var(--rususa-radius-medium);
}

.rususa-page .rususa-boundaries__card--positive {
    background: rgba(99, 213, 245, 0.12);
}

.rususa-page .rususa-boundaries__card--negative {
    background: rgba(255, 255, 255, 0.08);
}

.rususa-page .rususa-boundaries__card h3 {
    margin: 0;
    padding-bottom: 17px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.17);
    color: var(--rususa-white);
    font-size: 1.36rem;
}

.rususa-page .rususa-boundaries__card ul {
    display: grid;
    gap: 13px;
    margin: 22px 0 0;
    padding: 0;
    list-style: none;
}

.rususa-page .rususa-boundaries__card li {
    position: relative;
    padding-left: 27px;
    color: rgba(255, 255, 255, 0.86);
    font-size: 0.9rem;
    line-height: 1.55;
}

.rususa-page .rususa-boundaries__card li::before {
    position: absolute;
    top: 0;
    left: 0;
    font-weight: 700;
}

.rususa-page .rususa-boundaries__card--positive li::before {
    color: #7de3ff;
    content: "✓";
}

.rususa-page .rususa-boundaries__card--negative li::before {
    color: rgba(255, 255, 255, 0.57);
    content: "—";
}

.rususa-page .rususa-boundaries__note {
    max-width: 900px;
    margin: 25px 0 0;
    padding: 17px 20px;
    border: 1px solid rgba(255, 255, 255, 0.13);
    border-radius: var(--rususa-radius-small);
    background: rgba(0, 0, 0, 0.13);
    color: rgba(255, 255, 255, 0.69);
    font-size: 0.81rem;
}

/* Перед звонком */

.rususa-page .rususa-expectations {
    padding: 84px 0;
    border-bottom: 1px solid var(--rususa-border);
    background: var(--rususa-ice);
}

.rususa-page .rususa-expectations__grid {
    display: grid;
    grid-template-columns: minmax(290px, 0.78fr) minmax(0, 1.22fr);
    gap: 72px;
    align-items: start;
}

.rususa-page .rususa-expectations__heading {
    padding: 29px;
    border: 1px solid var(--rususa-border);
    border-radius: var(--rususa-radius-medium);
    background: var(--rususa-sky);
}

.rususa-page .rususa-expectations__heading .rususa-heading {
    font-size: clamp(2rem, 3.7vw, 3rem);
}

.rususa-page .rususa-expectations__content {
    max-width: 730px;
}

.rususa-page .rususa-expectations__content > p {
    margin: 0 0 20px;
    color: var(--rususa-text);
    font-size: 1rem;
}

.rususa-page .rususa-expectations__box {
    margin: 28px 0;
    padding: 27px 30px;
    border: 1px solid var(--rususa-border);
    border-left: 5px solid var(--rususa-blue);
    border-radius: var(--rususa-radius-small);
    background: var(--rususa-white);
    box-shadow: var(--rususa-shadow-small);
}

.rususa-page .rususa-expectations__box h3 {
    margin: 0;
    color: var(--rususa-heading);
    font-size: 1.24rem;
}

.rususa-page .rususa-expectations__box ul {
    display: grid;
    gap: 11px;
    margin: 19px 0 0;
    padding: 0;
    list-style: none;
}

.rususa-page .rususa-expectations__box li {
    position: relative;
    padding-left: 24px;
    color: var(--rususa-text);
    font-size: 0.92rem;
}

.rususa-page .rususa-expectations__box li::before {
    position: absolute;
    left: 0;
    color: var(--rususa-blue);
    content: "•";
    font-size: 1.3rem;
    line-height: 1.2;
}

/* FAQ */

.rususa-page .rususa-faq {
    padding: 86px 0 92px;
    border-bottom: 1px solid var(--rususa-border);
    background: var(--rususa-white);
}

.rususa-page .rususa-faq__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.rususa-page .rususa-faq-item {
    padding: 25px 27px;
    border: 1px solid var(--rususa-border);
    border-radius: var(--rususa-radius-small);
    background: var(--rususa-ice);
}

.rususa-page .rususa-faq-item:nth-child(4n + 2),
.rususa-page .rususa-faq-item:nth-child(4n + 3) {
    background: var(--rususa-sky);
}

.rususa-page .rususa-faq-item h3 {
    margin: 0;
    padding-bottom: 14px;
    border-bottom: 2px solid #a9d7e4;
    color: var(--rususa-heading);
    font-size: 1.14rem;
    line-height: 1.3;
}

.rususa-page .rususa-faq-item p {
    margin: 14px 0 0;
    color: var(--rususa-text);
    font-size: 0.88rem;
    line-height: 1.6;
}

.rususa-page .rususa-faq-item .rususa-link {
    display: inline-block;
    margin-top: 13px;
}

/* Финальный CTA */

.rususa-page .rususa-final {
    padding: 70px 0 88px;
    background: var(--rususa-page-bg);
}

.rususa-page .rususa-final__card {
    display: grid;
    grid-template-columns: minmax(0, 1.23fr) minmax(300px, 0.77fr);
    gap: 66px;
    padding: clamp(40px, 6vw, 68px);
    border: 1px solid rgba(255, 255, 255, 0.13);
    border-radius: var(--rususa-radius-large);
    background:
        radial-gradient(circle at 91% 8%, rgba(90, 213, 248, 0.2), transparent 27%),
        linear-gradient(135deg, var(--rususa-blue-dark), var(--rususa-navy-deep));
    box-shadow: var(--rususa-shadow);
    color: var(--rususa-white);
}

.rususa-page .rususa-final__main {
    max-width: 730px;
}

.rususa-page .rususa-final__title {
    margin: 0;
    color: var(--rususa-white);
    font-size: clamp(2.15rem, 4vw, 3.75rem);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1.08;
}

.rususa-page .rususa-final__main > p:not(.rususa-label) {
    max-width: 680px;
    margin: 20px 0 0;
    color: rgba(255, 255, 255, 0.82);
    font-size: 1rem;
}

.rususa-page .rususa-final__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 29px;
}

.rususa-page .rususa-final__contact {
    align-self: end;
    padding: 27px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: var(--rususa-radius-medium);
    background: rgba(255, 255, 255, 0.09);
}

.rususa-page .rususa-final__contact-label {
    margin: 0;
    color: rgba(255, 255, 255, 0.71);
    font-size: 0.8rem;
}

.rususa-page .rususa-final__email {
    display: inline-block;
    max-width: 100%;
    margin-top: 9px;
    color: var(--rususa-white);
    font-size: 1.08rem;
    font-weight: 700;
    overflow-wrap: anywhere;
    text-decoration: none;
}

.rususa-page .rususa-final__email:hover {
    color: #8fe7ff;
}

.rususa-page .rususa-final__contact > p:not(.rususa-final__contact-label) {
    margin: 16px 0 0;
    color: rgba(255, 255, 255, 0.69);
    font-size: 0.81rem;
}

.rususa-page .rususa-final__small {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 20px;
}

.rususa-page .rususa-final__small span {
    padding: 7px 10px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 999px;
    color: rgba(255, 255, 255, 0.78);
    font-size: 0.68rem;
}

/* Планшеты */

@media (max-width: 1024px) {
    .rususa-page .rususa-wrap {
        width: min(calc(100% - 64px), var(--rususa-content-width));
    }

    .rususa-page .rususa-hero__grid {
        grid-template-columns: minmax(0, 1fr) minmax(340px, 0.8fr);
        gap: 45px;
    }

    .rususa-page .rususa-situation {
        grid-column: span 6;
    }

    .rususa-page .rususa-situation--feature {
        grid-column: span 12;
    }

    .rususa-page .rususa-language__list,
    .rususa-page .rususa-listening__principles {
        grid-template-columns: 1fr;
    }

    .rususa-page .rususa-benefits__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Небольшие планшеты */

@media (max-width: 820px) {
    .rususa-page {
        font-size: 18px;
    }

    .rususa-page .rususa-wrap {
        width: min(calc(100% - 40px), var(--rususa-content-width));
    }

    .rususa-page .rususa-hero__grid,
    .rususa-page .rususa-opening__grid,
    .rususa-page .rususa-language__grid,
    .rususa-page .rususa-conversation__grid,
    .rususa-page .rususa-listening__grid,
    .rususa-page .rususa-difference__layout,
    .rususa-page .rususa-geography__grid,
    .rususa-page .rususa-expectations__grid,
    .rususa-page .rususa-final__card {
        grid-template-columns: 1fr;
    }

    .rususa-page .rususa-section-head--split {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .rususa-page .rususa-section-head--split .rususa-section-intro {
        margin: 0;
    }

    .rususa-page .rususa-hero__content {
        max-width: 760px;
    }

    .rususa-page .rususa-hero__media {
        width: min(100%, 590px);
        margin: 0 auto;
    }

    .rususa-page .rususa-opening,
    .rususa-page .rususa-recognition,
    .rususa-page .rususa-language,
    .rususa-page .rususa-format,
    .rususa-page .rususa-conversation,
    .rususa-page .rususa-listening,
    .rususa-page .rususa-difference,
    .rususa-page .rususa-geography,
    .rususa-page .rususa-benefits,
    .rususa-page .rususa-boundaries,
    .rususa-page .rususa-expectations,
    .rususa-page .rususa-faq {
        padding-top: 72px;
        padding-bottom: 72px;
    }

    .rususa-page .rususa-language__media,
    .rususa-page .rususa-listening__portrait {
        order: 2;
    }

    .rususa-page .rususa-language__content,
    .rususa-page .rususa-listening__content {
        order: 1;
    }

    .rususa-page .rususa-format__cta {
        align-items: flex-start;
        flex-direction: column;
    }

    .rususa-page .rususa-format__cta .rususa-btn {
        flex: auto;
    }

    .rususa-page .rususa-difference__points {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .rususa-page .rususa-boundaries__grid {
        grid-template-columns: 1fr;
    }

    .rususa-page .rususa-final__contact {
        align-self: stretch;
    }
}

/* Телефоны */

@media (max-width: 620px) {
    .rususa-page {
        font-size: 17px;
        line-height: 1.64;
    }

    .rususa-page .rususa-wrap {
        width: min(calc(100% - 28px), var(--rususa-content-width));
    }

    .rususa-page .rususa-hero {
        padding: 44px 0 60px;
    }

    .rususa-page .rususa-hero__title {
        font-size: clamp(2.3rem, 11vw, 3.4rem);
        line-height: 1.01;
    }

    .rususa-page .rususa-hero__lead {
        margin-top: 22px;
        font-size: 1.08rem;
    }

    .rususa-page .rususa-heading {
        font-size: clamp(1.95rem, 8.8vw, 2.7rem);
        line-height: 1.1;
    }

    .rususa-page .rususa-hero__actions,
    .rususa-page .rususa-final__actions {
        flex-direction: column;
    }

    .rususa-page .rususa-btn {
        width: 100%;
    }

    .rususa-page .rususa-hero__media {
        padding-right: 0;
        padding-left: 0;
    }

    .rususa-page .rususa-hero__photo {
        border-width: 6px;
        border-radius: 25px;
    }

    .rususa-page .rususa-hero__caption {
        right: 7px;
        width: calc(100% - 14px);
    }

    .rususa-page .rususa-opening,
    .rususa-page .rususa-recognition,
    .rususa-page .rususa-language,
    .rususa-page .rususa-format,
    .rususa-page .rususa-conversation,
    .rususa-page .rususa-listening,
    .rususa-page .rususa-difference,
    .rususa-page .rususa-geography,
    .rususa-page .rususa-benefits,
    .rususa-page .rususa-boundaries,
    .rususa-page .rususa-expectations,
    .rususa-page .rususa-faq {
        padding-top: 58px;
        padding-bottom: 58px;
    }

    .rususa-page .rususa-opening__side,
    .rususa-page .rususa-conversation__main,
    .rususa-page .rususa-listening__content,
    .rususa-page .rususa-geography__content,
    .rususa-page .rususa-expectations__heading {
        padding: 24px;
    }

    .rususa-page .rususa-recognition__grid {
        grid-template-columns: 1fr;
    }

    .rususa-page .rususa-situation,
    .rususa-page .rususa-situation--feature {
        grid-column: auto;
        padding: 24px;
    }

    .rususa-page .rususa-language__media {
        width: 100%;
        padding: 20px 20px 68px;
    }

    .rususa-page .rususa-language__note {
        right: 5px;
    }

    .rususa-page .rususa-phrase {
        padding: 52px 0;
    }

    .rususa-page .rususa-format__steps,
    .rususa-page .rususa-conversation__topics,
    .rususa-page .rususa-difference__points,
    .rususa-page .rususa-benefits__grid,
    .rususa-page .rususa-faq__grid {
        grid-template-columns: 1fr;
    }

    .rususa-page .rususa-format-step,
    .rususa-page .rususa-format__cta,
    .rususa-page .rususa-topic,
    .rususa-page .rususa-difference__points article,
    .rususa-page .rususa-geography__map,
    .rususa-page .rususa-benefit,
    .rususa-page .rususa-faq-item,
    .rususa-page .rususa-expectations__box {
        padding: 23px;
    }

    .rususa-page .rususa-listening__portrait {
        width: 100%;
    }

    .rususa-page .rususa-boundaries__card {
        padding: 24px;
    }

    .rususa-page .rususa-final {
        padding: 48px 0 64px;
    }

    .rususa-page .rususa-final__card {
        gap: 35px;
        padding: 33px 24px;
        border-radius: 26px;
    }
}

/* 320–375 px */

@media (max-width: 375px) {
    .rususa-page {
        font-size: 16px;
    }

    .rususa-page .rususa-wrap {
        width: min(calc(100% - 20px), var(--rususa-content-width));
    }

    .rususa-page .rususa-hero__title {
        font-size: 2.22rem;
        overflow-wrap: anywhere;
    }

    .rususa-page .rususa-heading {
        font-size: 1.86rem;
    }

    .rususa-page .rususa-opening__side,
    .rususa-page .rususa-opening__quote,
    .rususa-page .rususa-situation,
    .rususa-page .rususa-recognition__closing,
    .rususa-page .rususa-format-step,
    .rususa-page .rususa-format__cta,
    .rususa-page .rususa-topic,
    .rususa-page .rususa-listening__content,
    .rususa-page .rususa-difference__essay,
    .rususa-page .rususa-difference__points article,
    .rususa-page .rususa-geography__content,
    .rususa-page .rususa-geography__map,
    .rususa-page .rususa-benefit,
    .rususa-page .rususa-boundaries__card,
    .rususa-page .rususa-expectations__heading,
    .rususa-page .rususa-expectations__box,
    .rususa-page .rususa-faq-item,
    .rususa-page .rususa-final__contact {
        padding-right: 20px;
        padding-left: 20px;
    }

    .rususa-page .rususa-final__card {
        padding: 29px 20px;
    }

    .rususa-page .rususa-final__title {
        font-size: 1.92rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rususa-page *,
    .rususa-page *::before,
    .rususa-page *::after {
        scroll-behavior: auto;
        transition-duration: 0.01ms;
        transition-delay: 0ms;
    }

    .rususa-page .rususa-btn:hover,
    .rususa-page .rususa-arrow-link:hover::after {
        transform: none;
    }
}

/* =========================================================
   RUSUSA — ФИНАЛЬНЫЙ КОРРЕКТИРУЮЩИЙ СЛОЙ ДЛЯ OXYGEN
   Разместить ПОСЛЕ всего предыдущего CSS страницы
   ========================================================= */

/* ---------- Полный сброс растягивания Oxygen ---------- */

.rususa-page,
.rususa-page > section,
.rususa-page article,
.rususa-page div,
.rususa-page .rususa-wrap {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
}

.rususa-page > section {
    display: block !important;
    overflow: hidden;
}

.rususa-page [class*="__grid"],
.rususa-page [class*="__layout"],
.rususa-page [class*="__steps"],
.rususa-page [class*="__topics"],
.rususa-page [class*="__principles"],
.rususa-page [class*="__points"] {
    align-content: start !important;
    align-items: start !important;
    grid-auto-rows: auto !important;
}

.rususa-page {
    --rususa-override-navy: #173b49;
    --rususa-override-dark: #0e2d38;
    --rususa-override-blue: #159ac5;
    --rususa-override-blue-dark: #0b779c;
    --rususa-override-ice: #f2f9fb;
    --rususa-override-pale: #e2f3f7;
    --rususa-override-mid: #cbe8ef;
    --rususa-override-white: #ffffff;
    --rususa-override-text: #334b54;
    --rususa-override-heading: #19353f;
    --rususa-override-muted: #607780;
    --rususa-override-line: #b9d9e1;
    --rususa-override-shadow: 0 14px 35px rgba(18, 58, 72, 0.1);

    width: 100%;
    padding: 18px clamp(18px, 3.5vw, 58px) 46px;
    background: #dceef3;
    color: var(--rususa-override-text);
    font-size: 19px !important;
    line-height: 1.65;
}

.rususa-page > section {
    width: 100%;
    max-width: 1420px;
    margin: 0 auto 22px !important;
    padding: 0 !important;
    border: 1px solid rgba(31, 83, 99, 0.14);
    border-radius: 28px;
    background: var(--rususa-override-white);
    box-shadow: 0 6px 22px rgba(18, 58, 72, 0.06);
}

.rususa-page > section:last-child {
    margin-bottom: 0 !important;
}

.rususa-page .rususa-wrap {
    width: 100% !important;
    max-width: 1240px !important;
    margin: 0 auto !important;
    padding: clamp(38px, 5vw, 68px) clamp(24px, 5vw, 68px) !important;
}

/* ---------- Типографика ---------- */

.rususa-page p,
.rususa-page li {
    color: var(--rususa-override-text) !important;
    font-size: clamp(16px, 1.15vw, 19px) !important;
    line-height: 1.66 !important;
}

.rususa-page h1,
.rususa-page h2,
.rususa-page h3 {
    max-width: none;
    color: var(--rususa-override-heading) !important;
}

.rususa-page .rususa-hero__title {
    max-width: 730px;
    font-size: clamp(45px, 5.2vw, 75px) !important;
    line-height: 0.99 !important;
    letter-spacing: -0.055em !important;
}

.rususa-page .rususa-heading {
    max-width: 850px;
    font-size: clamp(36px, 4vw, 57px) !important;
    line-height: 1.07 !important;
}

.rususa-page h3 {
    font-size: clamp(20px, 1.7vw, 25px) !important;
    line-height: 1.25 !important;
}

.rususa-page .rususa-label,
.rususa-page .rususa-kicker {
    margin-bottom: 15px !important;
    color: var(--rususa-override-blue-dark) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    letter-spacing: 0.12em !important;
}

.rususa-page .rususa-label--light {
    color: #a8ecff !important;
}

.rususa-page .rususa-section-intro {
    max-width: 670px;
    color: var(--rususa-override-muted) !important;
    font-size: 19px !important;
}

/* ---------- HERO ---------- */

.rususa-page .rususa-hero {
    border-color: #a9d3de;
    background:
        radial-gradient(
            circle at 94% 5%,
            rgba(21, 154, 197, 0.17),
            transparent 29%
        ),
        linear-gradient(
            135deg,
            #f7fcfd 0%,
            #e5f5f9 50%,
            #ceeaf1 100%
        ) !important;
}

.rususa-page .rususa-hero .rususa-wrap {
    padding-top: clamp(42px, 5vw, 72px) !important;
    padding-bottom: clamp(42px, 5vw, 72px) !important;
}

.rususa-page .rususa-hero__grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1.05fr) minmax(380px, 0.95fr) !important;
    gap: clamp(38px, 5vw, 70px) !important;
    align-items: center !important;
}

.rususa-page .rususa-hero__content {
    max-width: 730px;
}

.rususa-page .rususa-hero__lead {
    max-width: 680px;
    margin-top: 25px !important;
    color: #29444e !important;
    font-size: clamp(19px, 1.5vw, 22px) !important;
    font-weight: 500;
}

.rususa-page .rususa-hero__text {
    max-width: 670px;
    margin-top: 17px !important;
}

.rususa-page .rususa-hero__actions {
    margin-top: 27px !important;
}

.rususa-page .rususa-hero__hint {
    margin-top: 14px !important;
    color: var(--rususa-override-muted) !important;
    font-size: 14px !important;
}

.rususa-page .rususa-hero__media {
    padding: 0 0 55px !important;
}

.rususa-page .rususa-hero__photo {
    border: 8px solid var(--rususa-override-white) !important;
    border-radius: 25px !important;
    box-shadow: 0 20px 46px rgba(18, 58, 72, 0.18) !important;
}

.rususa-page .rususa-hero__caption {
    right: -8px !important;
    bottom: 0 !important;
    padding: 20px 23px !important;
    border: 1px solid rgba(255, 255, 255, 0.18) !important;
    background: var(--rususa-override-navy) !important;
}

.rususa-page .rususa-hero__caption p {
    color: #ffffff !important;
    font-size: 15px !important;
}

/* ---------- Общая визуальная система секций ---------- */

.rususa-page .rususa-opening {
    background: #ffffff !important;
}

.rususa-page .rususa-recognition {
    background: #eef8fa !important;
}

.rususa-page .rususa-language {
    background: #ffffff !important;
}

.rususa-page .rususa-format {
    background: #e3f2f6 !important;
}

.rususa-page .rususa-conversation {
    background: #ffffff !important;
}

.rususa-page .rususa-listening {
    background: #dceff4 !important;
}

.rususa-page .rususa-difference {
    background: #f5fafb !important;
}

.rususa-page .rususa-geography {
    background:
        linear-gradient(135deg, #d4edf3, #edf8fa) !important;
}

.rususa-page .rususa-benefits {
    background: #ffffff !important;
}

.rususa-page .rususa-expectations {
    background: #e8f5f8 !important;
}

.rususa-page .rususa-faq {
    background: #ffffff !important;
}

/* ---------- Вступительная секция ---------- */

.rususa-page .rususa-opening__grid {
    display: grid !important;
    grid-template-columns: minmax(300px, 0.78fr) minmax(0, 1.22fr) !important;
    gap: clamp(36px, 5vw, 68px) !important;
}

.rususa-page .rususa-opening__side {
    padding: 31px !important;
    border: 1px solid var(--rususa-override-line) !important;
    border-radius: 20px !important;
    background: var(--rususa-override-pale) !important;
    box-shadow: var(--rususa-override-shadow);
}

.rususa-page .rususa-opening__body {
    padding: 4px 0 0 !important;
}

.rususa-page .rususa-opening__body > p {
    margin-bottom: 19px !important;
}

.rususa-page .rususa-opening__quote {
    margin-top: 26px !important;
    padding: 25px 28px !important;
    border: 1px solid #a9d4de !important;
    border-left: 6px solid var(--rususa-override-blue) !important;
    border-radius: 15px !important;
    background: #d9f0f5 !important;
}

.rususa-page .rususa-opening__quote p {
    color: var(--rususa-override-navy) !important;
    font-size: clamp(20px, 1.7vw, 25px) !important;
    font-weight: 700;
}

/* ---------- Ситуации ---------- */

.rususa-page .rususa-recognition__grid {
    display: grid !important;
    grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
    gap: 17px !important;
}

.rususa-page .rususa-situation {
    grid-column: span 4;
    align-self: start !important;
    padding: 27px !important;
    border: 1px solid var(--rususa-override-line) !important;
    border-top: 5px solid var(--rususa-override-blue) !important;
    border-radius: 18px !important;
    background: #ffffff !important;
    box-shadow: var(--rususa-override-shadow);
}

.rususa-page .rususa-situation--feature {
    grid-column: span 8;
    background:
        linear-gradient(135deg, #ffffff, #dceff4) !important;
}

.rususa-page .rususa-situation__number {
    margin-bottom: 22px !important;
    background: #e4f4f7 !important;
    color: var(--rususa-override-blue-dark) !important;
}

.rususa-page .rususa-situation p {
    margin-top: 13px !important;
    font-size: 16px !important;
}

.rususa-page .rususa-recognition__closing {
    margin-top: 22px !important;
    padding: 27px 32px !important;
    background:
        linear-gradient(
            135deg,
            var(--rususa-override-navy),
            var(--rususa-override-dark)
        ) !important;
}

.rususa-page .rususa-recognition__closing p {
    color: #ffffff !important;
    font-size: clamp(21px, 2vw, 29px) !important;
}

/* ---------- Язык и фотография ---------- */

.rususa-page .rususa-language__grid {
    display: grid !important;
    grid-template-columns: minmax(320px, 0.75fr) minmax(0, 1.25fr) !important;
    gap: clamp(40px, 6vw, 75px) !important;
    align-items: center !important;
}

.rususa-page .rususa-language__media {
    padding: 23px 23px 65px !important;
    border: 1px solid var(--rususa-override-line) !important;
    border-radius: 25px !important;
    background: #d7edf3 !important;
}

.rususa-page .rususa-language__note {
    border: 1px solid var(--rususa-override-line) !important;
    background: #ffffff !important;
}

.rususa-page .rususa-language__note p {
    color: var(--rususa-override-navy) !important;
    font-size: 15px !important;
}

.rususa-page .rususa-language__list {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 13px !important;
    margin-top: 27px !important;
}

.rususa-page .rususa-language__item {
    padding: 21px !important;
    border: 1px solid var(--rususa-override-line) !important;
    border-radius: 15px !important;
    background: #f4fafb !important;
}

.rususa-page .rususa-language__item:nth-child(2) {
    background: #dceff4 !important;
}

.rususa-page .rususa-language__item p {
    font-size: 15px !important;
}

/* ---------- Большая фраза ---------- */

.rususa-page .rususa-phrase {
    border: none;
    background:
        linear-gradient(
            135deg,
            var(--rususa-override-blue-dark),
            var(--rususa-override-dark)
        ) !important;
}

.rususa-page .rususa-phrase .rususa-wrap {
    padding-top: 52px !important;
    padding-bottom: 52px !important;
}

.rususa-page .rususa-phrase p {
    color: rgba(255, 255, 255, 0.78) !important;
}

.rususa-page .rususa-phrase__large {
    color: #ffffff !important;
    font-size: clamp(40px, 4.4vw, 64px) !important;
}

/* ---------- Шаги ---------- */

.rususa-page .rususa-format__steps {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
}

.rususa-page .rususa-format-step {
    align-self: start !important;
    padding: 27px !important;
    border: 1px solid #abcfd8 !important;
    border-radius: 18px !important;
    background: #ffffff !important;
    box-shadow: var(--rususa-override-shadow);
}

.rususa-page .rususa-format-step:nth-child(2),
.rususa-page .rususa-format-step:nth-child(3) {
    background: #d8edf2 !important;
}

.rususa-page .rususa-format-step__top {
    margin-bottom: 16px !important;
    padding-bottom: 16px !important;
    border-bottom: 1px solid #b6d6de !important;
}

.rususa-page .rususa-format-step p {
    margin-top: 10px !important;
    font-size: 16px !important;
}

.rususa-page .rususa-format__cta {
    margin-top: 18px !important;
    padding: 25px 28px !important;
    border: 1px solid #9fcbd6 !important;
    border-radius: 18px !important;
    background: #cce8ef !important;
}

/* ---------- Темы разговора ---------- */

.rususa-page .rususa-conversation__grid {
    display: grid !important;
    grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr) !important;
    gap: clamp(38px, 5vw, 68px) !important;
}

.rususa-page .rususa-conversation__main {
    padding: 29px !important;
    border: 1px solid var(--rususa-override-line) !important;
    border-radius: 20px !important;
    background: #e9f5f7 !important;
}

.rususa-page .rususa-conversation__topics {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 13px !important;
}

.rususa-page .rususa-topic {
    align-self: start !important;
    padding: 22px !important;
    border: 1px solid var(--rususa-override-line) !important;
    border-radius: 15px !important;
    background: #ffffff !important;
    box-shadow: var(--rususa-override-shadow);
}

.rususa-page .rususa-topic:nth-child(1),
.rususa-page .rususa-topic:nth-child(4),
.rususa-page .rususa-topic:nth-child(5) {
    background: #dceff4 !important;
}

.rususa-page .rususa-topic p {
    font-size: 15px !important;
}

/* ---------- Блок о Дамире ---------- */

.rususa-page .rususa-listening__grid {
    display: grid !important;
    grid-template-columns: minmax(310px, 0.72fr) minmax(0, 1.28fr) !important;
    gap: clamp(38px, 6vw, 72px) !important;
    align-items: center !important;
}

.rususa-page .rususa-listening__portrait {
    padding: 22px !important;
    border: 1px solid #a9d0da !important;
    border-radius: 25px !important;
    background: #ffffff !important;
    box-shadow: var(--rususa-override-shadow);
}

.rususa-page .rususa-listening__caption {
    background: var(--rususa-override-navy) !important;
    color: #ffffff !important;
}

.rususa-page .rususa-listening__content {
    padding: 32px !important;
    border: 1px solid #a8d1db !important;
    border-radius: 21px !important;
    background: rgba(255, 255, 255, 0.92) !important;
}

.rususa-page .rususa-listening__principles {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
    margin-top: 25px !important;
}

.rususa-page .rususa-listening__principles > div {
    padding: 19px !important;
    border: 1px solid var(--rususa-override-line) !important;
    border-radius: 14px !important;
    background: #eaf5f7 !important;
}

.rususa-page .rususa-listening__principles p {
    font-size: 14px !important;
}

/* ---------- Платный разговор ---------- */

.rususa-page .rususa-difference__layout {
    display: grid !important;
    grid-template-columns: minmax(0, 1.06fr) minmax(350px, 0.94fr) !important;
    gap: clamp(38px, 5vw, 66px) !important;
}

.rususa-page .rususa-difference__essay {
    padding: 28px !important;
    border: 1px solid var(--rususa-override-line) !important;
    border-left: 6px solid var(--rususa-override-blue) !important;
    border-radius: 0 19px 19px 0 !important;
    background: #ffffff !important;
}

.rususa-page .rususa-difference__points {
    display: grid !important;
    gap: 12px !important;
}

.rususa-page .rususa-difference__points article {
    align-self: start !important;
    padding: 22px !important;
    border: 1px solid var(--rususa-override-line) !important;
    border-radius: 15px !important;
    background: #dceff4 !important;
}

/* ---------- География ---------- */

.rususa-page .rususa-geography__grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1.05fr) minmax(350px, 0.95fr) !important;
    gap: clamp(36px, 5vw, 65px) !important;
    align-items: center !important;
}

.rususa-page .rususa-geography__content,
.rususa-page .rususa-geography__map {
    padding: 28px !important;
    border: 1px solid #a8d0da !important;
    border-radius: 19px !important;
    background: rgba(255, 255, 255, 0.9) !important;
}

.rususa-page .rususa-geography__map {
    box-shadow: var(--rususa-override-shadow);
}

/* ---------- Преимущества ---------- */

.rususa-page .rususa-benefits__grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 14px !important;
}

.rususa-page .rususa-benefit {
    align-self: start !important;
    padding: 25px !important;
    border: 1px solid var(--rususa-override-line) !important;
    border-radius: 15px !important;
    background: #f2f9fa !important;
}

.rususa-page .rususa-benefit:nth-child(even) {
    background: #dceff4 !important;
}

.rususa-page .rususa-benefit p {
    font-size: 16px !important;
}

/* ---------- Границы ---------- */

.rususa-page .rususa-boundaries {
    border-color: var(--rususa-override-dark);
    background:
        linear-gradient(
            145deg,
            var(--rususa-override-navy),
            var(--rususa-override-dark)
        ) !important;
}

.rususa-page .rususa-boundaries p,
.rususa-page .rususa-boundaries li {
    color: rgba(255, 255, 255, 0.84) !important;
}

.rususa-page .rususa-boundaries h2,
.rususa-page .rususa-boundaries h3 {
    color: #ffffff !important;
}

.rususa-page .rususa-boundaries__grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 15px !important;
    margin-top: 33px !important;
}

.rususa-page .rususa-boundaries__card {
    padding: 29px !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    border-radius: 18px !important;
}

.rususa-page .rususa-boundaries__card--positive {
    background: rgba(73, 190, 222, 0.15) !important;
}

.rususa-page .rususa-boundaries__card--negative {
    background: rgba(0, 0, 0, 0.14) !important;
}

/* ---------- Подготовка к звонку ---------- */

.rususa-page .rususa-expectations__grid {
    display: grid !important;
    grid-template-columns: minmax(300px, 0.8fr) minmax(0, 1.2fr) !important;
    gap: clamp(38px, 5vw, 68px) !important;
}

.rususa-page .rususa-expectations__heading {
    padding: 28px !important;
    border: 1px solid #a9d1db !important;
    border-radius: 19px !important;
    background: #cfe9ef !important;
}

.rususa-page .rususa-expectations__box {
    margin: 24px 0 !important;
    padding: 26px !important;
    border: 1px solid var(--rususa-override-line) !important;
    border-left: 6px solid var(--rususa-override-blue) !important;
    border-radius: 15px !important;
    background: #ffffff !important;
    box-shadow: var(--rususa-override-shadow);
}

/* ---------- FAQ ---------- */

.rususa-page .rususa-faq__grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 13px !important;
}

.rususa-page .rususa-faq-item {
    align-self: start !important;
    padding: 24px !important;
    border: 1px solid var(--rususa-override-line) !important;
    border-radius: 15px !important;
    background: #f2f9fa !important;
}

.rususa-page .rususa-faq-item:nth-child(4n + 2),
.rususa-page .rususa-faq-item:nth-child(4n + 3) {
    background: #dceff4 !important;
}

.rususa-page .rususa-faq-item h3 {
    padding-bottom: 13px !important;
    border-bottom: 2px solid #92cbd9 !important;
}

.rususa-page .rususa-faq-item p {
    margin-top: 13px !important;
    font-size: 16px !important;
}

/* ---------- Финальный CTA ---------- */

.rususa-page .rususa-final {
    border: none;
    background: transparent !important;
    box-shadow: none;
}

.rususa-page .rususa-final .rususa-wrap {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.rususa-page .rususa-final__card {
    display: grid !important;
    grid-template-columns: minmax(0, 1.2fr) minmax(300px, 0.8fr) !important;
    gap: clamp(36px, 5vw, 64px) !important;
    padding: clamp(38px, 5vw, 62px) !important;
    border-radius: 25px !important;
    background:
        linear-gradient(
            135deg,
            var(--rususa-override-blue-dark),
            var(--rususa-override-dark)
        ) !important;
}

.rususa-page .rususa-final__title,
.rususa-page .rususa-final h2 {
    color: #ffffff !important;
}

.rususa-page .rususa-final p {
    color: rgba(255, 255, 255, 0.82) !important;
}

.rususa-page .rususa-final__contact {
    padding: 25px !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    border-radius: 18px !important;
    background: rgba(255, 255, 255, 0.1) !important;
}

.rususa-page .rususa-final__email {
    color: #ffffff !important;
}

/* =========================================================
   АДАПТИВ
   ========================================================= */

@media (max-width: 1050px) {
    .rususa-page {
        padding-right: 26px;
        padding-left: 26px;
    }

    .rususa-page .rususa-wrap {
        padding-right: 38px !important;
        padding-left: 38px !important;
    }

    .rususa-page .rususa-hero__grid {
        grid-template-columns: minmax(0, 1fr) minmax(330px, 0.78fr) !important;
        gap: 38px !important;
    }

    .rususa-page .rususa-situation {
        grid-column: span 6;
    }

    .rususa-page .rususa-situation--feature {
        grid-column: span 12;
    }

    .rususa-page .rususa-language__list,
    .rususa-page .rususa-listening__principles {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 820px) {
    .rususa-page {
        padding: 12px 14px 32px;
    }

    .rususa-page > section {
        margin-bottom: 14px !important;
        border-radius: 20px;
    }

    .rususa-page .rususa-wrap {
        padding: 44px 25px !important;
    }

    .rususa-page .rususa-hero__grid,
    .rususa-page .rususa-opening__grid,
    .rususa-page .rususa-language__grid,
    .rususa-page .rususa-conversation__grid,
    .rususa-page .rususa-listening__grid,
    .rususa-page .rususa-difference__layout,
    .rususa-page .rususa-geography__grid,
    .rususa-page .rususa-expectations__grid,
    .rususa-page .rususa-final__card {
        grid-template-columns: 1fr !important;
        gap: 30px !important;
    }

    .rususa-page .rususa-section-head--split {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
    }

    .rususa-page .rususa-hero__media {
        width: min(100%, 590px);
        margin: 0 auto;
    }

    .rususa-page .rususa-language__media,
    .rususa-page .rususa-listening__portrait {
        order: 2;
    }

    .rususa-page .rususa-language__content,
    .rususa-page .rususa-listening__content {
        order: 1;
    }

    .rususa-page .rususa-difference__points {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

    .rususa-page .rususa-boundaries__grid {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 620px) {
    .rususa-page {
        font-size: 17px !important;
    }

    .rususa-page .rususa-wrap {
        padding: 38px 19px !important;
    }

    .rususa-page .rususa-hero__title {
        font-size: clamp(39px, 11vw, 53px) !important;
    }

    .rususa-page .rususa-heading {
        font-size: clamp(31px, 9vw, 43px) !important;
    }

    .rususa-page .rususa-hero__actions,
    .rususa-page .rususa-final__actions {
        flex-direction: column;
    }

    .rususa-page .rususa-btn {
        width: 100%;
    }

    .rususa-page .rususa-recognition__grid,
    .rususa-page .rususa-format__steps,
    .rususa-page .rususa-conversation__topics,
    .rususa-page .rususa-difference__points,
    .rususa-page .rususa-benefits__grid,
    .rususa-page .rususa-faq__grid {
        grid-template-columns: 1fr !important;
    }

    .rususa-page .rususa-situation,
    .rususa-page .rususa-situation--feature {
        grid-column: auto;
    }

    .rususa-page .rususa-format__cta {
        align-items: stretch !important;
        flex-direction: column;
    }

    .rususa-page .rususa-language__media {
        padding: 18px 18px 70px !important;
    }

    .rususa-page .rususa-language__note {
        right: 4px !important;
    }

    .rususa-page .rususa-opening__side,
    .rususa-page .rususa-conversation__main,
    .rususa-page .rususa-listening__content,
    .rususa-page .rususa-geography__content,
    .rususa-page .rususa-geography__map,
    .rususa-page .rususa-expectations__heading {
        padding: 22px !important;
    }
}

@media (max-width: 375px) {
    .rususa-page {
        padding-right: 8px;
        padding-left: 8px;
    }

    .rususa-page > section {
        border-radius: 16px;
    }

    .rususa-page .rususa-wrap {
        padding: 34px 15px !important;
    }

    .rususa-page .rususa-hero__title {
        font-size: 37px !important;
    }

    .rususa-page .rususa-heading {
        font-size: 30px !important;
    }

    .rususa-page .rususa-situation,
    .rususa-page .rususa-format-step,
    .rususa-page .rususa-topic,
    .rususa-page .rususa-benefit,
    .rususa-page .rususa-faq-item,
    .rususa-page .rususa-boundaries__card {
        padding: 20px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rususa-page *,
    .rususa-page *::before,
    .rususa-page *::after {
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
    }
}

/* Контрастные кнопки в финальном CTA */

.rususa-page .rususa-final__actions .rususa-btn--white {
    border: 2px solid #ffffff !important;
    background: #ffffff !important;
    color: #123744 !important;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18) !important;
}

.rususa-page .rususa-final__actions .rususa-btn--white:hover {
    border-color: #bdefff !important;
    background: #dff7ff !important;
    color: #0b2f3b !important;
}

.rususa-page .rususa-final__actions .rususa-btn--ghost {
    border: 2px solid rgba(255, 255, 255, 0.9) !important;
    background: rgba(255, 255, 255, 0.12) !important;
    color: #ffffff !important;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12) !important;
}

.rususa-page .rususa-final__actions .rususa-btn--ghost:hover {
    border-color: #ffffff !important;
    background: #ffffff !important;
    color: #123744 !important;
}

.rususa-page .rususa-final__actions .rususa-btn {
    min-width: 220px;
    min-height: 58px;
    padding: 16px 28px !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    opacity: 1 !important;
    text-shadow: none !important;
}

.rususa-page .rususa-final__actions .rususa-btn:focus-visible {
    outline: 3px solid #6fe3ff !important;
    outline-offset: 4px;
}

@media (max-width: 620px) {
    .rususa-page .rususa-final__actions .rususa-btn {
        width: 100%;
        min-width: 0;
    }
}

_______________________________________________________________
страница 2 поговорить на русском в америке
.rusam-page {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
    color: #2d3231;
    background-color: #fffdf8;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 18px;
    line-height: 1.62;
}

.rusam-page *,
.rusam-page *::before,
.rusam-page *::after {
    box-sizing: border-box;
}

.rusam-page section,
.rusam-page div,
.rusam-page article,
.rusam-page picture {
    min-width: 0;
}

.rusam-page img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
}

.rusam-page h1,
.rusam-page h2,
.rusam-page h3,
.rusam-page p,
.rusam-page ul {
    margin-top: 0;
}

.rusam-page h1,
.rusam-page h2,
.rusam-page h3 {
    color: #29302e;
    font-weight: 700;
    line-height: 1.1;
    text-wrap: balance;
}

.rusam-page p,
.rusam-page li {
    text-wrap: pretty;
}

.rusam-wrap {
    width: calc(100% - 48px);
    max-width: 1180px;
    margin-right: auto;
    margin-left: auto;
}

.rusam-label {
    margin-bottom: 12px;
    color: #3e625a;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.11em;
    text-transform: uppercase;
}

.rusam-label--light {
    color: #eadcc1;
}

.rusam-title {
    margin-bottom: 20px;
    color: #29302e;
    font-size: clamp(36px, 4.1vw, 58px);
    line-height: 1.05;
    letter-spacing: -0.045em;
}

.rusam-title--light {
    color: #ffffff;
}

.rusam-section-head {
    max-width: 790px;
    margin-bottom: 36px;
}

.rusam-section-head--center {
    margin-right: auto;
    margin-left: auto;
    text-align: center;
}

.rusam-section-head__text {
    max-width: 660px;
    margin-right: auto;
    margin-bottom: 0;
    margin-left: auto;
    color: #606866;
    font-size: 18px;
}

.rusam-btn {
    display: inline-flex;
    min-height: 52px;
    align-items: center;
    justify-content: center;
    padding: 14px 24px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    transition:
        transform 180ms ease,
        color 180ms ease,
        background-color 180ms ease,
        border-color 180ms ease,
        box-shadow 180ms ease;
}

.rusam-btn:hover {
    transform: translateY(-2px);
}

.rusam-btn:focus-visible,
.rusam-inline-link:focus-visible {
    outline: 3px solid rgba(73, 109, 101, 0.42);
    outline-offset: 4px;
}

.rusam-btn--main {
    color: #ffffff;
    background-color: #496d65;
    box-shadow: 0 12px 28px rgba(50, 82, 74, 0.24);
}

.rusam-btn--main:hover {
    color: #ffffff;
    background-color: #29473f;
    box-shadow: 0 16px 34px rgba(41, 71, 63, 0.3);
}

.rusam-btn--ghost {
    color: #29473f;
    border-color: rgba(41, 71, 63, 0.38);
    background-color: rgba(255, 255, 255, 0.7);
}

.rusam-btn--ghost:hover {
    color: #29473f;
    border-color: #496d65;
    background-color: #dfe9e4;
}

.rusam-btn--white {
    color: #29473f;
    background-color: #ffffff;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.14);
}

.rusam-btn--white:hover {
    color: #29473f;
    background-color: #f5ecdc;
}

.rusam-btn--outline-white {
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.64);
    background-color: transparent;
}

.rusam-btn--outline-white:hover {
    color: #29473f;
    border-color: #ffffff;
    background-color: #ffffff;
}

.rusam-inline-link {
    color: #315a50;
    font-weight: 700;
    text-decoration-color: rgba(49, 90, 80, 0.42);
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;
    transition:
        color 160ms ease,
        text-decoration-color 160ms ease;
}

.rusam-inline-link:hover {
    color: #496d65;
    text-decoration-color: currentColor;
}

/* Первый экран */

.rusam-hero {
    position: relative;
    padding: 64px 0 76px;
    background:
        radial-gradient(circle at 8% 12%, rgba(232, 218, 192, 0.92) 0, rgba(232, 218, 192, 0) 36%),
        linear-gradient(135deg, #fffdf8 0%, #f4eee2 100%);
}

.rusam-hero::after {
    position: absolute;
    right: -150px;
    bottom: -180px;
    width: 430px;
    height: 430px;
    border: 1px solid rgba(73, 109, 101, 0.12);
    border-radius: 50%;
    content: "";
    pointer-events: none;
}

.rusam-hero__grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.07fr) minmax(360px, 0.93fr);
    gap: 64px;
    align-items: center;
}

.rusam-hero__content {
    max-width: 690px;
}

.rusam-hero__title {
    max-width: 760px;
    margin-bottom: 22px;
    color: #29302e;
    font-size: clamp(52px, 6.4vw, 88px);
    line-height: 0.98;
    letter-spacing: -0.065em;
}

.rusam-hero__lead {
    max-width: 680px;
    margin-bottom: 16px;
    color: #343a38;
    font-size: clamp(21px, 2vw, 27px);
    line-height: 1.43;
}

.rusam-hero__text {
    max-width: 640px;
    margin-bottom: 26px;
    color: #5d6562;
    font-size: 18px;
}

.rusam-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 22px;
}

.rusam-hero__facts {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 24px;
    padding: 0;
    margin-bottom: 0;
    color: #5f6764;
    font-size: 15px;
    list-style: none;
}

.rusam-hero__facts li {
    position: relative;
    padding-left: 16px;
}

.rusam-hero__facts li::before {
    position: absolute;
    top: 0.68em;
    left: 0;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: #496d65;
    content: "";
    transform: translateY(-50%);
}

.rusam-hero__media {
    position: relative;
    padding: 14px;
    border: 1px solid rgba(41, 71, 63, 0.08);
    border-radius: 34px;
    background-color: rgba(255, 255, 255, 0.78);
    box-shadow: 0 24px 62px rgba(31, 52, 48, 0.16);
}

.rusam-hero__image {
    aspect-ratio: 708 / 540;
    border-radius: 24px;
    object-fit: cover;
}

.rusam-hero__media-note {
    position: absolute;
    right: -20px;
    bottom: -28px;
    width: min(340px, 80%);
    padding: 21px 24px;
    border-radius: 20px;
    color: #ffffff;
    background-color: #1f3430;
    box-shadow: 0 18px 42px rgba(31, 52, 48, 0.28);
}

.rusam-hero__media-note p {
    margin-bottom: 0;
    color: #ffffff;
    font-size: 16px;
    line-height: 1.5;
}

/* Вступительный блок */

.rusam-intro {
    padding: 72px 0;
    background-color: #ffffff;
}

.rusam-intro__grid {
    display: grid;
    grid-template-columns: minmax(280px, 0.82fr) minmax(0, 1.18fr);
    gap: 72px;
    align-items: start;
}

.rusam-intro__heading {
    padding: 34px;
    border: 1px solid rgba(73, 109, 101, 0.12);
    border-radius: 24px;
    background-color: #dfe9e4;
    box-shadow: 0 14px 34px rgba(46, 75, 68, 0.08);
}

.rusam-intro__heading .rusam-title {
    margin-bottom: 0;
}

.rusam-intro__content {
    max-width: 720px;
    padding-top: 4px;
}

.rusam-intro__content p {
    margin-bottom: 18px;
    color: #5e6663;
}

.rusam-intro__content p:last-child {
    margin-bottom: 0;
}

.rusam-intro__large {
    color: #303633;
    font-size: clamp(23px, 2.4vw, 31px);
    line-height: 1.38;
}

/* Признаки */

.rusam-signs {
    padding: 72px 0 78px;
    background-color: #f5efe4;
}

.rusam-signs__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.rusam-sign-card {
    min-height: 280px;
    padding: 30px;
    border-radius: 22px;
    box-shadow: 0 12px 30px rgba(44, 57, 53, 0.07);
}

.rusam-sign-card--green {
    background-color: #dce8e2;
}

.rusam-sign-card--sand {
    background-color: #eadcc4;
}

.rusam-sign-card--dark {
    color: #ffffff;
    background-color: #1f3430;
}

.rusam-sign-card--light {
    border: 1px solid rgba(40, 45, 44, 0.12);
    background-color: #ffffff;
}

.rusam-sign-card__index {
    display: block;
    margin-bottom: 34px;
    color: #315a50;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.13em;
}

.rusam-sign-card--dark .rusam-sign-card__index {
    color: #eadcc1;
}

.rusam-sign-card h3 {
    margin-bottom: 13px;
    color: #29302e;
    font-size: 23px;
    line-height: 1.18;
}

.rusam-sign-card--dark h3 {
    color: #ffffff;
}

.rusam-sign-card p {
    margin-bottom: 0;
    color: #5a625f;
    font-size: 17px;
}

.rusam-sign-card--dark p {
    color: rgba(255, 255, 255, 0.74);
}

/* Значение родной речи */

.rusam-language {
    padding: 78px 0;
    color: #ffffff;
    background-color: #1f3430;
}

.rusam-language__grid {
    display: grid;
    grid-template-columns: minmax(290px, 0.82fr) minmax(0, 1.18fr);
    gap: 76px;
    align-items: start;
}

.rusam-language__quote {
    padding: 34px;
    border-radius: 24px;
    background-color: #496d65;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.18);
}

.rusam-language__quote p {
    margin-bottom: 0;
    color: #ffffff;
    font-size: clamp(27px, 3vw, 39px);
    line-height: 1.28;
    letter-spacing: -0.025em;
}

.rusam-language__content p {
    margin-bottom: 18px;
    color: rgba(255, 255, 255, 0.76);
    font-size: 17px;
}

.rusam-language__content p:last-child {
    margin-bottom: 0;
}

/* Темы */

.rusam-topics {
    padding: 76px 0;
    background-color: #fffdf8;
}

.rusam-topics__top {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 0.62fr);
    gap: 48px;
    align-items: end;
    margin-bottom: 34px;
}

.rusam-topics__intro {
    margin-bottom: 20px;
    color: #5f6764;
    font-size: 18px;
}

.rusam-topic-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.rusam-topic-card {
    padding: 27px;
    border: 1px solid rgba(40, 45, 44, 0.12);
    border-radius: 20px;
    background-color: #ffffff;
    box-shadow: 0 12px 28px rgba(44, 57, 53, 0.055);
}

.rusam-topic-card--wide {
    grid-column: span 2;
}

.rusam-topic-card--accent {
    border-color: #496d65;
    background-color: #496d65;
}

.rusam-topic-card--soft {
    border-color: #eadcc4;
    background-color: #eadcc4;
}

.rusam-topic-card h3 {
    margin-bottom: 10px;
    color: #29302e;
    font-size: 22px;
}

.rusam-topic-card--accent h3 {
    color: #ffffff;
}

.rusam-topic-card p {
    margin-bottom: 0;
    color: #5d6562;
    font-size: 17px;
}

.rusam-topic-card--accent p {
    color: rgba(255, 255, 255, 0.8);
}

/* Широкая фотография */

.rusam-banner {
    padding: 0 0 76px;
    background-color: #fffdf8;
}

.rusam-banner__media {
    position: relative;
    overflow: hidden;
    min-height: 310px;
    border-radius: 30px;
    box-shadow: 0 22px 54px rgba(31, 52, 48, 0.17);
}

.rusam-banner__image {
    width: 100%;
    min-height: 310px;
    object-fit: cover;
}

.rusam-banner__media::after {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        90deg,
        rgba(24, 42, 38, 0.96) 0%,
        rgba(24, 42, 38, 0.79) 48%,
        rgba(24, 42, 38, 0.14) 100%
    );
    content: "";
}

.rusam-banner__content {
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 56px;
    width: min(660px, calc(100% - 112px));
    transform: translateY(-50%);
}

.rusam-banner__small {
    max-width: 590px;
    margin-bottom: 11px;
    color: rgba(255, 255, 255, 0.7);
    font-size: 15px;
}

.rusam-banner__large {
    margin-bottom: 0;
    color: #ffffff;
    font-size: clamp(33px, 4vw, 54px);
    font-weight: 700;
    line-height: 1.08;
    letter-spacing: -0.04em;
}

/* Отличия от чата */

.rusam-format {
    padding: 76px 0;
    background-color: #dfe9e4;
}

.rusam-format__grid {
    display: grid;
    grid-template-columns: minmax(330px, 0.82fr) minmax(0, 1.18fr);
    gap: 70px;
    align-items: start;
}

.rusam-format__media {
    position: relative;
}

.rusam-format__image {
    width: 100%;
    min-height: 500px;
    border-radius: 28px;
    object-fit: cover;
    object-position: 49% center;
    box-shadow: 0 22px 52px rgba(31, 52, 48, 0.18);
}

.rusam-format__media-card {
    position: absolute;
    right: -22px;
    bottom: 26px;
    width: min(340px, 84%);
    padding: 22px;
    border-radius: 19px;
    background-color: #eadcc4;
    box-shadow: 0 18px 38px rgba(31, 52, 48, 0.17);
}

.rusam-format__media-card p {
    margin-bottom: 0;
    color: #333937;
    font-size: 16px;
}

.rusam-format__lead {
    margin-bottom: 26px;
    color: #59625e;
    font-size: 18px;
}

.rusam-feature-list {
    display: grid;
    gap: 11px;
}

.rusam-feature {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 17px;
    padding: 19px;
    border: 1px solid rgba(73, 109, 101, 0.1);
    border-radius: 16px;
    background-color: rgba(255, 255, 255, 0.8);
}

.rusam-feature__mark {
    display: flex;
    width: 42px;
    height: 42px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #ffffff;
    background-color: #496d65;
    font-size: 12px;
    font-weight: 700;
}

.rusam-feature h3 {
    margin-bottom: 6px;
    color: #29302e;
    font-size: 19px;
}

.rusam-feature p {
    margin-bottom: 0;
    color: #5d6562;
    font-size: 16px;
}

/* Для кого */

.rusam-for-whom {
    padding: 76px 0;
    background-color: #ffffff;
}

.rusam-for-whom__heading {
    max-width: 830px;
    margin-bottom: 34px;
}

.rusam-for-whom__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 15px;
}

.rusam-person-card {
    min-height: 230px;
    padding: 25px;
    border: 1px solid rgba(40, 45, 44, 0.11);
    border-radius: 20px;
    background-color: #fffdf8;
}

.rusam-person-card:nth-child(2),
.rusam-person-card:nth-child(4) {
    background-color: #f5ecdc;
}

.rusam-person-card h3 {
    margin-bottom: 10px;
    color: #29302e;
    font-size: 21px;
}

.rusam-person-card p {
    margin-bottom: 0;
    color: #5c6461;
    font-size: 16px;
}

.rusam-person-card--highlight {
    color: #ffffff;
    border-color: #496d65;
    background-color: #496d65;
    box-shadow: 0 16px 36px rgba(73, 109, 101, 0.2);
}

.rusam-person-card--highlight h3 {
    color: #ffffff;
}

.rusam-person-card--highlight p {
    color: rgba(255, 255, 255, 0.78);
}

/* Эмоциональное выделение */

.rusam-emotion {
    padding: 76px 0;
    background-color: #eadcc4;
}

.rusam-emotion__inner {
    max-width: 990px;
}

.rusam-emotion__line {
    margin-bottom: 4px;
    color: #626966;
    font-size: clamp(20px, 2.3vw, 28px);
}

.rusam-emotion__main {
    max-width: 930px;
    margin-top: 20px;
    margin-bottom: 0;
    color: #29473f;
    font-size: clamp(38px, 5vw, 68px);
    font-weight: 700;
    line-height: 1.04;
    letter-spacing: -0.055em;
}

/* Этапы */

.rusam-process {
    padding: 76px 0;
    background-color: #fffdf8;
}

.rusam-process__head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 0.6fr);
    gap: 44px;
    align-items: end;
    margin-bottom: 34px;
}

.rusam-process__head > p {
    margin-bottom: 19px;
    color: #5d6562;
    font-size: 17px;
}

.rusam-process__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 15px;
}

.rusam-step-card {
    min-height: 300px;
    padding: 28px;
    border-radius: 21px;
    background-color: #f4ecdf;
}

.rusam-step-card--accent {
    color: #ffffff;
    background-color: #1f3430;
    box-shadow: 0 18px 40px rgba(31, 52, 48, 0.18);
}

.rusam-step-card__number {
    display: inline-flex;
    width: 43px;
    height: 43px;
    align-items: center;
    justify-content: center;
    margin-bottom: 42px;
    border: 1px solid rgba(40, 45, 44, 0.24);
    border-radius: 50%;
    color: #315a50;
    font-size: 13px;
    font-weight: 700;
}

.rusam-step-card--accent .rusam-step-card__number {
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.44);
}

.rusam-step-card h3 {
    margin-bottom: 10px;
    color: #29302e;
    font-size: 22px;
}

.rusam-step-card--accent h3 {
    color: #ffffff;
}

.rusam-step-card p {
    margin-bottom: 0;
    color: #5c6461;
    font-size: 16px;
}

.rusam-step-card--accent p {
    color: rgba(255, 255, 255, 0.74);
}

.rusam-process__cta {
    display: flex;
    gap: 30px;
    align-items: center;
    justify-content: space-between;
    margin-top: 16px;
    padding: 27px 30px;
    border: 1px solid rgba(73, 109, 101, 0.11);
    border-radius: 20px;
    background-color: #dfe9e4;
}

.rusam-process__cta h3 {
    margin-bottom: 7px;
    color: #29302e;
    font-size: 22px;
}

.rusam-process__cta p {
    max-width: 660px;
    margin-bottom: 0;
    color: #5b6360;
    font-size: 16px;
}

.rusam-process__cta .rusam-btn {
    flex: 0 0 auto;
}

/* Границы услуги */

.rusam-boundaries {
    padding: 76px 0;
    color: #ffffff;
    background-color: #1f3430;
}

.rusam-boundaries__grid {
    display: grid;
    grid-template-columns: minmax(290px, 0.78fr) minmax(0, 1.22fr);
    gap: 70px;
    align-items: start;
}

.rusam-boundaries__lead {
    margin-bottom: 22px;
    color: rgba(255, 255, 255, 0.82);
    font-size: 21px;
    line-height: 1.46;
}

.rusam-boundaries__cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.rusam-boundary-card {
    padding: 21px;
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 16px;
    background-color: rgba(255, 255, 255, 0.07);
}

.rusam-boundary-card h3 {
    margin-bottom: 8px;
    color: #ffffff;
    font-size: 18px;
}

.rusam-boundary-card p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.66);
    font-size: 15px;
}

/* FAQ */

.rusam-faq {
    padding: 76px 0 82px;
    background-color: #f5ecdc;
}

.rusam-faq__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.rusam-faq-card {
    padding: 25px;
    border: 1px solid rgba(40, 45, 44, 0.07);
    border-radius: 19px;
    background-color: #ffffff;
    box-shadow: 0 10px 24px rgba(44, 57, 53, 0.045);
}

.rusam-faq-card:nth-child(3n + 2) {
    background-color: #dfe9e4;
}

.rusam-faq-card:nth-child(4n) {
    background-color: #eadcc4;
}

.rusam-faq-card h3 {
    margin-bottom: 10px;
    color: #29302e;
    font-size: 20px;
    line-height: 1.24;
}

.rusam-faq-card p {
    margin-bottom: 0;
    color: #5d6562;
    font-size: 16px;
}

/* Фотография перед финалом */

.rusam-pre-final {
    position: relative;
    z-index: 2;
    padding: 0;
    margin-bottom: -58px;
    background-color: #f5ecdc;
}

.rusam-pre-final__media {
    position: relative;
    overflow: hidden;
    min-height: 270px;
    border-radius: 28px;
    box-shadow: 0 22px 54px rgba(31, 52, 48, 0.2);
}

.rusam-pre-final__image {
    width: 100%;
    min-height: 270px;
    object-fit: cover;
    object-position: left center;
}

.rusam-pre-final__media::after {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        90deg,
        rgba(31, 52, 48, 0.12) 0%,
        rgba(31, 52, 48, 0.38) 44%,
        rgba(31, 52, 48, 0.94) 100%
    );
    content: "";
}

.rusam-pre-final__text {
    position: absolute;
    z-index: 1;
    top: 50%;
    right: 52px;
    width: min(520px, calc(100% - 104px));
    transform: translateY(-50%);
}

.rusam-pre-final__text p {
    margin-bottom: 0;
    color: #ffffff;
    font-size: clamp(24px, 2.8vw, 37px);
    line-height: 1.3;
    letter-spacing: -0.02em;
}

/* Финальный CTA */

.rusam-final {
    padding: 128px 0 78px;
    color: #ffffff;
    background:
        radial-gradient(circle at 82% 18%, rgba(234, 220, 193, 0.18), rgba(234, 220, 193, 0) 35%),
        #29473f;
}

.rusam-final__inner {
    max-width: 860px;
    text-align: center;
}

.rusam-final__title {
    margin-bottom: 20px;
    color: #ffffff;
    font-size: clamp(48px, 6vw, 82px);
    line-height: 1;
    letter-spacing: -0.06em;
}

.rusam-final__lead {
    max-width: 680px;
    margin-right: auto;
    margin-bottom: 28px;
    margin-left: auto;
    color: rgba(255, 255, 255, 0.76);
    font-size: 19px;
}

.rusam-final__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: center;
}

.rusam-final__note {
    margin-top: 23px;
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.57);
    font-size: 14px;
}

/* Планшеты */

@media (max-width: 1024px) {
    .rusam-hero__grid {
        grid-template-columns: minmax(0, 1fr) minmax(330px, 0.86fr);
        gap: 42px;
    }

    .rusam-intro__grid,
    .rusam-language__grid,
    .rusam-format__grid,
    .rusam-boundaries__grid {
        gap: 48px;
    }

    .rusam-for-whom__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .rusam-person-card {
        min-height: 210px;
    }
}

@media (max-width: 900px) {
    .rusam-hero__grid,
    .rusam-intro__grid,
    .rusam-language__grid,
    .rusam-format__grid,
    .rusam-boundaries__grid {
        grid-template-columns: 1fr;
    }

    .rusam-hero__media {
        max-width: 720px;
    }

    .rusam-language__quote {
        max-width: 680px;
    }

    .rusam-format__media {
        max-width: 720px;
    }

    .rusam-format__image {
        min-height: 390px;
    }

    .rusam-process__grid {
        grid-template-columns: 1fr;
    }

    .rusam-step-card {
        min-height: 0;
    }

    .rusam-step-card__number {
        margin-bottom: 24px;
    }
}

/* Мобильные */

@media (max-width: 760px) {
    .rusam-page {
        font-size: 17px;
    }

    .rusam-wrap {
        width: calc(100% - 32px);
    }

    .rusam-hero,
    .rusam-intro,
    .rusam-signs,
    .rusam-language,
    .rusam-topics,
    .rusam-format,
    .rusam-for-whom,
    .rusam-emotion,
    .rusam-process,
    .rusam-boundaries,
    .rusam-faq {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .rusam-hero__grid {
        gap: 46px;
    }

    .rusam-hero__title {
        font-size: clamp(48px, 12vw, 70px);
    }

    .rusam-hero__media-note {
        position: relative;
        right: auto;
        bottom: auto;
        width: calc(100% - 28px);
        margin: -26px auto 0;
    }

    .rusam-signs__grid,
    .rusam-topic-grid,
    .rusam-for-whom__grid,
    .rusam-boundaries__cards,
    .rusam-faq__grid {
        grid-template-columns: 1fr;
    }

    .rusam-topic-card--wide {
        grid-column: auto;
    }

    .rusam-topics__top,
    .rusam-process__head {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .rusam-banner__content {
        left: 30px;
        width: calc(100% - 60px);
    }

    .rusam-format__media-card {
        position: relative;
        right: auto;
        bottom: auto;
        width: calc(100% - 28px);
        margin: -34px auto 0;
    }

    .rusam-process__cta {
        flex-direction: column;
        align-items: stretch;
    }

    .rusam-process__cta .rusam-btn {
        width: 100%;
    }

    .rusam-pre-final__media,
    .rusam-pre-final__image {
        min-height: 350px;
    }

    .rusam-pre-final__media::after {
        background: linear-gradient(
            0deg,
            rgba(31, 52, 48, 0.96) 0%,
            rgba(31, 52, 48, 0.54) 44%,
            rgba(31, 52, 48, 0.05) 100%
        );
    }

    .rusam-pre-final__text {
        top: auto;
        right: 28px;
        bottom: 28px;
        left: 28px;
        width: auto;
        transform: none;
    }
}

@media (max-width: 520px) {
    .rusam-page {
        font-size: 16px;
        line-height: 1.58;
    }

    .rusam-wrap {
        width: calc(100% - 24px);
    }

    .rusam-label {
        margin-bottom: 10px;
        font-size: 11px;
    }

    .rusam-title {
        margin-bottom: 17px;
        font-size: clamp(31px, 9.5vw, 43px);
    }

    .rusam-section-head {
        margin-bottom: 28px;
    }

    .rusam-hero {
        padding-top: 38px;
        padding-bottom: 54px;
    }

    .rusam-hero__title {
        margin-bottom: 18px;
        font-size: clamp(43px, 13vw, 59px);
    }

    .rusam-hero__lead {
        font-size: 19px;
    }

    .rusam-hero__text {
        margin-bottom: 22px;
        font-size: 16px;
    }

    .rusam-hero__actions,
    .rusam-final__actions {
        flex-direction: column;
    }

    .rusam-hero__actions .rusam-btn,
    .rusam-final__actions .rusam-btn {
        width: 100%;
    }

    .rusam-hero__facts {
        display: grid;
        gap: 7px;
    }

    .rusam-hero__media {
        padding: 10px;
        border-radius: 23px;
    }

    .rusam-hero__image {
        min-height: 290px;
        border-radius: 17px;
        object-fit: cover;
        object-position: 42% center;
    }

    .rusam-intro,
    .rusam-signs,
    .rusam-language,
    .rusam-topics,
    .rusam-format,
    .rusam-for-whom,
    .rusam-emotion,
    .rusam-process,
    .rusam-boundaries,
    .rusam-faq {
        padding-top: 52px;
        padding-bottom: 52px;
    }

    .rusam-intro__grid,
    .rusam-language__grid,
    .rusam-format__grid,
    .rusam-boundaries__grid {
        gap: 30px;
    }

    .rusam-intro__heading,
    .rusam-sign-card,
    .rusam-topic-card,
    .rusam-person-card,
    .rusam-step-card,
    .rusam-faq-card {
        padding: 21px;
        border-radius: 17px;
    }

    .rusam-sign-card,
    .rusam-person-card {
        min-height: 0;
    }

    .rusam-sign-card__index {
        margin-bottom: 22px;
    }

    .rusam-language__quote {
        padding: 23px;
        border-radius: 18px;
    }

    .rusam-language__quote p {
        font-size: 25px;
    }

    .rusam-banner {
        padding-bottom: 52px;
    }

    .rusam-banner__media,
    .rusam-banner__image {
        min-height: 360px;
    }

    .rusam-banner__media {
        border-radius: 21px;
    }

    .rusam-banner__media::after {
        background: linear-gradient(
            0deg,
            rgba(24, 42, 38, 0.97) 0%,
            rgba(24, 42, 38, 0.7) 48%,
            rgba(24, 42, 38, 0.12) 100%
        );
    }

    .rusam-banner__content {
        top: auto;
        right: 22px;
        bottom: 26px;
        left: 22px;
        width: auto;
        transform: none;
    }

    .rusam-banner__large {
        font-size: 30px;
    }

    .rusam-format__image {
        min-height: 310px;
        border-radius: 21px;
    }

    .rusam-feature {
        grid-template-columns: 1fr;
        padding: 17px;
    }

    .rusam-emotion__line {
        font-size: 19px;
    }

    .rusam-emotion__main {
        margin-top: 17px;
        font-size: clamp(35px, 11vw, 49px);
    }

    .rusam-process__cta {
        padding: 22px 20px;
        border-radius: 17px;
    }

    .rusam-boundary-card {
        padding: 18px;
    }

    .rusam-pre-final {
        margin-bottom: -40px;
    }

    .rusam-pre-final__media,
    .rusam-pre-final__image {
        min-height: 350px;
        border-radius: 21px;
    }

    .rusam-pre-final__text {
        right: 22px;
        bottom: 24px;
        left: 22px;
    }

    .rusam-pre-final__text p {
        font-size: 24px;
    }

    .rusam-final {
        padding-top: 100px;
        padding-bottom: 60px;
    }

    .rusam-final__title {
        font-size: clamp(42px, 12vw, 58px);
    }

    .rusam-final__lead {
        font-size: 17px;
    }
}

@media (max-width: 375px) {
    .rusam-wrap {
        width: calc(100% - 20px);
    }

    .rusam-hero__title {
        font-size: 43px;
    }

    .rusam-btn {
        min-height: 50px;
        padding-right: 16px;
        padding-left: 16px;
        font-size: 15px;
    }

    .rusam-hero__image {
        min-height: 270px;
    }

    .rusam-banner__large {
        font-size: 27px;
    }

    .rusam-sign-card,
    .rusam-topic-card,
    .rusam-person-card,
    .rusam-step-card,
    .rusam-faq-card {
        padding-right: 18px;
        padding-left: 18px;
    }

    .rusam-process__cta {
        padding-right: 18px;
        padding-left: 18px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rusam-page *,
    .rusam-page *::before,
    .rusam-page *::after {
        animation-duration: 0.01ms;
        animation-iteration-count: 1;
        scroll-behavior: auto;
        transition-duration: 0.01ms;
    }

    .rusam-btn:hover {
        transform: none;
    }
}

________________________________________________________________________
страница 8 поддержка разговром в сложный период жизни

.slp-page {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
    color: #1f3446;
    background-color: #ffffff;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 18px;
    line-height: 1.66;
}

.slp-page *,
.slp-page *::before,
.slp-page *::after {
    box-sizing: border-box;
}

.slp-page section,
.slp-page div,
.slp-page article,
.slp-page aside,
.slp-page picture {
    min-width: 0;
}

.slp-page img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
}

.slp-page h1,
.slp-page h2,
.slp-page h3,
.slp-page p,
.slp-page ul,
.slp-page blockquote {
    margin-top: 0;
}

.slp-page h1,
.slp-page h2,
.slp-page h3 {
    color: #17364f;
    font-weight: 700;
    line-height: 1.1;
    text-wrap: balance;
}

.slp-page p,
.slp-page li {
    text-wrap: pretty;
}

.slp-shell {
    width: calc(100% - 48px);
    max-width: 1200px;
    margin-right: auto;
    margin-left: auto;
}

.slp-label,
.slp-overline {
    margin-bottom: 13px;
    color: #2b6f9b;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.115em;
    text-transform: uppercase;
}

.slp-label--light {
    color: #bfe5ff;
}

.slp-heading {
    margin-bottom: 21px;
    font-size: clamp(36px, 4.15vw, 59px);
    line-height: 1.05;
    letter-spacing: -0.045em;
}

.slp-heading--light {
    color: #ffffff;
}

.slp-text-link {
    color: #1f6f9f;
    font-weight: 700;
    text-decoration-color: rgba(31, 111, 159, 0.42);
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;
    transition:
        color 160ms ease,
        text-decoration-color 160ms ease;
}

.slp-text-link:hover {
    color: #14577f;
    text-decoration-color: currentColor;
}

.slp-button {
    display: inline-flex;
    min-height: 52px;
    align-items: center;
    justify-content: center;
    padding: 14px 24px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    transition:
        transform 180ms ease,
        background-color 180ms ease,
        color 180ms ease,
        border-color 180ms ease,
        box-shadow 180ms ease;
}

.slp-button:hover {
    transform: translateY(-2px);
}

.slp-button:focus-visible,
.slp-text-link:focus-visible,
.slp-inline-cta:focus-visible,
.slp-final__contact a:focus-visible {
    outline: 3px solid rgba(41, 132, 184, 0.42);
    outline-offset: 4px;
}

.slp-button--primary {
    color: #ffffff;
    background-color: #257bab;
    box-shadow: 0 12px 28px rgba(31, 104, 146, 0.25);
}

.slp-button--primary:hover {
    color: #ffffff;
    background-color: #175b83;
    box-shadow: 0 16px 36px rgba(23, 91, 131, 0.3);
}

.slp-button--secondary {
    color: #205f88;
    border-color: rgba(31, 111, 159, 0.35);
    background-color: #ffffff;
}

.slp-button--secondary:hover {
    color: #174c6d;
    border-color: #2a82b4;
    background-color: #eaf6fd;
}

.slp-button--light {
    color: #155477;
    background-color: #ffffff;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.14);
}

.slp-button--light:hover {
    color: #103f5b;
    background-color: #eaf7ff;
}

.slp-button--outline-light {
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.68);
    background-color: transparent;
}

.slp-button--outline-light:hover {
    color: #155477;
    border-color: #ffffff;
    background-color: #ffffff;
}

/* Первый экран */

.slp-hero {
    position: relative;
    padding: 60px 0 76px;
    background:
        radial-gradient(circle at 10% 15%, rgba(173, 222, 249, 0.75), transparent 34%),
        linear-gradient(135deg, #fafdff 0%, #eaf6fd 100%);
}

.slp-hero::after {
    position: absolute;
    right: -150px;
    bottom: -220px;
    width: 490px;
    height: 490px;
    border: 1px solid rgba(37, 123, 171, 0.12);
    border-radius: 50%;
    content: "";
    pointer-events: none;
}

.slp-hero__layout {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(380px, 0.92fr);
    gap: 64px;
    align-items: center;
}

.slp-hero__title {
    max-width: 770px;
    margin-bottom: 24px;
    font-size: clamp(51px, 6.5vw, 89px);
    line-height: 0.98;
    letter-spacing: -0.066em;
}

.slp-hero__lead {
    max-width: 700px;
    margin-bottom: 17px;
    color: #27465d;
    font-size: clamp(21px, 2vw, 27px);
    line-height: 1.42;
}

.slp-hero__text {
    max-width: 680px;
    margin-bottom: 27px;
    color: #526d7e;
}

.slp-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 28px;
}

.slp-hero__facts {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.slp-hero__facts div {
    padding: 15px;
    border: 1px solid rgba(31, 111, 159, 0.12);
    border-radius: 15px;
    background-color: rgba(255, 255, 255, 0.62);
}

.slp-hero__facts span {
    display: block;
    margin-bottom: 7px;
    color: #257bab;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.1em;
}

.slp-hero__facts p {
    margin-bottom: 0;
    color: #557083;
    font-size: 13px;
    line-height: 1.45;
}

.slp-hero__visual {
    position: relative;
    padding: 12px;
    border-radius: 32px;
    background-color: rgba(255, 255, 255, 0.78);
    box-shadow: 0 24px 62px rgba(28, 91, 128, 0.17);
}

.slp-hero__image {
    min-height: 480px;
    border-radius: 23px;
    object-fit: cover;
    object-position: center;
}

.slp-hero__quote {
    position: absolute;
    right: -20px;
    bottom: -28px;
    width: min(360px, 82%);
    padding: 22px 24px;
    border-radius: 20px;
    color: #ffffff;
    background-color: #154d70;
    box-shadow: 0 18px 42px rgba(14, 61, 91, 0.28);
}

.slp-hero__quote p {
    margin-bottom: 0;
    color: #ffffff;
    font-size: 16px;
    line-height: 1.52;
}

/* Вступление */

.slp-intro {
    padding: 76px 0;
    background-color: #ffffff;
}

.slp-intro__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.8fr) minmax(0, 1.2fr);
    gap: 76px;
    align-items: start;
}

.slp-intro__aside {
    padding: 32px;
    border-radius: 24px;
    background-color: #dff1fb;
}

.slp-intro__aside .slp-heading {
    margin-bottom: 0;
}

.slp-intro__body {
    max-width: 735px;
}

.slp-intro__body > p {
    margin-bottom: 18px;
    color: #577080;
}

.slp-intro__large {
    color: #24465d;
    font-size: clamp(23px, 2.35vw, 31px);
    line-height: 1.38;
}

.slp-intro__quote {
    margin: 30px 0 0;
    padding: 25px 28px;
    border-left: 4px solid #2c88b9;
    border-radius: 0 17px 17px 0;
    background-color: #f0f9fe;
}

.slp-intro__quote p {
    margin-bottom: 0;
    color: #28536f;
    font-size: 20px;
    line-height: 1.48;
}

/* Сигналы */

.slp-signals {
    padding: 74px 0 80px;
    background-color: #eff8fd;
}

.slp-section-header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 0.62fr);
    gap: 48px;
    align-items: end;
    margin-bottom: 38px;
}

.slp-section-header__text {
    margin-bottom: 20px;
    color: #5a7485;
}

.slp-signal-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.slp-signal-card {
    min-height: 270px;
    padding: 29px;
    border: 1px solid rgba(34, 103, 143, 0.1);
    border-radius: 22px;
    background-color: #ffffff;
}

.slp-signal-card--deep {
    color: #ffffff;
    border-color: #175d86;
    background-color: #175d86;
}

.slp-signal-card--soft {
    border-color: #c4e5f7;
    background-color: #dff2fc;
}

.slp-signal-card--wide {
    display: grid;
    grid-column: span 2;
    grid-template-columns: 80px minmax(0, 1fr);
    gap: 26px;
    align-items: start;
    min-height: 0;
    background-color: #cceafa;
}

.slp-signal-card__number {
    display: block;
    margin-bottom: 37px;
    color: #2479a8;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.13em;
}

.slp-signal-card--deep .slp-signal-card__number {
    color: #bde7ff;
}

.slp-signal-card--wide .slp-signal-card__number {
    margin-bottom: 0;
    font-size: 21px;
}

.slp-signal-card h3 {
    margin-bottom: 13px;
    font-size: 23px;
    line-height: 1.2;
}

.slp-signal-card--deep h3 {
    color: #ffffff;
}

.slp-signal-card p {
    margin-bottom: 0;
    color: #5a7281;
    font-size: 17px;
}

.slp-signal-card--deep p {
    color: rgba(255, 255, 255, 0.76);
}

/* Переходный период */

.slp-transition {
    padding: 78px 0;
    background-color: #ffffff;
}

.slp-transition__layout {
    display: grid;
    grid-template-columns: minmax(320px, 0.78fr) minmax(0, 1.22fr);
    gap: 76px;
    align-items: start;
}

.slp-transition__visual {
    position: relative;
}

.slp-transition__image {
    min-height: 540px;
    border-radius: 30px;
    object-fit: cover;
    box-shadow: 0 22px 54px rgba(22, 76, 108, 0.17);
}

.slp-transition__caption {
    position: absolute;
    right: -22px;
    bottom: 28px;
    width: min(330px, 84%);
    padding: 22px;
    border-radius: 18px;
    background-color: #cceafb;
    box-shadow: 0 16px 38px rgba(22, 76, 108, 0.16);
}

.slp-transition__caption p {
    margin-bottom: 0;
    color: #214d68;
    font-size: 17px;
}

.slp-transition__content > p {
    margin-bottom: 18px;
    color: #577080;
}

.slp-transition__points {
    display: grid;
    gap: 11px;
    margin-top: 30px;
}

.slp-transition__points article {
    padding: 19px 21px;
    border-radius: 16px;
    background-color: #eff8fd;
}

.slp-transition__points span {
    display: block;
    margin-bottom: 6px;
    color: #216f9c;
    font-size: 16px;
    font-weight: 700;
}

.slp-transition__points p {
    margin-bottom: 0;
    color: #5a7282;
    font-size: 16px;
}

/* Большая мысль */

.slp-statement {
    padding: 78px 0;
    background-color: #cceafb;
}

.slp-statement__inner {
    max-width: 1000px;
}

.slp-statement__small {
    margin-bottom: 12px;
    color: #54758a;
    font-size: clamp(20px, 2.4vw, 29px);
}

.slp-statement__large {
    max-width: 970px;
    margin-bottom: 0;
    color: #154d70;
    font-size: clamp(40px, 5.3vw, 72px);
    font-weight: 700;
    line-height: 1.04;
    letter-spacing: -0.055em;
}

/* Как помогает разговор */

.slp-support {
    padding: 78px 0;
    background-color: #f8fcff;
}

.slp-support__header {
    max-width: 820px;
    margin-bottom: 38px;
}

.slp-support__header > p:last-child {
    margin-bottom: 0;
    color: #5a7383;
}

.slp-support__steps {
    display: grid;
    gap: 13px;
}

.slp-support-step {
    display: grid;
    grid-template-columns: 70px minmax(0, 1fr);
    gap: 26px;
    padding: 27px 30px;
    border: 1px solid rgba(35, 110, 151, 0.1);
    border-radius: 20px;
    background-color: #ffffff;
}

.slp-support-step:nth-child(even) {
    background-color: #e8f6fd;
}

.slp-support-step__number {
    display: flex;
    width: 52px;
    height: 52px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #ffffff;
    background-color: #257bab;
    font-size: 13px;
    font-weight: 700;
}

.slp-support-step h3 {
    margin-bottom: 10px;
    font-size: 23px;
}

.slp-support-step p {
    margin-bottom: 10px;
    color: #5b7382;
    font-size: 16px;
}

.slp-support-step p:last-child {
    margin-bottom: 0;
}

/* Сценарии */

.slp-scenarios {
    padding: 76px 0;
    background-color: #dff2fc;
}

.slp-scenario-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 15px;
}

.slp-scenario-card {
    min-height: 310px;
    padding: 26px;
    border: 1px solid rgba(32, 100, 140, 0.12);
    border-radius: 21px;
    background-color: #ffffff;
}

.slp-scenario-card--accent {
    border-color: #2781b1;
    background-color: #2781b1;
}

.slp-scenario-card--pale {
    background-color: #f0f9fe;
}

.slp-scenario-card--dark {
    border-color: #174d70;
    background-color: #174d70;
}

.slp-scenario-card > span {
    display: block;
    margin-bottom: 36px;
    color: #2478a6;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.slp-scenario-card--accent > span,
.slp-scenario-card--dark > span {
    color: #c5ebff;
}

.slp-scenario-card h3 {
    margin-bottom: 12px;
    font-size: 21px;
    line-height: 1.22;
}

.slp-scenario-card--accent h3,
.slp-scenario-card--dark h3 {
    color: #ffffff;
}

.slp-scenario-card p {
    margin-bottom: 0;
    color: #5b7281;
    font-size: 16px;
}

.slp-scenario-card--accent p,
.slp-scenario-card--dark p {
    color: rgba(255, 255, 255, 0.77);
}

/* Расставание */

.slp-breakup {
    padding: 76px 0;
    background-color: #ffffff;
}

.slp-breakup__layout {
    display: grid;
    grid-template-columns: minmax(290px, 0.75fr) minmax(0, 1.25fr);
    gap: 78px;
}

.slp-breakup__heading {
    padding: 30px;
    border-radius: 23px;
    background-color: #e1f2fb;
    align-self: start;
}

.slp-breakup__heading .slp-heading {
    margin-bottom: 0;
}

.slp-breakup__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.slp-breakup__list {
    display: grid;
    gap: 10px;
    margin: 28px 0;
}

.slp-breakup__list article {
    padding: 19px 21px;
    border-left: 4px solid #2e86b5;
    border-radius: 0 15px 15px 0;
    background-color: #f1f9fe;
}

.slp-breakup__list h3 {
    margin-bottom: 6px;
    font-size: 18px;
}

.slp-breakup__list p {
    margin-bottom: 0;
    color: #5c7483;
    font-size: 16px;
}

.slp-breakup__link {
    padding-top: 21px;
    border-top: 1px solid rgba(35, 99, 136, 0.14);
}

/* Развод */

.slp-divorce {
    padding: 76px 0;
    background-color: #eff8fd;
}

.slp-divorce__top {
    max-width: 850px;
    margin-bottom: 34px;
}

.slp-divorce__top > p:last-child {
    color: #597181;
}

.slp-divorce__columns {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 13px;
}

.slp-divorce__columns article {
    min-height: 240px;
    padding: 23px;
    border-radius: 18px;
    background-color: #ffffff;
}

.slp-divorce__columns article:nth-child(2),
.slp-divorce__columns article:nth-child(4) {
    background-color: #d7eefb;
}

.slp-divorce__columns h3 {
    margin-bottom: 10px;
    font-size: 19px;
}

.slp-divorce__columns p {
    margin-bottom: 0;
    color: #597282;
    font-size: 15px;
}

.slp-divorce__note {
    margin-top: 15px;
    padding: 24px 27px;
    border-radius: 18px;
    color: #ffffff;
    background-color: #1a628c;
}

.slp-divorce__note p {
    margin-bottom: 0;
    color: #ffffff;
}

/* Утрата */

.slp-loss {
    padding: 78px 0;
    color: #ffffff;
    background-color: #173f5b;
}

.slp-loss__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
    gap: 66px;
}

.slp-loss .slp-heading {
    color: #ffffff;
}

.slp-loss .slp-label {
    color: #acdfff;
}

.slp-loss__content p {
    margin-bottom: 18px;
    color: rgba(255, 255, 255, 0.75);
}

.slp-loss__aside {
    padding: 28px;
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 22px;
    background-color: rgba(255, 255, 255, 0.07);
}

.slp-loss__aside h3 {
    margin-bottom: 18px;
    color: #ffffff;
    font-size: 23px;
}

.slp-loss__aside ul {
    padding-left: 21px;
    margin-bottom: 24px;
    color: rgba(255, 255, 255, 0.8);
}

.slp-loss__aside li {
    margin-bottom: 9px;
}

.slp-loss__aside p {
    margin-bottom: 0;
    padding-top: 20px;
    border-top: 1px solid rgba(255, 255, 255, 0.14);
    color: #b9def2;
    font-size: 15px;
}

/* Кризис среднего возраста */

.slp-middle {
    padding: 78px 0;
    background-color: #ffffff;
}

.slp-middle__layout {
    display: grid;
    grid-template-columns: minmax(300px, 0.72fr) minmax(0, 1.28fr);
    gap: 76px;
    align-items: center;
}

.slp-middle__visual {
    padding: 13px;
    border-radius: 29px;
    background-color: #e1f3fc;
}

.slp-middle__image {
    min-height: 450px;
    border-radius: 21px;
    object-fit: cover;
    box-shadow: 0 18px 43px rgba(27, 81, 113, 0.14);
}

.slp-middle__content > p {
    margin-bottom: 18px;
    color: #597282;
}

.slp-middle__questions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 26px;
}

.slp-middle__questions span {
    display: inline-flex;
    padding: 10px 15px;
    border-radius: 999px;
    color: #235f82;
    background-color: #e4f3fb;
    font-size: 14px;
}

/* Работа */

.slp-work {
    padding: 76px 0;
    background-color: #e9f6fd;
}

.slp-work__header {
    max-width: 820px;
    margin-bottom: 36px;
}

.slp-work__header > p:last-child {
    color: #587181;
}

.slp-work__timeline {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.slp-work__timeline article {
    position: relative;
    min-height: 290px;
    padding: 25px;
    border-top: 5px solid #2a82b1;
    border-radius: 0 0 19px 19px;
    background-color: #ffffff;
}

.slp-work__timeline span {
    display: block;
    margin-bottom: 32px;
    color: #2476a3;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.slp-work__timeline h3 {
    margin-bottom: 12px;
    font-size: 20px;
}

.slp-work__timeline p {
    margin-bottom: 0;
    color: #5a7281;
    font-size: 15px;
}

/* Одинокий родитель */

.slp-parent {
    padding: 76px 0;
    background-color: #ffffff;
}

.slp-parent__layout {
    display: grid;
    grid-template-columns: minmax(290px, 0.75fr) minmax(0, 1.25fr);
    gap: 74px;
}

.slp-parent__heading {
    align-self: start;
    padding: 30px;
    border-radius: 23px;
    background-color: #cfeafa;
}

.slp-parent__heading .slp-heading {
    margin-bottom: 0;
}

.slp-parent__content > p {
    margin-bottom: 18px;
    color: #577181;
}

.slp-parent__cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 11px;
    margin-top: 28px;
}

.slp-parent__cards article {
    padding: 20px;
    border-radius: 16px;
    background-color: #eff9fe;
}

.slp-parent__cards h3 {
    margin-bottom: 8px;
    font-size: 18px;
}

.slp-parent__cards p {
    margin-bottom: 0;
    color: #5a7281;
    font-size: 15px;
}

/* Поиск себя */

.slp-search {
    padding: 77px 0;
    background-color: #d9effb;
}

.slp-search__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.9fr);
    gap: 66px;
}

.slp-search__main p {
    margin-bottom: 18px;
    color: #557080;
}

.slp-search__prompts {
    padding: 28px;
    border-radius: 22px;
    color: #ffffff;
    background-color: #1d628b;
}

.slp-search__prompts-title {
    margin-bottom: 18px;
    color: #ffffff;
    font-size: 21px;
    font-weight: 700;
}

.slp-search__prompts ul {
    padding-left: 21px;
    margin-bottom: 0;
}

.slp-search__prompts li {
    margin-bottom: 11px;
    color: rgba(255, 255, 255, 0.83);
}

/* Решение */

.slp-decision {
    padding: 77px 0;
    background-color: #ffffff;
}

.slp-decision__header {
    max-width: 840px;
    margin-bottom: 34px;
}

.slp-decision__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.92fr);
    gap: 62px;
}

.slp-decision__essay p {
    margin-bottom: 18px;
    color: #577080;
}

.slp-decision__framework {
    display: grid;
    gap: 9px;
}

.slp-decision__framework article {
    display: grid;
    grid-template-columns: 94px minmax(0, 1fr);
    gap: 15px;
    padding: 17px 19px;
    border-radius: 15px;
    background-color: #e9f6fd;
}

.slp-decision__framework span {
    color: #1e6894;
    font-weight: 700;
}

.slp-decision__framework p {
    margin-bottom: 0;
    color: #587181;
    font-size: 15px;
}

/* Визуальная пауза */

.slp-visual-break {
    padding: 0 0 76px;
    background-color: #ffffff;
}

.slp-visual-break__frame {
    position: relative;
    overflow: hidden;
    min-height: 280px;
    border-radius: 29px;
    box-shadow: 0 22px 54px rgba(24, 80, 111, 0.17);
}

.slp-visual-break__image {
    min-height: 280px;
    object-fit: cover;
}

.slp-visual-break__frame::after {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        90deg,
        rgba(16, 61, 88, 0.15),
        rgba(16, 61, 88, 0.9)
    );
    content: "";
}

.slp-visual-break__text {
    position: absolute;
    z-index: 1;
    top: 50%;
    right: 48px;
    width: min(530px, calc(100% - 96px));
    transform: translateY(-50%);
}

.slp-visual-break__text p {
    margin-bottom: 0;
    color: #ffffff;
    font-size: clamp(25px, 3vw, 39px);
    line-height: 1.28;
}

/* Качества беседы */

.slp-conversation {
    padding: 76px 0;
    background-color: #eef8fd;
}

.slp-conversation__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.72fr) minmax(0, 1.28fr);
    gap: 68px;
}

.slp-conversation__heading > p:last-child {
    color: #5a7281;
}

.slp-conversation__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.slp-conversation__grid article {
    padding: 21px;
    border-radius: 17px;
    background-color: #ffffff;
}

.slp-conversation__grid span {
    display: block;
    margin-bottom: 18px;
    color: #267aa8;
    font-size: 12px;
    font-weight: 700;
}

.slp-conversation__grid h3 {
    margin-bottom: 8px;
    font-size: 18px;
}

.slp-conversation__grid p {
    margin-bottom: 0;
    color: #597181;
    font-size: 15px;
}

/* Собеседник */

.slp-listener {
    padding: 78px 0;
    background-color: #ffffff;
}

.slp-listener__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.04fr) minmax(360px, 0.96fr);
    gap: 68px;
    align-items: center;
}

.slp-listener__content p {
    margin-bottom: 18px;
    color: #587181;
}

.slp-inline-cta {
    display: inline-flex;
    margin-top: 8px;
    color: #1f6e9b;
    font-weight: 700;
    text-decoration: none;
}

.slp-inline-cta::after {
    margin-left: 10px;
    content: "→";
    transition: transform 160ms ease;
}

.slp-inline-cta:hover::after {
    transform: translateX(4px);
}

.slp-listener__visual {
    position: relative;
}

.slp-listener__image {
    min-height: 480px;
    border-radius: 29px;
    object-fit: cover;
    box-shadow: 0 22px 54px rgba(21, 72, 103, 0.18);
}

.slp-listener__note {
    position: absolute;
    right: -20px;
    bottom: 28px;
    width: min(360px, 84%);
    padding: 22px;
    border-radius: 18px;
    background-color: #cceafb;
    box-shadow: 0 16px 38px rgba(20, 70, 99, 0.16);
}

.slp-listener__note p {
    margin-bottom: 0;
    color: #224e68;
    font-size: 16px;
}

/* Границы */

.slp-boundaries {
    padding: 78px 0;
    color: #ffffff;
    background-color: #133f5c;
}

.slp-boundaries__header {
    max-width: 850px;
    margin-bottom: 35px;
}

.slp-boundaries__header p:last-child {
    color: rgba(255, 255, 255, 0.72);
}

.slp-boundaries__columns {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.slp-boundaries-card {
    padding: 28px;
    border-radius: 20px;
}

.slp-boundaries-card--support {
    background-color: rgba(82, 173, 221, 0.18);
}

.slp-boundaries-card--professional {
    background-color: rgba(255, 255, 255, 0.08);
}

.slp-boundaries-card h3 {
    margin-bottom: 17px;
    color: #ffffff;
    font-size: 23px;
}

.slp-boundaries-card ul {
    padding-left: 21px;
    margin-bottom: 0;
}

.slp-boundaries-card li {
    margin-bottom: 9px;
    color: rgba(255, 255, 255, 0.78);
}

.slp-boundaries__note {
    margin-top: 15px;
    margin-bottom: 0;
    padding: 23px 26px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 18px;
    color: #bfe3f7;
    background-color: rgba(255, 255, 255, 0.05);
    font-size: 15px;
}

/* Начало разговора */

.slp-start {
    padding: 77px 0;
    background-color: #e3f3fc;
}

.slp-start__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.73fr) minmax(0, 1.27fr);
    gap: 72px;
}

.slp-start__content > p {
    margin-bottom: 18px;
    color: #577181;
}

.slp-start__phrases {
    display: grid;
    gap: 8px;
    margin: 25px 0;
}

.slp-start__phrases p {
    margin-bottom: 0;
    padding: 15px 18px;
    border-radius: 14px;
    color: #225e81;
    background-color: #ffffff;
}

/* FAQ */

.slp-faq {
    padding: 77px 0;
    background-color: #ffffff;
}

.slp-faq__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
}

.slp-faq-item {
    padding: 24px;
    border: 1px solid rgba(31, 103, 144, 0.09);
    border-radius: 18px;
    background-color: #f2f9fd;
}

.slp-faq-item:nth-child(3n + 2) {
    background-color: #dff1fb;
}

.slp-faq-item h3 {
    margin-bottom: 10px;
    font-size: 20px;
    line-height: 1.25;
}

.slp-faq-item p {
    margin-bottom: 0;
    color: #587181;
    font-size: 16px;
}

/* Финальная мысль */

.slp-final-thought {
    padding: 78px 0;
    background-color: #cceafb;
}

.slp-final-thought__inner {
    max-width: 980px;
}

.slp-final-thought__inner > p {
    margin-bottom: 12px;
    color: #57778b;
    font-size: clamp(21px, 2.5vw, 30px);
}

.slp-final-thought h2 {
    max-width: 970px;
    margin-bottom: 0;
    color: #154d70;
    font-size: clamp(40px, 5.2vw, 70px);
    line-height: 1.04;
    letter-spacing: -0.055em;
}

/* Финальный CTA */

.slp-final {
    padding: 76px 0;
    background-color: #eff8fd;
}

.slp-final__card {
    display: grid;
    grid-template-columns: minmax(0, 1.22fr) minmax(280px, 0.78fr);
    gap: 45px;
    padding: 48px;
    border-radius: 30px;
    color: #ffffff;
    background:
        radial-gradient(circle at 85% 18%, rgba(126, 207, 248, 0.28), transparent 35%),
        #17577d;
    box-shadow: 0 22px 56px rgba(20, 77, 111, 0.22);
}

.slp-final__title {
    margin-bottom: 21px;
    color: #ffffff;
    font-size: clamp(43px, 5.5vw, 72px);
    line-height: 1.02;
    letter-spacing: -0.055em;
}

.slp-final__content > p:not(.slp-label) {
    max-width: 720px;
    margin-bottom: 24px;
    color: rgba(255, 255, 255, 0.76);
}

.slp-final__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 11px;
    margin-bottom: 26px;
}

.slp-final__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.slp-final__tags span {
    padding: 8px 12px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 999px;
    color: rgba(255, 255, 255, 0.76);
    font-size: 13px;
}

.slp-final__contact {
    align-self: end;
    padding: 25px;
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 19px;
    background-color: rgba(255, 255, 255, 0.08);
}

.slp-final__contact-title {
    margin-bottom: 12px;
    color: #c5e9fb;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.slp-final__contact a {
    display: inline-block;
    margin-bottom: 16px;
    color: #ffffff;
    font-size: 18px;
    font-weight: 700;
    text-decoration-color: rgba(255, 255, 255, 0.45);
    text-underline-offset: 4px;
}

.slp-final__contact p:last-child {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.7);
    font-size: 15px;
}

/* Планшеты */

@media (max-width: 1040px) {
    .slp-hero__layout {
        grid-template-columns: minmax(0, 1fr) minmax(340px, 0.85fr);
        gap: 44px;
    }

    .slp-scenario-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .slp-divorce__columns,
    .slp-work__timeline {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .slp-parent__cards {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 900px) {
    .slp-hero__layout,
    .slp-intro__layout,
    .slp-transition__layout,
    .slp-breakup__layout,
    .slp-loss__layout,
    .slp-middle__layout,
    .slp-parent__layout,
    .slp-search__layout,
    .slp-decision__layout,
    .slp-conversation__layout,
    .slp-listener__layout,
    .slp-start__layout,
    .slp-final__card {
        grid-template-columns: 1fr;
    }

    .slp-hero__visual,
    .slp-transition__visual,
    .slp-middle__visual,
    .slp-listener__visual {
        max-width: 760px;
    }

    .slp-hero__facts {
        grid-template-columns: 1fr;
    }

    .slp-signal-card--wide {
        grid-column: auto;
    }

    .slp-final__contact {
        max-width: 600px;
    }
}

/* Мобильные */

@media (max-width: 760px) {
    .slp-page {
        font-size: 17px;
    }

    .slp-shell {
        width: calc(100% - 32px);
    }

    .slp-hero,
    .slp-intro,
    .slp-signals,
    .slp-transition,
    .slp-statement,
    .slp-support,
    .slp-scenarios,
    .slp-breakup,
    .slp-divorce,
    .slp-loss,
    .slp-middle,
    .slp-work,
    .slp-parent,
    .slp-search,
    .slp-decision,
    .slp-conversation,
    .slp-listener,
    .slp-boundaries,
    .slp-start,
    .slp-faq,
    .slp-final-thought,
    .slp-final {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .slp-section-header {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .slp-signal-grid,
    .slp-scenario-grid,
    .slp-conversation__grid,
    .slp-boundaries__columns,
    .slp-faq__grid {
        grid-template-columns: 1fr;
    }

    .slp-signal-card--wide {
        grid-template-columns: 1fr;
    }

    .slp-transition__caption,
    .slp-listener__note {
        position: relative;
        right: auto;
        bottom: auto;
        width: calc(100% - 28px);
        margin: -32px auto 0;
    }

    .slp-visual-break__frame,
    .slp-visual-break__image {
        min-height: 350px;
    }

    .slp-visual-break__frame::after {
        background: linear-gradient(
            0deg,
            rgba(16, 61, 88, 0.96),
            rgba(16, 61, 88, 0.12)
        );
    }

    .slp-visual-break__text {
        top: auto;
        right: 26px;
        bottom: 28px;
        left: 26px;
        width: auto;
        transform: none;
    }

    .slp-final__card {
        padding: 34px;
    }
}

@media (max-width: 560px) {
    .slp-page {
        font-size: 16px;
        line-height: 1.6;
    }

    .slp-shell {
        width: calc(100% - 24px);
    }

    .slp-label,
    .slp-overline {
        margin-bottom: 10px;
        font-size: 11px;
    }

    .slp-heading {
        margin-bottom: 18px;
        font-size: clamp(31px, 9.8vw, 44px);
    }

    .slp-hero {
        padding-top: 38px;
        padding-bottom: 54px;
    }

    .slp-hero__layout {
        gap: 48px;
    }

    .slp-hero__title {
        font-size: clamp(43px, 13vw, 60px);
    }

    .slp-hero__lead {
        font-size: 19px;
    }

    .slp-hero__actions,
    .slp-final__actions {
        flex-direction: column;
    }

    .slp-hero__actions .slp-button,
    .slp-final__actions .slp-button {
        width: 100%;
    }

    .slp-hero__visual {
        padding: 9px;
        border-radius: 22px;
    }

    .slp-hero__image {
        min-height: 330px;
        border-radius: 16px;
    }

    .slp-hero__quote {
        position: relative;
        right: auto;
        bottom: auto;
        width: calc(100% - 26px);
        margin: -24px auto 0;
    }

    .slp-intro,
    .slp-signals,
    .slp-transition,
    .slp-statement,
    .slp-support,
    .slp-scenarios,
    .slp-breakup,
    .slp-divorce,
    .slp-loss,
    .slp-middle,
    .slp-work,
    .slp-parent,
    .slp-search,
    .slp-decision,
    .slp-conversation,
    .slp-listener,
    .slp-boundaries,
    .slp-start,
    .slp-faq,
    .slp-final-thought,
    .slp-final {
        padding-top: 52px;
        padding-bottom: 52px;
    }

    .slp-intro__aside,
    .slp-breakup__heading,
    .slp-parent__heading {
        padding: 22px;
        border-radius: 18px;
    }

    .slp-signal-card,
    .slp-scenario-card,
    .slp-faq-item {
        min-height: 0;
        padding: 21px;
        border-radius: 17px;
    }

    .slp-transition__image {
        min-height: 380px;
        border-radius: 21px;
    }

    .slp-support-step {
        grid-template-columns: 1fr;
        gap: 16px;
        padding: 22px;
        border-radius: 17px;
    }

    .slp-divorce__columns,
    .slp-work__timeline {
        grid-template-columns: 1fr;
    }

    .slp-divorce__columns article,
    .slp-work__timeline article {
        min-height: 0;
    }

    .slp-middle__image,
    .slp-listener__image {
        min-height: 350px;
        border-radius: 21px;
    }

    .slp-decision__framework article {
        grid-template-columns: 1fr;
        gap: 5px;
    }

    .slp-visual-break {
        padding-top: 0;
    }

    .slp-visual-break__text p {
        font-size: 24px;
    }

    .slp-start__phrases p {
        padding: 14px 16px;
    }

    .slp-final__card {
        padding: 25px 21px;
        border-radius: 22px;
    }

    .slp-final__title {
        font-size: clamp(38px, 11.5vw, 52px);
    }
}

@media (max-width: 375px) {
    .slp-shell {
        width: calc(100% - 20px);
    }

    .slp-hero__title {
        font-size: 42px;
    }

    .slp-button {
        min-height: 50px;
        padding-right: 16px;
        padding-left: 16px;
        font-size: 15px;
    }

    .slp-hero__image {
        min-height: 300px;
    }

    .slp-signal-card,
    .slp-scenario-card,
    .slp-faq-item,
    .slp-support-step {
        padding-right: 18px;
        padding-left: 18px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .slp-page *,
    .slp-page *::before,
    .slp-page *::after {
        animation-duration: 0.01ms;
        animation-iteration-count: 1;
        scroll-behavior: auto;
        transition-duration: 0.01ms;
    }

    .slp-button:hover {
        transform: none;
    }

    .slp-inline-cta:hover::after {
        transform: none;
    }
}

______________________________________________________________________
страница 9 как разговор помогает понять себя

.sai-page {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
    color: #203746;
    background-color: #ffffff;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 18px;
    line-height: 1.66;
}

.sai-page *,
.sai-page *::before,
.sai-page *::after {
    box-sizing: border-box;
}

.sai-page section,
.sai-page div,
.sai-page article,
.sai-page aside,
.sai-page picture {
    min-width: 0;
}

.sai-page img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
}

.sai-page h1,
.sai-page h2,
.sai-page h3,
.sai-page p,
.sai-page ul {
    margin-top: 0;
}

.sai-page h1,
.sai-page h2,
.sai-page h3 {
    color: #173f5a;
    font-weight: 700;
    line-height: 1.1;
    text-wrap: balance;
}

.sai-page p,
.sai-page li {
    text-wrap: pretty;
}

.sai-shell {
    width: calc(100% - 48px);
    max-width: 1200px;
    margin-right: auto;
    margin-left: auto;
}

.sai-label,
.sai-eyebrow {
    margin-bottom: 13px;
    color: #27739d;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.115em;
    text-transform: uppercase;
}

.sai-label--light {
    color: #c4eaff;
}

.sai-heading {
    margin-bottom: 21px;
    font-size: clamp(36px, 4.15vw, 59px);
    line-height: 1.05;
    letter-spacing: -0.046em;
}

.sai-heading--light {
    color: #ffffff;
}

.sai-text-link {
    color: #1d709f;
    font-weight: 700;
    text-decoration-color: rgba(29, 112, 159, 0.42);
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;
    transition:
        color 160ms ease,
        text-decoration-color 160ms ease;
}

.sai-text-link:hover {
    color: #12577e;
    text-decoration-color: currentColor;
}

.sai-button {
    display: inline-flex;
    min-height: 52px;
    align-items: center;
    justify-content: center;
    padding: 14px 24px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    transition:
        transform 180ms ease,
        color 180ms ease,
        background-color 180ms ease,
        border-color 180ms ease,
        box-shadow 180ms ease;
}

.sai-button:hover {
    transform: translateY(-2px);
}

.sai-button:focus-visible,
.sai-text-link:focus-visible,
.sai-final__aside a:focus-visible {
    outline: 3px solid rgba(36, 130, 181, 0.42);
    outline-offset: 4px;
}

.sai-button--primary {
    color: #ffffff;
    background-color: #247eae;
    box-shadow: 0 12px 28px rgba(27, 102, 143, 0.25);
}

.sai-button--primary:hover {
    color: #ffffff;
    background-color: #165b83;
    box-shadow: 0 16px 36px rgba(22, 91, 131, 0.3);
}

.sai-button--outline {
    color: #1d638c;
    border-color: rgba(31, 111, 159, 0.35);
    background-color: rgba(255, 255, 255, 0.72);
}

.sai-button--outline:hover {
    color: #154c6c;
    border-color: #2b85b5;
    background-color: #e9f6fd;
}

.sai-button--white {
    color: #145477;
    background-color: #ffffff;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.14);
}

.sai-button--white:hover {
    color: #103f5a;
    background-color: #ebf8ff;
}

.sai-button--outline-white {
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.66);
    background-color: transparent;
}

.sai-button--outline-white:hover {
    color: #145477;
    border-color: #ffffff;
    background-color: #ffffff;
}

/* Hero */

.sai-hero {
    position: relative;
    padding: 62px 0 80px;
    background:
        radial-gradient(circle at 82% 10%, rgba(141, 208, 245, 0.42), transparent 32%),
        linear-gradient(145deg, #ffffff 0%, #edf8fe 100%);
}

.sai-hero::before {
    position: absolute;
    top: 56px;
    left: -110px;
    width: 330px;
    height: 330px;
    border: 1px solid rgba(37, 126, 174, 0.12);
    border-radius: 50%;
    content: "";
}

.sai-hero__layout {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(390px, 0.95fr);
    gap: 62px;
    align-items: center;
}

.sai-hero__title {
    max-width: 770px;
    margin-bottom: 24px;
    font-size: clamp(53px, 6.6vw, 91px);
    line-height: 0.98;
    letter-spacing: -0.067em;
}

.sai-hero__lead {
    max-width: 690px;
    margin-bottom: 17px;
    color: #29495e;
    font-size: clamp(21px, 2vw, 27px);
    line-height: 1.43;
}

.sai-hero__text {
    max-width: 670px;
    margin-bottom: 28px;
    color: #587181;
}

.sai-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 26px;
}

.sai-hero__notes {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.sai-hero__notes span {
    padding: 9px 13px;
    border: 1px solid rgba(31, 107, 150, 0.13);
    border-radius: 999px;
    color: #4f7185;
    background-color: rgba(255, 255, 255, 0.7);
    font-size: 13px;
}

.sai-hero__visual {
    position: relative;
    min-height: 590px;
    padding: 13px;
    border-radius: 34px;
    background-color: rgba(255, 255, 255, 0.8);
    box-shadow: 0 25px 65px rgba(23, 85, 120, 0.17);
}

.sai-hero__image {
    min-height: 560px;
    border-radius: 24px;
    object-fit: cover;
}

.sai-hero__question {
    position: absolute;
    right: -20px;
    bottom: 78px;
    width: min(370px, 84%);
    padding: 23px 25px;
    border-radius: 20px;
    background-color: #17577d;
    box-shadow: 0 18px 43px rgba(15, 72, 105, 0.26);
}

.sai-hero__question p {
    margin-bottom: 0;
    color: #ffffff;
    font-size: 17px;
    line-height: 1.5;
}

.sai-hero__number {
    position: absolute;
    bottom: -40px;
    left: -25px;
    width: min(310px, 74%);
    padding: 20px 22px;
    border-radius: 19px;
    background-color: #cdeafa;
    box-shadow: 0 16px 38px rgba(24, 84, 117, 0.16);
}

.sai-hero__number span {
    display: block;
    margin-bottom: 7px;
    color: #2679a7;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.11em;
}

.sai-hero__number p {
    margin-bottom: 0;
    color: #315b73;
    font-size: 14px;
    line-height: 1.48;
}

/* Intro */

.sai-intro {
    padding: 92px 0 76px;
    background-color: #ffffff;
}

.sai-intro__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.76fr) minmax(0, 1.24fr);
    gap: 78px;
    align-items: start;
}

.sai-intro__heading {
    position: sticky;
    top: 32px;
    padding: 31px;
    border-radius: 23px;
    background-color: #e0f2fc;
}

.sai-intro__heading .sai-heading {
    margin-bottom: 0;
}

.sai-intro__content {
    max-width: 735px;
}

.sai-intro__content > p {
    margin-bottom: 18px;
    color: #587180;
}

.sai-intro__large {
    color: #26485e;
    font-size: clamp(23px, 2.4vw, 31px);
    line-height: 1.38;
}

.sai-intro__accent {
    margin-top: 28px;
    padding: 25px 28px;
    border-left: 4px solid #2b84b4;
    border-radius: 0 18px 18px 0;
    background-color: #f0f9fe;
}

.sai-intro__accent p {
    margin-bottom: 0;
    color: #28536e;
    font-size: 20px;
}

/* Section title */

.sai-section-title {
    max-width: 880px;
    margin-bottom: 38px;
}

.sai-section-title--split {
    display: grid;
    max-width: none;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 0.58fr);
    gap: 48px;
    align-items: end;
}

.sai-section-title__intro {
    margin-bottom: 20px;
    color: #5a7383;
}

/* Confusion */

.sai-confusion {
    padding: 76px 0;
    background-color: #eff8fd;
}

.sai-confusion__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 15px;
}

.sai-confusion-card {
    min-height: 280px;
    padding: 29px;
    border: 1px solid rgba(34, 104, 144, 0.1);
    border-radius: 22px;
    background-color: #ffffff;
}

.sai-confusion-card--blue {
    color: #ffffff;
    border-color: #247aab;
    background-color: #247aab;
}

.sai-confusion-card--pale {
    border-color: #c4e5f7;
    background-color: #dff2fc;
}

.sai-confusion-card--wide {
    display: grid;
    grid-column: span 2;
    grid-template-columns: 78px minmax(0, 1fr);
    gap: 24px;
    min-height: 0;
    background-color: #cceafa;
}

.sai-confusion-card__index {
    display: block;
    margin-bottom: 35px;
    color: #2479a8;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.13em;
}

.sai-confusion-card--blue .sai-confusion-card__index {
    color: #caedff;
}

.sai-confusion-card--wide .sai-confusion-card__index {
    margin-bottom: 0;
    font-size: 20px;
}

.sai-confusion-card h3 {
    margin-bottom: 12px;
    font-size: 23px;
    line-height: 1.2;
}

.sai-confusion-card--blue h3 {
    color: #ffffff;
}

.sai-confusion-card p {
    margin-bottom: 0;
    color: #5a7281;
    font-size: 17px;
}

.sai-confusion-card--blue p {
    color: rgba(255, 255, 255, 0.78);
}

/* Phrase */

.sai-phrase {
    padding: 78px 0;
    background-color: #cceafa;
}

.sai-phrase__inner {
    max-width: 1000px;
}

.sai-phrase__small {
    margin-bottom: 12px;
    color: #55778a;
    font-size: clamp(21px, 2.4vw, 29px);
}

.sai-phrase__large {
    max-width: 980px;
    margin-bottom: 0;
    color: #154d70;
    font-size: clamp(41px, 5.25vw, 72px);
    font-weight: 700;
    line-height: 1.04;
    letter-spacing: -0.055em;
}

/* Mechanics */

.sai-mechanics {
    padding: 80px 0;
    background-color: #ffffff;
}

.sai-mechanics__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.7fr) minmax(0, 1.3fr);
    gap: 74px;
    align-items: start;
}

.sai-mechanics__sticky {
    position: sticky;
    top: 32px;
}

.sai-mechanics__sticky > p:last-child {
    color: #597282;
}

.sai-mechanics__steps {
    display: grid;
    gap: 12px;
}

.sai-mechanic {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr);
    gap: 24px;
    padding: 26px 28px;
    border: 1px solid rgba(34, 106, 146, 0.1);
    border-radius: 20px;
    background-color: #f1f9fe;
}

.sai-mechanic:nth-child(even) {
    background-color: #dff2fc;
}

.sai-mechanic__number {
    display: flex;
    width: 50px;
    height: 50px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #ffffff;
    background-color: #247eae;
    font-size: 12px;
    font-weight: 700;
}

.sai-mechanic h3 {
    margin-bottom: 10px;
    font-size: 22px;
}

.sai-mechanic p {
    margin-bottom: 10px;
    color: #597281;
    font-size: 16px;
}

.sai-mechanic p:last-child {
    margin-bottom: 0;
}

/* Thoughts */

.sai-thoughts {
    padding: 78px 0;
    background-color: #eaf6fd;
}

.sai-thoughts__layout {
    display: grid;
    grid-template-columns: minmax(330px, 0.78fr) minmax(0, 1.22fr);
    gap: 75px;
    align-items: start;
}

.sai-thoughts__visual {
    position: relative;
}

.sai-thoughts__image {
    min-height: 550px;
    border-radius: 30px;
    object-fit: cover;
    box-shadow: 0 22px 55px rgba(22, 76, 108, 0.17);
}

.sai-thoughts__caption {
    position: absolute;
    right: -22px;
    bottom: 30px;
    width: min(340px, 84%);
    padding: 22px;
    border-radius: 18px;
    background-color: #ffffff;
    box-shadow: 0 17px 40px rgba(20, 72, 102, 0.16);
}

.sai-thoughts__caption p {
    margin-bottom: 0;
    color: #315b72;
    font-size: 16px;
}

.sai-thoughts__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.sai-thoughts__prompts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 28px;
}

.sai-thoughts__prompts article {
    padding: 18px;
    border-radius: 15px;
    background-color: #ffffff;
}

.sai-thoughts__prompts article:last-child {
    grid-column: span 2;
}

.sai-thoughts__prompts span {
    display: block;
    margin-bottom: 6px;
    color: #216d99;
    font-weight: 700;
}

.sai-thoughts__prompts p {
    margin-bottom: 0;
    color: #5a7281;
    font-size: 15px;
}

/* Feelings */

.sai-feelings {
    padding: 78px 0;
    background-color: #ffffff;
}

.sai-feelings__matrix {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.sai-feeling {
    padding: 26px;
    border: 1px solid rgba(31, 103, 143, 0.11);
    border-radius: 20px;
    background-color: #f2f9fd;
}

.sai-feeling--deep {
    grid-column: span 2;
    color: #ffffff;
    border-color: #185b82;
    background-color: #185b82;
}

.sai-feeling > span {
    display: block;
    margin-bottom: 25px;
    color: #2479a7;
    font-size: 15px;
    font-weight: 700;
}

.sai-feeling--deep > span {
    color: #c8ebff;
}

.sai-feeling h3 {
    margin-bottom: 10px;
    font-size: 21px;
}

.sai-feeling--deep h3 {
    color: #ffffff;
}

.sai-feeling p {
    margin-bottom: 0;
    color: #587181;
    font-size: 16px;
}

.sai-feeling--deep p {
    color: rgba(255, 255, 255, 0.76);
}

/* Perspective */

.sai-perspective {
    padding: 78px 0;
    background-color: #dff2fc;
}

.sai-perspective__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.7fr) minmax(0, 1.3fr);
    gap: 72px;
}

.sai-perspective__heading {
    align-self: start;
    padding: 29px;
    border-radius: 22px;
    background-color: #ffffff;
}

.sai-perspective__heading > p:last-child {
    margin-bottom: 0;
    color: #5a7281;
}

.sai-perspective__cards {
    display: grid;
    gap: 11px;
}

.sai-perspective__cards article {
    padding: 22px;
    border-radius: 17px;
    background-color: rgba(255, 255, 255, 0.72);
}

.sai-perspective__cards span {
    display: block;
    margin-bottom: 8px;
    color: #267aa8;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.sai-perspective__cards h3 {
    margin-bottom: 9px;
    font-size: 19px;
}

.sai-perspective__cards p {
    margin-bottom: 0;
    color: #587181;
    font-size: 16px;
}

/* Visual pause */

.sai-visual-pause {
    padding: 0 0 78px;
    background-color: #dff2fc;
}

.sai-visual-pause__frame {
    position: relative;
    overflow: hidden;
    min-height: 300px;
    border-radius: 30px;
    box-shadow: 0 22px 55px rgba(22, 75, 106, 0.17);
}

.sai-visual-pause__image {
    min-height: 300px;
    object-fit: cover;
}

.sai-visual-pause__frame::after {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        90deg,
        rgba(18, 63, 91, 0.18),
        rgba(18, 63, 91, 0.91)
    );
    content: "";
}

.sai-visual-pause__text {
    position: absolute;
    z-index: 1;
    top: 50%;
    right: 50px;
    width: min(560px, calc(100% - 100px));
    transform: translateY(-50%);
}

.sai-visual-pause__text p {
    margin-bottom: 0;
    color: #ffffff;
    font-size: clamp(28px, 3.4vw, 46px);
    font-weight: 700;
    line-height: 1.18;
    letter-spacing: -0.035em;
}

/* Decisions */

.sai-decisions {
    padding: 78px 0;
    background-color: #ffffff;
}

.sai-decisions__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(330px, 0.92fr);
    gap: 64px;
}

.sai-decisions__essay p {
    margin-bottom: 18px;
    color: #587181;
}

.sai-decision-map {
    display: grid;
    gap: 9px;
}

.sai-decision-map article {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 15px;
    padding: 17px 19px;
    border-radius: 15px;
    background-color: #e9f6fd;
}

.sai-decision-map span {
    color: #23739f;
    font-size: 12px;
    font-weight: 700;
}

.sai-decision-map h3 {
    grid-column: 2;
    margin-bottom: 4px;
    font-size: 17px;
}

.sai-decision-map p {
    grid-column: 2;
    margin-bottom: 0;
    color: #5a7281;
    font-size: 14px;
}

/* Who */

.sai-who {
    padding: 78px 0;
    background-color: #eef8fd;
}

.sai-who__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.72fr) minmax(0, 1.28fr);
    gap: 70px;
}

.sai-who__sidebar {
    align-self: start;
    padding: 29px;
    border-radius: 22px;
    background-color: #cdeafa;
}

.sai-who__sidebar > p:last-child {
    margin-bottom: 0;
    color: #526f81;
}

.sai-who__list {
    display: grid;
    gap: 11px;
}

.sai-who__list article {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 18px;
    padding: 21px;
    border-radius: 17px;
    background-color: #ffffff;
}

.sai-who__marker {
    display: flex;
    width: 44px;
    height: 44px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #ffffff;
    background-color: #247eae;
    font-size: 13px;
    font-weight: 700;
}

.sai-who__list h3 {
    margin-bottom: 8px;
    font-size: 19px;
}

.sai-who__list p {
    margin-bottom: 0;
    color: #597181;
    font-size: 16px;
}

/* Ideas */

.sai-ideas {
    padding: 78px 0;
    background-color: #ffffff;
}

.sai-ideas__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.sai-idea {
    padding: 25px;
    border: 1px solid rgba(31, 104, 144, 0.1);
    border-radius: 20px;
    background-color: #f1f9fe;
}

.sai-idea--large {
    grid-column: span 2;
    background-color: #dff2fc;
}

.sai-idea--blue {
    color: #ffffff;
    border-color: #247dab;
    background-color: #247dab;
}

.sai-idea span {
    display: block;
    margin-bottom: 22px;
    color: #267aa8;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.sai-idea--blue span {
    color: #c8edff;
}

.sai-idea h3 {
    margin-bottom: 10px;
    font-size: 21px;
}

.sai-idea--blue h3 {
    color: #ffffff;
}

.sai-idea p {
    margin-bottom: 0;
    color: #597181;
    font-size: 16px;
}

.sai-idea--blue p {
    color: rgba(255, 255, 255, 0.78);
}

/* Hidden issue */

.sai-hidden {
    padding: 78px 0;
    color: #ffffff;
    background-color: #17445f;
}

.sai-hidden__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(340px, 0.95fr);
    gap: 67px;
}

.sai-hidden .sai-label {
    color: #bce5fb;
}

.sai-hidden .sai-heading {
    color: #ffffff;
}

.sai-hidden__content p {
    margin-bottom: 18px;
    color: rgba(255, 255, 255, 0.75);
}

.sai-hidden__examples {
    display: grid;
    gap: 10px;
}

.sai-hidden__examples article {
    padding: 20px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 16px;
    background-color: rgba(255, 255, 255, 0.07);
}

.sai-hidden__examples span {
    display: block;
    margin-bottom: 7px;
    color: #bce7fc;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.sai-hidden__examples h3 {
    margin-bottom: 7px;
    color: #ffffff;
    font-size: 18px;
}

.sai-hidden__examples p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.7);
    font-size: 15px;
}

/* Doubts */

.sai-doubts {
    padding: 78px 0;
    background-color: #dff2fc;
}

.sai-doubts__header {
    max-width: 830px;
    margin-bottom: 36px;
}

.sai-doubts__header > p:last-child {
    color: #587181;
}

.sai-doubts__columns {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.sai-doubts__columns article {
    min-height: 245px;
    padding: 23px;
    border-radius: 18px;
    background-color: #ffffff;
}

.sai-doubts__columns h3 {
    margin-bottom: 10px;
    font-size: 19px;
}

.sai-doubts__columns p {
    margin-bottom: 0;
    color: #597181;
    font-size: 15px;
}

.sai-doubts__note {
    margin-top: 14px;
    padding: 24px 27px;
    border-radius: 18px;
    color: #ffffff;
    background-color: #1d678f;
}

.sai-doubts__note p {
    margin-bottom: 0;
    color: #ffffff;
}

/* Plans */

.sai-plans {
    padding: 78px 0;
    background-color: #ffffff;
}

.sai-plans__layout {
    display: grid;
    grid-template-columns: minmax(330px, 0.78fr) minmax(0, 1.22fr);
    gap: 74px;
    align-items: center;
}

.sai-plans__visual {
    position: relative;
    padding: 12px;
    border-radius: 29px;
    background-color: #e4f4fc;
}

.sai-plans__image {
    min-height: 470px;
    border-radius: 21px;
    object-fit: cover;
}

.sai-plans__visual-text {
    position: absolute;
    right: -20px;
    bottom: 28px;
    width: min(340px, 84%);
    padding: 21px;
    border-radius: 18px;
    background-color: #175b82;
    box-shadow: 0 17px 40px rgba(18, 70, 101, 0.22);
}

.sai-plans__visual-text p {
    margin-bottom: 0;
    color: #ffffff;
    font-size: 16px;
}

.sai-plans__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.sai-plans__checklist {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin-top: 27px;
}

.sai-plans__checklist article {
    padding: 17px;
    border-radius: 15px;
    background-color: #eef8fd;
}

.sai-plans__checklist span {
    display: block;
    margin-bottom: 5px;
    color: #216d99;
    font-weight: 700;
}

.sai-plans__checklist p {
    margin-bottom: 0;
    color: #5a7281;
    font-size: 14px;
}

/* Self-analysis */

.sai-selfanalysis {
    padding: 78px 0;
    background-color: #eef8fd;
}

.sai-selfanalysis__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.sai-selfanalysis-card {
    padding: 22px;
    border-left: 5px solid #2a82b3;
    border-radius: 0 17px 17px 0;
    background-color: #ffffff;
}

.sai-selfanalysis-card--warning {
    border-left-color: #75bddd;
    background-color: #dff1fa;
}

.sai-selfanalysis-card__status {
    display: block;
    margin-bottom: 17px;
    color: #2679a6;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.sai-selfanalysis-card h3 {
    margin-bottom: 8px;
    font-size: 19px;
}

.sai-selfanalysis-card p {
    margin-bottom: 0;
    color: #597181;
    font-size: 15px;
}

/* Boundaries */

.sai-boundaries {
    padding: 78px 0;
    color: #ffffff;
    background-color: #133f5a;
}

.sai-boundaries__header {
    max-width: 850px;
    margin-bottom: 35px;
}

.sai-boundaries__header p:last-child {
    color: rgba(255, 255, 255, 0.73);
}

.sai-boundaries__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.sai-boundary-card {
    padding: 28px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 20px;
    background-color: rgba(255, 255, 255, 0.07);
}

.sai-boundary-card--light {
    background-color: rgba(91, 183, 228, 0.18);
}

.sai-boundary-card h3 {
    margin-bottom: 17px;
    color: #ffffff;
    font-size: 23px;
}

.sai-boundary-card ul {
    padding-left: 21px;
    margin-bottom: 0;
}

.sai-boundary-card li {
    margin-bottom: 9px;
    color: rgba(255, 255, 255, 0.78);
}

.sai-boundaries__note {
    margin-top: 15px;
    margin-bottom: 0;
    padding: 23px 26px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 18px;
    color: #bfe3f7;
    background-color: rgba(255, 255, 255, 0.05);
    font-size: 15px;
}

/* Start */

.sai-start {
    padding: 78px 0;
    background-color: #dff2fc;
}

.sai-start__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.7fr) minmax(0, 1.3fr);
    gap: 72px;
}

.sai-start__heading {
    align-self: start;
    padding: 28px;
    border-radius: 21px;
    background-color: #ffffff;
}

.sai-start__heading > p:last-child {
    margin-bottom: 0;
    color: #597181;
}

.sai-start__phrases {
    display: grid;
    gap: 8px;
    margin-bottom: 24px;
}

.sai-start__phrases p {
    margin-bottom: 0;
    padding: 15px 18px;
    border-radius: 14px;
    color: #225f82;
    background-color: rgba(255, 255, 255, 0.76);
}

.sai-start__content > p {
    margin-bottom: 18px;
    color: #587181;
}

/* FAQ */

.sai-faq {
    padding: 78px 0;
    background-color: #ffffff;
}

.sai-faq__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
}

.sai-faq-item {
    padding: 24px;
    border: 1px solid rgba(31, 103, 144, 0.09);
    border-radius: 18px;
    background-color: #f2f9fd;
}

.sai-faq-item:nth-child(3n + 2) {
    background-color: #dff1fb;
}

.sai-faq-item h3 {
    margin-bottom: 10px;
    font-size: 20px;
    line-height: 1.25;
}

.sai-faq-item p {
    margin-bottom: 0;
    color: #587181;
    font-size: 16px;
}

/* Final thought */

.sai-final-thought {
    padding: 78px 0;
    background-color: #cceafa;
}

.sai-final-thought__inner {
    max-width: 1000px;
}

.sai-final-thought__inner > p {
    margin-bottom: 12px;
    color: #57778a;
    font-size: clamp(21px, 2.5vw, 30px);
}

.sai-final-thought h2 {
    max-width: 980px;
    margin-bottom: 0;
    color: #154d70;
    font-size: clamp(40px, 5.2vw, 70px);
    line-height: 1.04;
    letter-spacing: -0.055em;
}

/* Final */

.sai-final {
    padding: 78px 0;
    background-color: #eef8fd;
}

.sai-final__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.22fr) minmax(290px, 0.78fr);
    gap: 45px;
    padding: 49px;
    border-radius: 31px;
    color: #ffffff;
    background:
        radial-gradient(circle at 84% 16%, rgba(123, 206, 247, 0.28), transparent 35%),
        #17577d;
    box-shadow: 0 23px 58px rgba(20, 77, 111, 0.22);
}

.sai-final__title {
    margin-bottom: 21px;
    color: #ffffff;
    font-size: clamp(43px, 5.5vw, 72px);
    line-height: 1.02;
    letter-spacing: -0.055em;
}

.sai-final__content > p:not(.sai-label) {
    max-width: 730px;
    margin-bottom: 21px;
    color: rgba(255, 255, 255, 0.76);
}

.sai-final__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 11px;
    margin: 27px 0 25px;
}

.sai-final__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.sai-final__tags span {
    padding: 8px 12px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 999px;
    color: rgba(255, 255, 255, 0.76);
    font-size: 13px;
}

.sai-final__aside {
    align-self: end;
    padding: 25px;
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 19px;
    background-color: rgba(255, 255, 255, 0.08);
}

.sai-final__aside-label {
    margin-bottom: 12px;
    color: #c5e9fb;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.sai-final__aside a {
    display: inline-block;
    margin-bottom: 16px;
    color: #ffffff;
    font-size: 18px;
    font-weight: 700;
    text-decoration-color: rgba(255, 255, 255, 0.45);
    text-underline-offset: 4px;
}

.sai-final__aside p:last-child {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.7);
    font-size: 15px;
}

/* Tablet */

@media (max-width: 1040px) {
    .sai-hero__layout {
        grid-template-columns: minmax(0, 1fr) minmax(350px, 0.86fr);
        gap: 44px;
    }

    .sai-doubts__columns {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .sai-hero__layout,
    .sai-intro__layout,
    .sai-mechanics__layout,
    .sai-thoughts__layout,
    .sai-perspective__layout,
    .sai-decisions__layout,
    .sai-who__layout,
    .sai-hidden__layout,
    .sai-plans__layout,
    .sai-start__layout,
    .sai-final__layout {
        grid-template-columns: 1fr;
    }

    .sai-intro__heading,
    .sai-mechanics__sticky {
        position: static;
    }

    .sai-hero__visual,
    .sai-thoughts__visual,
    .sai-plans__visual {
        max-width: 760px;
    }

    .sai-final__aside {
        max-width: 620px;
    }
}

/* Mobile */

@media (max-width: 760px) {
    .sai-page {
        font-size: 17px;
    }

    .sai-shell {
        width: calc(100% - 32px);
    }

    .sai-hero,
    .sai-intro,
    .sai-confusion,
    .sai-phrase,
    .sai-mechanics,
    .sai-thoughts,
    .sai-feelings,
    .sai-perspective,
    .sai-decisions,
    .sai-who,
    .sai-ideas,
    .sai-hidden,
    .sai-doubts,
    .sai-plans,
    .sai-selfanalysis,
    .sai-boundaries,
    .sai-start,
    .sai-faq,
    .sai-final-thought,
    .sai-final {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .sai-section-title--split {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .sai-confusion__grid,
    .sai-feelings__matrix,
    .sai-ideas__grid,
    .sai-selfanalysis__grid,
    .sai-boundaries__grid,
    .sai-faq__grid {
        grid-template-columns: 1fr;
    }

    .sai-confusion-card--wide,
    .sai-feeling--deep,
    .sai-idea--large {
        grid-column: auto;
    }

    .sai-confusion-card--wide {
        grid-template-columns: 1fr;
    }

    .sai-thoughts__caption,
    .sai-plans__visual-text {
        position: relative;
        right: auto;
        bottom: auto;
        width: calc(100% - 28px);
        margin: -31px auto 0;
    }

    .sai-visual-pause__frame,
    .sai-visual-pause__image {
        min-height: 360px;
    }

    .sai-visual-pause__frame::after {
        background: linear-gradient(
            0deg,
            rgba(18, 63, 91, 0.96),
            rgba(18, 63, 91, 0.12)
        );
    }

    .sai-visual-pause__text {
        top: auto;
        right: 26px;
        bottom: 28px;
        left: 26px;
        width: auto;
        transform: none;
    }

    .sai-final__layout {
        padding: 34px;
    }
}

@media (max-width: 560px) {
    .sai-page {
        font-size: 16px;
        line-height: 1.6;
    }

    .sai-shell {
        width: calc(100% - 24px);
    }

    .sai-label,
    .sai-eyebrow {
        margin-bottom: 10px;
        font-size: 11px;
    }

    .sai-heading {
        margin-bottom: 18px;
        font-size: clamp(31px, 9.8vw, 44px);
    }

    .sai-hero {
        padding-top: 38px;
        padding-bottom: 68px;
    }

    .sai-hero__layout {
        gap: 50px;
    }

    .sai-hero__title {
        font-size: clamp(43px, 13vw, 60px);
    }

    .sai-hero__lead {
        font-size: 19px;
    }

    .sai-hero__actions,
    .sai-final__actions {
        flex-direction: column;
    }

    .sai-hero__actions .sai-button,
    .sai-final__actions .sai-button {
        width: 100%;
    }

    .sai-hero__visual {
        min-height: 0;
        padding: 9px;
        border-radius: 22px;
    }

    .sai-hero__image {
        min-height: 340px;
        border-radius: 16px;
    }

    .sai-hero__question,
    .sai-hero__number {
        position: relative;
        right: auto;
        bottom: auto;
        left: auto;
        width: calc(100% - 26px);
        margin-right: auto;
        margin-left: auto;
    }

    .sai-hero__question {
        margin-top: -25px;
    }

    .sai-hero__number {
        margin-top: 10px;
    }

    .sai-intro,
    .sai-confusion,
    .sai-phrase,
    .sai-mechanics,
    .sai-thoughts,
    .sai-feelings,
    .sai-perspective,
    .sai-decisions,
    .sai-who,
    .sai-ideas,
    .sai-hidden,
    .sai-doubts,
    .sai-plans,
    .sai-selfanalysis,
    .sai-boundaries,
    .sai-start,
    .sai-faq,
    .sai-final-thought,
    .sai-final {
        padding-top: 52px;
        padding-bottom: 52px;
    }

    .sai-intro__heading,
    .sai-perspective__heading,
    .sai-who__sidebar,
    .sai-start__heading {
        padding: 22px;
        border-radius: 18px;
    }

    .sai-confusion-card,
    .sai-feeling,
    .sai-idea,
    .sai-faq-item {
        min-height: 0;
        padding: 21px;
        border-radius: 17px;
    }

    .sai-mechanic {
        grid-template-columns: 1fr;
        gap: 16px;
        padding: 22px;
    }

    .sai-thoughts__image,
    .sai-plans__image {
        min-height: 380px;
        border-radius: 21px;
    }

    .sai-thoughts__prompts,
    .sai-plans__checklist {
        grid-template-columns: 1fr;
    }

    .sai-thoughts__prompts article:last-child {
        grid-column: auto;
    }

    .sai-decision-map article {
        grid-template-columns: 1fr;
    }

    .sai-decision-map h3,
    .sai-decision-map p {
        grid-column: auto;
    }

    .sai-doubts__columns {
        grid-template-columns: 1fr;
    }

    .sai-doubts__columns article {
        min-height: 0;
    }

    .sai-visual-pause {
        padding-top: 0;
    }

    .sai-visual-pause__text p {
        font-size: 27px;
    }

    .sai-final__layout {
        padding: 25px 21px;
        border-radius: 22px;
    }

    .sai-final__title {
        font-size: clamp(38px, 11.5vw, 52px);
    }
}

@media (max-width: 375px) {
    .sai-shell {
        width: calc(100% - 20px);
    }

    .sai-hero__title {
        font-size: 42px;
    }

    .sai-button {
        min-height: 50px;
        padding-right: 16px;
        padding-left: 16px;
        font-size: 15px;
    }

    .sai-hero__image {
        min-height: 310px;
    }

    .sai-confusion-card,
    .sai-feeling,
    .sai-idea,
    .sai-faq-item,
    .sai-mechanic {
        padding-right: 18px;
        padding-left: 18px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .sai-page *,
    .sai-page *::before,
    .sai-page *::after {
        animation-duration: 0.01ms;
        animation-iteration-count: 1;
        scroll-behavior: auto;
        transition-duration: 0.01ms;
    }

    .sai-button:hover {
        transform: none;
    }
}

______________________________________________________________________________________________________
страница 10 Влияние общения на развитие личности
.pdi-page {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
    color: #203847;
    background-color: #ffffff;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 18px;
    line-height: 1.66;
}

.pdi-page *,
.pdi-page *::before,
.pdi-page *::after {
    box-sizing: border-box;
}

.pdi-page section,
.pdi-page div,
.pdi-page article,
.pdi-page aside,
.pdi-page picture {
    min-width: 0;
}

.pdi-page img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
}

.pdi-page h1,
.pdi-page h2,
.pdi-page h3,
.pdi-page p,
.pdi-page ul {
    margin-top: 0;
}

.pdi-page h1,
.pdi-page h2,
.pdi-page h3 {
    color: #173e58;
    font-weight: 700;
    line-height: 1.1;
    text-wrap: balance;
}

.pdi-page p,
.pdi-page li {
    text-wrap: pretty;
}

.pdi-shell {
    width: calc(100% - 48px);
    max-width: 1200px;
    margin-right: auto;
    margin-left: auto;
}

.pdi-label,
.pdi-eyebrow {
    margin-bottom: 13px;
    color: #2878a3;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.115em;
    text-transform: uppercase;
}

.pdi-label--light {
    color: #c5eaff;
}

.pdi-heading {
    margin-bottom: 21px;
    font-size: clamp(36px, 4.15vw, 59px);
    line-height: 1.05;
    letter-spacing: -0.046em;
}

.pdi-heading--light {
    color: #ffffff;
}

.pdi-text-link {
    color: #1c709f;
    font-weight: 700;
    text-decoration-color: rgba(28, 112, 159, 0.42);
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;
    transition:
        color 160ms ease,
        text-decoration-color 160ms ease;
}

.pdi-text-link:hover {
    color: #13577d;
    text-decoration-color: currentColor;
}

.pdi-button {
    display: inline-flex;
    min-height: 52px;
    align-items: center;
    justify-content: center;
    padding: 14px 24px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    transition:
        transform 180ms ease,
        color 180ms ease,
        background-color 180ms ease,
        border-color 180ms ease,
        box-shadow 180ms ease;
}

.pdi-button:hover {
    transform: translateY(-2px);
}

.pdi-button:focus-visible,
.pdi-text-link:focus-visible,
.pdi-final__aside a:focus-visible {
    outline: 3px solid rgba(39, 130, 181, 0.42);
    outline-offset: 4px;
}

.pdi-button--primary {
    color: #ffffff;
    background-color: #247eae;
    box-shadow: 0 12px 28px rgba(27, 101, 143, 0.25);
}

.pdi-button--primary:hover {
    color: #ffffff;
    background-color: #175c84;
    box-shadow: 0 16px 36px rgba(22, 91, 131, 0.3);
}

.pdi-button--outline {
    color: #1e638b;
    border-color: rgba(31, 111, 159, 0.35);
    background-color: rgba(255, 255, 255, 0.74);
}

.pdi-button--outline:hover {
    color: #144c6c;
    border-color: #2a85b6;
    background-color: #e9f6fd;
}

.pdi-button--white {
    color: #145477;
    background-color: #ffffff;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.14);
}

.pdi-button--white:hover {
    color: #103f5a;
    background-color: #eaf8ff;
}

.pdi-button--outline-white {
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.66);
    background-color: transparent;
}

.pdi-button--outline-white:hover {
    color: #145477;
    border-color: #ffffff;
    background-color: #ffffff;
}

/* Hero */

.pdi-hero {
    position: relative;
    padding: 62px 0 82px;
    background:
        radial-gradient(circle at 13% 8%, rgba(171, 222, 249, 0.66), transparent 32%),
        linear-gradient(145deg, #fbfeff 0%, #eaf6fd 100%);
}

.pdi-hero::after {
    position: absolute;
    right: -145px;
    bottom: -185px;
    width: 440px;
    height: 440px;
    border: 1px solid rgba(37, 126, 174, 0.13);
    border-radius: 50%;
    content: "";
}

.pdi-hero__layout {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.07fr) minmax(390px, 0.93fr);
    gap: 62px;
    align-items: center;
}

.pdi-hero__title {
    max-width: 770px;
    margin-bottom: 24px;
    font-size: clamp(52px, 6.45vw, 89px);
    line-height: 0.98;
    letter-spacing: -0.067em;
}

.pdi-hero__lead {
    max-width: 700px;
    margin-bottom: 17px;
    color: #29495e;
    font-size: clamp(21px, 2vw, 27px);
    line-height: 1.43;
}

.pdi-hero__text {
    max-width: 680px;
    margin-bottom: 28px;
    color: #587181;
}

.pdi-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 25px;
}

.pdi-hero__markers {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.pdi-hero__markers span {
    padding: 9px 13px;
    border: 1px solid rgba(31, 107, 150, 0.13);
    border-radius: 999px;
    color: #4f7084;
    background-color: rgba(255, 255, 255, 0.72);
    font-size: 13px;
}

.pdi-hero__visual {
    position: relative;
    min-height: 590px;
    padding: 13px;
    border-radius: 34px;
    background-color: rgba(255, 255, 255, 0.81);
    box-shadow: 0 25px 65px rgba(23, 85, 120, 0.17);
}

.pdi-hero__image {
    min-height: 560px;
    border-radius: 24px;
    object-fit: cover;
}

.pdi-hero__quote {
    position: absolute;
    right: -22px;
    bottom: 92px;
    width: min(370px, 84%);
    padding: 23px 25px;
    border-radius: 20px;
    background-color: #17577d;
    box-shadow: 0 18px 43px rgba(15, 72, 105, 0.26);
}

.pdi-hero__quote p {
    margin-bottom: 0;
    color: #ffffff;
    font-size: 17px;
    line-height: 1.5;
}

.pdi-hero__aside {
    position: absolute;
    bottom: -41px;
    left: -25px;
    width: min(325px, 76%);
    padding: 20px 22px;
    border-radius: 19px;
    background-color: #cceafa;
    box-shadow: 0 16px 38px rgba(24, 84, 117, 0.16);
}

.pdi-hero__aside strong {
    display: block;
    margin-bottom: 6px;
    color: #22688f;
}

.pdi-hero__aside p {
    margin-bottom: 0;
    color: #315b72;
    font-size: 14px;
    line-height: 1.48;
}

/* Opening */

.pdi-opening {
    padding: 94px 0 78px;
    background-color: #ffffff;
}

.pdi-opening__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.75fr) minmax(0, 1.25fr);
    gap: 78px;
    align-items: start;
}

.pdi-opening__heading {
    position: sticky;
    top: 32px;
    padding: 31px;
    border-radius: 23px;
    background-color: #dff2fc;
}

.pdi-opening__heading .pdi-heading {
    margin-bottom: 0;
}

.pdi-opening__content {
    max-width: 740px;
}

.pdi-opening__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.pdi-opening__large {
    color: #27485e;
    font-size: clamp(23px, 2.4vw, 31px);
    line-height: 1.38;
}

.pdi-opening__statement {
    margin-top: 28px;
    padding: 25px 28px;
    border-left: 4px solid #2b84b4;
    border-radius: 0 18px 18px 0;
    background-color: #f0f9fe;
}

.pdi-opening__statement p {
    margin-bottom: 0;
    color: #28536e;
    font-size: 20px;
}

/* Generic header */

.pdi-section-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 0.6fr);
    gap: 48px;
    align-items: end;
    margin-bottom: 38px;
}

.pdi-section-head__intro {
    margin-bottom: 20px;
    color: #5a7383;
}

.pdi-section-head--light .pdi-section-head__intro {
    color: rgba(255, 255, 255, 0.73);
}

/* Pillars */

.pdi-pillars {
    padding: 78px 0;
    background-color: #eff8fd;
}

.pdi-pillars__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 15px;
}

.pdi-pillar {
    min-height: 270px;
    padding: 29px;
    border: 1px solid rgba(34, 104, 144, 0.1);
    border-radius: 22px;
    background-color: #ffffff;
}

.pdi-pillar--deep {
    color: #ffffff;
    border-color: #247aab;
    background-color: #247aab;
}

.pdi-pillar--soft {
    background-color: #dff2fc;
}

.pdi-pillar--wide {
    display: grid;
    grid-column: span 2;
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 24px;
    min-height: 0;
    background-color: #cceafa;
}

.pdi-pillar__number {
    display: block;
    margin-bottom: 36px;
    color: #2479a8;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.13em;
}

.pdi-pillar--deep .pdi-pillar__number {
    color: #caedff;
}

.pdi-pillar--wide .pdi-pillar__number {
    margin-bottom: 0;
    font-size: 20px;
}

.pdi-pillar h3 {
    margin-bottom: 12px;
    font-size: 23px;
}

.pdi-pillar--deep h3 {
    color: #ffffff;
}

.pdi-pillar p {
    margin-bottom: 0;
    color: #5a7281;
    font-size: 17px;
}

.pdi-pillar--deep p {
    color: rgba(255, 255, 255, 0.78);
}

/* Statement */

.pdi-statement {
    padding: 79px 0;
    background-color: #cceafa;
}

.pdi-statement__inner {
    max-width: 1000px;
}

.pdi-statement__small {
    margin-bottom: 12px;
    color: #55778a;
    font-size: clamp(21px, 2.4vw, 29px);
}

.pdi-statement__large {
    max-width: 980px;
    margin-bottom: 0;
    color: #154d70;
    font-size: clamp(41px, 5.25vw, 72px);
    font-weight: 700;
    line-height: 1.04;
    letter-spacing: -0.055em;
}

/* Esteem */

.pdi-esteem {
    padding: 79px 0;
    background-color: #ffffff;
}

.pdi-esteem__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(340px, 0.95fr);
    gap: 66px;
}

.pdi-esteem__content p {
    margin-bottom: 18px;
    color: #587181;
}

.pdi-esteem__scale {
    display: grid;
    gap: 9px;
    align-content: start;
    padding: 27px;
    border-radius: 23px;
    background-color: #e8f6fd;
}

.pdi-esteem__scale-title {
    margin-bottom: 11px;
    color: #1f6087;
    font-size: 20px;
    font-weight: 700;
}

.pdi-esteem__scale article {
    padding: 17px 18px;
    border-radius: 14px;
    background-color: #ffffff;
}

.pdi-esteem__scale span {
    display: block;
    margin-bottom: 5px;
    color: #2879a5;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.pdi-esteem__scale h3 {
    margin-bottom: 0;
    font-size: 16px;
    line-height: 1.35;
}

/* Confidence */

.pdi-confidence {
    padding: 79px 0;
    background-color: #eaf6fd;
}

.pdi-confidence__layout {
    display: grid;
    grid-template-columns: minmax(330px, 0.78fr) minmax(0, 1.22fr);
    gap: 74px;
    align-items: center;
}

.pdi-confidence__visual {
    position: relative;
    padding: 12px;
    border-radius: 29px;
    background-color: #ffffff;
}

.pdi-confidence__image {
    min-height: 485px;
    border-radius: 21px;
    object-fit: cover;
}

.pdi-confidence__caption {
    position: absolute;
    right: -20px;
    bottom: 28px;
    width: min(345px, 84%);
    padding: 21px;
    border-radius: 18px;
    background-color: #175b82;
    box-shadow: 0 17px 40px rgba(18, 70, 101, 0.22);
}

.pdi-confidence__caption p {
    margin-bottom: 0;
    color: #ffffff;
    font-size: 16px;
}

.pdi-confidence__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.pdi-confidence__steps {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin-top: 27px;
}

.pdi-confidence__steps article {
    padding: 17px;
    border-radius: 15px;
    background-color: #ffffff;
}

.pdi-confidence__steps span {
    display: block;
    margin-bottom: 6px;
    color: #2577a4;
    font-size: 12px;
    font-weight: 700;
}

.pdi-confidence__steps h3 {
    margin-bottom: 5px;
    font-size: 17px;
}

.pdi-confidence__steps p {
    margin-bottom: 0;
    color: #5a7281;
    font-size: 14px;
}

/* Emotional intelligence */

.pdi-eq {
    padding: 80px 0;
    color: #ffffff;
    background-color: #17445f;
}

.pdi-eq__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.pdi-eq-card {
    padding: 25px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 19px;
    background-color: rgba(255, 255, 255, 0.07);
}

.pdi-eq-card--wide {
    grid-column: span 2;
    background-color: rgba(88, 181, 228, 0.18);
}

.pdi-eq-card span {
    display: block;
    margin-bottom: 22px;
    color: #bce7fc;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.pdi-eq-card h3 {
    margin-bottom: 10px;
    color: #ffffff;
    font-size: 21px;
}

.pdi-eq-card p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.75);
    font-size: 16px;
}

/* Feedback */

.pdi-feedback {
    padding: 79px 0;
    background-color: #ffffff;
}

.pdi-feedback__layout {
    display: grid;
    grid-template-columns: minmax(300px, 0.72fr) minmax(0, 1.28fr);
    gap: 74px;
    align-items: start;
}

.pdi-feedback__visual {
    position: relative;
}

.pdi-feedback__image {
    min-height: 520px;
    border-radius: 29px;
    object-fit: cover;
    box-shadow: 0 22px 55px rgba(22, 76, 108, 0.17);
}

.pdi-feedback__visual-note {
    position: absolute;
    right: -22px;
    bottom: 31px;
    width: min(340px, 85%);
    padding: 22px;
    border-radius: 18px;
    background-color: #cceafa;
    box-shadow: 0 17px 40px rgba(20, 72, 102, 0.16);
}

.pdi-feedback__visual-note p {
    margin-bottom: 0;
    color: #315b72;
    font-size: 16px;
}

.pdi-feedback__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.pdi-feedback__compare {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin-top: 28px;
}

.pdi-feedback__compare article {
    padding: 18px;
    border-radius: 15px;
}

.pdi-feedback__bad {
    background-color: #eef5f8;
}

.pdi-feedback__good {
    background-color: #dff2fc;
}

.pdi-feedback__compare span {
    display: block;
    margin-bottom: 6px;
    color: #2478a4;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
}

.pdi-feedback__compare p {
    margin-bottom: 0;
    color: #587181;
    font-size: 15px;
}

/* Banner */

.pdi-banner {
    padding: 0 0 79px;
    background-color: #ffffff;
}

.pdi-banner__frame {
    position: relative;
    overflow: hidden;
    min-height: 340px;
    border-radius: 30px;
    box-shadow: 0 22px 55px rgba(22, 75, 106, 0.17);
}

.pdi-banner__image {
    min-height: 340px;
    object-fit: cover;
}

.pdi-banner__frame::after {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        90deg,
        rgba(18, 63, 91, 0.14),
        rgba(18, 63, 91, 0.91)
    );
    content: "";
}

.pdi-banner__overlay {
    position: absolute;
    z-index: 1;
    top: 50%;
    right: 50px;
    width: min(570px, calc(100% - 100px));
    transform: translateY(-50%);
}

.pdi-banner__small {
    margin-bottom: 10px;
    color: #cbefff;
    font-size: 16px;
}

.pdi-banner__large {
    margin-bottom: 0;
    color: #ffffff;
    font-size: clamp(30px, 3.7vw, 50px);
    font-weight: 700;
    line-height: 1.16;
    letter-spacing: -0.04em;
}

/* Thinking */

.pdi-thinking {
    padding: 79px 0;
    background-color: #dff2fc;
}

.pdi-thinking__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.7fr) minmax(0, 1.3fr);
    gap: 70px;
}

.pdi-thinking__heading {
    align-self: start;
    padding: 29px;
    border-radius: 22px;
    background-color: #ffffff;
}

.pdi-thinking__heading > p:last-child {
    margin-bottom: 0;
    color: #587181;
}

.pdi-thinking__content {
    display: grid;
    gap: 11px;
}

.pdi-thinking__content article {
    padding: 22px;
    border-radius: 17px;
    background-color: rgba(255, 255, 255, 0.76);
}

.pdi-thinking__content span {
    display: block;
    margin-bottom: 8px;
    color: #267aa8;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.pdi-thinking__content h3 {
    margin-bottom: 8px;
    font-size: 19px;
}

.pdi-thinking__content p {
    margin-bottom: 0;
    color: #587181;
    font-size: 16px;
}

/* Positive thinking */

.pdi-positive {
    padding: 79px 0;
    background-color: #ffffff;
}

.pdi-positive__header {
    max-width: 840px;
    margin-bottom: 36px;
}

.pdi-positive__header > p:last-child {
    color: #587181;
}

.pdi-positive__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.pdi-positive__grid article {
    min-height: 250px;
    padding: 23px;
    border-radius: 18px;
    background-color: #eef8fd;
}

.pdi-positive__grid article:nth-child(even) {
    background-color: #dff2fc;
}

.pdi-positive__grid span {
    display: block;
    margin-bottom: 28px;
    color: #2578a5;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.pdi-positive__grid h3 {
    margin-bottom: 10px;
    font-size: 19px;
}

.pdi-positive__grid p {
    margin-bottom: 0;
    color: #597181;
    font-size: 15px;
}

.pdi-positive__note {
    margin-top: 14px;
    padding: 24px 27px;
    border-radius: 18px;
    color: #ffffff;
    background-color: #1d678f;
}

.pdi-positive__note p {
    margin-bottom: 0;
    color: #ffffff;
}

/* Creativity */

.pdi-creativity {
    padding: 79px 0;
    background-color: #e8f6fd;
}

.pdi-creativity__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
    gap: 66px;
}

.pdi-creativity__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.pdi-creativity__sequence {
    display: grid;
    gap: 8px;
    margin-top: 27px;
}

.pdi-creativity__sequence article {
    display: grid;
    grid-template-columns: 105px minmax(0, 1fr);
    gap: 15px;
    padding: 15px 18px;
    border-radius: 14px;
    background-color: #ffffff;
}

.pdi-creativity__sequence span {
    color: #226d98;
    font-weight: 700;
}

.pdi-creativity__sequence p {
    margin-bottom: 0;
    color: #587181;
    font-size: 15px;
}

.pdi-creativity__aside {
    padding: 28px;
    border-radius: 22px;
    color: #ffffff;
    background-color: #175b82;
}

.pdi-creativity__aside-label {
    margin-bottom: 17px;
    color: #ffffff;
    font-size: 21px;
    font-weight: 700;
}

.pdi-creativity__aside ul {
    padding-left: 21px;
    margin-bottom: 24px;
}

.pdi-creativity__aside li {
    margin-bottom: 10px;
    color: rgba(255, 255, 255, 0.8);
}

.pdi-creativity__aside p:last-child {
    margin-bottom: 0;
    padding-top: 20px;
    border-top: 1px solid rgba(255, 255, 255, 0.15);
    color: #c6e8f8;
    font-size: 15px;
}

/* Speaking */

.pdi-speaking {
    padding: 79px 0;
    background-color: #ffffff;
}

.pdi-speaking__path {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.pdi-speaking__path article {
    min-height: 270px;
    padding: 23px;
    border-top: 5px solid #2a82b3;
    border-radius: 0 0 18px 18px;
    background-color: #eef8fd;
}

.pdi-speaking__step {
    display: block;
    margin-bottom: 29px;
    color: #2476a2;
    font-size: 12px;
    font-weight: 700;
}

.pdi-speaking__path h3 {
    margin-bottom: 10px;
    font-size: 19px;
}

.pdi-speaking__path p {
    margin-bottom: 0;
    color: #597181;
    font-size: 15px;
}

.pdi-speaking__clarification {
    margin-top: 14px;
    padding: 22px 25px;
    border-radius: 17px;
    background-color: #dff2fc;
}

.pdi-speaking__clarification p {
    margin-bottom: 0;
    color: #41687f;
    font-size: 15px;
}

/* Expression */

.pdi-expression {
    padding: 79px 0;
    background-color: #dff2fc;
}

.pdi-expression__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.72fr) minmax(0, 1.28fr);
    gap: 70px;
}

.pdi-expression__heading {
    align-self: start;
    padding: 29px;
    border-radius: 22px;
    background-color: #ffffff;
}

.pdi-expression__heading > p:last-child {
    margin-bottom: 0;
    color: #587181;
}

.pdi-expression__content {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.pdi-expression__content article {
    padding: 21px;
    border-radius: 17px;
    background-color: rgba(255, 255, 255, 0.77);
}

.pdi-expression__content span {
    display: block;
    margin-bottom: 18px;
    color: #267aa8;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.pdi-expression__content h3 {
    margin-bottom: 8px;
    font-size: 18px;
}

.pdi-expression__content p {
    margin-bottom: 0;
    color: #597181;
    font-size: 15px;
}

.pdi-expression__wide {
    grid-column: span 2;
}

/* Practice */

.pdi-practice {
    padding: 79px 0;
    background-color: #ffffff;
}

.pdi-practice__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(330px, 0.95fr);
    gap: 66px;
}

.pdi-practice__content p {
    margin-bottom: 18px;
    color: #587181;
}

.pdi-practice__tasks {
    padding: 27px;
    border-radius: 22px;
    background-color: #e9f6fd;
}

.pdi-practice__tasks-title {
    margin-bottom: 18px;
    color: #1f6188;
    font-size: 20px;
    font-weight: 700;
}

.pdi-practice__tasks article {
    padding: 16px 17px;
    border-radius: 14px;
    background-color: #ffffff;
}

.pdi-practice__tasks article + article {
    margin-top: 8px;
}

.pdi-practice__tasks span {
    display: block;
    margin-bottom: 5px;
    color: #2879a5;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
}

.pdi-practice__tasks p {
    margin-bottom: 0;
    color: #587181;
    font-size: 15px;
}

/* Visual break */

.pdi-visual-break {
    padding: 0 0 79px;
    background-color: #ffffff;
}

.pdi-visual-break__frame {
    position: relative;
    overflow: hidden;
    min-height: 290px;
    border-radius: 29px;
    box-shadow: 0 22px 54px rgba(24, 80, 111, 0.17);
}

.pdi-visual-break__image {
    min-height: 290px;
    object-fit: cover;
}

.pdi-visual-break__frame::after {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        90deg,
        rgba(16, 61, 88, 0.14),
        rgba(16, 61, 88, 0.91)
    );
    content: "";
}

.pdi-visual-break__text {
    position: absolute;
    z-index: 1;
    top: 50%;
    right: 48px;
    width: min(560px, calc(100% - 96px));
    transform: translateY(-50%);
}

.pdi-visual-break__text p {
    margin-bottom: 0;
    color: #ffffff;
    font-size: clamp(27px, 3.2vw, 43px);
    line-height: 1.24;
}

/* Benefits */

.pdi-benefits {
    padding: 79px 0;
    background-color: #eef8fd;
}

.pdi-benefits__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.pdi-benefits__grid article {
    min-height: 230px;
    padding: 23px;
    border-radius: 18px;
    background-color: #ffffff;
}

.pdi-benefits__grid span {
    display: block;
    margin-bottom: 27px;
    color: #2679a6;
    font-size: 12px;
    font-weight: 700;
}

.pdi-benefits__grid h3 {
    margin-bottom: 9px;
    font-size: 19px;
}

.pdi-benefits__grid p {
    margin-bottom: 0;
    color: #597181;
    font-size: 15px;
}

/* Boundaries */

.pdi-boundaries {
    padding: 80px 0;
    color: #ffffff;
    background-color: #133f5a;
}

.pdi-boundaries__header {
    max-width: 850px;
    margin-bottom: 35px;
}

.pdi-boundaries__header p:last-child {
    color: rgba(255, 255, 255, 0.73);
}

.pdi-boundaries__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.pdi-boundaries-card {
    padding: 28px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 20px;
    background-color: rgba(255, 255, 255, 0.07);
}

.pdi-boundaries-card--support {
    background-color: rgba(91, 183, 228, 0.18);
}

.pdi-boundaries-card h3 {
    margin-bottom: 17px;
    color: #ffffff;
    font-size: 23px;
}

.pdi-boundaries-card ul {
    padding-left: 21px;
    margin-bottom: 0;
}

.pdi-boundaries-card li {
    margin-bottom: 9px;
    color: rgba(255, 255, 255, 0.78);
}

.pdi-boundaries__note {
    margin-top: 15px;
    margin-bottom: 0;
    padding: 23px 26px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 18px;
    color: #bfe3f7;
    background-color: rgba(255, 255, 255, 0.05);
    font-size: 15px;
}

/* Start */

.pdi-start {
    padding: 79px 0;
    background-color: #dff2fc;
}

.pdi-start__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.7fr) minmax(0, 1.3fr);
    gap: 72px;
}

.pdi-start__heading {
    align-self: start;
    padding: 28px;
    border-radius: 21px;
    background-color: #ffffff;
}

.pdi-start__heading > p:last-child {
    margin-bottom: 0;
    color: #597181;
}

.pdi-start__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.pdi-start__phrases {
    display: grid;
    gap: 8px;
    margin: 24px 0;
}

.pdi-start__phrases p {
    margin-bottom: 0;
    padding: 15px 18px;
    border-radius: 14px;
    color: #225f82;
    background-color: rgba(255, 255, 255, 0.78);
}

/* FAQ */

.pdi-faq {
    padding: 79px 0;
    background-color: #ffffff;
}

.pdi-faq__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
}

.pdi-faq-item {
    padding: 24px;
    border: 1px solid rgba(31, 103, 144, 0.09);
    border-radius: 18px;
    background-color: #f2f9fd;
}

.pdi-faq-item:nth-child(3n + 2) {
    background-color: #dff1fb;
}

.pdi-faq-item h3 {
    margin-bottom: 10px;
    font-size: 20px;
    line-height: 1.25;
}

.pdi-faq-item p {
    margin-bottom: 0;
    color: #587181;
    font-size: 16px;
}

/* Final thought */

.pdi-final-thought {
    padding: 79px 0;
    background-color: #cceafa;
}

.pdi-final-thought__inner {
    max-width: 1000px;
}

.pdi-final-thought__inner > p {
    margin-bottom: 12px;
    color: #57778a;
    font-size: clamp(21px, 2.5vw, 30px);
}

.pdi-final-thought h2 {
    max-width: 980px;
    margin-bottom: 0;
    color: #154d70;
    font-size: clamp(40px, 5.2vw, 70px);
    line-height: 1.04;
    letter-spacing: -0.055em;
}

/* Final */

.pdi-final {
    padding: 79px 0;
    background-color: #eef8fd;
}

.pdi-final__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.22fr) minmax(290px, 0.78fr);
    gap: 45px;
    padding: 49px;
    border-radius: 31px;
    color: #ffffff;
    background:
        radial-gradient(circle at 84% 16%, rgba(123, 206, 247, 0.28), transparent 35%),
        #17577d;
    box-shadow: 0 23px 58px rgba(20, 77, 111, 0.22);
}

.pdi-final__title {
    margin-bottom: 21px;
    color: #ffffff;
    font-size: clamp(43px, 5.5vw, 72px);
    line-height: 1.02;
    letter-spacing: -0.055em;
}

.pdi-final__content > p:not(.pdi-label) {
    max-width: 730px;
    margin-bottom: 21px;
    color: rgba(255, 255, 255, 0.76);
}

.pdi-final__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 11px;
    margin: 27px 0 25px;
}

.pdi-final__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.pdi-final__tags span {
    padding: 8px 12px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 999px;
    color: rgba(255, 255, 255, 0.76);
    font-size: 13px;
}

.pdi-final__aside {
    align-self: end;
    padding: 25px;
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 19px;
    background-color: rgba(255, 255, 255, 0.08);
}

.pdi-final__aside-label {
    margin-bottom: 12px;
    color: #c5e9fb;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.pdi-final__aside a {
    display: inline-block;
    margin-bottom: 16px;
    color: #ffffff;
    font-size: 18px;
    font-weight: 700;
    text-decoration-color: rgba(255, 255, 255, 0.45);
    text-underline-offset: 4px;
}

.pdi-final__aside p:last-child {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.7);
    font-size: 15px;
}

/* Tablet */

@media (max-width: 1040px) {
    .pdi-hero__layout {
        grid-template-columns: minmax(0, 1fr) minmax(350px, 0.86fr);
        gap: 44px;
    }

    .pdi-positive__grid,
    .pdi-speaking__path {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .pdi-hero__layout,
    .pdi-opening__layout,
    .pdi-esteem__layout,
    .pdi-confidence__layout,
    .pdi-feedback__layout,
    .pdi-thinking__layout,
    .pdi-creativity__layout,
    .pdi-expression__layout,
    .pdi-practice__layout,
    .pdi-start__layout,
    .pdi-final__layout {
        grid-template-columns: 1fr;
    }

    .pdi-opening__heading {
        position: static;
    }

    .pdi-hero__visual,
    .pdi-confidence__visual,
    .pdi-feedback__visual {
        max-width: 760px;
    }

    .pdi-final__aside {
        max-width: 620px;
    }
}

/* Mobile */

@media (max-width: 760px) {
    .pdi-page {
        font-size: 17px;
    }

    .pdi-shell {
        width: calc(100% - 32px);
    }

    .pdi-hero,
    .pdi-opening,
    .pdi-pillars,
    .pdi-statement,
    .pdi-esteem,
    .pdi-confidence,
    .pdi-eq,
    .pdi-feedback,
    .pdi-thinking,
    .pdi-positive,
    .pdi-creativity,
    .pdi-speaking,
    .pdi-expression,
    .pdi-practice,
    .pdi-benefits,
    .pdi-boundaries,
    .pdi-start,
    .pdi-faq,
    .pdi-final-thought,
    .pdi-final {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .pdi-section-head {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .pdi-pillars__grid,
    .pdi-eq__grid,
    .pdi-feedback__compare,
    .pdi-expression__content,
    .pdi-benefits__grid,
    .pdi-boundaries__grid,
    .pdi-faq__grid {
        grid-template-columns: 1fr;
    }

    .pdi-pillar--wide,
    .pdi-eq-card--wide,
    .pdi-expression__wide {
        grid-column: auto;
    }

    .pdi-pillar--wide {
        grid-template-columns: 1fr;
    }

    .pdi-confidence__caption,
    .pdi-feedback__visual-note {
        position: relative;
        right: auto;
        bottom: auto;
        width: calc(100% - 28px);
        margin: -31px auto 0;
    }

    .pdi-banner__frame,
    .pdi-banner__image,
    .pdi-visual-break__frame,
    .pdi-visual-break__image {
        min-height: 370px;
    }

    .pdi-banner__frame::after,
    .pdi-visual-break__frame::after {
        background: linear-gradient(
            0deg,
            rgba(18, 63, 91, 0.96),
            rgba(18, 63, 91, 0.12)
        );
    }

    .pdi-banner__overlay,
    .pdi-visual-break__text {
        top: auto;
        right: 26px;
        bottom: 28px;
        left: 26px;
        width: auto;
        transform: none;
    }

    .pdi-final__layout {
        padding: 34px;
    }
}

@media (max-width: 560px) {
    .pdi-page {
        font-size: 16px;
        line-height: 1.6;
    }

    .pdi-shell {
        width: calc(100% - 24px);
    }

    .pdi-label,
    .pdi-eyebrow {
        margin-bottom: 10px;
        font-size: 11px;
    }

    .pdi-heading {
        margin-bottom: 18px;
        font-size: clamp(31px, 9.8vw, 44px);
    }

    .pdi-hero {
        padding-top: 38px;
        padding-bottom: 70px;
    }

    .pdi-hero__layout {
        gap: 50px;
    }

    .pdi-hero__title {
        font-size: clamp(43px, 13vw, 60px);
    }

    .pdi-hero__lead {
        font-size: 19px;
    }

    .pdi-hero__actions,
    .pdi-final__actions {
        flex-direction: column;
    }

    .pdi-hero__actions .pdi-button,
    .pdi-final__actions .pdi-button {
        width: 100%;
    }

    .pdi-hero__visual {
        min-height: 0;
        padding: 9px;
        border-radius: 22px;
    }

    .pdi-hero__image {
        min-height: 340px;
        border-radius: 16px;
    }

    .pdi-hero__quote,
    .pdi-hero__aside {
        position: relative;
        right: auto;
        bottom: auto;
        left: auto;
        width: calc(100% - 26px);
        margin-right: auto;
        margin-left: auto;
    }

    .pdi-hero__quote {
        margin-top: -25px;
    }

    .pdi-hero__aside {
        margin-top: 10px;
    }

    .pdi-opening,
    .pdi-pillars,
    .pdi-statement,
    .pdi-esteem,
    .pdi-confidence,
    .pdi-eq,
    .pdi-feedback,
    .pdi-thinking,
    .pdi-positive,
    .pdi-creativity,
    .pdi-speaking,
    .pdi-expression,
    .pdi-practice,
    .pdi-benefits,
    .pdi-boundaries,
    .pdi-start,
    .pdi-faq,
    .pdi-final-thought,
    .pdi-final {
        padding-top: 52px;
        padding-bottom: 52px;
    }

    .pdi-opening__heading,
    .pdi-thinking__heading,
    .pdi-expression__heading,
    .pdi-start__heading {
        padding: 22px;
        border-radius: 18px;
    }

    .pdi-pillar,
    .pdi-eq-card,
    .pdi-faq-item {
        min-height: 0;
        padding: 21px;
        border-radius: 17px;
    }

    .pdi-confidence__image,
    .pdi-feedback__image {
        min-height: 385px;
        border-radius: 21px;
    }

    .pdi-confidence__steps {
        grid-template-columns: 1fr;
    }

    .pdi-positive__grid,
    .pdi-speaking__path {
        grid-template-columns: 1fr;
    }

    .pdi-positive__grid article,
    .pdi-speaking__path article {
        min-height: 0;
    }

    .pdi-creativity__sequence article {
        grid-template-columns: 1fr;
        gap: 5px;
    }

    .pdi-banner,
    .pdi-visual-break {
        padding-top: 0;
    }

    .pdi-banner__large {
        font-size: 28px;
    }

    .pdi-visual-break__text p {
        font-size: 26px;
    }

    .pdi-final__layout {
        padding: 25px 21px;
        border-radius: 22px;
    }

    .pdi-final__title {
        font-size: clamp(38px, 11.5vw, 52px);
    }
}

@media (max-width: 375px) {
    .pdi-shell {
        width: calc(100% - 20px);
    }

    .pdi-hero__title {
        font-size: 42px;
    }

    .pdi-button {
        min-height: 50px;
        padding-right: 16px;
        padding-left: 16px;
        font-size: 15px;
    }

    .pdi-hero__image {
        min-height: 310px;
    }

    .pdi-pillar,
    .pdi-eq-card,
    .pdi-faq-item {
        padding-right: 18px;
        padding-left: 18px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .pdi-page *,
    .pdi-page *::before,
    .pdi-page *::after {
        animation-duration: 0.01ms;
        animation-iteration-count: 1;
        scroll-behavior: auto;
        transition-duration: 0.01ms;
    }

    .pdi-button:hover {
        transform: none;
    }
}

_____________________________________________________________________________________
страница 11 Преимущества онлайн-общения

.oco-page {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
    color: #213847;
    background-color: #ffffff;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 18px;
    line-height: 1.66;
}

.oco-page *,
.oco-page *::before,
.oco-page *::after {
    box-sizing: border-box;
}

.oco-page section,
.oco-page div,
.oco-page article,
.oco-page aside,
.oco-page picture {
    min-width: 0;
}

.oco-page img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
}

.oco-page h1,
.oco-page h2,
.oco-page h3,
.oco-page p,
.oco-page ul {
    margin-top: 0;
}

.oco-page h1,
.oco-page h2,
.oco-page h3 {
    color: #173f59;
    font-weight: 700;
    line-height: 1.1;
    text-wrap: balance;
}

.oco-page p,
.oco-page li {
    text-wrap: pretty;
}

.oco-shell {
    width: calc(100% - 48px);
    max-width: 1200px;
    margin-right: auto;
    margin-left: auto;
}

.oco-label,
.oco-eyebrow {
    margin-bottom: 13px;
    color: #287aa5;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.115em;
    text-transform: uppercase;
}

.oco-label--light {
    color: #c8edff;
}

.oco-heading {
    margin-bottom: 21px;
    font-size: clamp(36px, 4.15vw, 59px);
    line-height: 1.05;
    letter-spacing: -0.046em;
}

.oco-heading--light {
    color: #ffffff;
}

.oco-text-link {
    color: #1c709f;
    font-weight: 700;
    text-decoration-color: rgba(28, 112, 159, 0.42);
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;
    transition:
        color 160ms ease,
        text-decoration-color 160ms ease;
}

.oco-text-link:hover {
    color: #13577d;
    text-decoration-color: currentColor;
}

.oco-button {
    display: inline-flex;
    min-height: 52px;
    align-items: center;
    justify-content: center;
    padding: 14px 24px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    transition:
        transform 180ms ease,
        color 180ms ease,
        background-color 180ms ease,
        border-color 180ms ease,
        box-shadow 180ms ease;
}

.oco-button:hover {
    transform: translateY(-2px);
}

.oco-button:focus-visible,
.oco-text-link:focus-visible,
.oco-final__aside a:focus-visible {
    outline: 3px solid rgba(39, 130, 181, 0.42);
    outline-offset: 4px;
}

.oco-button--primary {
    color: #ffffff;
    background-color: #247eae;
    box-shadow: 0 12px 28px rgba(27, 101, 143, 0.25);
}

.oco-button--primary:hover {
    color: #ffffff;
    background-color: #175c84;
    box-shadow: 0 16px 36px rgba(22, 91, 131, 0.3);
}

.oco-button--outline {
    color: #1e638b;
    border-color: rgba(31, 111, 159, 0.35);
    background-color: rgba(255, 255, 255, 0.76);
}

.oco-button--outline:hover {
    color: #144c6c;
    border-color: #2a85b6;
    background-color: #e9f6fd;
}

.oco-button--white {
    color: #145477;
    background-color: #ffffff;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.14);
}

.oco-button--white:hover {
    color: #103f5a;
    background-color: #eaf8ff;
}

.oco-button--outline-white {
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.66);
    background-color: transparent;
}

.oco-button--outline-white:hover {
    color: #145477;
    border-color: #ffffff;
    background-color: #ffffff;
}

/* Hero */

.oco-hero {
    position: relative;
    padding: 62px 0 84px;
    background:
        linear-gradient(
            120deg,
            rgba(255, 255, 255, 0.96) 0%,
            rgba(239, 249, 254, 0.96) 48%,
            rgba(211, 237, 250, 0.96) 100%
        );
}

.oco-hero::before,
.oco-hero::after {
    position: absolute;
    border-radius: 50%;
    content: "";
    pointer-events: none;
}

.oco-hero::before {
    top: -120px;
    right: 4%;
    width: 340px;
    height: 340px;
    background-color: rgba(115, 195, 236, 0.11);
}

.oco-hero::after {
    bottom: -190px;
    left: -170px;
    width: 430px;
    height: 430px;
    border: 1px solid rgba(37, 126, 174, 0.13);
}

.oco-hero__layout {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.07fr) minmax(390px, 0.93fr);
    gap: 62px;
    align-items: center;
}

.oco-hero__title {
    max-width: 760px;
    margin-bottom: 24px;
    font-size: clamp(53px, 6.5vw, 90px);
    line-height: 0.98;
    letter-spacing: -0.067em;
}

.oco-hero__lead {
    max-width: 700px;
    margin-bottom: 17px;
    color: #29495e;
    font-size: clamp(21px, 2vw, 27px);
    line-height: 1.43;
}

.oco-hero__text {
    max-width: 680px;
    margin-bottom: 28px;
    color: #587181;
}

.oco-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 28px;
}

.oco-hero__facts {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 9px;
}

.oco-hero__facts article {
    padding: 15px;
    border: 1px solid rgba(31, 107, 150, 0.12);
    border-radius: 15px;
    background-color: rgba(255, 255, 255, 0.68);
}

.oco-hero__facts span {
    display: block;
    margin-bottom: 6px;
    color: #2679a6;
    font-size: 12px;
    font-weight: 700;
}

.oco-hero__facts p {
    margin-bottom: 0;
    color: #557184;
    font-size: 13px;
    line-height: 1.45;
}

.oco-hero__visual {
    position: relative;
    min-height: 590px;
    padding: 13px;
    border-radius: 34px;
    background-color: rgba(255, 255, 255, 0.84);
    box-shadow: 0 25px 65px rgba(23, 85, 120, 0.17);
}

.oco-hero__image {
    min-height: 560px;
    border-radius: 24px;
    object-fit: cover;
}

.oco-hero__quote {
    position: absolute;
    right: -22px;
    bottom: 91px;
    width: min(370px, 84%);
    padding: 23px 25px;
    border-radius: 20px;
    background-color: #17577d;
    box-shadow: 0 18px 43px rgba(15, 72, 105, 0.26);
}

.oco-hero__quote p {
    margin-bottom: 0;
    color: #ffffff;
    font-size: 17px;
    line-height: 1.5;
}

.oco-hero__connection {
    position: absolute;
    bottom: -36px;
    left: -24px;
    display: flex;
    width: min(315px, 76%);
    align-items: center;
    gap: 11px;
    padding: 19px 21px;
    border-radius: 18px;
    background-color: #cceafa;
    box-shadow: 0 16px 38px rgba(24, 84, 117, 0.16);
}

.oco-hero__connection-dot {
    width: 11px;
    height: 11px;
    flex: 0 0 auto;
    border: 3px solid #ffffff;
    border-radius: 50%;
    background-color: #2885b6;
    box-shadow: 0 0 0 3px rgba(40, 133, 182, 0.2);
}

.oco-hero__connection p {
    margin-bottom: 0;
    color: #315b72;
    font-size: 14px;
    font-weight: 700;
}

/* Opening */

.oco-opening {
    padding: 94px 0 78px;
    background-color: #ffffff;
}

.oco-opening__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.75fr) minmax(0, 1.25fr);
    gap: 78px;
    align-items: start;
}

.oco-opening__heading {
    position: sticky;
    top: 32px;
    padding: 31px;
    border-radius: 23px;
    background-color: #dff2fc;
}

.oco-opening__heading .oco-heading {
    margin-bottom: 0;
}

.oco-opening__content {
    max-width: 740px;
}

.oco-opening__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.oco-opening__large {
    color: #27485e;
    font-size: clamp(23px, 2.4vw, 31px);
    line-height: 1.38;
}

.oco-opening__accent {
    margin-top: 28px;
    padding: 25px 28px;
    border-left: 4px solid #2b84b4;
    border-radius: 0 18px 18px 0;
    background-color: #f0f9fe;
}

.oco-opening__accent p {
    margin-bottom: 0;
    color: #28536e;
    font-size: 20px;
}

/* Shared section header */

.oco-section-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 0.6fr);
    gap: 48px;
    align-items: end;
    margin-bottom: 38px;
}

.oco-section-head__intro {
    margin-bottom: 20px;
    color: #5a7383;
}

.oco-section-head--light .oco-section-head__intro {
    color: rgba(255, 255, 255, 0.73);
}

/* Benefits */

.oco-benefits {
    padding: 78px 0;
    background-color: #eff8fd;
}

.oco-benefits__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 15px;
}

.oco-benefit {
    min-height: 270px;
    padding: 29px;
    border: 1px solid rgba(34, 104, 144, 0.1);
    border-radius: 22px;
    background-color: #ffffff;
}

.oco-benefit--deep {
    color: #ffffff;
    border-color: #247aab;
    background-color: #247aab;
}

.oco-benefit--soft {
    background-color: #dff2fc;
}

.oco-benefit--wide {
    display: grid;
    grid-column: span 2;
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 24px;
    min-height: 0;
    background-color: #cceafa;
}

.oco-benefit__number {
    display: block;
    margin-bottom: 36px;
    color: #2479a8;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.13em;
}

.oco-benefit--deep .oco-benefit__number {
    color: #caedff;
}

.oco-benefit--wide .oco-benefit__number {
    margin-bottom: 0;
    font-size: 20px;
}

.oco-benefit h3 {
    margin-bottom: 12px;
    font-size: 23px;
}

.oco-benefit--deep h3 {
    color: #ffffff;
}

.oco-benefit p {
    margin-bottom: 0;
    color: #5a7281;
    font-size: 17px;
}

.oco-benefit--deep p {
    color: rgba(255, 255, 255, 0.78);
}

/* Statement */

.oco-statement {
    padding: 79px 0;
    background-color: #cceafa;
}

.oco-statement__inner {
    max-width: 1000px;
}

.oco-statement__small {
    margin-bottom: 12px;
    color: #55778a;
    font-size: clamp(21px, 2.4vw, 29px);
}

.oco-statement__large {
    max-width: 980px;
    margin-bottom: 0;
    color: #154d70;
    font-size: clamp(41px, 5.25vw, 72px);
    font-weight: 700;
    line-height: 1.04;
    letter-spacing: -0.055em;
}

/* Comparison */

.oco-comparison {
    padding: 79px 0;
    background-color: #ffffff;
}

.oco-comparison__table {
    overflow: hidden;
    border: 1px solid rgba(31, 104, 144, 0.13);
    border-radius: 23px;
}

.oco-comparison__header,
.oco-comparison__row {
    display: grid;
    grid-template-columns: minmax(170px, 0.72fr) repeat(2, minmax(0, 1fr));
    gap: 0;
}

.oco-comparison__header {
    color: #ffffff;
    background-color: #175c84;
}

.oco-comparison__header span {
    padding: 18px 21px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.oco-comparison__row:nth-child(odd) {
    background-color: #f0f9fe;
}

.oco-comparison__row:nth-child(even) {
    background-color: #ffffff;
}

.oco-comparison__row h3,
.oco-comparison__row p {
    margin-bottom: 0;
    padding: 22px;
    border-right: 1px solid rgba(31, 104, 144, 0.1);
}

.oco-comparison__row > *:last-child {
    border-right: 0;
}

.oco-comparison__row h3 {
    font-size: 18px;
}

.oco-comparison__row p {
    color: #587181;
    font-size: 15px;
}

.oco-comparison__note {
    margin-top: 15px;
    padding: 23px 26px;
    border-radius: 18px;
    background-color: #dff2fc;
}

.oco-comparison__note p {
    margin-bottom: 0;
    color: #41687f;
}

/* Video */

.oco-video {
    padding: 79px 0;
    background-color: #eaf6fd;
}

.oco-video__layout {
    display: grid;
    grid-template-columns: minmax(330px, 0.78fr) minmax(0, 1.22fr);
    gap: 74px;
    align-items: start;
}

.oco-video__visual {
    position: relative;
}

.oco-video__image {
    min-height: 550px;
    border-radius: 30px;
    object-fit: cover;
    box-shadow: 0 22px 55px rgba(22, 76, 108, 0.17);
}

.oco-video__caption {
    position: absolute;
    right: -22px;
    bottom: 30px;
    width: min(345px, 84%);
    padding: 22px;
    border-radius: 18px;
    background-color: #ffffff;
    box-shadow: 0 17px 40px rgba(20, 72, 102, 0.16);
}

.oco-video__caption p {
    margin-bottom: 0;
    color: #315b72;
    font-size: 16px;
}

.oco-video__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.oco-video__cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin-top: 27px;
}

.oco-video__cards article {
    padding: 18px;
    border-radius: 15px;
    background-color: #ffffff;
}

.oco-video__cards span {
    display: block;
    margin-bottom: 7px;
    color: #2678a5;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.oco-video__cards h3 {
    margin-bottom: 6px;
    font-size: 17px;
}

.oco-video__cards p {
    margin-bottom: 0;
    color: #597181;
    font-size: 14px;
}

/* Distance */

.oco-distance {
    padding: 79px 0;
    background-color: #ffffff;
}

.oco-distance__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.7fr) minmax(0, 1.3fr);
    gap: 70px;
}

.oco-distance__heading {
    align-self: start;
    padding: 29px;
    border-radius: 22px;
    background-color: #dff2fc;
}

.oco-distance__heading > p:last-child {
    margin-bottom: 0;
    color: #587181;
}

.oco-distance__content {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.oco-distance__content article {
    padding: 22px;
    border-radius: 17px;
    background-color: #f2f9fd;
}

.oco-distance__content span {
    display: block;
    margin-bottom: 20px;
    color: #2679a6;
    font-size: 12px;
    font-weight: 700;
}

.oco-distance__content h3 {
    margin-bottom: 9px;
    font-size: 19px;
}

.oco-distance__content p {
    margin-bottom: 0;
    color: #597181;
    font-size: 15px;
}

/* Geography */

.oco-geography {
    padding: 79px 0;
    background-color: #dff2fc;
}

.oco-geography__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(350px, 0.92fr);
    gap: 66px;
    align-items: center;
}

.oco-geography__content p {
    margin-bottom: 18px;
    color: #587181;
}

.oco-geography__visual {
    position: relative;
    padding: 11px;
    border-radius: 28px;
    background-color: #ffffff;
}

.oco-geography__image {
    min-height: 490px;
    border-radius: 20px;
    object-fit: cover;
}

.oco-geography__zones {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 13px;
}

.oco-geography__zones span {
    padding: 8px 11px;
    border-radius: 999px;
    color: #24668d;
    background-color: #e5f4fb;
    font-size: 12px;
}

.oco-geography__note {
    margin: 14px 2px 2px;
    color: #587181;
    font-size: 14px;
}

/* Banner */

.oco-banner {
    padding: 79px 0;
    background-color: #ffffff;
}

.oco-banner__frame {
    position: relative;
    overflow: hidden;
    min-height: 350px;
    border-radius: 30px;
    box-shadow: 0 22px 55px rgba(22, 75, 106, 0.17);
}

.oco-banner__image {
    min-height: 350px;
    object-fit: cover;
}

.oco-banner__frame::after {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        90deg,
        rgba(18, 63, 91, 0.13),
        rgba(18, 63, 91, 0.92)
    );
    content: "";
}

.oco-banner__content {
    position: absolute;
    z-index: 1;
    top: 50%;
    right: 50px;
    width: min(590px, calc(100% - 100px));
    transform: translateY(-50%);
}

.oco-banner__small {
    margin-bottom: 10px;
    color: #cbefff;
    font-size: 16px;
}

.oco-banner__large {
    margin-bottom: 0;
    color: #ffffff;
    font-size: clamp(30px, 3.7vw, 50px);
    font-weight: 700;
    line-height: 1.16;
    letter-spacing: -0.04em;
}

/* Mobility */

.oco-mobility {
    padding: 79px 0;
    background-color: #eef8fd;
}

.oco-mobility__layout {
    display: grid;
    grid-template-columns: minmax(300px, 0.72fr) minmax(0, 1.28fr);
    gap: 74px;
    align-items: start;
}

.oco-mobility__visual {
    position: relative;
}

.oco-mobility__image {
    min-height: 520px;
    border-radius: 29px;
    object-fit: cover;
    box-shadow: 0 22px 55px rgba(22, 76, 108, 0.17);
}

.oco-mobility__visual-note {
    position: absolute;
    right: -22px;
    bottom: 31px;
    width: min(345px, 85%);
    padding: 22px;
    border-radius: 18px;
    background-color: #cceafa;
    box-shadow: 0 17px 40px rgba(20, 72, 102, 0.16);
}

.oco-mobility__visual-note p {
    margin-bottom: 0;
    color: #315b72;
    font-size: 16px;
}

.oco-mobility__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.oco-mobility__features {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin-top: 27px;
}

.oco-mobility__features article {
    padding: 18px;
    border-radius: 15px;
    background-color: #ffffff;
}

.oco-mobility__features h3 {
    margin-bottom: 6px;
    font-size: 17px;
}

.oco-mobility__features p {
    margin-bottom: 0;
    color: #597181;
    font-size: 14px;
}

/* Real life */

.oco-real-life {
    padding: 79px 0;
    background-color: #ffffff;
}

.oco-real-life__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
}

.oco-real-life__card {
    min-height: 280px;
    padding: 27px;
    border: 1px solid rgba(31, 104, 144, 0.1);
    border-radius: 20px;
    background-color: #f2f9fd;
}

.oco-real-life__card--blue {
    color: #ffffff;
    border-color: #247dab;
    background-color: #247dab;
}

.oco-real-life__card--soft {
    background-color: #dff2fc;
}

.oco-real-life__card span {
    display: block;
    margin-bottom: 28px;
    color: #2679a6;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.oco-real-life__card--blue span {
    color: #cbedff;
}

.oco-real-life__card h3 {
    margin-bottom: 11px;
    font-size: 21px;
}

.oco-real-life__card--blue h3 {
    color: #ffffff;
}

.oco-real-life__card p {
    margin-bottom: 0;
    color: #597181;
    font-size: 16px;
}

.oco-real-life__card--blue p {
    color: rgba(255, 255, 255, 0.78);
}

.oco-real-life__conclusion {
    margin-top: 14px;
    padding: 24px 27px;
    border-radius: 18px;
    color: #ffffff;
    background-color: #1d678f;
}

.oco-real-life__conclusion p {
    margin-bottom: 0;
    color: #ffffff;
}

/* Social connections */

.oco-social {
    padding: 79px 0;
    background-color: #dff2fc;
}

.oco-social__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.7fr) minmax(0, 1.3fr);
    gap: 70px;
}

.oco-social__heading {
    align-self: start;
    padding: 29px;
    border-radius: 22px;
    background-color: #ffffff;
}

.oco-social__heading > p:last-child {
    margin-bottom: 0;
    color: #587181;
}

.oco-social__cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.oco-social__cards article {
    padding: 21px;
    border-radius: 17px;
    background-color: rgba(255, 255, 255, 0.78);
}

.oco-social__cards span {
    display: block;
    margin-bottom: 18px;
    color: #267aa8;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.oco-social__cards h3 {
    margin-bottom: 8px;
    font-size: 18px;
}

.oco-social__cards p {
    margin-bottom: 0;
    color: #597181;
    font-size: 15px;
}

.oco-social__link {
    grid-column: 2;
    margin: 8px 0 0;
    color: #557181;
}

/* Technology */

.oco-technology {
    padding: 79px 0;
    background-color: #ffffff;
}

.oco-technology__header {
    max-width: 850px;
    margin-bottom: 36px;
}

.oco-technology__header > p:last-child {
    color: #587181;
}

.oco-technology__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.oco-technology__grid article {
    min-height: 230px;
    padding: 23px;
    border-radius: 18px;
    background-color: #eef8fd;
}

.oco-technology__grid article:nth-child(2n) {
    background-color: #dff2fc;
}

.oco-technology__icon {
    display: flex;
    width: 45px;
    height: 45px;
    align-items: center;
    justify-content: center;
    margin-bottom: 27px;
    border-radius: 50%;
    color: #ffffff;
    background-color: #247eae;
    font-size: 12px;
    font-weight: 700;
}

.oco-technology__grid h3 {
    margin-bottom: 9px;
    font-size: 19px;
}

.oco-technology__grid p {
    margin-bottom: 0;
    color: #597181;
    font-size: 15px;
}

/* Formats */

.oco-formats {
    padding: 79px 0;
    background-color: #eef8fd;
}

.oco-formats__layout {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    gap: 66px;
}

.oco-formats__content p {
    margin-bottom: 18px;
    color: #587181;
}

.oco-formats__options {
    display: grid;
    gap: 11px;
}

.oco-format-card {
    padding: 23px;
    border-radius: 18px;
    background-color: #ffffff;
}

.oco-format-card--blue {
    color: #ffffff;
    background-color: #1d678f;
}

.oco-format-card > span {
    display: block;
    margin-bottom: 15px;
    color: #2679a6;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.oco-format-card--blue > span {
    color: #c7ecff;
}

.oco-format-card h3 {
    margin-bottom: 11px;
    font-size: 20px;
}

.oco-format-card--blue h3 {
    color: #ffffff;
}

.oco-format-card ul {
    padding-left: 20px;
    margin-bottom: 0;
}

.oco-format-card li {
    margin-bottom: 6px;
    color: #597181;
    font-size: 15px;
}

.oco-format-card--blue li {
    color: rgba(255, 255, 255, 0.8);
}

/* Safety */

.oco-safety {
    padding: 80px 0;
    color: #ffffff;
    background-color: #17445f;
}

.oco-safety__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.oco-safety__grid article {
    padding: 24px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 18px;
    background-color: rgba(255, 255, 255, 0.07);
}

.oco-safety__grid span {
    display: block;
    margin-bottom: 18px;
    color: #bce7fc;
    font-size: 12px;
    font-weight: 700;
}

.oco-safety__grid h3 {
    margin-bottom: 9px;
    color: #ffffff;
    font-size: 19px;
}

.oco-safety__grid p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.75);
    font-size: 15px;
}

/* Limitations */

.oco-limitations {
    padding: 79px 0;
    background-color: #ffffff;
}

.oco-limitations__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.7fr) minmax(0, 1.3fr);
    gap: 70px;
}

.oco-limitations__heading {
    align-self: start;
    padding: 29px;
    border-radius: 22px;
    background-color: #dff2fc;
}

.oco-limitations__content {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.oco-limitations__content article {
    padding: 21px;
    border-left: 4px solid #2a82b3;
    border-radius: 0 16px 16px 0;
    background-color: #f2f9fd;
}

.oco-limitations__content h3 {
    margin-bottom: 8px;
    font-size: 18px;
}

.oco-limitations__content p {
    margin-bottom: 0;
    color: #597181;
    font-size: 15px;
}

/* Future */

.oco-future {
    padding: 79px 0;
    background-color: #dff2fc;
}

.oco-future__header {
    max-width: 860px;
    margin-bottom: 37px;
}

.oco-future__header > p:last-child {
    color: #587181;
}

.oco-future__timeline {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 11px;
}

.oco-future__timeline article {
    min-height: 300px;
    padding: 22px;
    border-top: 5px solid #2a82b3;
    border-radius: 0 0 18px 18px;
    background-color: #ffffff;
}

.oco-future__timeline span {
    display: block;
    margin-bottom: 28px;
    color: #2678a5;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
}

.oco-future__timeline h3 {
    margin-bottom: 10px;
    font-size: 18px;
}

.oco-future__timeline p {
    margin-bottom: 0;
    color: #597181;
    font-size: 14px;
}

.oco-future__conclusion {
    margin-top: 14px;
    padding: 25px 28px;
    border-radius: 18px;
    color: #ffffff;
    background-color: #1d678f;
}

.oco-future__conclusion p {
    margin-bottom: 0;
    color: #ffffff;
}

/* Start */

.oco-start {
    padding: 79px 0;
    background-color: #ffffff;
}

.oco-start__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.7fr) minmax(0, 1.3fr);
    gap: 72px;
}

.oco-start__heading {
    align-self: start;
    padding: 28px;
    border-radius: 21px;
    background-color: #eef8fd;
}

.oco-start__heading > p:last-child {
    margin-bottom: 0;
    color: #597181;
}

.oco-start__steps {
    display: grid;
    gap: 8px;
    margin-bottom: 24px;
}

.oco-start__steps article {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
    padding: 15px 18px;
    border-radius: 14px;
    background-color: #dff2fc;
}

.oco-start__steps span {
    color: #2679a6;
    font-size: 12px;
    font-weight: 700;
}

.oco-start__steps p {
    margin-bottom: 0;
    color: #315c74;
}

.oco-start__content > p {
    margin-bottom: 0;
    color: #587181;
}

/* FAQ */

.oco-faq {
    padding: 79px 0;
    background-color: #eef8fd;
}

.oco-faq__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
}

.oco-faq-item {
    padding: 24px;
    border: 1px solid rgba(31, 103, 144, 0.09);
    border-radius: 18px;
    background-color: #ffffff;
}

.oco-faq-item:nth-child(3n + 2) {
    background-color: #dff1fb;
}

.oco-faq-item h3 {
    margin-bottom: 10px;
    font-size: 20px;
    line-height: 1.25;
}

.oco-faq-item p {
    margin-bottom: 0;
    color: #587181;
    font-size: 16px;
}

/* Final thought */

.oco-final-thought {
    padding: 79px 0;
    background-color: #cceafa;
}

.oco-final-thought__inner {
    max-width: 1010px;
}

.oco-final-thought__inner > p {
    margin-bottom: 12px;
    color: #57778a;
    font-size: clamp(21px, 2.5vw, 30px);
}

.oco-final-thought h2 {
    max-width: 990px;
    margin-bottom: 0;
    color: #154d70;
    font-size: clamp(40px, 5.2vw, 70px);
    line-height: 1.04;
    letter-spacing: -0.055em;
}

/* Final */

.oco-final {
    padding: 79px 0;
    background-color: #eef8fd;
}

.oco-final__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.22fr) minmax(290px, 0.78fr);
    gap: 45px;
    padding: 49px;
    border-radius: 31px;
    color: #ffffff;
    background:
        radial-gradient(circle at 84% 16%, rgba(123, 206, 247, 0.28), transparent 35%),
        #17577d;
    box-shadow: 0 23px 58px rgba(20, 77, 111, 0.22);
}

.oco-final__title {
    margin-bottom: 21px;
    color: #ffffff;
    font-size: clamp(43px, 5.5vw, 72px);
    line-height: 1.02;
    letter-spacing: -0.055em;
}

.oco-final__content > p:not(.oco-label) {
    max-width: 730px;
    margin-bottom: 21px;
    color: rgba(255, 255, 255, 0.76);
}

.oco-final__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 11px;
    margin: 27px 0 25px;
}

.oco-final__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.oco-final__tags span {
    padding: 8px 12px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 999px;
    color: rgba(255, 255, 255, 0.76);
    font-size: 13px;
}

.oco-final__aside {
    align-self: end;
    padding: 25px;
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 19px;
    background-color: rgba(255, 255, 255, 0.08);
}

.oco-final__aside-label {
    margin-bottom: 12px;
    color: #c5e9fb;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.oco-final__aside a {
    display: inline-block;
    margin-bottom: 16px;
    color: #ffffff;
    font-size: 18px;
    font-weight: 700;
    text-decoration-color: rgba(255, 255, 255, 0.45);
    text-underline-offset: 4px;
}

.oco-final__aside p:last-child {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.7);
    font-size: 15px;
}

/* Tablet */

@media (max-width: 1100px) {
    .oco-future__timeline {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 1040px) {
    .oco-hero__layout {
        grid-template-columns: minmax(0, 1fr) minmax(350px, 0.86fr);
        gap: 44px;
    }

    .oco-technology__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .oco-hero__layout,
    .oco-opening__layout,
    .oco-video__layout,
    .oco-distance__layout,
    .oco-geography__layout,
    .oco-mobility__layout,
    .oco-social__layout,
    .oco-formats__layout,
    .oco-limitations__layout,
    .oco-start__layout,
    .oco-final__layout {
        grid-template-columns: 1fr;
    }

    .oco-opening__heading {
        position: static;
    }

    .oco-hero__visual,
    .oco-video__visual,
    .oco-mobility__visual,
    .oco-geography__visual {
        max-width: 760px;
    }

    .oco-social__link {
        grid-column: auto;
    }

    .oco-final__aside {
        max-width: 620px;
    }
}

/* Mobile */

@media (max-width: 760px) {
    .oco-page {
        font-size: 17px;
    }

    .oco-shell {
        width: calc(100% - 32px);
    }

    .oco-hero,
    .oco-opening,
    .oco-benefits,
    .oco-statement,
    .oco-comparison,
    .oco-video,
    .oco-distance,
    .oco-geography,
    .oco-banner,
    .oco-mobility,
    .oco-real-life,
    .oco-social,
    .oco-technology,
    .oco-formats,
    .oco-safety,
    .oco-limitations,
    .oco-future,
    .oco-start,
    .oco-faq,
    .oco-final-thought,
    .oco-final {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .oco-section-head {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .oco-benefits__grid,
    .oco-real-life__grid,
    .oco-safety__grid,
    .oco-limitations__content,
    .oco-faq__grid {
        grid-template-columns: 1fr;
    }

    .oco-benefit--wide {
        grid-column: auto;
        grid-template-columns: 1fr;
    }

    .oco-comparison__table {
        overflow: visible;
        border: 0;
        border-radius: 0;
    }

    .oco-comparison__header {
        display: none;
    }

    .oco-comparison__row {
        display: block;
        margin-bottom: 12px;
        overflow: hidden;
        border: 1px solid rgba(31, 104, 144, 0.12);
        border-radius: 17px;
    }

    .oco-comparison__row h3,
    .oco-comparison__row p {
        border-right: 0;
        border-bottom: 1px solid rgba(31, 104, 144, 0.1);
    }

    .oco-comparison__row p::before {
        display: block;
        margin-bottom: 6px;
        color: #2679a6;
        font-size: 11px;
        font-weight: 700;
        text-transform: uppercase;
    }

    .oco-comparison__row p:nth-child(2)::before {
        content: "Онлайн";
    }

    .oco-comparison__row p:nth-child(3)::before {
        content: "Личная встреча";
    }

    .oco-video__caption,
    .oco-mobility__visual-note {
        position: relative;
        right: auto;
        bottom: auto;
        width: calc(100% - 28px);
        margin: -31px auto 0;
    }

    .oco-distance__content,
    .oco-social__cards,
    .oco-mobility__features {
        grid-template-columns: 1fr;
    }

    .oco-banner__frame,
    .oco-banner__image {
        min-height: 380px;
    }

    .oco-banner__frame::after {
        background: linear-gradient(
            0deg,
            rgba(18, 63, 91, 0.96),
            rgba(18, 63, 91, 0.12)
        );
    }

    .oco-banner__content {
        top: auto;
        right: 26px;
        bottom: 28px;
        left: 26px;
        width: auto;
        transform: none;
    }

    .oco-technology__grid {
        grid-template-columns: 1fr;
    }

    .oco-future__timeline {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .oco-final__layout {
        padding: 34px;
    }
}

@media (max-width: 560px) {
    .oco-page {
        font-size: 16px;
        line-height: 1.6;
    }

    .oco-shell {
        width: calc(100% - 24px);
    }

    .oco-label,
    .oco-eyebrow {
        margin-bottom: 10px;
        font-size: 11px;
    }

    .oco-heading {
        margin-bottom: 18px;
        font-size: clamp(31px, 9.8vw, 44px);
    }

    .oco-hero {
        padding-top: 38px;
        padding-bottom: 70px;
    }

    .oco-hero__layout {
        gap: 50px;
    }

    .oco-hero__title {
        font-size: clamp(43px, 13vw, 60px);
    }

    .oco-hero__lead {
        font-size: 19px;
    }

    .oco-hero__actions,
    .oco-final__actions {
        flex-direction: column;
    }

    .oco-hero__actions .oco-button,
    .oco-final__actions .oco-button {
        width: 100%;
    }

    .oco-hero__facts {
        grid-template-columns: 1fr;
    }

    .oco-hero__visual {
        min-height: 0;
        padding: 9px;
        border-radius: 22px;
    }

    .oco-hero__image {
        min-height: 340px;
        border-radius: 16px;
    }

    .oco-hero__quote,
    .oco-hero__connection {
        position: relative;
        right: auto;
        bottom: auto;
        left: auto;
        width: calc(100% - 26px);
        margin-right: auto;
        margin-left: auto;
    }

    .oco-hero__quote {
        margin-top: -25px;
    }

    .oco-hero__connection {
        margin-top: 10px;
    }

    .oco-opening,
    .oco-benefits,
    .oco-statement,
    .oco-comparison,
    .oco-video,
    .oco-distance,
    .oco-geography,
    .oco-banner,
    .oco-mobility,
    .oco-real-life,
    .oco-social,
    .oco-technology,
    .oco-formats,
    .oco-safety,
    .oco-limitations,
    .oco-future,
    .oco-start,
    .oco-faq,
    .oco-final-thought,
    .oco-final {
        padding-top: 52px;
        padding-bottom: 52px;
    }

    .oco-opening__heading,
    .oco-distance__heading,
    .oco-social__heading,
    .oco-limitations__heading,
    .oco-start__heading {
        padding: 22px;
        border-radius: 18px;
    }

    .oco-benefit,
    .oco-real-life__card,
    .oco-faq-item {
        min-height: 0;
        padding: 21px;
        border-radius: 17px;
    }

    .oco-video__image,
    .oco-mobility__image,
    .oco-geography__image {
        min-height: 385px;
        border-radius: 21px;
    }

    .oco-video__cards {
        grid-template-columns: 1fr;
    }

    .oco-geography__zones {
        gap: 5px;
    }

    .oco-format-card {
        padding: 20px;
    }

    .oco-future__timeline {
        grid-template-columns: 1fr;
    }

    .oco-future__timeline article {
        min-height: 0;
    }

    .oco-banner__large {
        font-size: 28px;
    }

    .oco-final__layout {
        padding: 25px 21px;
        border-radius: 22px;
    }

    .oco-final__title {
        font-size: clamp(38px, 11.5vw, 52px);
    }
}

@media (max-width: 375px) {
    .oco-shell {
        width: calc(100% - 20px);
    }

    .oco-hero__title {
        font-size: 42px;
    }

    .oco-button {
        min-height: 50px;
        padding-right: 16px;
        padding-left: 16px;
        font-size: 15px;
    }

    .oco-hero__image {
        min-height: 310px;
    }

    .oco-benefit,
    .oco-real-life__card,
    .oco-faq-item {
        padding-right: 18px;
        padding-left: 18px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .oco-page *,
    .oco-page *::before,
    .oco-page *::after {
        animation-duration: 0.01ms;
        animation-iteration-count: 1;
        scroll-behavior: auto;
        transition-duration: 0.01ms;
    }

    .oco-button:hover {
        transform: none;
    }
}

________________________________________________________________________________________
страница 12 как выбрать онлайн собеседника
.sso-page {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
    color: #213846;
    background-color: #ffffff;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 18px;
    line-height: 1.66;
}

.sso-page *,
.sso-page *::before,
.sso-page *::after {
    box-sizing: border-box;
}

.sso-page section,
.sso-page div,
.sso-page article,
.sso-page aside,
.sso-page picture {
    min-width: 0;
}

.sso-page img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
}

.sso-page h1,
.sso-page h2,
.sso-page h3,
.sso-page p,
.sso-page ul {
    margin-top: 0;
}

.sso-page h1,
.sso-page h2,
.sso-page h3 {
    color: #163e58;
    font-weight: 700;
    line-height: 1.1;
    text-wrap: balance;
}

.sso-page p,
.sso-page li {
    text-wrap: pretty;
}

.sso-shell {
    width: calc(100% - 48px);
    max-width: 1200px;
    margin-right: auto;
    margin-left: auto;
}

.sso-label,
.sso-eyebrow {
    margin-bottom: 13px;
    color: #287aa5;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.115em;
    text-transform: uppercase;
}

.sso-label--light {
    color: #c8ecff;
}

.sso-heading {
    margin-bottom: 21px;
    font-size: clamp(36px, 4.15vw, 59px);
    line-height: 1.05;
    letter-spacing: -0.046em;
}

.sso-heading--light {
    color: #ffffff;
}

.sso-text-link {
    color: #1d709f;
    font-weight: 700;
    text-decoration-color: rgba(29, 112, 159, 0.42);
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;
    transition:
        color 160ms ease,
        text-decoration-color 160ms ease;
}

.sso-text-link:hover {
    color: #13577d;
    text-decoration-color: currentColor;
}

.sso-button {
    display: inline-flex;
    min-height: 52px;
    align-items: center;
    justify-content: center;
    padding: 14px 24px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    transition:
        transform 180ms ease,
        color 180ms ease,
        background-color 180ms ease,
        border-color 180ms ease,
        box-shadow 180ms ease;
}

.sso-button:hover {
    transform: translateY(-2px);
}

.sso-button:focus-visible,
.sso-text-link:focus-visible,
.sso-final__aside a:focus-visible {
    outline: 3px solid rgba(39, 130, 181, 0.42);
    outline-offset: 4px;
}

.sso-button--primary {
    color: #ffffff;
    background-color: #247eae;
    box-shadow: 0 12px 28px rgba(27, 101, 143, 0.25);
}

.sso-button--primary:hover {
    color: #ffffff;
    background-color: #175c84;
    box-shadow: 0 16px 36px rgba(22, 91, 131, 0.3);
}

.sso-button--outline {
    color: #1e638b;
    border-color: rgba(31, 111, 159, 0.35);
    background-color: rgba(255, 255, 255, 0.76);
}

.sso-button--outline:hover {
    color: #144c6c;
    border-color: #2a85b6;
    background-color: #e9f6fd;
}

.sso-button--white {
    color: #145477;
    background-color: #ffffff;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.14);
}

.sso-button--white:hover {
    color: #103f5a;
    background-color: #eaf8ff;
}

.sso-button--outline-white {
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.66);
    background-color: transparent;
}

.sso-button--outline-white:hover {
    color: #145477;
    border-color: #ffffff;
    background-color: #ffffff;
}

/* Hero */

.sso-hero {
    position: relative;
    padding: 62px 0 84px;
    background:
        radial-gradient(circle at 12% 12%, rgba(165, 218, 247, 0.55), transparent 33%),
        linear-gradient(145deg, #ffffff 0%, #edf8fe 56%, #d8effb 100%);
}

.sso-hero::before {
    position: absolute;
    right: -140px;
    bottom: -180px;
    width: 450px;
    height: 450px;
    border: 1px solid rgba(38, 124, 171, 0.14);
    border-radius: 50%;
    content: "";
    pointer-events: none;
}

.sso-hero__layout {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.07fr) minmax(390px, 0.93fr);
    gap: 62px;
    align-items: center;
}

.sso-hero__title {
    max-width: 780px;
    margin-bottom: 24px;
    font-size: clamp(52px, 6.45vw, 89px);
    line-height: 0.98;
    letter-spacing: -0.067em;
}

.sso-hero__lead {
    max-width: 700px;
    margin-bottom: 17px;
    color: #29495e;
    font-size: clamp(21px, 2vw, 27px);
    line-height: 1.43;
}

.sso-hero__text {
    max-width: 680px;
    margin-bottom: 28px;
    color: #587181;
}

.sso-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 28px;
}

.sso-hero__trust-row {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 9px;
}

.sso-hero__trust-row article {
    padding: 15px;
    border: 1px solid rgba(31, 107, 150, 0.12);
    border-radius: 15px;
    background-color: rgba(255, 255, 255, 0.7);
}

.sso-hero__trust-row span {
    display: block;
    margin-bottom: 6px;
    color: #2679a6;
    font-size: 12px;
    font-weight: 700;
}

.sso-hero__trust-row p {
    margin-bottom: 0;
    color: #557184;
    font-size: 13px;
    line-height: 1.45;
}

.sso-hero__visual {
    position: relative;
    min-height: 590px;
    padding: 13px;
    border-radius: 34px;
    background-color: rgba(255, 255, 255, 0.84);
    box-shadow: 0 25px 65px rgba(23, 85, 120, 0.17);
}

.sso-hero__image {
    min-height: 560px;
    border-radius: 24px;
    object-fit: cover;
}

.sso-hero__question {
    position: absolute;
    right: -22px;
    bottom: 93px;
    width: min(380px, 84%);
    padding: 23px 25px;
    border-radius: 20px;
    background-color: #17577d;
    box-shadow: 0 18px 43px rgba(15, 72, 105, 0.26);
}

.sso-hero__question p {
    margin-bottom: 0;
    color: #ffffff;
    font-size: 17px;
    line-height: 1.5;
}

.sso-hero__rule {
    position: absolute;
    bottom: -40px;
    left: -25px;
    width: min(340px, 78%);
    padding: 20px 22px;
    border-radius: 19px;
    background-color: #cceafa;
    box-shadow: 0 16px 38px rgba(24, 84, 117, 0.16);
}

.sso-hero__rule span {
    display: block;
    margin-bottom: 6px;
    color: #2477a3;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.sso-hero__rule p {
    margin-bottom: 0;
    color: #315b72;
    font-size: 14px;
    line-height: 1.48;
}

/* Opening */

.sso-opening {
    padding: 95px 0 78px;
    background-color: #ffffff;
}

.sso-opening__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.75fr) minmax(0, 1.25fr);
    gap: 78px;
    align-items: start;
}

.sso-opening__side {
    position: sticky;
    top: 32px;
    padding: 31px;
    border-radius: 23px;
    background-color: #dff2fc;
}

.sso-opening__side .sso-heading {
    margin-bottom: 0;
}

.sso-opening__body {
    max-width: 740px;
}

.sso-opening__body > p {
    margin-bottom: 18px;
    color: #587181;
}

.sso-opening__large {
    color: #27485e;
    font-size: clamp(23px, 2.4vw, 31px);
    line-height: 1.38;
}

.sso-opening__accent {
    margin-top: 28px;
    padding: 25px 28px;
    border-left: 4px solid #2b84b4;
    border-radius: 0 18px 18px 0;
    background-color: #f0f9fe;
}

.sso-opening__accent p {
    margin-bottom: 0;
    color: #28536e;
    font-size: 20px;
}

/* Section heading */

.sso-section-heading {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 0.6fr);
    gap: 48px;
    align-items: end;
    margin-bottom: 38px;
}

.sso-section-heading__intro {
    margin-bottom: 20px;
    color: #5a7383;
}

.sso-section-heading--light .sso-section-heading__intro {
    color: rgba(255, 255, 255, 0.73);
}

/* Choice */

.sso-choice {
    padding: 78px 0;
    background-color: #eff8fd;
}

.sso-choice__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 15px;
}

.sso-choice-card {
    min-height: 270px;
    padding: 29px;
    border: 1px solid rgba(34, 104, 144, 0.1);
    border-radius: 22px;
    background-color: #ffffff;
}

.sso-choice-card--deep {
    color: #ffffff;
    border-color: #247aab;
    background-color: #247aab;
}

.sso-choice-card--pale {
    background-color: #dff2fc;
}

.sso-choice-card--wide {
    display: grid;
    grid-column: span 2;
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 24px;
    min-height: 0;
    background-color: #cceafa;
}

.sso-choice-card__number {
    display: block;
    margin-bottom: 36px;
    color: #2479a8;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.13em;
}

.sso-choice-card--deep .sso-choice-card__number {
    color: #caedff;
}

.sso-choice-card--wide .sso-choice-card__number {
    margin-bottom: 0;
    font-size: 20px;
}

.sso-choice-card h3 {
    margin-bottom: 12px;
    font-size: 23px;
}

.sso-choice-card--deep h3 {
    color: #ffffff;
}

.sso-choice-card p {
    margin-bottom: 0;
    color: #5a7281;
    font-size: 17px;
}

.sso-choice-card--deep p {
    color: rgba(255, 255, 255, 0.78);
}

/* Statement */

.sso-statement {
    padding: 79px 0;
    background-color: #cceafa;
}

.sso-statement__inner {
    max-width: 1000px;
}

.sso-statement__small {
    margin-bottom: 12px;
    color: #55778a;
    font-size: clamp(21px, 2.4vw, 29px);
}

.sso-statement__large {
    max-width: 980px;
    margin-bottom: 0;
    color: #154d70;
    font-size: clamp(41px, 5.25vw, 72px);
    font-weight: 700;
    line-height: 1.04;
    letter-spacing: -0.055em;
}

/* Trust */

.sso-trust {
    padding: 79px 0;
    background-color: #ffffff;
}

.sso-trust__layout {
    display: grid;
    grid-template-columns: minmax(330px, 0.78fr) minmax(0, 1.22fr);
    gap: 74px;
    align-items: start;
}

.sso-trust__visual {
    position: relative;
}

.sso-trust__image {
    min-height: 560px;
    border-radius: 30px;
    object-fit: cover;
    box-shadow: 0 22px 55px rgba(22, 76, 108, 0.17);
}

.sso-trust__caption {
    position: absolute;
    right: -22px;
    bottom: 30px;
    width: min(350px, 84%);
    padding: 22px;
    border-radius: 18px;
    background-color: #cceafa;
    box-shadow: 0 17px 40px rgba(20, 72, 102, 0.16);
}

.sso-trust__caption p {
    margin-bottom: 0;
    color: #315b72;
    font-size: 16px;
}

.sso-trust__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.sso-trust__signals {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin-top: 27px;
}

.sso-trust__signals article {
    padding: 18px;
    border-radius: 15px;
    background-color: #eef8fd;
}

.sso-trust__signals span {
    display: block;
    margin-bottom: 7px;
    color: #2678a5;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.sso-trust__signals h3 {
    margin-bottom: 6px;
    font-size: 17px;
}

.sso-trust__signals p {
    margin-bottom: 0;
    color: #597181;
    font-size: 14px;
}

/* Risks */

.sso-risks {
    padding: 80px 0;
    color: #ffffff;
    background-color: #17445f;
}

.sso-risks__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.sso-risks__grid article {
    padding: 24px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 18px;
    background-color: rgba(255, 255, 255, 0.07);
}

.sso-risks__grid article:nth-child(3n + 1) {
    background-color: rgba(85, 179, 226, 0.16);
}

.sso-risks__grid span {
    display: block;
    margin-bottom: 18px;
    color: #bce7fc;
    font-size: 12px;
    font-weight: 700;
}

.sso-risks__grid h3 {
    margin-bottom: 9px;
    color: #ffffff;
    font-size: 19px;
}

.sso-risks__grid p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.75);
    font-size: 15px;
}

.sso-risks__bottom {
    margin-top: 14px;
    padding: 24px 27px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 18px;
    background-color: rgba(255, 255, 255, 0.06);
}

.sso-risks__bottom p {
    margin-bottom: 0;
    color: #c3e7f8;
}

/* Payment */

.sso-payment {
    padding: 79px 0;
    background-color: #eef8fd;
}

.sso-payment__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.7fr) minmax(0, 1.3fr);
    gap: 70px;
}

.sso-payment__heading {
    align-self: start;
    padding: 29px;
    border-radius: 22px;
    background-color: #ffffff;
}

.sso-payment__heading > p:last-child {
    margin-bottom: 0;
    color: #587181;
}

.sso-payment__questions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.sso-payment__questions article {
    padding: 21px;
    border-radius: 17px;
    background-color: #ffffff;
}

.sso-payment__questions span {
    display: block;
    margin-bottom: 18px;
    color: #267aa8;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.sso-payment__questions h3 {
    margin-bottom: 8px;
    font-size: 18px;
}

.sso-payment__questions p {
    margin-bottom: 0;
    color: #597181;
    font-size: 15px;
}

/* Data */

.sso-data {
    padding: 79px 0;
    background-color: #ffffff;
}

.sso-data__header {
    max-width: 850px;
    margin-bottom: 36px;
}

.sso-data__header > p:last-child {
    color: #587181;
}

.sso-data__columns {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.sso-data-card {
    padding: 28px;
    border-radius: 21px;
}

.sso-data-card--safe {
    background-color: #dff2fc;
}

.sso-data-card--private {
    color: #ffffff;
    background-color: #1c628a;
}

.sso-data-card h3 {
    margin-bottom: 18px;
    font-size: 23px;
}

.sso-data-card--private h3 {
    color: #ffffff;
}

.sso-data-card ul {
    padding-left: 21px;
    margin-bottom: 0;
}

.sso-data-card li {
    margin-bottom: 9px;
    color: #4c6d80;
}

.sso-data-card--private li {
    color: rgba(255, 255, 255, 0.8);
}

.sso-data__principle {
    margin-top: 14px;
    padding: 24px 27px;
    border-radius: 18px;
    background-color: #eef8fd;
}

.sso-data__principle p {
    margin-bottom: 0;
    color: #41687f;
}

/* Confidentiality */

.sso-confidentiality {
    padding: 79px 0;
    background-color: #dff2fc;
}

.sso-confidentiality__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(330px, 0.9fr);
    gap: 66px;
}

.sso-confidentiality__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.sso-confidentiality__questions {
    display: grid;
    gap: 8px;
    margin-top: 26px;
}

.sso-confidentiality__questions p {
    margin-bottom: 0;
    padding: 14px 17px;
    border-radius: 14px;
    color: #225f82;
    background-color: rgba(255, 255, 255, 0.78);
}

.sso-confidentiality__aside {
    align-self: start;
    padding: 28px;
    border-radius: 22px;
    color: #ffffff;
    background-color: #175b82;
}

.sso-confidentiality__aside-title {
    margin-bottom: 18px;
    color: #ffffff;
    font-size: 22px;
    font-weight: 700;
}

.sso-confidentiality__aside ul {
    padding-left: 21px;
    margin-bottom: 23px;
}

.sso-confidentiality__aside li {
    margin-bottom: 9px;
    color: rgba(255, 255, 255, 0.8);
}

.sso-confidentiality__aside p:last-child {
    margin-bottom: 0;
    padding-top: 20px;
    border-top: 1px solid rgba(255, 255, 255, 0.15);
    color: #c6e8f8;
    font-size: 15px;
}

/* Banner */

.sso-banner {
    padding: 79px 0;
    background-color: #ffffff;
}

.sso-banner__frame {
    position: relative;
    overflow: hidden;
    min-height: 350px;
    border-radius: 30px;
    box-shadow: 0 22px 55px rgba(22, 75, 106, 0.17);
}

.sso-banner__image {
    min-height: 350px;
    object-fit: cover;
}

.sso-banner__frame::after {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        90deg,
        rgba(18, 63, 91, 0.15),
        rgba(18, 63, 91, 0.93)
    );
    content: "";
}

.sso-banner__content {
    position: absolute;
    z-index: 1;
    top: 50%;
    right: 50px;
    width: min(600px, calc(100% - 100px));
    transform: translateY(-50%);
}

.sso-banner__small {
    margin-bottom: 10px;
    color: #cbefff;
    font-size: 16px;
}

.sso-banner__large {
    margin-bottom: 0;
    color: #ffffff;
    font-size: clamp(30px, 3.7vw, 50px);
    font-weight: 700;
    line-height: 1.16;
    letter-spacing: -0.04em;
}

/* First call */

.sso-first-call {
    padding: 79px 0;
    background-color: #eef8fd;
}

.sso-first-call__layout {
    display: grid;
    grid-template-columns: minmax(330px, 0.78fr) minmax(0, 1.22fr);
    gap: 74px;
    align-items: start;
}

.sso-first-call__visual {
    position: relative;
}

.sso-first-call__image {
    min-height: 550px;
    border-radius: 30px;
    object-fit: cover;
    box-shadow: 0 22px 55px rgba(22, 76, 108, 0.17);
}

.sso-first-call__caption {
    position: absolute;
    right: -22px;
    bottom: 30px;
    width: min(345px, 84%);
    padding: 22px;
    border-radius: 18px;
    background-color: #ffffff;
    box-shadow: 0 17px 40px rgba(20, 72, 102, 0.16);
}

.sso-first-call__caption p {
    margin-bottom: 0;
    color: #315b72;
    font-size: 16px;
}

.sso-first-call__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.sso-first-call__options {
    display: grid;
    gap: 9px;
    margin-top: 27px;
}

.sso-first-call__options article {
    display: grid;
    grid-template-columns: 80px minmax(0, 1fr);
    gap: 15px;
    padding: 18px;
    border-radius: 15px;
    background-color: #ffffff;
}

.sso-first-call__options span {
    color: #2678a5;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.sso-first-call__options h3 {
    margin-bottom: 5px;
    font-size: 17px;
}

.sso-first-call__options p {
    grid-column: 2;
    margin-bottom: 0;
    color: #597181;
    font-size: 14px;
}

/* Topics */

.sso-topics {
    padding: 79px 0;
    background-color: #ffffff;
}

.sso-topics__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.sso-topics__grid article {
    min-height: 255px;
    padding: 23px;
    border-radius: 18px;
    background-color: #eef8fd;
}

.sso-topics__grid article:nth-child(even) {
    background-color: #dff2fc;
}

.sso-topics__grid span {
    display: block;
    margin-bottom: 27px;
    color: #2679a6;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.sso-topics__grid h3 {
    margin-bottom: 9px;
    font-size: 19px;
}

.sso-topics__grid p {
    margin-bottom: 0;
    color: #597181;
    font-size: 15px;
}

/* Etiquette */

.sso-etiquette {
    padding: 79px 0;
    background-color: #dff2fc;
}

.sso-etiquette__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.7fr) minmax(0, 1.3fr);
    gap: 70px;
}

.sso-etiquette__heading {
    align-self: start;
    padding: 29px;
    border-radius: 22px;
    background-color: #ffffff;
}

.sso-etiquette__heading > p:last-child {
    margin-bottom: 0;
    color: #587181;
}

.sso-etiquette__rules {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.sso-etiquette__rules article {
    padding: 21px;
    border-radius: 17px;
    background-color: rgba(255, 255, 255, 0.79);
}

.sso-etiquette__rules span {
    display: block;
    margin-bottom: 18px;
    color: #267aa8;
    font-size: 12px;
    font-weight: 700;
}

.sso-etiquette__rules h3 {
    margin-bottom: 8px;
    font-size: 18px;
}

.sso-etiquette__rules p {
    margin-bottom: 0;
    color: #597181;
    font-size: 15px;
}

/* Boundaries */

.sso-boundaries {
    padding: 79px 0;
    background-color: #ffffff;
}

.sso-boundaries__header {
    max-width: 850px;
    margin-bottom: 35px;
}

.sso-boundaries__header > p:last-child {
    color: #587181;
}

.sso-boundaries__phrases {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
}

.sso-boundaries__phrases p {
    margin-bottom: 0;
    padding: 17px 19px;
    border-left: 4px solid #2a82b3;
    border-radius: 0 15px 15px 0;
    color: #245f80;
    background-color: #eef8fd;
}

.sso-boundaries__phrases p:nth-child(3n + 2) {
    background-color: #dff2fc;
}

.sso-boundaries__note {
    margin-top: 14px;
    padding: 24px 27px;
    border-radius: 18px;
    color: #ffffff;
    background-color: #1d678f;
}

.sso-boundaries__note p {
    margin-bottom: 0;
    color: #ffffff;
}

/* Exit */

.sso-exit {
    padding: 79px 0;
    background-color: #eef8fd;
}

.sso-exit__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(340px, 0.92fr);
    gap: 66px;
    align-items: center;
}

.sso-exit__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.sso-exit__steps {
    display: grid;
    gap: 8px;
    margin-top: 25px;
}

.sso-exit__steps article {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
    padding: 15px 18px;
    border-radius: 14px;
    background-color: #ffffff;
}

.sso-exit__steps span {
    display: flex;
    width: 32px;
    height: 32px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #ffffff;
    background-color: #247eae;
    font-size: 12px;
    font-weight: 700;
}

.sso-exit__steps p {
    margin-bottom: 0;
    color: #315c74;
}

.sso-exit__visual {
    position: relative;
    padding: 11px;
    border-radius: 28px;
    background-color: #ffffff;
}

.sso-exit__image {
    min-height: 420px;
    border-radius: 20px;
    object-fit: cover;
}

.sso-exit__message {
    margin-top: 12px;
    padding: 23px;
    border-radius: 18px;
    color: #ffffff;
    background-color: #175b82;
}

.sso-exit__message-label {
    margin-bottom: 9px;
    color: #c7ecff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.sso-exit__message-text {
    margin-bottom: 10px;
    color: #ffffff;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.35;
}

.sso-exit__message-small {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.72);
    font-size: 14px;
}

/* Prepare */

.sso-prepare {
    padding: 79px 0;
    background-color: #ffffff;
}

.sso-prepare__timeline {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 11px;
}

.sso-prepare__timeline article {
    min-height: 280px;
    padding: 22px;
    border-top: 5px solid #2a82b3;
    border-radius: 0 0 18px 18px;
    background-color: #eef8fd;
}

.sso-prepare__timeline span {
    display: block;
    margin-bottom: 28px;
    color: #2678a5;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
}

.sso-prepare__timeline h3 {
    margin-bottom: 10px;
    font-size: 18px;
}

.sso-prepare__timeline p {
    margin-bottom: 0;
    color: #597181;
    font-size: 14px;
}

/* Service */

.sso-service {
    padding: 79px 0;
    background-color: #dff2fc;
}

.sso-service__layout {
    display: grid;
    grid-template-columns: minmax(340px, 0.82fr) minmax(0, 1.18fr);
    gap: 72px;
    align-items: start;
}

.sso-service__visual {
    position: relative;
}

.sso-service__image {
    min-height: 530px;
    border-radius: 29px;
    object-fit: cover;
    box-shadow: 0 22px 55px rgba(22, 76, 108, 0.17);
}

.sso-service__caption {
    position: absolute;
    right: -22px;
    bottom: 30px;
    width: min(350px, 84%);
    padding: 22px;
    border-radius: 18px;
    background-color: #ffffff;
    box-shadow: 0 17px 40px rgba(20, 72, 102, 0.16);
}

.sso-service__caption p {
    margin-bottom: 0;
    color: #315b72;
    font-size: 16px;
}

.sso-service__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.sso-service__principles {
    display: grid;
    gap: 9px;
    margin-top: 27px;
}

.sso-service__principles article {
    padding: 18px;
    border-radius: 15px;
    background-color: rgba(255, 255, 255, 0.78);
}

.sso-service__principles h3 {
    margin-bottom: 6px;
    font-size: 17px;
}

.sso-service__principles p {
    margin-bottom: 0;
    color: #597181;
    font-size: 14px;
}

/* FAQ */

.sso-faq {
    padding: 79px 0;
    background-color: #ffffff;
}

.sso-faq__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
}

.sso-faq-item {
    padding: 24px;
    border: 1px solid rgba(31, 103, 144, 0.09);
    border-radius: 18px;
    background-color: #f2f9fd;
}

.sso-faq-item:nth-child(3n + 2) {
    background-color: #dff1fb;
}

.sso-faq-item h3 {
    margin-bottom: 10px;
    font-size: 20px;
    line-height: 1.25;
}

.sso-faq-item p {
    margin-bottom: 0;
    color: #587181;
    font-size: 16px;
}

/* Final thought */

.sso-final-thought {
    padding: 79px 0;
    background-color: #cceafa;
}

.sso-final-thought__inner {
    max-width: 1010px;
}

.sso-final-thought__inner > p {
    margin-bottom: 12px;
    color: #57778a;
    font-size: clamp(21px, 2.5vw, 30px);
}

.sso-final-thought h2 {
    max-width: 990px;
    margin-bottom: 0;
    color: #154d70;
    font-size: clamp(40px, 5.2vw, 70px);
    line-height: 1.04;
    letter-spacing: -0.055em;
}

/* Final */

.sso-final {
    padding: 79px 0;
    background-color: #eef8fd;
}

.sso-final__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.22fr) minmax(290px, 0.78fr);
    gap: 45px;
    padding: 49px;
    border-radius: 31px;
    color: #ffffff;
    background:
        radial-gradient(circle at 84% 16%, rgba(123, 206, 247, 0.28), transparent 35%),
        #17577d;
    box-shadow: 0 23px 58px rgba(20, 77, 111, 0.22);
}

.sso-final__title {
    margin-bottom: 21px;
    color: #ffffff;
    font-size: clamp(43px, 5.5vw, 72px);
    line-height: 1.02;
    letter-spacing: -0.055em;
}

.sso-final__content > p:not(.sso-label) {
    max-width: 730px;
    margin-bottom: 21px;
    color: rgba(255, 255, 255, 0.76);
}

.sso-final__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 11px;
    margin: 27px 0 25px;
}

.sso-final__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.sso-final__tags span {
    padding: 8px 12px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 999px;
    color: rgba(255, 255, 255, 0.76);
    font-size: 13px;
}

.sso-final__aside {
    align-self: end;
    padding: 25px;
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 19px;
    background-color: rgba(255, 255, 255, 0.08);
}

.sso-final__aside-label {
    margin-bottom: 12px;
    color: #c5e9fb;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.sso-final__aside a {
    display: inline-block;
    margin-bottom: 16px;
    color: #ffffff;
    font-size: 18px;
    font-weight: 700;
    overflow-wrap: anywhere;
    text-decoration-color: rgba(255, 255, 255, 0.45);
    text-underline-offset: 4px;
}

.sso-final__aside p:last-child {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.7);
    font-size: 15px;
}

/* Tablet */

@media (max-width: 1100px) {
    .sso-prepare__timeline {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 1040px) {
    .sso-hero__layout {
        grid-template-columns: minmax(0, 1fr) minmax(350px, 0.86fr);
        gap: 44px;
    }

    .sso-topics__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .sso-hero__layout,
    .sso-opening__layout,
    .sso-trust__layout,
    .sso-payment__layout,
    .sso-confidentiality__layout,
    .sso-first-call__layout,
    .sso-etiquette__layout,
    .sso-exit__layout,
    .sso-service__layout,
    .sso-final__layout {
        grid-template-columns: 1fr;
    }

    .sso-opening__side {
        position: static;
    }

    .sso-hero__visual,
    .sso-trust__visual,
    .sso-first-call__visual,
    .sso-exit__visual,
    .sso-service__visual {
        max-width: 760px;
    }

    .sso-final__aside {
        max-width: 620px;
    }
}

/* Mobile */

@media (max-width: 760px) {
    .sso-page {
        font-size: 17px;
    }

    .sso-shell {
        width: calc(100% - 32px);
    }

    .sso-hero,
    .sso-opening,
    .sso-choice,
    .sso-statement,
    .sso-trust,
    .sso-risks,
    .sso-payment,
    .sso-data,
    .sso-confidentiality,
    .sso-banner,
    .sso-first-call,
    .sso-topics,
    .sso-etiquette,
    .sso-boundaries,
    .sso-exit,
    .sso-prepare,
    .sso-service,
    .sso-faq,
    .sso-final-thought,
    .sso-final {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .sso-section-heading {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .sso-choice__grid,
    .sso-risks__grid,
    .sso-data__columns,
    .sso-faq__grid {
        grid-template-columns: 1fr;
    }

    .sso-choice-card--wide {
        grid-column: auto;
        grid-template-columns: 1fr;
    }

    .sso-trust__caption,
    .sso-first-call__caption,
    .sso-service__caption {
        position: relative;
        right: auto;
        bottom: auto;
        width: calc(100% - 28px);
        margin: -31px auto 0;
    }

    .sso-payment__questions,
    .sso-trust__signals,
    .sso-etiquette__rules,
    .sso-boundaries__phrases {
        grid-template-columns: 1fr;
    }

    .sso-banner__frame,
    .sso-banner__image {
        min-height: 380px;
    }

    .sso-banner__frame::after {
        background: linear-gradient(
            0deg,
            rgba(18, 63, 91, 0.96),
            rgba(18, 63, 91, 0.12)
        );
    }

    .sso-banner__content {
        top: auto;
        right: 26px;
        bottom: 28px;
        left: 26px;
        width: auto;
        transform: none;
    }

    .sso-prepare__timeline {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sso-final__layout {
        padding: 34px;
    }
}

@media (max-width: 560px) {
    .sso-page {
        font-size: 16px;
        line-height: 1.6;
    }

    .sso-shell {
        width: calc(100% - 24px);
    }

    .sso-label,
    .sso-eyebrow {
        margin-bottom: 10px;
        font-size: 11px;
    }

    .sso-heading {
        margin-bottom: 18px;
        font-size: clamp(31px, 9.8vw, 44px);
    }

    .sso-hero {
        padding-top: 38px;
        padding-bottom: 70px;
    }

    .sso-hero__layout {
        gap: 50px;
    }

    .sso-hero__title {
        font-size: clamp(43px, 13vw, 60px);
    }

    .sso-hero__lead {
        font-size: 19px;
    }

    .sso-hero__actions,
    .sso-final__actions {
        flex-direction: column;
    }

    .sso-hero__actions .sso-button,
    .sso-final__actions .sso-button {
        width: 100%;
    }

    .sso-hero__trust-row {
        grid-template-columns: 1fr;
    }

    .sso-hero__visual {
        min-height: 0;
        padding: 9px;
        border-radius: 22px;
    }

    .sso-hero__image {
        min-height: 340px;
        border-radius: 16px;
    }

    .sso-hero__question,
    .sso-hero__rule {
        position: relative;
        right: auto;
        bottom: auto;
        left: auto;
        width: calc(100% - 26px);
        margin-right: auto;
        margin-left: auto;
    }

    .sso-hero__question {
        margin-top: -25px;
    }

    .sso-hero__rule {
        margin-top: 10px;
    }

    .sso-opening,
    .sso-choice,
    .sso-statement,
    .sso-trust,
    .sso-risks,
    .sso-payment,
    .sso-data,
    .sso-confidentiality,
    .sso-banner,
    .sso-first-call,
    .sso-topics,
    .sso-etiquette,
    .sso-boundaries,
    .sso-exit,
    .sso-prepare,
    .sso-service,
    .sso-faq,
    .sso-final-thought,
    .sso-final {
        padding-top: 52px;
        padding-bottom: 52px;
    }

    .sso-opening__side,
    .sso-payment__heading,
    .sso-etiquette__heading {
        padding: 22px;
        border-radius: 18px;
    }

    .sso-choice-card,
    .sso-risks__grid article,
    .sso-faq-item {
        min-height: 0;
        padding: 21px;
        border-radius: 17px;
    }

    .sso-trust__image,
    .sso-first-call__image,
    .sso-service__image {
        min-height: 385px;
        border-radius: 21px;
    }

    .sso-first-call__options article {
        grid-template-columns: 1fr;
        gap: 5px;
    }

    .sso-first-call__options p {
        grid-column: auto;
    }

    .sso-topics__grid {
        grid-template-columns: 1fr;
    }

    .sso-topics__grid article {
        min-height: 0;
    }

    .sso-exit__image {
        min-height: 340px;
    }

    .sso-prepare__timeline {
        grid-template-columns: 1fr;
    }

    .sso-prepare__timeline article {
        min-height: 0;
    }

    .sso-banner__large {
        font-size: 28px;
    }

    .sso-final__layout {
        padding: 25px 21px;
        border-radius: 22px;
    }

    .sso-final__title {
        font-size: clamp(38px, 11.5vw, 52px);
    }
}

@media (max-width: 375px) {
    .sso-shell {
        width: calc(100% - 20px);
    }

    .sso-hero__title {
        font-size: 42px;
    }

    .sso-button {
        min-height: 50px;
        padding-right: 16px;
        padding-left: 16px;
        font-size: 15px;
    }

    .sso-hero__image {
        min-height: 310px;
    }

    .sso-choice-card,
    .sso-risks__grid article,
    .sso-faq-item {
        padding-right: 18px;
        padding-left: 18px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .sso-page *,
    .sso-page *::before,
    .sso-page *::after {
        animation-duration: 0.01ms;
        animation-iteration-count: 1;
        scroll-behavior: auto;
        transition-duration: 0.01ms;
    }

    .sso-button:hover {
        transform: none;
    }
}

______________________________________________________________________________
страница 13 Russian conversation practice with a native speaker

.rnp-page {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
    color: #203846;
    background-color: #ffffff;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 18px;
    line-height: 1.66;
}

.rnp-page *,
.rnp-page *::before,
.rnp-page *::after {
    box-sizing: border-box;
}

.rnp-page section,
.rnp-page div,
.rnp-page article,
.rnp-page aside,
.rnp-page picture {
    min-width: 0;
}

.rnp-page img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
}

.rnp-page h1,
.rnp-page h2,
.rnp-page h3,
.rnp-page p,
.rnp-page ul {
    margin-top: 0;
}

.rnp-page h1,
.rnp-page h2,
.rnp-page h3 {
    color: #163f59;
    font-weight: 700;
    line-height: 1.1;
    text-wrap: balance;
}

.rnp-page p,
.rnp-page li {
    text-wrap: pretty;
}

.rnp-shell {
    width: calc(100% - 48px);
    max-width: 1200px;
    margin-right: auto;
    margin-left: auto;
}

.rnp-label,
.rnp-eyebrow {
    margin-bottom: 13px;
    color: #2779a5;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.11em;
    text-transform: uppercase;
}

.rnp-label--light {
    color: #c8edff;
}

.rnp-heading {
    margin-bottom: 21px;
    font-size: clamp(36px, 4.15vw, 59px);
    line-height: 1.05;
    letter-spacing: -0.046em;
}

.rnp-heading--light {
    color: #ffffff;
}

.rnp-text-link {
    color: #1c709f;
    font-weight: 700;
    text-decoration-color: rgba(28, 112, 159, 0.42);
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;
    transition:
        color 160ms ease,
        text-decoration-color 160ms ease;
}

.rnp-text-link:hover {
    color: #13577d;
    text-decoration-color: currentColor;
}

.rnp-button {
    display: inline-flex;
    min-height: 52px;
    align-items: center;
    justify-content: center;
    padding: 14px 24px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    transition:
        transform 180ms ease,
        color 180ms ease,
        background-color 180ms ease,
        border-color 180ms ease,
        box-shadow 180ms ease;
}

.rnp-button:hover {
    transform: translateY(-2px);
}

.rnp-button:focus-visible,
.rnp-text-link:focus-visible,
.rnp-final__aside a:focus-visible {
    outline: 3px solid rgba(39, 130, 181, 0.42);
    outline-offset: 4px;
}

.rnp-button--primary {
    color: #ffffff;
    background-color: #247eae;
    box-shadow: 0 12px 28px rgba(27, 101, 143, 0.25);
}

.rnp-button--primary:hover {
    color: #ffffff;
    background-color: #175c84;
    box-shadow: 0 16px 36px rgba(22, 91, 131, 0.3);
}

.rnp-button--outline {
    color: #1e638b;
    border-color: rgba(31, 111, 159, 0.35);
    background-color: rgba(255, 255, 255, 0.76);
}

.rnp-button--outline:hover {
    color: #144c6c;
    border-color: #2a85b6;
    background-color: #e9f6fd;
}

.rnp-button--white {
    color: #145477;
    background-color: #ffffff;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.14);
}

.rnp-button--white:hover {
    color: #103f5a;
    background-color: #eaf8ff;
}

.rnp-button--outline-white {
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.66);
    background-color: transparent;
}

.rnp-button--outline-white:hover {
    color: #145477;
    border-color: #ffffff;
    background-color: #ffffff;
}

/* Hero */

.rnp-hero {
    position: relative;
    padding: 62px 0 86px;
    background:
        radial-gradient(circle at 12% 5%, rgba(170, 222, 249, 0.55), transparent 31%),
        linear-gradient(145deg, #ffffff 0%, #edf8fe 55%, #d7effb 100%);
}

.rnp-hero::after {
    position: absolute;
    right: -145px;
    bottom: -195px;
    width: 470px;
    height: 470px;
    border: 1px solid rgba(37, 126, 174, 0.14);
    border-radius: 50%;
    content: "";
    pointer-events: none;
}

.rnp-hero__layout {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(390px, 0.92fr);
    gap: 62px;
    align-items: center;
}

.rnp-hero__title {
    max-width: 790px;
    margin-bottom: 24px;
    font-size: clamp(49px, 6.1vw, 84px);
    line-height: 0.98;
    letter-spacing: -0.065em;
}

.rnp-hero__lead {
    max-width: 700px;
    margin-bottom: 17px;
    color: #29495e;
    font-size: clamp(21px, 2vw, 27px);
    line-height: 1.43;
}

.rnp-hero__text {
    max-width: 680px;
    margin-bottom: 28px;
    color: #587181;
}

.rnp-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 25px;
}

.rnp-hero__features {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.rnp-hero__features span {
    padding: 9px 13px;
    border: 1px solid rgba(31, 107, 150, 0.13);
    border-radius: 999px;
    color: #4f7084;
    background-color: rgba(255, 255, 255, 0.72);
    font-size: 13px;
}

.rnp-hero__visual {
    position: relative;
    min-height: 615px;
    padding: 13px;
    border-radius: 34px;
    background-color: rgba(255, 255, 255, 0.84);
    box-shadow: 0 25px 65px rgba(23, 85, 120, 0.17);
}

.rnp-hero__image {
    min-height: 585px;
    border-radius: 24px;
    object-fit: cover;
}

.rnp-hero__dialogue {
    position: absolute;
    right: -22px;
    bottom: 96px;
    width: min(385px, 85%);
    padding: 23px 25px;
    border-radius: 20px;
    background-color: #17577d;
    box-shadow: 0 18px 43px rgba(15, 72, 105, 0.26);
}

.rnp-hero__dialogue-russian {
    margin-bottom: 8px;
    color: #ffffff;
    font-size: 18px;
    font-weight: 700;
}

.rnp-hero__dialogue-english {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.72);
    font-size: 14px;
}

.rnp-hero__level {
    position: absolute;
    bottom: -42px;
    left: -25px;
    display: flex;
    width: min(365px, 82%);
    flex-wrap: wrap;
    gap: 7px;
    padding: 20px 22px;
    border-radius: 19px;
    background-color: #cceafa;
    box-shadow: 0 16px 38px rgba(24, 84, 117, 0.16);
}

.rnp-hero__level span {
    display: flex;
    width: 38px;
    height: 38px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #ffffff;
    background-color: #277ba8;
    font-size: 12px;
    font-weight: 700;
}

.rnp-hero__level p {
    width: 100%;
    margin: 5px 0 0;
    color: #315b72;
    font-size: 14px;
    line-height: 1.48;
}

/* Intro */

.rnp-intro {
    padding: 96px 0 78px;
    background-color: #ffffff;
}

.rnp-intro__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.75fr) minmax(0, 1.25fr);
    gap: 78px;
    align-items: start;
}

.rnp-intro__heading {
    position: sticky;
    top: 32px;
    padding: 31px;
    border-radius: 23px;
    background-color: #dff2fc;
}

.rnp-intro__heading .rnp-heading {
    margin-bottom: 0;
}

.rnp-intro__content {
    max-width: 740px;
}

.rnp-intro__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.rnp-intro__large {
    color: #27485e;
    font-size: clamp(23px, 2.4vw, 31px);
    line-height: 1.38;
}

.rnp-intro__accent {
    margin-top: 28px;
    padding: 25px 28px;
    border-left: 4px solid #2b84b4;
    border-radius: 0 18px 18px 0;
    background-color: #f0f9fe;
}

.rnp-intro__accent p {
    margin-bottom: 0;
    color: #28536e;
    font-size: 20px;
}

/* Shared heading */

.rnp-section-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 0.6fr);
    gap: 48px;
    align-items: end;
    margin-bottom: 38px;
}

.rnp-section-head__intro {
    margin-bottom: 20px;
    color: #5a7383;
}

.rnp-section-head--light .rnp-section-head__intro {
    color: rgba(255, 255, 255, 0.73);
}

/* Gap */

.rnp-gap {
    padding: 78px 0;
    background-color: #eff8fd;
}

.rnp-gap__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 15px;
}

.rnp-gap-card {
    min-height: 270px;
    padding: 29px;
    border: 1px solid rgba(34, 104, 144, 0.1);
    border-radius: 22px;
    background-color: #ffffff;
}

.rnp-gap-card--deep {
    color: #ffffff;
    border-color: #247aab;
    background-color: #247aab;
}

.rnp-gap-card--soft {
    background-color: #dff2fc;
}

.rnp-gap-card--wide {
    display: grid;
    grid-column: span 2;
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 24px;
    min-height: 0;
    background-color: #cceafa;
}

.rnp-gap-card__number {
    display: block;
    margin-bottom: 36px;
    color: #2479a8;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.13em;
}

.rnp-gap-card--deep .rnp-gap-card__number {
    color: #caedff;
}

.rnp-gap-card--wide .rnp-gap-card__number {
    margin-bottom: 0;
    font-size: 20px;
}

.rnp-gap-card h3 {
    margin-bottom: 12px;
    font-size: 23px;
}

.rnp-gap-card--deep h3 {
    color: #ffffff;
}

.rnp-gap-card p {
    margin-bottom: 0;
    color: #5a7281;
    font-size: 17px;
}

.rnp-gap-card--deep p {
    color: rgba(255, 255, 255, 0.78);
}

/* Phrase */

.rnp-phrase {
    padding: 79px 0;
    background-color: #cceafa;
}

.rnp-phrase__inner {
    max-width: 1000px;
}

.rnp-phrase__small {
    margin-bottom: 12px;
    color: #55778a;
    font-size: clamp(21px, 2.4vw, 29px);
}

.rnp-phrase__large {
    max-width: 980px;
    margin-bottom: 0;
    color: #154d70;
    font-size: clamp(41px, 5.25vw, 72px);
    font-weight: 700;
    line-height: 1.04;
    letter-spacing: -0.055em;
}

/* Native speaker */

.rnp-native {
    padding: 79px 0;
    background-color: #ffffff;
}

.rnp-native__layout {
    display: grid;
    grid-template-columns: minmax(330px, 0.76fr) minmax(0, 1.24fr);
    gap: 74px;
    align-items: start;
}

.rnp-native__visual {
    position: relative;
}

.rnp-native__image {
    min-height: 560px;
    border-radius: 30px;
    object-fit: cover;
    box-shadow: 0 22px 55px rgba(22, 76, 108, 0.17);
}

.rnp-native__caption {
    position: absolute;
    right: -22px;
    bottom: 30px;
    width: min(350px, 84%);
    padding: 22px;
    border-radius: 18px;
    background-color: #cceafa;
    box-shadow: 0 17px 40px rgba(20, 72, 102, 0.16);
}

.rnp-native__caption p {
    margin-bottom: 0;
    color: #315b72;
    font-size: 16px;
}

.rnp-native__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.rnp-native__contrast {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 27px;
}

.rnp-native__contrast article {
    padding: 21px;
    border-radius: 17px;
    background-color: #eef8fd;
}

.rnp-native__contrast article:nth-child(2) {
    background-color: #dff2fc;
}

.rnp-native__contrast span {
    display: block;
    margin-bottom: 13px;
    color: #2679a6;
    font-size: 13px;
    font-weight: 700;
}

.rnp-native__contrast ul {
    padding-left: 20px;
    margin-bottom: 0;
}

.rnp-native__contrast li {
    margin-bottom: 7px;
    color: #597181;
    font-size: 14px;
}

/* Session */

.rnp-session {
    padding: 79px 0;
    background-color: #eaf6fd;
}

.rnp-session__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.7fr) minmax(0, 1.3fr);
    gap: 70px;
}

.rnp-session__heading {
    align-self: start;
    padding: 29px;
    border-radius: 22px;
    background-color: #ffffff;
}

.rnp-session__heading > p:last-child {
    margin-bottom: 0;
    color: #587181;
}

.rnp-session__steps {
    display: grid;
    gap: 10px;
}

.rnp-session__steps article {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr);
    gap: 18px;
    padding: 21px;
    border-radius: 17px;
    background-color: rgba(255, 255, 255, 0.8);
}

.rnp-session__steps article:nth-child(even) {
    background-color: #d7eef9;
}

.rnp-session__steps span {
    display: flex;
    width: 44px;
    height: 44px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #ffffff;
    background-color: #247eae;
    font-size: 12px;
    font-weight: 700;
}

.rnp-session__steps h3 {
    margin-bottom: 7px;
    font-size: 19px;
}

.rnp-session__steps p {
    margin-bottom: 0;
    color: #597181;
    font-size: 15px;
}

/* Levels */

.rnp-levels {
    padding: 80px 0;
    color: #ffffff;
    background-color: #17445f;
}

.rnp-levels__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.rnp-levels__grid article {
    min-height: 290px;
    padding: 23px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 18px;
    background-color: rgba(255, 255, 255, 0.07);
}

.rnp-levels__grid article:nth-child(even) {
    background-color: rgba(87, 181, 228, 0.16);
}

.rnp-levels__grid span {
    display: flex;
    width: 48px;
    height: 48px;
    align-items: center;
    justify-content: center;
    margin-bottom: 28px;
    border-radius: 50%;
    color: #17445f;
    background-color: #c8ecff;
    font-size: 13px;
    font-weight: 700;
}

.rnp-levels__grid h3 {
    margin-bottom: 10px;
    color: #ffffff;
    font-size: 19px;
}

.rnp-levels__grid p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.75);
    font-size: 15px;
}

.rnp-levels__note {
    margin-top: 14px;
    padding: 23px 26px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 18px;
    background-color: rgba(255, 255, 255, 0.06);
}

.rnp-levels__note p {
    margin-bottom: 0;
    color: #c3e7f8;
}

/* Natural Russian */

.rnp-natural {
    padding: 79px 0;
    background-color: #ffffff;
}

.rnp-natural__frame {
    position: relative;
    overflow: hidden;
    min-height: 440px;
    border-radius: 30px;
    box-shadow: 0 22px 55px rgba(22, 75, 106, 0.17);
}

.rnp-natural__image {
    min-height: 440px;
    object-fit: cover;
}

.rnp-natural__frame::after {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        90deg,
        rgba(18, 63, 91, 0.16),
        rgba(18, 63, 91, 0.94)
    );
    content: "";
}

.rnp-natural__overlay {
    position: absolute;
    z-index: 1;
    top: 50%;
    right: 50px;
    width: min(580px, calc(100% - 100px));
    transform: translateY(-50%);
}

.rnp-natural__label {
    margin-bottom: 6px;
    color: #bfe8fb;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.rnp-natural__example {
    margin-bottom: 23px;
    color: #ffffff;
    font-size: clamp(23px, 2.8vw, 37px);
    font-weight: 700;
    line-height: 1.22;
}

.rnp-natural__example:last-child {
    margin-bottom: 0;
}

.rnp-natural__text {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    gap: 62px;
    padding-top: 45px;
}

.rnp-natural__text p {
    margin-bottom: 18px;
    color: #587181;
}

/* Speaking cycle */

.rnp-speaking {
    padding: 79px 0;
    background-color: #dff2fc;
}

.rnp-speaking__layout {
    display: grid;
    grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
    gap: 66px;
}

.rnp-speaking__content p {
    margin-bottom: 18px;
    color: #587181;
}

.rnp-speaking__cycle {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.rnp-speaking__cycle article {
    padding: 22px;
    border-radius: 18px;
    background-color: rgba(255, 255, 255, 0.8);
}

.rnp-speaking__cycle span {
    display: block;
    margin-bottom: 17px;
    color: #2478a5;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
}

.rnp-speaking__cycle p {
    margin-bottom: 0;
    color: #587181;
    font-size: 15px;
}

/* Pronunciation */

.rnp-pronunciation {
    padding: 79px 0;
    background-color: #ffffff;
}

.rnp-pronunciation__layout {
    display: grid;
    grid-template-columns: minmax(330px, 0.82fr) minmax(0, 1.18fr);
    gap: 72px;
    align-items: start;
}

.rnp-pronunciation__visual {
    position: relative;
    padding: 11px;
    border-radius: 29px;
    background-color: #e5f4fb;
}

.rnp-pronunciation__image {
    min-height: 500px;
    border-radius: 21px;
    object-fit: cover;
}

.rnp-pronunciation__word {
    position: absolute;
    right: -20px;
    bottom: 29px;
    width: min(360px, 86%);
    padding: 22px;
    border-radius: 18px;
    background-color: #175b82;
    box-shadow: 0 17px 40px rgba(18, 70, 101, 0.22);
}

.rnp-pronunciation__word span {
    display: block;
    margin-bottom: 7px;
    color: #c6ebfc;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
}

.rnp-pronunciation__word p {
    margin-bottom: 0;
    color: #ffffff;
    font-size: 19px;
    font-weight: 700;
}

.rnp-pronunciation__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.rnp-pronunciation__targets {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin-top: 27px;
}

.rnp-pronunciation__targets article {
    padding: 18px;
    border-radius: 15px;
    background-color: #eef8fd;
}

.rnp-pronunciation__targets span {
    display: block;
    margin-bottom: 6px;
    color: #2678a5;
    font-size: 13px;
    font-weight: 700;
}

.rnp-pronunciation__targets p {
    margin-bottom: 0;
    color: #597181;
    font-size: 14px;
}

/* Corrections */

.rnp-corrections {
    padding: 79px 0;
    background-color: #eef8fd;
}

.rnp-corrections__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
}

.rnp-correction {
    min-height: 260px;
    padding: 26px;
    border-radius: 20px;
    background-color: #ffffff;
}

.rnp-correction--blue {
    color: #ffffff;
    background-color: #247dab;
}

.rnp-correction--soft {
    background-color: #dff2fc;
}

.rnp-correction span {
    display: block;
    margin-bottom: 26px;
    color: #2679a6;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.rnp-correction--blue span {
    color: #caedff;
}

.rnp-correction h3 {
    margin-bottom: 10px;
    font-size: 21px;
}

.rnp-correction--blue h3 {
    color: #ffffff;
}

.rnp-correction p {
    margin-bottom: 0;
    color: #597181;
    font-size: 16px;
}

.rnp-correction--blue p {
    color: rgba(255, 255, 255, 0.78);
}

.rnp-corrections__preference {
    margin-top: 14px;
    padding: 24px 27px;
    border-radius: 18px;
    color: #ffffff;
    background-color: #1d678f;
}

.rnp-corrections__preference p {
    margin-bottom: 0;
    color: #ffffff;
}

/* Mistakes */

.rnp-mistakes {
    padding: 79px 0;
    background-color: #ffffff;
}

.rnp-mistakes__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.7fr) minmax(0, 1.3fr);
    gap: 70px;
}

.rnp-mistakes__heading {
    align-self: start;
    padding: 29px;
    border-radius: 22px;
    background-color: #dff2fc;
}

.rnp-mistakes__heading > p:last-child {
    margin-bottom: 0;
    color: #587181;
}

.rnp-mistakes__examples {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.rnp-mistakes__examples article {
    padding: 22px;
    border: 1px solid rgba(31, 103, 144, 0.1);
    border-radius: 18px;
    background-color: #f4fafd;
}

.rnp-mistakes__examples span {
    display: block;
    margin-bottom: 6px;
    color: #2678a5;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
}

.rnp-mistakes__wrong {
    margin-bottom: 17px;
    color: #577180;
    font-size: 17px;
}

.rnp-mistakes__right {
    margin-bottom: 0;
    color: #1d5d82;
    font-size: 17px;
    font-weight: 700;
}

/* Topics */

.rnp-topics {
    padding: 79px 0;
    background-color: #dff2fc;
}

.rnp-topics__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 11px;
}

.rnp-topics__grid article {
    min-height: 245px;
    padding: 22px;
    border-radius: 18px;
    background-color: rgba(255, 255, 255, 0.81);
}

.rnp-topics__grid article:nth-child(3n + 2) {
    background-color: #ffffff;
}

.rnp-topics__grid span {
    display: block;
    margin-bottom: 24px;
    color: #2679a6;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.rnp-topics__grid h3 {
    margin-bottom: 9px;
    font-size: 18px;
}

.rnp-topics__grid p {
    margin-bottom: 0;
    color: #597181;
    font-size: 14px;
}

/* Banner */

.rnp-banner {
    padding: 79px 0;
    background-color: #ffffff;
}

.rnp-banner__frame {
    position: relative;
    overflow: hidden;
    min-height: 350px;
    border-radius: 30px;
    box-shadow: 0 22px 55px rgba(22, 75, 106, 0.17);
}

.rnp-banner__image {
    min-height: 350px;
    object-fit: cover;
}

.rnp-banner__frame::after {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        90deg,
        rgba(18, 63, 91, 0.15),
        rgba(18, 63, 91, 0.93)
    );
    content: "";
}

.rnp-banner__text {
    position: absolute;
    z-index: 1;
    top: 50%;
    right: 50px;
    width: min(610px, calc(100% - 100px));
    transform: translateY(-50%);
}

.rnp-banner__text p {
    margin-bottom: 0;
    color: #ffffff;
    font-size: clamp(29px, 3.65vw, 49px);
    font-weight: 700;
    line-height: 1.17;
    letter-spacing: -0.04em;
}

/* Fluency */

.rnp-fluency {
    padding: 79px 0;
    background-color: #eef8fd;
}

.rnp-fluency__layout {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    gap: 66px;
}

.rnp-fluency__content p {
    margin-bottom: 18px;
    color: #587181;
}

.rnp-fluency__phrases {
    display: grid;
    gap: 9px;
}

.rnp-fluency__phrases p {
    margin-bottom: 0;
    padding: 17px 19px;
    border-radius: 15px;
    color: #315d75;
    background-color: #ffffff;
}

.rnp-fluency__phrases p:nth-child(even) {
    background-color: #dff2fc;
}

.rnp-fluency__phrases span {
    color: #1e668f;
    font-weight: 700;
}

/* Partner */

.rnp-partner {
    padding: 79px 0;
    background-color: #ffffff;
}

.rnp-partner__header {
    max-width: 850px;
    margin-bottom: 36px;
}

.rnp-partner__header > p:last-child {
    color: #587181;
}

.rnp-partner__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.rnp-partner__grid article {
    min-height: 245px;
    padding: 23px;
    border-radius: 18px;
    background-color: #eef8fd;
}

.rnp-partner__grid article:nth-child(even) {
    background-color: #dff2fc;
}

.rnp-partner__grid span {
    display: block;
    margin-bottom: 25px;
    color: #2679a6;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.rnp-partner__grid h3 {
    margin-bottom: 9px;
    font-size: 19px;
}

.rnp-partner__grid p {
    margin-bottom: 0;
    color: #597181;
    font-size: 15px;
}

/* Paid practice */

.rnp-paid {
    padding: 79px 0;
    background-color: #dff2fc;
}

.rnp-paid__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.7fr) minmax(0, 1.3fr);
    gap: 70px;
}

.rnp-paid__heading {
    align-self: start;
    padding: 29px;
    border-radius: 22px;
    background-color: #ffffff;
}

.rnp-paid__heading > p:last-child {
    margin-bottom: 0;
    color: #587181;
}

.rnp-paid__content {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.rnp-paid__content article {
    padding: 22px;
    border-radius: 17px;
    background-color: rgba(255, 255, 255, 0.8);
}

.rnp-paid__content span {
    display: block;
    margin-bottom: 18px;
    color: #267aa8;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.rnp-paid__content h3 {
    margin-bottom: 8px;
    font-size: 18px;
}

.rnp-paid__content p {
    margin-bottom: 0;
    color: #597181;
    font-size: 15px;
}

/* Exchange */

.rnp-exchange {
    padding: 79px 0;
    background-color: #ffffff;
}

.rnp-exchange__comparison {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.rnp-exchange__column {
    padding: 29px;
    border-radius: 21px;
    background-color: #eaf6fd;
}

.rnp-exchange__column--blue {
    color: #ffffff;
    background-color: #1c628a;
}

.rnp-exchange__column-label {
    margin-bottom: 20px;
    color: #2679a6;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.rnp-exchange__column--blue .rnp-exchange__column-label {
    color: #c8ecff;
}

.rnp-exchange__column h3 {
    margin-bottom: 17px;
    font-size: 23px;
}

.rnp-exchange__column--blue h3 {
    color: #ffffff;
}

.rnp-exchange__column ul {
    padding-left: 21px;
    margin-bottom: 0;
}

.rnp-exchange__column li {
    margin-bottom: 9px;
    color: #4f7082;
}

.rnp-exchange__column--blue li {
    color: rgba(255, 255, 255, 0.8);
}

.rnp-exchange__note {
    margin: 14px 0 0;
    padding: 23px 26px;
    border-radius: 18px;
    color: #41687f;
    background-color: #eef8fd;
}

/* Progress */

.rnp-progress {
    padding: 79px 0;
    background-color: #eef8fd;
}

.rnp-progress__layout {
    display: grid;
    grid-template-columns: minmax(340px, 0.82fr) minmax(0, 1.18fr);
    gap: 72px;
    align-items: start;
}

.rnp-progress__visual {
    position: relative;
}

.rnp-progress__image {
    min-height: 545px;
    border-radius: 29px;
    object-fit: cover;
    box-shadow: 0 22px 55px rgba(22, 76, 108, 0.17);
}

.rnp-progress__caption {
    position: absolute;
    right: -22px;
    bottom: 30px;
    width: min(350px, 84%);
    padding: 22px;
    border-radius: 18px;
    background-color: #ffffff;
    box-shadow: 0 17px 40px rgba(20, 72, 102, 0.16);
}

.rnp-progress__caption p {
    margin-bottom: 0;
    color: #315b72;
    font-size: 16px;
}

.rnp-progress__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.rnp-progress__markers {
    display: grid;
    gap: 9px;
    margin-top: 27px;
}

.rnp-progress__markers article {
    display: grid;
    grid-template-columns: 62px minmax(0, 1fr);
    gap: 7px 14px;
    padding: 17px;
    border-radius: 15px;
    background-color: #ffffff;
}

.rnp-progress__markers span {
    color: #2678a5;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
}

.rnp-progress__markers p {
    margin-bottom: 0;
    color: #597181;
    font-size: 14px;
}

/* Plan */

.rnp-plan {
    padding: 79px 0;
    background-color: #ffffff;
}

.rnp-plan__header {
    max-width: 850px;
    margin-bottom: 36px;
}

.rnp-plan__header > p:last-child {
    color: #587181;
}

.rnp-plan__options {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.rnp-plan__options article {
    min-height: 265px;
    padding: 23px;
    border-top: 5px solid #2a82b3;
    border-radius: 0 0 18px 18px;
    background-color: #eef8fd;
}

.rnp-plan__options span {
    display: block;
    margin-bottom: 27px;
    color: #2678a5;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.rnp-plan__options h3 {
    margin-bottom: 9px;
    font-size: 19px;
}

.rnp-plan__options p {
    margin-bottom: 0;
    color: #597181;
    font-size: 15px;
}

.rnp-plan__formula {
    margin-top: 14px;
    padding: 24px 27px;
    border-radius: 18px;
    color: #ffffff;
    background-color: #1d678f;
}

.rnp-plan__formula p {
    margin-bottom: 0;
    color: #ffffff;
}

/* Boundaries */

.rnp-boundaries {
    padding: 80px 0;
    color: #ffffff;
    background-color: #133f5a;
}

.rnp-boundaries__header {
    max-width: 850px;
    margin-bottom: 35px;
}

.rnp-boundaries__header p:last-child {
    color: rgba(255, 255, 255, 0.73);
}

.rnp-boundaries__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.rnp-boundary-card {
    padding: 28px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 20px;
    background-color: rgba(255, 255, 255, 0.07);
}

.rnp-boundary-card--light {
    background-color: rgba(91, 183, 228, 0.18);
}

.rnp-boundary-card h3 {
    margin-bottom: 17px;
    color: #ffffff;
    font-size: 23px;
}

.rnp-boundary-card ul {
    padding-left: 21px;
    margin-bottom: 0;
}

.rnp-boundary-card li {
    margin-bottom: 9px;
    color: rgba(255, 255, 255, 0.78);
}

.rnp-boundaries__note {
    margin-top: 15px;
    margin-bottom: 0;
    padding: 23px 26px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 18px;
    color: #bfe3f7;
    background-color: rgba(255, 255, 255, 0.05);
    font-size: 15px;
}

/* Start */

.rnp-start {
    padding: 79px 0;
    background-color: #dff2fc;
}

.rnp-start__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.7fr) minmax(0, 1.3fr);
    gap: 72px;
}

.rnp-start__heading {
    align-self: start;
    padding: 28px;
    border-radius: 21px;
    background-color: #ffffff;
}

.rnp-start__heading > p:last-child {
    margin-bottom: 0;
    color: #597181;
}

.rnp-start__phrases {
    display: grid;
    gap: 8px;
    margin-bottom: 24px;
}

.rnp-start__phrases p {
    margin-bottom: 0;
    padding: 15px 18px;
    border-radius: 14px;
    color: #225f82;
    background-color: rgba(255, 255, 255, 0.78);
}

.rnp-start__content > p {
    margin-bottom: 0;
    color: #587181;
}

/* FAQ */

.rnp-faq {
    padding: 79px 0;
    background-color: #ffffff;
}

.rnp-faq__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
}

.rnp-faq-item {
    padding: 24px;
    border: 1px solid rgba(31, 103, 144, 0.09);
    border-radius: 18px;
    background-color: #f2f9fd;
}

.rnp-faq-item:nth-child(3n + 2) {
    background-color: #dff1fb;
}

.rnp-faq-item h3 {
    margin-bottom: 10px;
    font-size: 20px;
    line-height: 1.25;
}

.rnp-faq-item p {
    margin-bottom: 0;
    color: #587181;
    font-size: 16px;
}

/* Final thought */

.rnp-final-thought {
    padding: 79px 0;
    background-color: #cceafa;
}

.rnp-final-thought__inner {
    max-width: 1010px;
}

.rnp-final-thought__inner > p {
    margin-bottom: 12px;
    color: #57778a;
    font-size: clamp(21px, 2.5vw, 30px);
}

.rnp-final-thought h2 {
    max-width: 990px;
    margin-bottom: 0;
    color: #154d70;
    font-size: clamp(40px, 5.2vw, 70px);
    line-height: 1.04;
    letter-spacing: -0.055em;
}

/* Final CTA */

.rnp-final {
    padding: 79px 0;
    background-color: #eef8fd;
}

.rnp-final__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.22fr) minmax(290px, 0.78fr);
    gap: 45px;
    padding: 49px;
    border-radius: 31px;
    color: #ffffff;
    background:
        radial-gradient(circle at 84% 16%, rgba(123, 206, 247, 0.28), transparent 35%),
        #17577d;
    box-shadow: 0 23px 58px rgba(20, 77, 111, 0.22);
}

.rnp-final__title {
    margin-bottom: 21px;
    color: #ffffff;
    font-size: clamp(43px, 5.5vw, 72px);
    line-height: 1.02;
    letter-spacing: -0.055em;
}

.rnp-final__content > p:not(.rnp-label) {
    max-width: 730px;
    margin-bottom: 21px;
    color: rgba(255, 255, 255, 0.76);
}

.rnp-final__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 11px;
    margin: 27px 0 25px;
}

.rnp-final__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.rnp-final__tags span {
    padding: 8px 12px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 999px;
    color: rgba(255, 255, 255, 0.76);
    font-size: 13px;
}

.rnp-final__aside {
    align-self: end;
    padding: 25px;
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 19px;
    background-color: rgba(255, 255, 255, 0.08);
}

.rnp-final__aside-label {
    margin-bottom: 12px;
    color: #c5e9fb;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.rnp-final__aside a {
    display: inline-block;
    margin-bottom: 16px;
    color: #ffffff;
    font-size: 18px;
    font-weight: 700;
    overflow-wrap: anywhere;
    text-decoration-color: rgba(255, 255, 255, 0.45);
    text-underline-offset: 4px;
}

.rnp-final__aside p:last-child {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.7);
    font-size: 15px;
}

/* Tablet */

@media (max-width: 1080px) {
    .rnp-levels__grid,
    .rnp-topics__grid,
    .rnp-plan__options {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 1040px) {
    .rnp-hero__layout {
        grid-template-columns: minmax(0, 1fr) minmax(350px, 0.86fr);
        gap: 44px;
    }

    .rnp-partner__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .rnp-hero__layout,
    .rnp-intro__layout,
    .rnp-native__layout,
    .rnp-session__layout,
    .rnp-natural__text,
    .rnp-speaking__layout,
    .rnp-pronunciation__layout,
    .rnp-mistakes__layout,
    .rnp-fluency__layout,
    .rnp-paid__layout,
    .rnp-progress__layout,
    .rnp-start__layout,
    .rnp-final__layout {
        grid-template-columns: 1fr;
    }

    .rnp-intro__heading {
        position: static;
    }

    .rnp-hero__visual,
    .rnp-native__visual,
    .rnp-pronunciation__visual,
    .rnp-progress__visual {
        max-width: 760px;
    }

    .rnp-final__aside {
        max-width: 620px;
    }
}

/* Mobile */

@media (max-width: 760px) {
    .rnp-page {
        font-size: 17px;
    }

    .rnp-shell {
        width: calc(100% - 32px);
    }

    .rnp-hero,
    .rnp-intro,
    .rnp-gap,
    .rnp-phrase,
    .rnp-native,
    .rnp-session,
    .rnp-levels,
    .rnp-natural,
    .rnp-speaking,
    .rnp-pronunciation,
    .rnp-corrections,
    .rnp-mistakes,
    .rnp-topics,
    .rnp-banner,
    .rnp-fluency,
    .rnp-partner,
    .rnp-paid,
    .rnp-exchange,
    .rnp-progress,
    .rnp-plan,
    .rnp-boundaries,
    .rnp-start,
    .rnp-faq,
    .rnp-final-thought,
    .rnp-final {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .rnp-section-head {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .rnp-gap__grid,
    .rnp-corrections__grid,
    .rnp-exchange__comparison,
    .rnp-boundaries__grid,
    .rnp-faq__grid {
        grid-template-columns: 1fr;
    }

    .rnp-gap-card--wide {
        grid-column: auto;
        grid-template-columns: 1fr;
    }

    .rnp-native__caption,
    .rnp-progress__caption {
        position: relative;
        right: auto;
        bottom: auto;
        width: calc(100% - 28px);
        margin: -31px auto 0;
    }

    .rnp-native__contrast,
    .rnp-pronunciation__targets,
    .rnp-mistakes__examples,
    .rnp-paid__content {
        grid-template-columns: 1fr;
    }

    .rnp-natural__frame,
    .rnp-natural__image,
    .rnp-banner__frame,
    .rnp-banner__image {
        min-height: 390px;
    }

    .rnp-natural__frame::after,
    .rnp-banner__frame::after {
        background: linear-gradient(
            0deg,
            rgba(18, 63, 91, 0.96),
            rgba(18, 63, 91, 0.12)
        );
    }

    .rnp-natural__overlay,
    .rnp-banner__text {
        top: auto;
        right: 26px;
        bottom: 28px;
        left: 26px;
        width: auto;
        transform: none;
    }

    .rnp-final__layout {
        padding: 34px;
    }
}

@media (max-width: 560px) {
    .rnp-page {
        font-size: 16px;
        line-height: 1.6;
    }

    .rnp-shell {
        width: calc(100% - 24px);
    }

    .rnp-label,
    .rnp-eyebrow {
        margin-bottom: 10px;
        font-size: 11px;
    }

    .rnp-heading {
        margin-bottom: 18px;
        font-size: clamp(31px, 9.8vw, 44px);
    }

    .rnp-hero {
        padding-top: 38px;
        padding-bottom: 72px;
    }

    .rnp-hero__layout {
        gap: 52px;
    }

    .rnp-hero__title {
        font-size: clamp(41px, 12.4vw, 58px);
    }

    .rnp-hero__lead {
        font-size: 19px;
    }

    .rnp-hero__actions,
    .rnp-final__actions {
        flex-direction: column;
    }

    .rnp-hero__actions .rnp-button,
    .rnp-final__actions .rnp-button {
        width: 100%;
    }

    .rnp-hero__visual {
        min-height: 0;
        padding: 9px;
        border-radius: 22px;
    }

    .rnp-hero__image {
        min-height: 350px;
        border-radius: 16px;
    }

    .rnp-hero__dialogue,
    .rnp-hero__level {
        position: relative;
        right: auto;
        bottom: auto;
        left: auto;
        width: calc(100% - 26px);
        margin-right: auto;
        margin-left: auto;
    }

    .rnp-hero__dialogue {
        margin-top: -25px;
    }

    .rnp-hero__level {
        margin-top: 10px;
    }

    .rnp-intro,
    .rnp-gap,
    .rnp-phrase,
    .rnp-native,
    .rnp-session,
    .rnp-levels,
    .rnp-natural,
    .rnp-speaking,
    .rnp-pronunciation,
    .rnp-corrections,
    .rnp-mistakes,
    .rnp-topics,
    .rnp-banner,
    .rnp-fluency,
    .rnp-partner,
    .rnp-paid,
    .rnp-exchange,
    .rnp-progress,
    .rnp-plan,
    .rnp-boundaries,
    .rnp-start,
    .rnp-faq,
    .rnp-final-thought,
    .rnp-final {
        padding-top: 52px;
        padding-bottom: 52px;
    }

    .rnp-intro__heading,
    .rnp-session__heading,
    .rnp-mistakes__heading,
    .rnp-paid__heading,
    .rnp-start__heading {
        padding: 22px;
        border-radius: 18px;
    }

    .rnp-gap-card,
    .rnp-correction,
    .rnp-faq-item {
        min-height: 0;
        padding: 21px;
        border-radius: 17px;
    }

    .rnp-native__image,
    .rnp-pronunciation__image,
    .rnp-progress__image {
        min-height: 390px;
        border-radius: 21px;
    }

    .rnp-pronunciation__word {
        position: relative;
        right: auto;
        bottom: auto;
        width: calc(100% - 28px);
        margin: -30px auto 0;
    }

    .rnp-session__steps article {
        grid-template-columns: 1fr;
    }

    .rnp-speaking__cycle,
    .rnp-levels__grid,
    .rnp-topics__grid,
    .rnp-partner__grid,
    .rnp-plan__options {
        grid-template-columns: 1fr;
    }

    .rnp-levels__grid article,
    .rnp-topics__grid article,
    .rnp-plan__options article {
        min-height: 0;
    }

    .rnp-natural__example {
        font-size: 24px;
    }

    .rnp-banner__text p {
        font-size: 27px;
    }

    .rnp-progress__markers article {
        grid-template-columns: 1fr;
    }

    .rnp-final__layout {
        padding: 25px 21px;
        border-radius: 22px;
    }

    .rnp-final__title {
        font-size: clamp(38px, 11.5vw, 52px);
    }
}

@media (max-width: 375px) {
    .rnp-shell {
        width: calc(100% - 20px);
    }

    .rnp-hero__title {
        font-size: 39px;
    }

    .rnp-button {
        min-height: 50px;
        padding-right: 16px;
        padding-left: 16px;
        font-size: 15px;
    }

    .rnp-hero__image {
        min-height: 320px;
    }

    .rnp-gap-card,
    .rnp-correction,
    .rnp-faq-item {
        padding-right: 18px;
        padding-left: 18px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rnp-page *,
    .rnp-page *::before,
    .rnp-page *::after {
        animation-duration: 0.01ms;
        animation-iteration-count: 1;
        scroll-behavior: auto;
        transition-duration: 0.01ms;
    }

    .rnp-button:hover {
        transform: none;
    }
}

_____________________________________________________________
страница 14 Russian speaking practice for beginners and students

.bsp-page {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
    color: #203846;
    background-color: #ffffff;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 18px;
    line-height: 1.66;
}

.bsp-page *,
.bsp-page *::before,
.bsp-page *::after {
    box-sizing: border-box;
}

.bsp-page section,
.bsp-page div,
.bsp-page article,
.bsp-page aside,
.bsp-page picture {
    min-width: 0;
}

.bsp-page img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
}

.bsp-page h1,
.bsp-page h2,
.bsp-page h3,
.bsp-page p,
.bsp-page ul {
    margin-top: 0;
}

.bsp-page h1,
.bsp-page h2,
.bsp-page h3 {
    color: #163e58;
    font-weight: 700;
    line-height: 1.1;
    text-wrap: balance;
}

.bsp-page p,
.bsp-page li {
    text-wrap: pretty;
}

.bsp-shell {
    width: calc(100% - 48px);
    max-width: 1200px;
    margin-right: auto;
    margin-left: auto;
}

.bsp-label,
.bsp-eyebrow {
    margin-bottom: 13px;
    color: #2879a4;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.11em;
    text-transform: uppercase;
}

.bsp-label--light {
    color: #c8edff;
}

.bsp-heading {
    margin-bottom: 21px;
    font-size: clamp(36px, 4.15vw, 59px);
    line-height: 1.05;
    letter-spacing: -0.046em;
}

.bsp-heading--light {
    color: #ffffff;
}

.bsp-text-link {
    color: #1d709f;
    font-weight: 700;
    text-decoration-color: rgba(29, 112, 159, 0.42);
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;
    transition:
        color 160ms ease,
        text-decoration-color 160ms ease;
}

.bsp-text-link:hover {
    color: #13577d;
    text-decoration-color: currentColor;
}

.bsp-button {
    display: inline-flex;
    min-height: 52px;
    align-items: center;
    justify-content: center;
    padding: 14px 24px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    transition:
        transform 180ms ease,
        color 180ms ease,
        background-color 180ms ease,
        border-color 180ms ease,
        box-shadow 180ms ease;
}

.bsp-button:hover {
    transform: translateY(-2px);
}

.bsp-button:focus-visible,
.bsp-text-link:focus-visible,
.bsp-final__aside a:focus-visible {
    outline: 3px solid rgba(39, 130, 181, 0.42);
    outline-offset: 4px;
}

.bsp-button--primary {
    color: #ffffff;
    background-color: #247eae;
    box-shadow: 0 12px 28px rgba(27, 101, 143, 0.25);
}

.bsp-button--primary:hover {
    color: #ffffff;
    background-color: #175c84;
    box-shadow: 0 16px 36px rgba(22, 91, 131, 0.3);
}

.bsp-button--outline {
    color: #1e638b;
    border-color: rgba(31, 111, 159, 0.35);
    background-color: rgba(255, 255, 255, 0.76);
}

.bsp-button--outline:hover {
    color: #144c6c;
    border-color: #2a85b6;
    background-color: #e9f6fd;
}

.bsp-button--white {
    color: #145477;
    background-color: #ffffff;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.14);
}

.bsp-button--white:hover {
    color: #103f5a;
    background-color: #eaf8ff;
}

.bsp-button--outline-white {
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.66);
    background-color: transparent;
}

.bsp-button--outline-white:hover {
    color: #145477;
    border-color: #ffffff;
    background-color: #ffffff;
}

.bsp-section-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 0.6fr);
    gap: 48px;
    align-items: end;
    margin-bottom: 38px;
}

.bsp-section-head__intro {
    margin-bottom: 20px;
    color: #5a7383;
}

.bsp-section-head--light .bsp-section-head__intro {
    color: rgba(255, 255, 255, 0.73);
}

/* Hero */

.bsp-hero {
    position: relative;
    padding: 62px 0 86px;
    background:
        radial-gradient(circle at 12% 8%, rgba(166, 220, 248, 0.57), transparent 31%),
        linear-gradient(142deg, #ffffff 0%, #eef8fd 51%, #d7eefb 100%);
}

.bsp-hero::before {
    position: absolute;
    right: 5%;
    bottom: 8%;
    width: 280px;
    height: 280px;
    border: 1px solid rgba(38, 125, 172, 0.13);
    border-radius: 50%;
    content: "";
    pointer-events: none;
}

.bsp-hero__layout {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.12fr) minmax(380px, 0.88fr);
    gap: 64px;
    align-items: center;
}

.bsp-hero__title {
    max-width: 810px;
    margin-bottom: 24px;
    font-size: clamp(51px, 6.3vw, 87px);
    line-height: 0.98;
    letter-spacing: -0.066em;
}

.bsp-hero__lead {
    max-width: 705px;
    margin-bottom: 17px;
    color: #29495e;
    font-size: clamp(21px, 2vw, 27px);
    line-height: 1.43;
}

.bsp-hero__text {
    max-width: 680px;
    margin-bottom: 28px;
    color: #587181;
}

.bsp-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 25px;
}

.bsp-hero__markers {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.bsp-hero__markers span {
    padding: 9px 13px;
    border: 1px solid rgba(31, 107, 150, 0.13);
    border-radius: 999px;
    color: #4f7084;
    background-color: rgba(255, 255, 255, 0.72);
    font-size: 13px;
}

.bsp-hero__visual {
    position: relative;
    min-height: 630px;
    padding: 23px 23px 140px;
    border: 1px solid rgba(35, 112, 155, 0.1);
    border-radius: 34px;
    background-color: rgba(255, 255, 255, 0.86);
    box-shadow: 0 25px 65px rgba(23, 85, 120, 0.17);
}

.bsp-hero__photo-wrap {
    overflow: hidden;
    width: 72%;
    height: 455px;
    margin-left: auto;
    border-radius: 130px 130px 28px 28px;
    background-color: #dceff9;
}

.bsp-hero__image {
    height: 100%;
    object-fit: cover;
}

.bsp-hero__conversation {
    position: absolute;
    bottom: 62px;
    left: -27px;
    width: min(365px, 84%);
    padding: 23px 25px;
    border-radius: 20px;
    background-color: #17577d;
    box-shadow: 0 18px 43px rgba(15, 72, 105, 0.26);
}

.bsp-hero__speaker {
    margin-bottom: 7px;
    color: #bfe9fc;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.bsp-hero__russian {
    margin-bottom: 5px;
    color: #ffffff;
    font-size: 21px;
    font-weight: 700;
}

.bsp-hero__translation {
    margin-bottom: 15px;
    color: rgba(255, 255, 255, 0.67);
    font-size: 13px;
}

.bsp-hero__answer {
    margin-bottom: 0;
    padding-top: 13px;
    border-top: 1px solid rgba(255, 255, 255, 0.16);
    color: #ffffff;
    font-size: 18px;
}

.bsp-hero__note {
    position: absolute;
    right: -20px;
    bottom: -39px;
    width: min(325px, 77%);
    padding: 20px 22px;
    border-radius: 19px;
    background-color: #cceafa;
    box-shadow: 0 16px 38px rgba(24, 84, 117, 0.16);
}

.bsp-hero__note span {
    display: block;
    margin-bottom: 6px;
    color: #2477a3;
    font-size: 13px;
    font-weight: 700;
}

.bsp-hero__note p {
    margin-bottom: 0;
    color: #315b72;
    font-size: 14px;
    line-height: 1.48;
}

/* Opening */

.bsp-opening {
    padding: 98px 0 78px;
    background-color: #ffffff;
}

.bsp-opening__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.75fr) minmax(0, 1.25fr);
    gap: 78px;
    align-items: start;
}

.bsp-opening__heading {
    position: sticky;
    top: 32px;
    padding: 31px;
    border-radius: 23px;
    background-color: #dff2fc;
}

.bsp-opening__heading .bsp-heading {
    margin-bottom: 0;
}

.bsp-opening__content {
    max-width: 740px;
}

.bsp-opening__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.bsp-opening__large {
    color: #27485e;
    font-size: clamp(23px, 2.4vw, 31px);
    line-height: 1.38;
}

.bsp-opening__accent {
    margin-top: 28px;
    padding: 25px 28px;
    border-left: 4px solid #2b84b4;
    border-radius: 0 18px 18px 0;
    background-color: #f0f9fe;
}

.bsp-opening__accent p {
    margin-bottom: 0;
    color: #28536e;
    font-size: 20px;
}

/* Barriers */

.bsp-barriers {
    padding: 78px 0;
    background-color: #eff8fd;
}

.bsp-barriers__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 15px;
}

.bsp-barrier {
    min-height: 270px;
    padding: 29px;
    border: 1px solid rgba(34, 104, 144, 0.1);
    border-radius: 22px;
    background-color: #ffffff;
}

.bsp-barrier--deep {
    color: #ffffff;
    border-color: #247aab;
    background-color: #247aab;
}

.bsp-barrier--pale {
    background-color: #dff2fc;
}

.bsp-barrier--wide {
    display: grid;
    grid-column: span 2;
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 24px;
    min-height: 0;
    background-color: #cceafa;
}

.bsp-barrier__number {
    display: block;
    margin-bottom: 36px;
    color: #2479a8;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.13em;
}

.bsp-barrier--deep .bsp-barrier__number {
    color: #caedff;
}

.bsp-barrier--wide .bsp-barrier__number {
    margin-bottom: 0;
    font-size: 20px;
}

.bsp-barrier h3 {
    margin-bottom: 12px;
    font-size: 23px;
}

.bsp-barrier--deep h3 {
    color: #ffffff;
}

.bsp-barrier p {
    margin-bottom: 0;
    color: #5a7281;
    font-size: 17px;
}

.bsp-barrier--deep p {
    color: rgba(255, 255, 255, 0.78);
}

/* Quote */

.bsp-quote {
    padding: 79px 0;
    background-color: #cceafa;
}

.bsp-quote__inner {
    max-width: 1010px;
}

.bsp-quote__small {
    margin-bottom: 12px;
    color: #55778a;
    font-size: clamp(21px, 2.4vw, 29px);
}

.bsp-quote__large {
    max-width: 990px;
    margin-bottom: 0;
    color: #154d70;
    font-size: clamp(41px, 5.25vw, 72px);
    font-weight: 700;
    line-height: 1.04;
    letter-spacing: -0.055em;
}

/* Levels */

.bsp-levels {
    padding: 79px 0;
    background-color: #ffffff;
}

.bsp-levels__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.18fr) minmax(340px, 0.82fr);
    gap: 70px;
    align-items: center;
}

.bsp-levels__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.bsp-levels__cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 11px;
    margin-top: 27px;
}

.bsp-level-card {
    padding: 24px;
    border-radius: 19px;
    background-color: #eaf6fd;
}

.bsp-level-card--blue {
    color: #ffffff;
    background-color: #1d678f;
}

.bsp-level-card > span {
    display: flex;
    width: 48px;
    height: 48px;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    border-radius: 50%;
    color: #ffffff;
    background-color: #287dab;
    font-size: 13px;
    font-weight: 700;
}

.bsp-level-card--blue > span {
    color: #1d678f;
    background-color: #c8ecff;
}

.bsp-level-card h3 {
    margin-bottom: 13px;
    font-size: 21px;
}

.bsp-level-card--blue h3 {
    color: #ffffff;
}

.bsp-level-card ul {
    padding-left: 20px;
    margin-bottom: 0;
}

.bsp-level-card li {
    margin-bottom: 7px;
    color: #567181;
    font-size: 14px;
}

.bsp-level-card--blue li {
    color: rgba(255, 255, 255, 0.8);
}

.bsp-levels__visual {
    position: relative;
    padding: 12px;
    border-radius: 29px;
    background-color: #e5f4fb;
}

.bsp-levels__image {
    min-height: 510px;
    border-radius: 21px;
    object-fit: cover;
}

.bsp-levels__example {
    position: absolute;
    right: -22px;
    bottom: 29px;
    width: min(370px, 88%);
    padding: 22px;
    border-radius: 18px;
    background-color: #ffffff;
    box-shadow: 0 17px 40px rgba(20, 72, 102, 0.16);
}

.bsp-levels__example-label {
    margin-bottom: 7px;
    color: #2679a6;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
}

.bsp-levels__example-russian {
    margin-bottom: 8px;
    color: #194f70;
    font-size: 18px;
    font-weight: 700;
}

.bsp-levels__example-translation {
    margin-bottom: 0;
    color: #647c8a;
    font-size: 13px;
}

/* Session */

.bsp-session {
    padding: 80px 0;
    color: #ffffff;
    background-color: #17445f;
}

.bsp-session__steps {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.bsp-session__steps article {
    min-height: 270px;
    padding: 23px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 18px;
    background-color: rgba(255, 255, 255, 0.07);
}

.bsp-session__steps article:nth-child(even) {
    background-color: rgba(88, 181, 228, 0.16);
}

.bsp-session__steps span {
    display: flex;
    width: 45px;
    height: 45px;
    align-items: center;
    justify-content: center;
    margin-bottom: 27px;
    border-radius: 50%;
    color: #17445f;
    background-color: #c8ecff;
    font-size: 12px;
    font-weight: 700;
}

.bsp-session__steps h3 {
    margin-bottom: 10px;
    color: #ffffff;
    font-size: 19px;
}

.bsp-session__steps p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.75);
    font-size: 15px;
}

.bsp-session__note {
    margin-top: 14px;
    padding: 23px 26px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 18px;
    background-color: rgba(255, 255, 255, 0.06);
}

.bsp-session__note p {
    margin-bottom: 0;
    color: #c3e7f8;
}

/* Simple conversation */

.bsp-simple {
    padding: 79px 0;
    background-color: #eef8fd;
}

.bsp-simple__layout {
    display: grid;
    grid-template-columns: minmax(330px, 0.78fr) minmax(0, 1.22fr);
    gap: 74px;
    align-items: start;
}

.bsp-simple__visual {
    position: relative;
}

.bsp-simple__image {
    min-height: 570px;
    border-radius: 30px;
    object-fit: cover;
    box-shadow: 0 22px 55px rgba(22, 76, 108, 0.17);
}

.bsp-simple__caption {
    position: absolute;
    right: -22px;
    bottom: 30px;
    width: min(350px, 84%);
    padding: 22px;
    border-radius: 18px;
    background-color: #ffffff;
    box-shadow: 0 17px 40px rgba(20, 72, 102, 0.16);
}

.bsp-simple__caption p {
    margin-bottom: 0;
    color: #315b72;
    font-size: 16px;
}

.bsp-simple__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.bsp-simple__conversation {
    display: grid;
    gap: 8px;
    margin: 25px 0;
}

.bsp-simple__line {
    max-width: 88%;
    padding: 15px 18px;
    border-radius: 16px;
}

.bsp-simple__line--native {
    justify-self: start;
    border-bottom-left-radius: 4px;
    background-color: #d8effb;
}

.bsp-simple__line--learner {
    justify-self: end;
    border-bottom-right-radius: 4px;
    background-color: #ffffff;
}

.bsp-simple__line span {
    display: block;
    margin-bottom: 4px;
    color: #2878a4;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
}

.bsp-simple__line p {
    margin-bottom: 0;
    color: #26536c;
    font-size: 16px;
}

/* Foundation */

.bsp-foundation {
    padding: 79px 0;
    background-color: #ffffff;
}

.bsp-foundation__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.bsp-foundation__grid article {
    min-height: 245px;
    padding: 23px;
    border-radius: 18px;
    background-color: #eef8fd;
}

.bsp-foundation__grid article:nth-child(even) {
    background-color: #dff2fc;
}

.bsp-foundation__grid span {
    display: block;
    margin-bottom: 25px;
    color: #2477a3;
    font-size: 19px;
    font-weight: 700;
}

.bsp-foundation__grid h3 {
    margin-bottom: 9px;
    font-size: 19px;
}

.bsp-foundation__grid p {
    margin-bottom: 0;
    color: #597181;
    font-size: 15px;
}

/* Pronunciation */

.bsp-pronunciation {
    padding: 79px 0;
    background-color: #dff2fc;
}

.bsp-pronunciation__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(330px, 0.95fr);
    gap: 68px;
}

.bsp-pronunciation__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.bsp-pronunciation__examples {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin-top: 26px;
}

.bsp-pronunciation__examples article {
    padding: 18px;
    border-radius: 15px;
    background-color: rgba(255, 255, 255, 0.8);
}

.bsp-pronunciation__examples span {
    display: block;
    margin-bottom: 7px;
    color: #216c96;
    font-size: 18px;
    font-weight: 700;
}

.bsp-pronunciation__examples p {
    margin-bottom: 0;
    color: #597181;
    font-size: 14px;
}

.bsp-pronunciation__panel {
    align-self: start;
    padding: 28px;
    border-radius: 23px;
    color: #ffffff;
    background-color: #175b82;
}

.bsp-pronunciation__panel-label {
    margin-bottom: 19px;
    color: #ffffff;
    font-size: 21px;
    font-weight: 700;
}

.bsp-pronunciation__panel article {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 13px;
    align-items: center;
    padding: 14px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.13);
}

.bsp-pronunciation__panel article span {
    display: flex;
    width: 32px;
    height: 32px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #175b82;
    background-color: #c8ecff;
    font-size: 11px;
    font-weight: 700;
}

.bsp-pronunciation__panel article p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.8);
    font-size: 15px;
}

.bsp-pronunciation__panel-note {
    margin: 20px 0 0;
    color: #c6e8f8;
    font-size: 14px;
}

/* Banner */

.bsp-banner {
    padding: 79px 0;
    background-color: #ffffff;
}

.bsp-banner__frame {
    position: relative;
    overflow: hidden;
    min-height: 390px;
    border-radius: 30px;
    box-shadow: 0 22px 55px rgba(22, 75, 106, 0.17);
}

.bsp-banner__image {
    min-height: 390px;
    object-fit: cover;
}

.bsp-banner__frame::after {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        90deg,
        rgba(18, 63, 91, 0.13),
        rgba(18, 63, 91, 0.94)
    );
    content: "";
}

.bsp-banner__content {
    position: absolute;
    z-index: 1;
    top: 50%;
    right: 50px;
    width: min(610px, calc(100% - 100px));
    transform: translateY(-50%);
}

.bsp-banner__small {
    margin-bottom: 10px;
    color: #cbefff;
    font-size: 16px;
}

.bsp-banner__large {
    margin-bottom: 0;
    color: #ffffff;
    font-size: clamp(30px, 3.7vw, 50px);
    font-weight: 700;
    line-height: 1.16;
    letter-spacing: -0.04em;
}

/* Corrections */

.bsp-corrections {
    padding: 79px 0;
    background-color: #eef8fd;
}

.bsp-corrections__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
}

.bsp-correction {
    min-height: 260px;
    padding: 26px;
    border-radius: 20px;
    background-color: #ffffff;
}

.bsp-correction--blue {
    color: #ffffff;
    background-color: #247dab;
}

.bsp-correction--soft {
    background-color: #dff2fc;
}

.bsp-correction span {
    display: block;
    margin-bottom: 26px;
    color: #2679a6;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.bsp-correction--blue span {
    color: #caedff;
}

.bsp-correction h3 {
    margin-bottom: 10px;
    font-size: 21px;
}

.bsp-correction--blue h3 {
    color: #ffffff;
}

.bsp-correction p {
    margin-bottom: 0;
    color: #597181;
    font-size: 16px;
}

.bsp-correction--blue p {
    color: rgba(255, 255, 255, 0.78);
}

.bsp-corrections__request {
    margin-top: 14px;
    padding: 24px 27px;
    border-radius: 18px;
    color: #ffffff;
    background-color: #1d678f;
}

.bsp-corrections__request p {
    margin-bottom: 0;
    color: #ffffff;
}

/* Confidence */

.bsp-confidence {
    padding: 79px 0;
    background-color: #ffffff;
}

.bsp-confidence__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.68fr) minmax(0, 1.32fr);
    gap: 70px;
}

.bsp-confidence__heading {
    align-self: start;
    padding: 29px;
    border-radius: 22px;
    background-color: #dff2fc;
}

.bsp-confidence__heading > p:last-child {
    margin-bottom: 0;
    color: #587181;
}

.bsp-confidence__steps {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.bsp-confidence__steps article {
    padding: 22px;
    border-radius: 17px;
    background-color: #f1f9fd;
}

.bsp-confidence__steps span {
    display: block;
    margin-bottom: 18px;
    color: #267aa8;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.bsp-confidence__steps h3 {
    margin-bottom: 8px;
    font-size: 18px;
}

.bsp-confidence__steps p {
    margin-bottom: 0;
    color: #597181;
    font-size: 15px;
}

.bsp-confidence__wide {
    grid-column: span 2;
    color: #ffffff;
    background-color: #1c648c !important;
}

.bsp-confidence__wide span,
.bsp-confidence__wide h3 {
    color: #ffffff;
}

.bsp-confidence__wide p {
    color: rgba(255, 255, 255, 0.78);
}

/* Rescue phrases */

.bsp-rescue {
    padding: 79px 0;
    background-color: #dff2fc;
}

.bsp-rescue__header {
    max-width: 860px;
    margin-bottom: 36px;
}

.bsp-rescue__header > p:last-child {
    color: #587181;
}

.bsp-rescue__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.bsp-rescue__grid article {
    padding: 20px;
    border-radius: 17px;
    background-color: rgba(255, 255, 255, 0.8);
}

.bsp-rescue__grid article:nth-child(3n + 2) {
    background-color: #ffffff;
}

.bsp-rescue__russian {
    margin-bottom: 6px;
    color: #1c5d82;
    font-size: 19px;
    font-weight: 700;
}

.bsp-rescue__english {
    margin-bottom: 0;
    color: #617988;
    font-size: 14px;
}

/* Students */

.bsp-students {
    padding: 79px 0;
    background-color: #ffffff;
}

.bsp-students__layout {
    display: grid;
    grid-template-columns: minmax(340px, 0.8fr) minmax(0, 1.2fr);
    gap: 72px;
    align-items: start;
}

.bsp-students__visual {
    position: relative;
}

.bsp-students__image {
    min-height: 540px;
    border-radius: 29px;
    object-fit: cover;
    box-shadow: 0 22px 55px rgba(22, 76, 108, 0.17);
}

.bsp-students__visual-text {
    position: absolute;
    right: -22px;
    bottom: 30px;
    width: min(350px, 84%);
    padding: 22px;
    border-radius: 18px;
    background-color: #cceafa;
    box-shadow: 0 17px 40px rgba(20, 72, 102, 0.16);
}

.bsp-students__visual-text p {
    margin-bottom: 0;
    color: #315b72;
    font-size: 16px;
}

.bsp-students__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.bsp-students__uses {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin-top: 26px;
}

.bsp-students__uses article {
    padding: 18px;
    border-radius: 15px;
    background-color: #eef8fd;
}

.bsp-students__uses h3 {
    margin-bottom: 6px;
    font-size: 17px;
}

.bsp-students__uses p {
    margin-bottom: 0;
    color: #597181;
    font-size: 14px;
}

/* Lessons */

.bsp-lessons {
    padding: 79px 0;
    background-color: #eef8fd;
}

.bsp-lessons__comparison {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.bsp-lessons__comparison article {
    padding: 29px;
    border-radius: 21px;
    background-color: #ffffff;
}

.bsp-lessons__teaching {
    color: #ffffff;
    background-color: #1c628a !important;
}

.bsp-lessons__label {
    margin-bottom: 20px;
    color: #2679a6;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.bsp-lessons__teaching .bsp-lessons__label {
    color: #c8ecff;
}

.bsp-lessons__comparison h3 {
    margin-bottom: 17px;
    font-size: 23px;
}

.bsp-lessons__teaching h3 {
    color: #ffffff;
}

.bsp-lessons__comparison ul {
    padding-left: 21px;
    margin-bottom: 0;
}

.bsp-lessons__comparison li {
    margin-bottom: 9px;
    color: #4f7082;
}

.bsp-lessons__teaching li {
    color: rgba(255, 255, 255, 0.8);
}

.bsp-lessons__note {
    margin: 14px 0 0;
    padding: 23px 26px;
    border-radius: 18px;
    color: #41687f;
    background-color: #dff2fc;
}

/* Topics */

.bsp-topics {
    padding: 79px 0;
    background-color: #ffffff;
}

.bsp-topics__header {
    max-width: 850px;
    margin-bottom: 36px;
}

.bsp-topics__header > p:last-child {
    color: #587181;
}

.bsp-topics__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 11px;
}

.bsp-topics__grid article {
    min-height: 235px;
    padding: 22px;
    border-radius: 18px;
    background-color: #eef8fd;
}

.bsp-topics__grid article:nth-child(3n + 2) {
    background-color: #dff2fc;
}

.bsp-topics__grid span {
    display: block;
    margin-bottom: 23px;
    color: #2679a6;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.bsp-topics__grid h3 {
    margin-bottom: 9px;
    font-size: 18px;
}

.bsp-topics__grid p {
    margin-bottom: 0;
    color: #597181;
    font-size: 14px;
}

/* Practice plan */

.bsp-practice-plan {
    padding: 79px 0;
    background-color: #dff2fc;
}

.bsp-practice-plan__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.68fr) minmax(0, 1.32fr);
    gap: 70px;
}

.bsp-practice-plan__heading {
    align-self: start;
    padding: 29px;
    border-radius: 22px;
    background-color: #ffffff;
}

.bsp-practice-plan__heading > p:last-child {
    margin-bottom: 0;
    color: #587181;
}

.bsp-practice-plan__timeline {
    display: grid;
    gap: 10px;
}

.bsp-practice-plan__timeline article {
    display: grid;
    grid-template-columns: 100px minmax(0, 1fr);
    gap: 15px;
    padding: 20px;
    border-radius: 17px;
    background-color: rgba(255, 255, 255, 0.8);
}

.bsp-practice-plan__timeline span {
    color: #2678a5;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.bsp-practice-plan__timeline h3 {
    margin-bottom: 6px;
    font-size: 18px;
}

.bsp-practice-plan__timeline p {
    grid-column: 2;
    margin-bottom: 0;
    color: #597181;
    font-size: 15px;
}

/* Expectations */

.bsp-expectations {
    padding: 80px 0;
    color: #ffffff;
    background-color: #133f5a;
}

.bsp-expectations__header {
    max-width: 850px;
    margin-bottom: 35px;
}

.bsp-expectations__header p:last-child {
    color: rgba(255, 255, 255, 0.73);
}

.bsp-expectations__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.bsp-expectations-card {
    padding: 28px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 20px;
    background-color: rgba(255, 255, 255, 0.07);
}

.bsp-expectations-card--light {
    background-color: rgba(91, 183, 228, 0.18);
}

.bsp-expectations-card h3 {
    margin-bottom: 17px;
    color: #ffffff;
    font-size: 23px;
}

.bsp-expectations-card ul {
    padding-left: 21px;
    margin-bottom: 0;
}

.bsp-expectations-card li {
    margin-bottom: 9px;
    color: rgba(255, 255, 255, 0.78);
}

.bsp-expectations__note {
    margin-top: 15px;
    margin-bottom: 0;
    padding: 23px 26px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 18px;
    color: #bfe3f7;
    background-color: rgba(255, 255, 255, 0.05);
    font-size: 15px;
}

/* Before session */

.bsp-before {
    padding: 79px 0;
    background-color: #eef8fd;
}

.bsp-before__layout {
    display: grid;
    grid-template-columns: minmax(340px, 0.82fr) minmax(0, 1.18fr);
    gap: 72px;
    align-items: start;
}

.bsp-before__visual {
    position: relative;
}

.bsp-before__image {
    min-height: 540px;
    border-radius: 29px;
    object-fit: cover;
    box-shadow: 0 22px 55px rgba(22, 76, 108, 0.17);
}

.bsp-before__visual-note {
    position: absolute;
    right: -22px;
    bottom: 30px;
    width: min(350px, 84%);
    padding: 22px;
    border-radius: 18px;
    background-color: #ffffff;
    box-shadow: 0 17px 40px rgba(20, 72, 102, 0.16);
}

.bsp-before__visual-note p {
    margin-bottom: 0;
    color: #315b72;
    font-size: 16px;
}

.bsp-before__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.bsp-before__list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin: 26px 0;
}

.bsp-before__list article {
    padding: 18px;
    border-radius: 15px;
    background-color: #ffffff;
}

.bsp-before__list span {
    display: block;
    margin-bottom: 6px;
    color: #2678a5;
    font-size: 13px;
    font-weight: 700;
}

.bsp-before__list p {
    margin-bottom: 0;
    color: #597181;
    font-size: 14px;
}

/* FAQ */

.bsp-faq {
    padding: 79px 0;
    background-color: #ffffff;
}

.bsp-faq__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
}

.bsp-faq-item {
    padding: 24px;
    border: 1px solid rgba(31, 103, 144, 0.09);
    border-radius: 18px;
    background-color: #f2f9fd;
}

.bsp-faq-item:nth-child(3n + 2) {
    background-color: #dff1fb;
}

.bsp-faq-item h3 {
    margin-bottom: 10px;
    font-size: 20px;
    line-height: 1.25;
}

.bsp-faq-item p {
    margin-bottom: 0;
    color: #587181;
    font-size: 16px;
}

/* Final thought */

.bsp-final-thought {
    padding: 79px 0;
    background-color: #cceafa;
}

.bsp-final-thought__inner {
    max-width: 1010px;
}

.bsp-final-thought__inner > p {
    margin-bottom: 12px;
    color: #57778a;
    font-size: clamp(21px, 2.5vw, 30px);
}

.bsp-final-thought h2 {
    max-width: 990px;
    margin-bottom: 0;
    color: #154d70;
    font-size: clamp(40px, 5.2vw, 70px);
    line-height: 1.04;
    letter-spacing: -0.055em;
}

/* Final CTA */

.bsp-final {
    padding: 79px 0;
    background-color: #eef8fd;
}

.bsp-final__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.22fr) minmax(290px, 0.78fr);
    gap: 45px;
    padding: 49px;
    border-radius: 31px;
    color: #ffffff;
    background:
        radial-gradient(circle at 84% 16%, rgba(123, 206, 247, 0.28), transparent 35%),
        #17577d;
    box-shadow: 0 23px 58px rgba(20, 77, 111, 0.22);
}

.bsp-final__title {
    margin-bottom: 21px;
    color: #ffffff;
    font-size: clamp(43px, 5.5vw, 72px);
    line-height: 1.02;
    letter-spacing: -0.055em;
}

.bsp-final__content > p:not(.bsp-label) {
    max-width: 730px;
    margin-bottom: 21px;
    color: rgba(255, 255, 255, 0.76);
}

.bsp-final__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 11px;
    margin: 27px 0 25px;
}

.bsp-final__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.bsp-final__tags span {
    padding: 8px 12px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 999px;
    color: rgba(255, 255, 255, 0.76);
    font-size: 13px;
}

.bsp-final__aside {
    align-self: end;
    padding: 25px;
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 19px;
    background-color: rgba(255, 255, 255, 0.08);
}

.bsp-final__aside-label {
    margin-bottom: 12px;
    color: #c5e9fb;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.bsp-final__aside a {
    display: inline-block;
    margin-bottom: 16px;
    color: #ffffff;
    font-size: 18px;
    font-weight: 700;
    overflow-wrap: anywhere;
    text-decoration-color: rgba(255, 255, 255, 0.45);
    text-underline-offset: 4px;
}

.bsp-final__aside p:last-child {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.7);
    font-size: 15px;
}

/* Tablet */

@media (max-width: 1080px) {
    .bsp-topics__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 1040px) {
    .bsp-hero__layout {
        grid-template-columns: minmax(0, 1fr) minmax(350px, 0.86fr);
        gap: 44px;
    }

    .bsp-session__steps,
    .bsp-foundation__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .bsp-hero__layout,
    .bsp-opening__layout,
    .bsp-levels__layout,
    .bsp-simple__layout,
    .bsp-pronunciation__layout,
    .bsp-confidence__layout,
    .bsp-students__layout,
    .bsp-practice-plan__layout,
    .bsp-before__layout,
    .bsp-final__layout {
        grid-template-columns: 1fr;
    }

    .bsp-opening__heading {
        position: static;
    }

    .bsp-hero__visual,
    .bsp-levels__visual,
    .bsp-simple__visual,
    .bsp-students__visual,
    .bsp-before__visual {
        max-width: 760px;
    }

    .bsp-final__aside {
        max-width: 620px;
    }
}

/* Mobile */

@media (max-width: 760px) {
    .bsp-page {
        font-size: 17px;
    }

    .bsp-shell {
        width: calc(100% - 32px);
    }

    .bsp-hero,
    .bsp-opening,
    .bsp-barriers,
    .bsp-quote,
    .bsp-levels,
    .bsp-session,
    .bsp-simple,
    .bsp-foundation,
    .bsp-pronunciation,
    .bsp-banner,
    .bsp-corrections,
    .bsp-confidence,
    .bsp-rescue,
    .bsp-students,
    .bsp-lessons,
    .bsp-topics,
    .bsp-practice-plan,
    .bsp-expectations,
    .bsp-before,
    .bsp-faq,
    .bsp-final-thought,
    .bsp-final {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .bsp-section-head {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .bsp-barriers__grid,
    .bsp-corrections__grid,
    .bsp-lessons__comparison,
    .bsp-expectations__grid,
    .bsp-faq__grid {
        grid-template-columns: 1fr;
    }

    .bsp-barrier--wide,
    .bsp-confidence__wide {
        grid-column: auto;
    }

    .bsp-barrier--wide {
        grid-template-columns: 1fr;
    }

    .bsp-levels__example,
    .bsp-simple__caption,
    .bsp-students__visual-text,
    .bsp-before__visual-note {
        position: relative;
        right: auto;
        bottom: auto;
        width: calc(100% - 28px);
        margin: -31px auto 0;
    }

    .bsp-banner__frame,
    .bsp-banner__image {
        min-height: 390px;
    }

    .bsp-banner__frame::after {
        background: linear-gradient(
            0deg,
            rgba(18, 63, 91, 0.96),
            rgba(18, 63, 91, 0.12)
        );
    }

    .bsp-banner__content {
        top: auto;
        right: 26px;
        bottom: 28px;
        left: 26px;
        width: auto;
        transform: none;
    }

    .bsp-final__layout {
        padding: 34px;
    }
}

@media (max-width: 560px) {
    .bsp-page {
        font-size: 16px;
        line-height: 1.6;
    }

    .bsp-shell {
        width: calc(100% - 24px);
    }

    .bsp-label,
    .bsp-eyebrow {
        margin-bottom: 10px;
        font-size: 11px;
    }

    .bsp-heading {
        margin-bottom: 18px;
        font-size: clamp(31px, 9.8vw, 44px);
    }

    .bsp-hero {
        padding-top: 38px;
        padding-bottom: 73px;
    }

    .bsp-hero__layout {
        gap: 54px;
    }

    .bsp-hero__title {
        font-size: clamp(41px, 12.5vw, 58px);
    }

    .bsp-hero__lead {
        font-size: 19px;
    }

    .bsp-hero__actions,
    .bsp-final__actions {
        flex-direction: column;
    }

    .bsp-hero__actions .bsp-button,
    .bsp-final__actions .bsp-button {
        width: 100%;
    }

    .bsp-hero__visual {
        min-height: 0;
        padding: 14px;
        border-radius: 22px;
    }

    .bsp-hero__photo-wrap {
        width: 82%;
        height: 370px;
    }

    .bsp-hero__conversation,
    .bsp-hero__note {
        position: relative;
        right: auto;
        bottom: auto;
        left: auto;
        width: calc(100% - 22px);
        margin-right: auto;
        margin-left: auto;
    }

    .bsp-hero__conversation {
        margin-top: -28px;
    }

    .bsp-hero__note {
        margin-top: 10px;
    }

    .bsp-opening,
    .bsp-barriers,
    .bsp-quote,
    .bsp-levels,
    .bsp-session,
    .bsp-simple,
    .bsp-foundation,
    .bsp-pronunciation,
    .bsp-banner,
    .bsp-corrections,
    .bsp-confidence,
    .bsp-rescue,
    .bsp-students,
    .bsp-lessons,
    .bsp-topics,
    .bsp-practice-plan,
    .bsp-expectations,
    .bsp-before,
    .bsp-faq,
    .bsp-final-thought,
    .bsp-final {
        padding-top: 52px;
        padding-bottom: 52px;
    }

    .bsp-opening__heading,
    .bsp-confidence__heading,
    .bsp-practice-plan__heading {
        padding: 22px;
        border-radius: 18px;
    }

    .bsp-barrier,
    .bsp-correction,
    .bsp-faq-item {
        min-height: 0;
        padding: 21px;
        border-radius: 17px;
    }

    .bsp-levels__cards,
    .bsp-session__steps,
    .bsp-foundation__grid,
    .bsp-pronunciation__examples,
    .bsp-confidence__steps,
    .bsp-rescue__grid,
    .bsp-students__uses,
    .bsp-topics__grid,
    .bsp-before__list {
        grid-template-columns: 1fr;
    }

    .bsp-levels__image,
    .bsp-simple__image,
    .bsp-students__image,
    .bsp-before__image {
        min-height: 390px;
        border-radius: 21px;
    }

    .bsp-session__steps article,
    .bsp-foundation__grid article,
    .bsp-topics__grid article {
        min-height: 0;
    }

    .bsp-practice-plan__timeline article {
        grid-template-columns: 1fr;
        gap: 6px;
    }

    .bsp-practice-plan__timeline p {
        grid-column: auto;
    }

    .bsp-banner__large {
        font-size: 28px;
    }

    .bsp-final__layout {
        padding: 25px 21px;
        border-radius: 22px;
    }

    .bsp-final__title {
        font-size: clamp(38px, 11.5vw, 52px);
    }
}

@media (max-width: 375px) {
    .bsp-shell {
        width: calc(100% - 20px);
    }

    .bsp-hero__title {
        font-size: 39px;
    }

    .bsp-button {
        min-height: 50px;
        padding-right: 16px;
        padding-left: 16px;
        font-size: 15px;
    }

    .bsp-hero__photo-wrap {
        width: 88%;
        height: 330px;
    }

    .bsp-barrier,
    .bsp-correction,
    .bsp-faq-item {
        padding-right: 18px;
        padding-left: 18px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .bsp-page *,
    .bsp-page *::before,
    .bsp-page *::after {
        animation-duration: 0.01ms;
        animation-iteration-count: 1;
        scroll-behavior: auto;
        transition-duration: 0.01ms;
    }

    .bsp-button:hover {
        transform: none;
    }
}

__________________________________________________________________________________________
страница 15 Advanced and professional Russian conversation practice
.arp-page {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
    color: #223b4a;
    background: #ffffff;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 18px;
    line-height: 1.67;
}

.arp-page *,
.arp-page *::before,
.arp-page *::after {
    box-sizing: border-box;
}

.arp-page section,
.arp-page div,
.arp-page article,
.arp-page aside,
.arp-page picture {
    min-width: 0;
}

.arp-page img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
}

.arp-page h1,
.arp-page h2,
.arp-page h3,
.arp-page p,
.arp-page ul {
    margin-top: 0;
}

.arp-page h1,
.arp-page h2,
.arp-page h3 {
    color: #163e58;
    font-weight: 700;
    line-height: 1.1;
    text-wrap: balance;
}

.arp-page p,
.arp-page li {
    text-wrap: pretty;
}

.arp-shell {
    width: calc(100% - 48px);
    max-width: 1200px;
    margin-right: auto;
    margin-left: auto;
}

.arp-label,
.arp-eyebrow {
    margin-bottom: 13px;
    color: #287ba7;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.11em;
    text-transform: uppercase;
}

.arp-label--light {
    color: #c9edff;
}

.arp-heading {
    margin-bottom: 21px;
    font-size: clamp(36px, 4.1vw, 59px);
    line-height: 1.05;
    letter-spacing: -0.046em;
}

.arp-heading--light {
    color: #ffffff;
}

.arp-text-link {
    color: #1d709f;
    font-weight: 700;
    text-decoration-color: rgba(29, 112, 159, 0.42);
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;
    transition: color 160ms ease, text-decoration-color 160ms ease;
}

.arp-text-link:hover {
    color: #13577d;
    text-decoration-color: currentColor;
}

.arp-button {
    display: inline-flex;
    min-height: 52px;
    align-items: center;
    justify-content: center;
    padding: 14px 24px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    transition:
        transform 180ms ease,
        color 180ms ease,
        background-color 180ms ease,
        border-color 180ms ease,
        box-shadow 180ms ease;
}

.arp-button:hover {
    transform: translateY(-2px);
}

.arp-button:focus-visible,
.arp-text-link:focus-visible,
.arp-final__aside a:focus-visible {
    outline: 3px solid rgba(39, 130, 181, 0.42);
    outline-offset: 4px;
}

.arp-button--primary {
    color: #ffffff;
    background: #247eae;
    box-shadow: 0 12px 28px rgba(27, 101, 143, 0.25);
}

.arp-button--primary:hover {
    color: #ffffff;
    background: #175c84;
}

.arp-button--outline {
    color: #1e638b;
    border-color: rgba(31, 111, 159, 0.35);
    background: rgba(255, 255, 255, 0.76);
}

.arp-button--outline:hover {
    color: #144c6c;
    border-color: #2a85b6;
    background: #e9f6fd;
}

.arp-button--white {
    color: #145477;
    background: #ffffff;
}

.arp-button--white:hover {
    color: #103f5a;
    background: #eaf8ff;
}

.arp-button--outline-white {
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.65);
    background: transparent;
}

.arp-button--outline-white:hover {
    color: #145477;
    border-color: #ffffff;
    background: #ffffff;
}

.arp-section-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 0.6fr);
    gap: 48px;
    align-items: end;
    margin-bottom: 38px;
}

.arp-section-head__intro {
    margin-bottom: 20px;
    color: #5a7383;
}

.arp-section-head--light .arp-section-head__intro {
    color: rgba(255, 255, 255, 0.73);
}

/* Hero */

.arp-hero {
    position: relative;
    padding: 65px 0 90px;
    background:
        linear-gradient(90deg, rgba(255, 255, 255, 0.96), rgba(228, 245, 253, 0.93)),
        #edf8fd;
}

.arp-hero::before {
    position: absolute;
    top: 34px;
    right: 6%;
    width: 220px;
    height: 220px;
    border: 1px solid rgba(35, 121, 169, 0.14);
    border-radius: 50%;
    content: "";
}

.arp-hero__layout {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(390px, 0.9fr);
    gap: 64px;
    align-items: center;
}

.arp-hero__title {
    max-width: 820px;
    margin-bottom: 25px;
    font-size: clamp(51px, 6.25vw, 87px);
    line-height: 0.97;
    letter-spacing: -0.067em;
}

.arp-hero__lead {
    max-width: 710px;
    margin-bottom: 18px;
    color: #29495e;
    font-size: clamp(21px, 2vw, 27px);
    line-height: 1.43;
}

.arp-hero__text {
    max-width: 690px;
    margin-bottom: 28px;
    color: #587181;
}

.arp-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 25px;
}

.arp-hero__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.arp-hero__tags span {
    padding: 9px 13px;
    border: 1px solid rgba(31, 107, 150, 0.13);
    border-radius: 999px;
    color: #4f7084;
    background: rgba(255, 255, 255, 0.75);
    font-size: 13px;
}

.arp-hero__visual {
    position: relative;
    min-height: 615px;
    padding: 13px;
    border-radius: 33px;
    background: rgba(255, 255, 255, 0.87);
    box-shadow: 0 25px 65px rgba(23, 85, 120, 0.17);
}

.arp-hero__image {
    min-height: 585px;
    border-radius: 23px;
    object-fit: cover;
}

.arp-hero__excerpt {
    position: absolute;
    right: -24px;
    bottom: 82px;
    width: min(410px, 86%);
    padding: 23px 25px;
    border-radius: 20px;
    background: #17577d;
    box-shadow: 0 18px 43px rgba(15, 72, 105, 0.27);
}

.arp-hero__excerpt-label {
    margin-bottom: 9px;
    color: #bfe8fb;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.arp-hero__excerpt-basic {
    margin-bottom: 13px;
    color: rgba(255, 255, 255, 0.68);
    font-size: 14px;
}

.arp-hero__excerpt-advanced {
    margin-bottom: 0;
    color: #ffffff;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.48;
}

.arp-hero__note {
    position: absolute;
    bottom: -45px;
    left: -25px;
    width: min(350px, 80%);
    padding: 20px 22px;
    border-radius: 19px;
    background: #cceafa;
    box-shadow: 0 16px 38px rgba(24, 84, 117, 0.16);
}

.arp-hero__note strong {
    display: block;
    margin-bottom: 7px;
    color: #226e98;
}

.arp-hero__note p {
    margin-bottom: 0;
    color: #315b72;
    font-size: 14px;
}

/* Opening */

.arp-opening {
    padding: 100px 0 79px;
    background: #ffffff;
}

.arp-opening__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.72fr) minmax(0, 1.28fr);
    gap: 80px;
}

.arp-opening__heading {
    position: sticky;
    top: 32px;
    align-self: start;
    padding: 31px;
    border-radius: 22px;
    background: #dff2fc;
}

.arp-opening__heading .arp-heading {
    margin-bottom: 0;
}

.arp-opening__content {
    max-width: 750px;
}

.arp-opening__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.arp-opening__large {
    color: #27485e;
    font-size: clamp(23px, 2.4vw, 31px);
    line-height: 1.38;
}

.arp-opening__accent {
    margin-top: 28px;
    padding: 25px 28px;
    border-left: 4px solid #2b84b4;
    border-radius: 0 18px 18px 0;
    background: #f0f9fe;
}

.arp-opening__accent p {
    margin-bottom: 0;
    color: #28536e;
    font-size: 20px;
}

/* Needs */

.arp-needs {
    padding: 79px 0;
    background: #eff8fd;
}

.arp-needs__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 15px;
}

.arp-need {
    min-height: 270px;
    padding: 29px;
    border: 1px solid rgba(34, 104, 144, 0.1);
    border-radius: 22px;
    background: #ffffff;
}

.arp-need--deep {
    color: #ffffff;
    background: #247aab;
}

.arp-need--soft {
    background: #dff2fc;
}

.arp-need--wide {
    display: grid;
    grid-column: span 2;
    grid-template-columns: 75px minmax(0, 1fr);
    gap: 24px;
    min-height: 0;
    background: #cceafa;
}

.arp-need > span {
    display: block;
    margin-bottom: 36px;
    color: #2479a8;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.12em;
}

.arp-need--deep > span {
    color: #caedff;
}

.arp-need--wide > span {
    margin-bottom: 0;
    font-size: 20px;
}

.arp-need h3 {
    margin-bottom: 12px;
    font-size: 23px;
}

.arp-need--deep h3 {
    color: #ffffff;
}

.arp-need p {
    margin-bottom: 0;
    color: #5a7281;
    font-size: 17px;
}

.arp-need--deep p {
    color: rgba(255, 255, 255, 0.78);
}

/* Statement */

.arp-statement,
.arp-final-thought {
    padding: 79px 0;
    background: #cceafa;
}

.arp-statement__inner,
.arp-final-thought__inner {
    max-width: 1010px;
}

.arp-statement__small,
.arp-final-thought__inner > p {
    margin-bottom: 12px;
    color: #57778a;
    font-size: clamp(21px, 2.5vw, 30px);
}

.arp-statement__large,
.arp-final-thought h2 {
    max-width: 995px;
    margin-bottom: 0;
    color: #154d70;
    font-size: clamp(40px, 5.2vw, 70px);
    font-weight: 700;
    line-height: 1.04;
    letter-spacing: -0.055em;
}

/* Audience */

.arp-audience {
    padding: 79px 0;
    background: #ffffff;
}

.arp-audience__layout {
    display: grid;
    grid-template-columns: minmax(340px, 0.8fr) minmax(0, 1.2fr);
    gap: 74px;
}

.arp-audience__visual,
.arp-pronunciation__visual,
.arp-researchers__visual {
    position: relative;
}

.arp-audience__image {
    min-height: 600px;
    border-radius: 30px;
    object-fit: cover;
    box-shadow: 0 22px 55px rgba(22, 76, 108, 0.17);
}

.arp-audience__caption,
.arp-pronunciation__caption,
.arp-researchers__caption {
    position: absolute;
    right: -22px;
    bottom: 30px;
    width: min(355px, 85%);
    padding: 22px;
    border-radius: 18px;
    background: #cceafa;
    box-shadow: 0 17px 40px rgba(20, 72, 102, 0.16);
}

.arp-audience__caption p,
.arp-pronunciation__caption p,
.arp-researchers__caption p {
    margin-bottom: 0;
    color: #315b72;
    font-size: 16px;
}

.arp-audience__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.arp-audience__list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin-top: 26px;
}

.arp-audience__list article {
    padding: 18px;
    border-radius: 15px;
    background: #eef8fd;
}

.arp-audience__list span {
    display: block;
    margin-bottom: 7px;
    color: #2576a2;
    font-size: 14px;
    font-weight: 700;
}

.arp-audience__list p {
    margin-bottom: 0;
    color: #597181;
    font-size: 14px;
}

/* Format */

.arp-format {
    padding: 79px 0;
    background: #dff2fc;
}

.arp-format__layout,
.arp-academic__layout,
.arp-hourly__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.7fr) minmax(0, 1.3fr);
    gap: 70px;
}

.arp-format__heading,
.arp-academic__heading,
.arp-hourly__heading {
    align-self: start;
    padding: 29px;
    border-radius: 22px;
    background: #ffffff;
}

.arp-format__heading > p:last-child,
.arp-academic__heading > p:last-child,
.arp-hourly__heading > p:last-child {
    margin-bottom: 0;
    color: #587181;
}

.arp-format__steps {
    display: grid;
    gap: 10px;
}

.arp-format__steps article {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr);
    gap: 18px;
    padding: 21px;
    border-radius: 17px;
    background: rgba(255, 255, 255, 0.8);
}

.arp-format__steps article:nth-child(even) {
    background: #cfeaf8;
}

.arp-format__steps span {
    display: flex;
    width: 44px;
    height: 44px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #ffffff;
    background: #247eae;
    font-size: 12px;
    font-weight: 700;
}

.arp-format__steps h3 {
    margin-bottom: 7px;
    font-size: 19px;
}

.arp-format__steps p {
    margin-bottom: 0;
    color: #597181;
    font-size: 15px;
}

/* Register */

.arp-register {
    padding: 79px 0;
    background: #ffffff;
}

.arp-register__header,
.arp-analysis__header,
.arp-preparation__header {
    max-width: 870px;
    margin-bottom: 36px;
}

.arp-register__header > p:last-child,
.arp-analysis__header > p:last-child,
.arp-preparation__header > p:last-child {
    color: #587181;
}

.arp-register__case {
    display: grid;
    grid-template-columns: minmax(280px, 0.68fr) minmax(0, 1.32fr);
    gap: 15px;
}

.arp-register__context {
    padding: 28px;
    border-radius: 21px;
    color: #ffffff;
    background: #1d678f;
}

.arp-register__context-label {
    margin-bottom: 22px;
    color: #c8edff;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.arp-register__context h3 {
    margin-bottom: 15px;
    color: #ffffff;
    font-size: 27px;
}

.arp-register__context p:last-child {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.75);
}

.arp-register__versions {
    display: grid;
    gap: 10px;
}

.arp-register__versions article {
    padding: 22px;
    border-radius: 17px;
    background: #eef8fd;
}

.arp-register__versions article:nth-child(2) {
    background: #dff2fc;
}

.arp-register__versions span {
    display: block;
    margin-bottom: 9px;
    color: #2679a6;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.arp-register__russian {
    margin-bottom: 8px;
    color: #1d5778;
    font-size: 19px;
    font-weight: 700;
}

.arp-register__versions p:last-child {
    margin-bottom: 0;
    color: #617988;
    font-size: 14px;
}

/* Diplomacy */

.arp-diplomacy {
    padding: 80px 0;
    color: #ffffff;
    background: #17445f;
}

.arp-diplomacy__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.arp-diplomacy__grid article {
    padding: 24px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.07);
}

.arp-diplomacy__grid article:nth-child(3n + 2) {
    background: rgba(83, 178, 224, 0.16);
}

.arp-diplomacy__grid span {
    display: block;
    margin-bottom: 14px;
    color: #bfe8fb;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.arp-diplomacy__phrase {
    margin-bottom: 12px;
    color: #ffffff;
    font-size: 18px;
    font-weight: 700;
}

.arp-diplomacy__grid p:last-child {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.72);
    font-size: 14px;
}

/* Business */

.arp-business {
    padding: 79px 0;
    background: #eef8fd;
}

.arp-business__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(310px, 0.85fr);
    gap: 65px;
}

.arp-business__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.arp-business__skills {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin-top: 26px;
}

.arp-business__skills article {
    padding: 18px;
    border-radius: 15px;
    background: #ffffff;
}

.arp-business__skills span {
    display: block;
    margin-bottom: 6px;
    color: #2678a5;
    font-size: 13px;
    font-weight: 700;
}

.arp-business__skills p {
    margin-bottom: 0;
    color: #597181;
    font-size: 14px;
}

.arp-business__brief {
    align-self: start;
    padding: 28px;
    border-radius: 23px;
    color: #ffffff;
    background: #175b82;
}

.arp-business__brief-label {
    margin-bottom: 17px;
    color: #c8ecff;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.arp-business__brief h3 {
    margin-bottom: 17px;
    color: #ffffff;
    font-size: 25px;
}

.arp-business__brief ul {
    padding-left: 21px;
    margin-bottom: 22px;
}

.arp-business__brief li {
    margin-bottom: 9px;
    color: rgba(255, 255, 255, 0.8);
}

.arp-business__brief p:last-child {
    margin-bottom: 0;
    color: #c8e8f8;
    font-size: 14px;
}

/* Banner */

.arp-banner {
    padding: 79px 0;
    background: #ffffff;
}

.arp-banner__frame {
    position: relative;
    overflow: hidden;
    min-height: 380px;
    border-radius: 30px;
    box-shadow: 0 22px 55px rgba(22, 75, 106, 0.17);
}

.arp-banner__image {
    min-height: 380px;
    object-fit: cover;
}

.arp-banner__frame::after {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        90deg,
        rgba(18, 63, 91, 0.12),
        rgba(18, 63, 91, 0.94)
    );
    content: "";
}

.arp-banner__content {
    position: absolute;
    z-index: 1;
    top: 50%;
    right: 50px;
    width: min(620px, calc(100% - 100px));
    transform: translateY(-50%);
}

.arp-banner__small {
    margin-bottom: 10px;
    color: #cbefff;
    font-size: 16px;
}

.arp-banner__large {
    margin-bottom: 0;
    color: #ffffff;
    font-size: clamp(30px, 3.7vw, 50px);
    font-weight: 700;
    line-height: 1.16;
    letter-spacing: -0.04em;
}

/* Academic */

.arp-academic {
    padding: 79px 0;
    background: #dff2fc;
}

.arp-academic__content,
.arp-hourly__content {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.arp-academic__content article,
.arp-hourly__content article {
    padding: 21px;
    border-radius: 17px;
    background: rgba(255, 255, 255, 0.81);
}

.arp-academic__content span,
.arp-hourly__content span {
    display: block;
    margin-bottom: 18px;
    color: #267aa8;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.arp-academic__content h3,
.arp-hourly__content h3 {
    margin-bottom: 8px;
    font-size: 18px;
}

.arp-academic__content p,
.arp-hourly__content p {
    margin-bottom: 0;
    color: #597181;
    font-size: 15px;
}

/* Vocabulary */

.arp-vocabulary {
    padding: 79px 0;
    background: #ffffff;
}

.arp-vocabulary__path {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 11px;
}

.arp-vocabulary__path article {
    min-height: 280px;
    padding: 22px;
    border-top: 5px solid #2a82b3;
    border-radius: 0 0 18px 18px;
    background: #eef8fd;
}

.arp-vocabulary__path span {
    display: flex;
    width: 37px;
    height: 37px;
    align-items: center;
    justify-content: center;
    margin-bottom: 25px;
    border-radius: 50%;
    color: #ffffff;
    background: #287dab;
    font-size: 12px;
    font-weight: 700;
}

.arp-vocabulary__path h3 {
    margin-bottom: 9px;
    font-size: 18px;
}

.arp-vocabulary__path p {
    margin-bottom: 0;
    color: #597181;
    font-size: 14px;
}

.arp-vocabulary__example {
    display: grid;
    grid-template-columns: minmax(220px, 0.55fr) minmax(0, 1.45fr);
    gap: 14px;
    margin-top: 15px;
}

.arp-vocabulary__example > div {
    padding: 22px;
    border-radius: 18px;
    background: #dff2fc;
}

.arp-vocabulary__example > div:last-child {
    color: #ffffff;
    background: #1d678f;
}

.arp-vocabulary__example-label {
    margin-bottom: 10px;
    color: #2678a5;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
}

.arp-vocabulary__example > div:last-child .arp-vocabulary__example-label,
.arp-vocabulary__example > div:last-child p:last-child {
    color: #ffffff;
}

.arp-vocabulary__example p:last-child {
    margin-bottom: 0;
}

/* Pronunciation */

.arp-pronunciation,
.arp-researchers {
    padding: 79px 0;
    background: #eef8fd;
}

.arp-pronunciation__layout,
.arp-researchers__layout {
    display: grid;
    grid-template-columns: minmax(340px, 0.82fr) minmax(0, 1.18fr);
    gap: 72px;
}

.arp-pronunciation__image,
.arp-researchers__image {
    min-height: 560px;
    border-radius: 29px;
    object-fit: cover;
    box-shadow: 0 22px 55px rgba(22, 76, 108, 0.17);
}

.arp-pronunciation__content > p,
.arp-researchers__content > p {
    margin-bottom: 18px;
    color: #587181;
}

.arp-pronunciation__targets {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin-top: 26px;
}

.arp-pronunciation__targets article {
    padding: 18px;
    border-radius: 15px;
    background: #ffffff;
}

.arp-pronunciation__targets span {
    display: block;
    margin-bottom: 6px;
    color: #2678a5;
    font-size: 13px;
    font-weight: 700;
}

.arp-pronunciation__targets p {
    margin-bottom: 0;
    color: #597181;
    font-size: 14px;
}

/* Linguistic analysis */

.arp-analysis {
    padding: 79px 0;
    background: #ffffff;
}

.arp-analysis__grid,
.arp-preparation__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.arp-analysis__grid article,
.arp-preparation__grid article {
    min-height: 250px;
    padding: 23px;
    border-radius: 18px;
    background: #eef8fd;
}

.arp-analysis__grid article:nth-child(even),
.arp-preparation__grid article:nth-child(even) {
    background: #dff2fc;
}

.arp-analysis__grid span,
.arp-preparation__grid span {
    display: block;
    margin-bottom: 25px;
    color: #2679a6;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.arp-analysis__grid h3,
.arp-preparation__grid h3 {
    margin-bottom: 9px;
    font-size: 19px;
}

.arp-analysis__grid p,
.arp-preparation__grid p {
    margin-bottom: 0;
    color: #597181;
    font-size: 15px;
}

.arp-analysis__warning,
.arp-preparation__privacy {
    margin-top: 14px;
    padding: 24px 27px;
    border-radius: 18px;
    color: #ffffff;
    background: #1d678f;
}

.arp-analysis__warning p,
.arp-preparation__privacy p {
    margin-bottom: 0;
    color: #ffffff;
}

/* Credentials */

.arp-credentials {
    padding: 79px 0;
    background: #dff2fc;
}

.arp-credentials__layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.7fr) minmax(0, 1.3fr);
    gap: 70px;
}

.arp-credentials__heading {
    align-self: start;
    padding: 29px;
    border-radius: 22px;
    background: #ffffff;
}

.arp-credentials__heading > p:last-child {
    margin-bottom: 0;
    color: #587181;
}

.arp-credentials__content {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.arp-credentials__content article {
    padding: 21px;
    border-radius: 17px;
    background: rgba(255, 255, 255, 0.82);
}

.arp-credentials__content span {
    display: block;
    margin-bottom: 17px;
    color: #267aa8;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.arp-credentials__content h3 {
    margin-bottom: 8px;
    font-size: 18px;
}

.arp-credentials__content p {
    margin-bottom: 0;
    color: #597181;
    font-size: 15px;
}

.arp-credentials__verification {
    grid-column: 2;
    padding: 23px 25px;
    border: 2px dashed rgba(33, 110, 153, 0.35);
    border-radius: 18px;
    background: #ffffff;
}

.arp-credentials__verification-label {
    margin-bottom: 8px;
    color: #2478a5;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.arp-credentials__verification p:last-child {
    margin-bottom: 0;
    color: #4f6f81;
}

/* Corrections */

.arp-corrections {
    padding: 79px 0;
    background: #ffffff;
}

.arp-corrections__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
}

.arp-correction {
    min-height: 245px;
    padding: 26px;
    border-radius: 20px;
    background: #eef8fd;
}

.arp-correction--blue {
    color: #ffffff;
    background: #247dab;
}

.arp-correction--soft {
    background: #dff2fc;
}

.arp-correction--deep {
    color: #ffffff;
    background: #17445f;
}

.arp-correction span {
    display: block;
    margin-bottom: 25px;
    color: #2679a6;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.arp-correction--blue span,
.arp-correction--deep span {
    color: #caedff;
}

.arp-correction h3 {
    margin-bottom: 10px;
    font-size: 21px;
}

.arp-correction--blue h3,
.arp-correction--deep h3 {
    color: #ffffff;
}

.arp-correction p {
    margin-bottom: 0;
    color: #597181;
    font-size: 16px;
}

.arp-correction--blue p,
.arp-correction--deep p {
    color: rgba(255, 255, 255, 0.77);
}

/* Researchers */

.arp-researchers__questions {
    display: grid;
    gap: 8px;
    margin: 25px 0;
}

.arp-researchers__questions p {
    margin-bottom: 0;
    padding: 14px 17px;
    border-left: 4px solid #2a82b3;
    border-radius: 0 14px 14px 0;
    color: #225f82;
    background: #ffffff;
}

/* Preparation */

.arp-preparation {
    padding: 79px 0;
    background: #ffffff;
}

/* Boundaries */

.arp-boundaries {
    padding: 80px 0;
    color: #ffffff;
    background: #133f5a;
}

.arp-boundaries__header {
    max-width: 870px;
    margin-bottom: 35px;
}

.arp-boundaries__header p:last-child {
    color: rgba(255, 255, 255, 0.73);
}

.arp-boundaries__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
}

.arp-boundaries__grid article {
    padding: 27px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.07);
}

.arp-boundaries__grid article:nth-child(2),
.arp-boundaries__grid article:nth-child(3) {
    background: rgba(91, 183, 228, 0.17);
}

.arp-boundaries__grid span {
    display: block;
    margin-bottom: 17px;
    color: #c8ecff;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.arp-boundaries__grid h3 {
    margin-bottom: 15px;
    color: #ffffff;
    font-size: 22px;
}

.arp-boundaries__grid ul {
    padding-left: 21px;
    margin-bottom: 0;
}

.arp-boundaries__grid li {
    margin-bottom: 8px;
    color: rgba(255, 255, 255, 0.78);
}

.arp-boundaries__note {
    margin: 15px 0 0;
    padding: 23px 26px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 18px;
    color: #bfe3f7;
    background: rgba(255, 255, 255, 0.05);
}

/* Hourly */

.arp-hourly {
    padding: 79px 0;
    background: #dff2fc;
}

/* FAQ */

.arp-faq {
    padding: 79px 0;
    background: #ffffff;
}

.arp-faq__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
}

.arp-faq__grid article {
    padding: 24px;
    border: 1px solid rgba(31, 103, 144, 0.09);
    border-radius: 18px;
    background: #f2f9fd;
}

.arp-faq__grid article:nth-child(3n + 2) {
    background: #dff1fb;
}

.arp-faq__grid h3 {
    margin-bottom: 10px;
    font-size: 20px;
    line-height: 1.25;
}

.arp-faq__grid p {
    margin-bottom: 0;
    color: #587181;
    font-size: 16px;
}

/* Final */

.arp-final {
    padding: 79px 0;
    background: #eef8fd;
}

.arp-final__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.22fr) minmax(290px, 0.78fr);
    gap: 45px;
    padding: 49px;
    border-radius: 31px;
    color: #ffffff;
    background:
        radial-gradient(circle at 84% 16%, rgba(123, 206, 247, 0.28), transparent 35%),
        #17577d;
    box-shadow: 0 23px 58px rgba(20, 77, 111, 0.22);
}

.arp-final__title {
    margin-bottom: 21px;
    color: #ffffff;
    font-size: clamp(43px, 5.5vw, 72px);
    line-height: 1.02;
    letter-spacing: -0.055em;
}

.arp-final__content > p:not(.arp-label) {
    max-width: 730px;
    margin-bottom: 21px;
    color: rgba(255, 255, 255, 0.76);
}

.arp-final__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 11px;
    margin: 27px 0 25px;
}

.arp-final__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.arp-final__tags span {
    padding: 8px 12px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 999px;
    color: rgba(255, 255, 255, 0.76);
    font-size: 13px;
}

.arp-final__aside {
    align-self: end;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 19px;
    background: rgba(255, 255, 255, 0.08);
}

.arp-final__aside-image {
    height: 150px;
    object-fit: cover;
}

.arp-final__aside-label,
.arp-final__aside a,
.arp-final__aside > p:last-child {
    margin-right: 24px;
    margin-left: 24px;
}

.arp-final__aside-label {
    margin-top: 22px;
    margin-bottom: 10px;
    color: #c5e9fb;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.arp-final__aside a {
    display: inline-block;
    margin-bottom: 15px;
    color: #ffffff;
    font-size: 18px;
    font-weight: 700;
    overflow-wrap: anywhere;
    text-decoration-color: rgba(255, 255, 255, 0.45);
    text-underline-offset: 4px;
}

.arp-final__aside > p:last-child {
    margin-bottom: 24px;
    color: rgba(255, 255, 255, 0.7);
    font-size: 15px;
}

/* Responsive */

@media (max-width: 1080px) {
    .arp-vocabulary__path {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 1040px) {
    .arp-hero__layout {
        grid-template-columns: minmax(0, 1fr) minmax(350px, 0.86fr);
        gap: 44px;
    }

    .arp-analysis__grid,
    .arp-preparation__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .arp-hero__layout,
    .arp-opening__layout,
    .arp-audience__layout,
    .arp-format__layout,
    .arp-register__case,
    .arp-business__layout,
    .arp-academic__layout,
    .arp-pronunciation__layout,
    .arp-credentials__layout,
    .arp-researchers__layout,
    .arp-hourly__layout,
    .arp-final__layout {
        grid-template-columns: 1fr;
    }

    .arp-opening__heading {
        position: static;
    }

    .arp-credentials__verification {
        grid-column: auto;
    }

    .arp-final__aside {
        max-width: 630px;
    }
}

@media (max-width: 760px) {
    .arp-page {
        font-size: 17px;
    }

    .arp-shell {
        width: calc(100% - 32px);
    }

    .arp-section-head {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .arp-needs__grid,
    .arp-diplomacy__grid,
    .arp-corrections__grid,
    .arp-boundaries__grid,
    .arp-faq__grid {
        grid-template-columns: 1fr;
    }

    .arp-need--wide {
        grid-column: auto;
        grid-template-columns: 1fr;
    }

    .arp-audience__caption,
    .arp-pronunciation__caption,
    .arp-researchers__caption {
        position: relative;
        right: auto;
        bottom: auto;
        width: calc(100% - 28px);
        margin: -31px auto 0;
    }

    .arp-register__versions,
    .arp-credentials__content,
    .arp-academic__content,
    .arp-hourly__content {
        grid-template-columns: 1fr;
    }

    .arp-banner__frame,
    .arp-banner__image {
        min-height: 390px;
    }

    .arp-banner__frame::after {
        background: linear-gradient(
            0deg,
            rgba(18, 63, 91, 0.96),
            rgba(18, 63, 91, 0.12)
        );
    }

    .arp-banner__content {
        top: auto;
        right: 26px;
        bottom: 28px;
        left: 26px;
        width: auto;
        transform: none;
    }

    .arp-vocabulary__path {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .arp-vocabulary__example {
        grid-template-columns: 1fr;
    }

    .arp-final__layout {
        padding: 34px;
    }
}

@media (max-width: 560px) {
    .arp-page {
        font-size: 16px;
        line-height: 1.6;
    }

    .arp-shell {
        width: calc(100% - 24px);
    }

    .arp-label,
    .arp-eyebrow {
        margin-bottom: 10px;
        font-size: 11px;
    }

    .arp-heading {
        margin-bottom: 18px;
        font-size: clamp(31px, 9.8vw, 44px);
    }

    .arp-hero {
        padding-top: 38px;
        padding-bottom: 74px;
    }

    .arp-hero__title {
        font-size: clamp(40px, 12.2vw, 57px);
    }

    .arp-hero__lead {
        font-size: 19px;
    }

    .arp-hero__actions,
    .arp-final__actions {
        flex-direction: column;
    }

    .arp-hero__actions .arp-button,
    .arp-final__actions .arp-button {
        width: 100%;
    }

    .arp-hero__visual {
        min-height: 0;
        padding: 9px;
        border-radius: 22px;
    }

    .arp-hero__image {
        min-height: 350px;
        border-radius: 16px;
    }

    .arp-hero__excerpt,
    .arp-hero__note {
        position: relative;
        right: auto;
        bottom: auto;
        left: auto;
        width: calc(100% - 24px);
        margin-right: auto;
        margin-left: auto;
    }

    .arp-hero__excerpt {
        margin-top: -28px;
    }

    .arp-hero__note {
        margin-top: 10px;
    }

    .arp-opening__heading,
    .arp-format__heading,
    .arp-academic__heading,
    .arp-credentials__heading,
    .arp-hourly__heading {
        padding: 22px;
        border-radius: 18px;
    }

    .arp-audience__list,
    .arp-business__skills,
    .arp-pronunciation__targets,
    .arp-analysis__grid,
    .arp-preparation__grid {
        grid-template-columns: 1fr;
    }

    .arp-format__steps article {
        grid-template-columns: 1fr;
    }

    .arp-vocabulary__path {
        grid-template-columns: 1fr;
    }

    .arp-vocabulary__path article {
        min-height: 0;
    }

    .arp-audience__image,
    .arp-pronunciation__image,
    .arp-researchers__image {
        min-height: 390px;
        border-radius: 21px;
    }

    .arp-banner__large {
        font-size: 28px;
    }

    .arp-final__layout {
        padding: 25px 21px;
        border-radius: 22px;
    }

    .arp-final__title {
        font-size: clamp(38px, 11.5vw, 52px);
    }
}

@media (max-width: 375px) {
    .arp-shell {
        width: calc(100% - 20px);
    }

    .arp-hero__title {
        font-size: 38px;
    }

    .arp-button {
        min-height: 50px;
        padding-right: 16px;
        padding-left: 16px;
        font-size: 15px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .arp-page *,
    .arp-page *::before,
    .arp-page *::after {
        animation-duration: 0.01ms;
        animation-iteration-count: 1;
        scroll-behavior: auto;
        transition-duration: 0.01ms;
    }

    .arp-button:hover {
        transform: none;
    }
}


_________________________________________________________________________________________________________
страница Собутыльник на час
/* =========================================================
   SOBUTYLNIK NA CHAS
   COMPLETE RESPONSIVE PAGE CSS
   ========================================================= */

.sbh-page {
    --sbh-white: #ffffff;
    --sbh-ice: #f6fbfe;
    --sbh-pale: #eaf6fc;
    --sbh-light: #d7eef9;
    --sbh-medium: #acdcef;
    --sbh-blue: #438fb7;
    --sbh-strong: #286f96;
    --sbh-deep: #195473;
    --sbh-navy: #103d57;

    --sbh-text: #2e4857;
    --sbh-muted: #58717f;
    --sbh-border: rgba(25, 91, 128, 0.16);
    --sbh-shadow: 0 16px 40px rgba(17, 66, 94, 0.11);

    width: 100%;
    min-width: 0;
    max-width: 100%;
    margin: 0;
    padding: 0;
    overflow-x: clip;

    color: var(--sbh-text);
    background-color: var(--sbh-white);

    font-family: Arial, Helvetica, sans-serif;
    font-size: 17px;
    line-height: 1.58;

    container-type: inline-size;
}

.sbh-page,
.sbh-page *,
.sbh-page *::before,
.sbh-page *::after {
    box-sizing: border-box;
}

.sbh-page main,
.sbh-page section,
.sbh-page div,
.sbh-page article,
.sbh-page aside,
.sbh-page header,
.sbh-page footer,
.sbh-page nav,
.sbh-page picture,
.sbh-page ul,
.sbh-page ol,
.sbh-page li {
    min-width: 0;
    max-width: 100%;
}

.sbh-page section {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 52px 0;
    overflow: hidden;
}

.sbh-page picture {
    display: block;
    width: 100%;
    overflow: hidden;
}

.sbh-page img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    margin: 0;
    object-fit: cover;
}

.sbh-page h1,
.sbh-page h2,
.sbh-page h3,
.sbh-page p,
.sbh-page ul,
.sbh-page ol,
.sbh-page blockquote {
    max-width: 100%;
    margin-top: 0;
}

.sbh-page h1,
.sbh-page h2,
.sbh-page h3 {
    overflow-wrap: anywhere;
    color: var(--sbh-navy);
    font-weight: 700;
    line-height: 1.08;
    text-wrap: balance;
}

.sbh-page p,
.sbh-page li,
.sbh-page blockquote {
    overflow-wrap: break-word;
    word-break: normal;
    text-wrap: pretty;
}

.sbh-page ul,
.sbh-page ol {
    padding: 0;
}

.sbh-page a {
    max-width: 100%;
    overflow-wrap: anywhere;

    color: var(--sbh-strong);
    font-weight: 650;
    text-decoration-color: rgba(40, 111, 150, 0.35);
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;

    transition:
        color 160ms ease,
        border-color 160ms ease,
        background-color 160ms ease,
        box-shadow 160ms ease,
        transform 160ms ease;
}

.sbh-page a:hover {
    color: var(--sbh-deep);
    text-decoration-color: currentColor;
}

.sbh-page a:focus-visible {
    outline: 3px solid rgba(67, 143, 183, 0.45);
    outline-offset: 4px;
}

/* =========================================================
   SHARED LAYOUT
   ========================================================= */

.sbh-shell {
    width: min(1180px, calc(100% - 40px));
    min-width: 0;
    max-width: 1180px;
    margin-right: auto;
    margin-left: auto;
}

.sbh-heading {
    max-width: 860px;
    margin-bottom: 18px;

    font-size: clamp(34px, 4vw, 58px);
    line-height: 1.04;
    letter-spacing: -0.045em;
}

.sbh-subheading {
    margin-bottom: 17px;

    font-size: clamp(29px, 3.25vw, 46px);
    line-height: 1.07;
    letter-spacing: -0.038em;
}

.sbh-section-label,
.sbh-hero__eyebrow {
    margin-bottom: 10px;

    color: var(--sbh-strong);
    font-size: 12px;
    font-weight: 750;
    line-height: 1.4;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.sbh-button {
    display: inline-flex;
    min-width: 0;
    max-width: 100%;
    min-height: 50px;
    align-items: center;
    justify-content: center;

    padding: 13px 22px;
    border: 1px solid transparent;
    border-radius: 999px;

    font-size: 15px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    white-space: normal;
}

.sbh-button:hover {
    transform: translateY(-2px);
    text-decoration: none;
}

.sbh-button--primary {
    color: var(--sbh-white);
    background-color: var(--sbh-strong);
    box-shadow: 0 11px 27px rgba(29, 96, 133, 0.23);
}

.sbh-button--primary:hover {
    color: var(--sbh-white);
    background-color: var(--sbh-deep);
}

.sbh-button--outline {
    color: var(--sbh-deep);
    border-color: rgba(40, 111, 150, 0.34);
    background-color: var(--sbh-white);
}

.sbh-button--outline:hover {
    border-color: var(--sbh-blue);
    background-color: var(--sbh-pale);
}

.sbh-button--white {
    color: var(--sbh-deep);
    background-color: var(--sbh-white);
    box-shadow: 0 11px 27px rgba(8, 46, 67, 0.18);
}

.sbh-button--white:hover {
    color: var(--sbh-deep);
    background-color: var(--sbh-light);
}

.sbh-button--outline-white {
    color: var(--sbh-white);
    border-color: rgba(255, 255, 255, 0.68);
    background-color: transparent;
}

.sbh-button--outline-white:hover {
    color: var(--sbh-deep);
    border-color: var(--sbh-white);
    background-color: var(--sbh-white);
}

/* =========================================================
   HERO
   ========================================================= */

.sbh-hero {
    padding-top: 46px;
    padding-bottom: 50px;

    background:
        radial-gradient(
            circle at 89% 8%,
            rgba(92, 177, 219, 0.22),
            transparent 26%
        ),
        linear-gradient(
            135deg,
            var(--sbh-white) 0%,
            var(--sbh-pale) 55%,
            var(--sbh-light) 100%
        );
}

.sbh-hero::before {
    position: absolute;
    top: -130px;
    right: -115px;

    width: 380px;
    height: 380px;

    border: 1px solid rgba(40, 125, 169, 0.14);
    border-radius: 50%;

    content: "";
    pointer-events: none;
}

.sbh-hero__layout {
    position: relative;
    z-index: 1;

    display: grid;
    grid-template-columns:
        minmax(0, 1.05fr)
        minmax(0, 0.95fr);
    gap: clamp(22px, 3.5vw, 42px);
    align-items: center;
}

.sbh-hero__content {
    min-width: 0;
    padding: clamp(22px, 3vw, 31px);

    border: 1px solid var(--sbh-border);
    border-radius: 25px;

    background-color: rgba(255, 255, 255, 0.92);
    box-shadow: 0 14px 36px rgba(20, 74, 104, 0.08);
}

.sbh-hero__title {
    max-width: 740px;
    margin-bottom: 20px;

    font-size: clamp(43px, 5.5vw, 76px);
    line-height: 0.98;
    letter-spacing: -0.06em;
}

.sbh-hero__intro p {
    margin-bottom: 13px;
    color: var(--sbh-muted);
}

.sbh-hero__intro p:first-child {
    color: var(--sbh-text);
    font-size: clamp(19px, 1.75vw, 23px);
    line-height: 1.43;
}

.sbh-hero__intro p:last-child {
    margin-bottom: 0;
    color: var(--sbh-strong);
    font-weight: 700;
}

.sbh-hero__actions {
    display: flex;
    min-width: 0;
    flex-wrap: wrap;
    gap: 10px;

    margin-top: 21px;
}

.sbh-hero__visual {
    position: relative;

    width: 100%;
    min-width: 0;
    max-width: 100%;
    padding: 10px;

    border: 1px solid var(--sbh-border);
    border-radius: 25px;

    background-color: var(--sbh-white);
    box-shadow: var(--sbh-shadow);
}

.sbh-hero__visual picture {
    border-radius: 18px;
    background-color: var(--sbh-pale);
}

.sbh-hero__image {
    width: 100%;
    max-width: 100%;
    height: auto;
    min-height: 0;

    border-radius: 18px;

    object-fit: contain;
    object-position: center;
}

.sbh-hero__quote {
    position: relative;
    z-index: 2;

    width: calc(100% - 30px);
    max-width: 100%;
    margin: -14px auto 0;
    padding: 18px 20px;

    border-radius: 16px;

    background-color: var(--sbh-deep);
    box-shadow: 0 12px 29px rgba(11, 62, 91, 0.22);
}

.sbh-hero__quote p {
    margin-bottom: 0;

    color: var(--sbh-white);
    font-size: 16px;
    font-weight: 700;
    line-height: 1.45;
}

/* =========================================================
   RITUAL
   ========================================================= */

.sbh-ritual {
    background-color: var(--sbh-pale);
}

.sbh-ritual__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;

    margin: 0;
    list-style: none;
}

.sbh-ritual__item {
    min-width: 0;
    padding: 24px;

    border: 1px solid var(--sbh-border);
    border-radius: 18px;

    background-color: var(--sbh-white);
    box-shadow: 0 9px 24px rgba(20, 73, 101, 0.06);
}

.sbh-ritual__item--featured {
    background-color: var(--sbh-deep);
}

.sbh-ritual__item--soft {
    background-color: var(--sbh-light);
}

.sbh-ritual__item--compact {
    background-color: var(--sbh-medium);
}

.sbh-ritual__number {
    display: inline-flex;
    width: 40px;
    height: 40px;
    align-items: center;
    justify-content: center;

    margin-bottom: 16px;
    border-radius: 50%;

    color: var(--sbh-deep);
    background-color: var(--sbh-medium);

    font-size: 12px;
    font-weight: 750;
}

.sbh-ritual__item--featured .sbh-ritual__number {
    background-color: var(--sbh-white);
}

.sbh-ritual__item p {
    margin-bottom: 0;
    color: var(--sbh-muted);
}

.sbh-ritual__item--featured p,
.sbh-ritual__item--featured a {
    color: var(--sbh-white);
}

/* =========================================================
   PHILOSOPHY
   ========================================================= */

.sbh-philosophy {
    background-color: var(--sbh-light);
}

.sbh-philosophy__frame {
    display: grid;
    grid-template-columns:
        minmax(0, 0.88fr)
        minmax(0, 1.12fr);

    overflow: hidden;

    border: 1px solid var(--sbh-border);
    border-radius: 25px;

    background-color: var(--sbh-white);
    box-shadow: var(--sbh-shadow);
}

.sbh-philosophy__image-wrap {
    min-width: 0;
    min-height: 100%;
    background-color: var(--sbh-medium);
}

.sbh-philosophy__image-wrap picture {
    height: 100%;
}

.sbh-philosophy__image {
    width: 100%;
    height: 100%;
    min-height: 390px;

    object-fit: cover;
    object-position: center;
}

.sbh-philosophy__image-wrap::after {
    display: none;
}

.sbh-philosophy__content {
    min-width: 0;
    padding: clamp(24px, 3vw, 33px);
    background-color: var(--sbh-white);
}

.sbh-philosophy__content p {
    margin-bottom: 14px;
    color: var(--sbh-muted);
}

.sbh-philosophy__content p:last-child {
    margin-bottom: 0;
}

.sbh-philosophy__accent {
    padding: 18px 20px;
    border-left: 4px solid var(--sbh-strong);
    border-radius: 0 14px 14px 0;

    color: var(--sbh-deep);
    background-color: var(--sbh-light);

    font-size: 18px;
    font-weight: 700;
}

/* =========================================================
   RULES
   ========================================================= */

.sbh-rules {
    background-color: var(--sbh-navy);
}

.sbh-rules .sbh-heading {
    color: var(--sbh-white);
}

.sbh-rules .sbh-section-label {
    color: var(--sbh-medium);
}

.sbh-rules__header {
    display: grid;
    grid-template-columns:
        minmax(0, 0.78fr)
        minmax(0, 1.22fr);
    gap: 20px;
    align-items: center;

    margin-bottom: 20px;
}

.sbh-rules__header > div {
    padding: 24px;

    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 18px;

    background-color: rgba(255, 255, 255, 0.08);
}

.sbh-rules__picture {
    padding: 7px;
    border-radius: 18px;
    background-color: rgba(255, 255, 255, 0.1);
}

.sbh-rules__image {
    width: 100%;
    max-width: 100%;
    height: auto;
    max-height: 280px;

    border-radius: 12px;

    object-fit: cover;
    object-position: center;
}

.sbh-rules__list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 11px;

    margin: 0;
    list-style: none;
}

.sbh-rules__list li {
    min-width: 0;
    padding: 21px;
    border-radius: 17px;
    background-color: var(--sbh-white);
}

.sbh-rules__list li:nth-child(2) {
    background-color: var(--sbh-medium);
}

.sbh-rules__list li:nth-child(3) {
    background-color: var(--sbh-pale);
}

.sbh-rules__list span {
    display: flex;
    width: 40px;
    height: 40px;
    align-items: center;
    justify-content: center;

    margin-bottom: 15px;
    border-radius: 50%;

    color: var(--sbh-white);
    background-color: var(--sbh-strong);

    font-size: 12px;
    font-weight: 750;
}

.sbh-rules__list p {
    margin-bottom: 0;
    color: var(--sbh-text);
    font-size: 15px;
}

/* =========================================================
   CONDITIONS
   ========================================================= */

.sbh-conditions {
    background-color: var(--sbh-white);
}

.sbh-conditions__layout {
    display: grid;
    grid-template-columns:
        minmax(0, 0.84fr)
        minmax(0, 1.16fr);
    gap: 22px;
    align-items: stretch;
}

.sbh-conditions__visual {
    position: relative;

    min-width: 0;
    overflow: hidden;

    border-radius: 23px;
    background-color: var(--sbh-light);
    box-shadow: var(--sbh-shadow);
}

.sbh-conditions__visual picture {
    height: 100%;
}

.sbh-conditions__image {
    width: 100%;
    height: 100%;
    min-height: 420px;

    object-fit: cover;
    object-position: center;
}

.sbh-conditions__badge {
    position: absolute;
    right: 18px;
    bottom: 18px;

    display: flex;
    width: 106px;
    height: 106px;
    align-items: center;
    justify-content: center;

    border: 7px solid var(--sbh-white);
    border-radius: 50%;

    background-color: var(--sbh-strong);
    box-shadow: 0 13px 31px rgba(16, 74, 106, 0.2);
}

.sbh-conditions__badge strong {
    color: var(--sbh-white);
    font-size: 27px;
}

.sbh-conditions__content {
    min-width: 0;
    padding: clamp(23px, 3vw, 29px);

    border: 1px solid var(--sbh-border);
    border-radius: 23px;

    background-color: var(--sbh-pale);
}

.sbh-conditions__content > p {
    margin-bottom: 13px;
    color: var(--sbh-muted);
}

.sbh-conditions__price {
    margin-top: 19px;
    padding: 20px 22px;

    border-radius: 16px;
    background-color: var(--sbh-deep);
}

.sbh-conditions__price p {
    margin-bottom: 0;
    color: var(--sbh-white);
}

.sbh-conditions__price strong {
    color: var(--sbh-white);
    font-size: 24px;
}

/* =========================================================
   BENEFITS
   ========================================================= */

.sbh-benefits {
    background-color: var(--sbh-light);
}

.sbh-benefits__header {
    display: grid;
    grid-template-columns:
        minmax(0, 0.8fr)
        minmax(0, 1.2fr);
    gap: 12px;

    margin-bottom: 13px;
}

.sbh-benefits__heading-wrap,
.sbh-benefits__intro {
    min-width: 0;
    padding: 24px;

    border: 1px solid var(--sbh-border);
    border-radius: 18px;
}

.sbh-benefits__heading-wrap {
    background-color: var(--sbh-white);
}

.sbh-benefits__intro {
    background-color: var(--sbh-pale);
}

.sbh-benefits__intro p {
    margin-bottom: 13px;
    color: var(--sbh-text);
}

.sbh-benefits__intro p:last-child {
    margin-bottom: 0;
}

.sbh-benefits__image-wrap {
    width: 100%;
    min-width: 0;
    overflow: hidden;

    margin-bottom: 12px;
    padding: 7px;

    border-radius: 21px;

    background-color: var(--sbh-white);
    box-shadow: var(--sbh-shadow);
}

.sbh-benefits__image {
    width: 100%;
    max-width: 100%;
    height: auto;
    min-height: 0;
    max-height: none;

    border-radius: 15px;

    object-fit: contain;
    object-position: center;
}

.sbh-benefits__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 11px;

    margin: 0;
    list-style: none;
}

.sbh-benefits__grid li {
    min-width: 0;
    padding: 21px;

    border: 1px solid var(--sbh-border);
    border-radius: 17px;

    background-color: var(--sbh-white);
}

.sbh-benefits__grid li:nth-child(2) {
    background-color: var(--sbh-pale);
}

.sbh-benefits__grid li:nth-child(3) {
    background-color: var(--sbh-medium);
}

.sbh-benefits__number {
    display: inline-flex;
    width: 40px;
    height: 40px;
    align-items: center;
    justify-content: center;

    margin-bottom: 14px;
    border-radius: 50%;

    color: var(--sbh-white);
    background-color: var(--sbh-strong);

    font-size: 12px;
    font-weight: 750;
}

.sbh-benefits__grid p {
    margin-bottom: 0;
    color: var(--sbh-text);
    font-size: 15px;
}

/* =========================================================
   ONLINE
   ========================================================= */

.sbh-online {
    background-color: var(--sbh-white);
}

.sbh-online__top {
    display: grid;
    grid-template-columns:
        minmax(0, 0.92fr)
        minmax(0, 1.08fr);
    gap: 12px;

    margin-bottom: 12px;
}

.sbh-online__content {
    min-width: 0;
    padding: 26px;

    border: 1px solid var(--sbh-border);
    border-radius: 21px;

    background-color: var(--sbh-pale);
}

.sbh-online__content p {
    margin-bottom: 13px;
    color: var(--sbh-muted);
}

.sbh-online__content p:last-child {
    margin-bottom: 0;
}

.sbh-online__picture {
    min-width: 0;
    padding: 7px;

    border-radius: 21px;

    background-color: var(--sbh-light);
    box-shadow: var(--sbh-shadow);
}

.sbh-online__image {
    width: 100%;
    height: 100%;
    min-height: 330px;
    max-width: 100%;

    border-radius: 15px;

    object-fit: cover;
    object-position: center;
}

.sbh-online__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 11px;

    margin: 0;
    list-style: none;
}

.sbh-online__grid li {
    min-width: 0;
    padding: 21px;

    border: 1px solid var(--sbh-border);
    border-radius: 17px;

    background-color: var(--sbh-ice);
}

.sbh-online__grid li:nth-child(2),
.sbh-online__grid li:nth-child(3) {
    background-color: var(--sbh-light);
}

.sbh-online__grid li:nth-child(4) {
    background-color: var(--sbh-medium);
}

.sbh-online__grid span {
    display: block;
    margin-bottom: 10px;

    color: var(--sbh-strong);
    font-size: 12px;
    font-weight: 750;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.sbh-online__grid p {
    margin-bottom: 0;
    color: var(--sbh-text);
}

/* =========================================================
   SUPPORT
   ========================================================= */

.sbh-support {
    background-color: var(--sbh-pale);
}

.sbh-support__visual {
    position: relative;

    width: 100%;
    min-width: 0;
    overflow: hidden;

    min-height: 350px;
    margin-bottom: 14px;
    border-radius: 23px;

    box-shadow: var(--sbh-shadow);
}

.sbh-support__visual picture {
    height: 100%;
}

.sbh-support__image {
    width: 100%;
    height: 100%;
    min-height: 350px;

    object-fit: cover;
    object-position: center;
}

.sbh-support__visual::after {
    position: absolute;
    inset: 0;

    background: linear-gradient(
        90deg,
        rgba(16, 59, 85, 0.06),
        rgba(16, 59, 85, 0.84)
    );

    content: "";
}

.sbh-support__title-card {
    position: absolute;
    z-index: 1;
    top: 50%;
    right: 36px;

    width: min(550px, calc(100% - 72px));
    max-width: calc(100% - 72px);

    transform: translateY(-50%);
}

.sbh-support__title-card .sbh-subheading {
    margin-bottom: 0;
    color: var(--sbh-white);
    font-size: clamp(38px, 4.6vw, 62px);
}

.sbh-support__content {
    display: grid;
    grid-template-columns:
        minmax(0, 0.76fr)
        minmax(0, 1.24fr);
    gap: 12px;
}

.sbh-support__intro {
    min-width: 0;
    padding: 23px;

    border: 1px solid var(--sbh-border);
    border-radius: 18px;

    background-color: var(--sbh-white);
}

.sbh-support__intro p {
    margin-bottom: 13px;
    color: var(--sbh-muted);
}

.sbh-support__intro p:last-child {
    margin-bottom: 0;
}

.sbh-support__list {
    display: grid;
    gap: 10px;

    margin: 0;
    list-style: none;
}

.sbh-support__list li {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 14px;

    min-width: 0;
    padding: 19px;
    border-radius: 17px;

    background-color: var(--sbh-light);
}

.sbh-support__list li:nth-child(2) {
    background-color: var(--sbh-white);
}

.sbh-support__list span {
    display: flex;
    width: 39px;
    height: 39px;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    color: var(--sbh-white);
    background-color: var(--sbh-strong);

    font-size: 12px;
    font-weight: 750;
}

.sbh-support__list p {
    margin-bottom: 0;
    color: var(--sbh-text);
}

.sbh-support__conclusion {
    grid-column: 1 / -1;

    margin: 0;
    padding: 20px 22px;

    border-left: 5px solid var(--sbh-strong);
    border-radius: 0 15px 15px 0;

    color: var(--sbh-deep);
    background-color: var(--sbh-medium);

    font-size: 18px;
    font-weight: 700;
}

/* =========================================================
   SEARCH
   ========================================================= */

.sbh-search {
    background-color: var(--sbh-white);
}

.sbh-search__layout {
    display: grid;
    grid-template-columns:
        minmax(0, 0.72fr)
        minmax(0, 1.28fr);
    gap: 12px;
}

.sbh-search__heading,
.sbh-search__content {
    min-width: 0;
    padding: 26px;

    border: 1px solid var(--sbh-border);
    border-radius: 21px;
}

.sbh-search__heading {
    background-color: var(--sbh-medium);
}

.sbh-search__content {
    background-color: var(--sbh-pale);
}

.sbh-search__lead {
    margin-bottom: 0;
    color: var(--sbh-text);
    font-size: 17px;
}

.sbh-search__content > p {
    margin-bottom: 14px;
    color: var(--sbh-muted);
}

.sbh-search__content > p:first-child {
    color: var(--sbh-text);
    font-size: clamp(19px, 1.85vw, 24px);
    line-height: 1.43;
}

.sbh-search__content > p:last-child {
    margin-bottom: 0;
}

.sbh-search__quote {
    margin: 19px 0;
    padding: 21px 23px;

    border-radius: 16px;
    background-color: var(--sbh-deep);
}

.sbh-search__quote p {
    margin-bottom: 0;

    color: var(--sbh-white);
    font-size: 18px;
    font-weight: 700;
}

/* =========================================================
   SOUL
   ========================================================= */

.sbh-soul {
    background-color: var(--sbh-light);
}

.sbh-soul__header {
    max-width: none;
    margin-bottom: 12px;
    padding: 25px;

    border: 1px solid var(--sbh-border);
    border-radius: 19px;

    background-color: var(--sbh-white);
}

.sbh-soul__header > p:last-child {
    margin-bottom: 0;
    color: var(--sbh-muted);
    font-size: 18px;
}

.sbh-soul__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 11px;
}

.sbh-soul__card {
    min-width: 0;
    padding: 23px;

    border: 1px solid var(--sbh-border);
    border-radius: 17px;

    background-color: var(--sbh-white);
}

.sbh-soul__card--deep {
    background-color: var(--sbh-deep);
}

.sbh-soul__card--soft {
    background-color: var(--sbh-pale);
}

.sbh-soul__card:nth-child(4) {
    background-color: var(--sbh-medium);
}

.sbh-soul__card > span {
    display: block;
    margin-bottom: 14px;

    color: var(--sbh-strong);
    font-size: 11px;
    font-weight: 750;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.sbh-soul__card--deep > span {
    color: var(--sbh-medium);
}

.sbh-soul__card h3 {
    margin-bottom: 9px;
    font-size: 22px;
}

.sbh-soul__card--deep h3 {
    color: var(--sbh-white);
}

.sbh-soul__card p {
    margin-bottom: 0;
    color: var(--sbh-muted);
}

.sbh-soul__card--deep p {
    color: var(--sbh-white);
}

.sbh-soul__ending {
    margin-top: 11px;
    padding: 21px 24px;

    border-left: 5px solid var(--sbh-strong);
    border-radius: 0 16px 16px 0;

    background-color: var(--sbh-white);
}

.sbh-soul__ending p {
    margin-bottom: 0;
    color: var(--sbh-text);
    font-size: 18px;
}

/* =========================================================
   MEETING
   ========================================================= */

.sbh-meeting {
    background-color: var(--sbh-navy);
}

.sbh-meeting .sbh-heading {
    color: var(--sbh-white);
}

.sbh-meeting .sbh-section-label {
    color: var(--sbh-medium);
}

.sbh-meeting__layout {
    display: grid;
    grid-template-columns:
        minmax(0, 0.65fr)
        minmax(0, 1.35fr);
    gap: 12px;
}

.sbh-meeting__intro {
    min-width: 0;
    padding: 25px;

    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 19px;

    background-color: rgba(255, 255, 255, 0.08);
}

.sbh-meeting__intro > p:last-child {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.82);
}

.sbh-meeting__steps {
    display: grid;
    gap: 9px;

    margin: 0;
    list-style: none;
}

.sbh-meeting__steps li {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 14px;

    min-width: 0;
    padding: 18px;

    border-radius: 16px;
    background-color: var(--sbh-white);
}

.sbh-meeting__steps li:nth-child(even) {
    background-color: var(--sbh-light);
}

.sbh-meeting__steps > li > span {
    display: flex;
    width: 40px;
    height: 40px;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    color: var(--sbh-white);
    background-color: var(--sbh-strong);

    font-size: 11px;
    font-weight: 750;
}

.sbh-meeting__steps h3 {
    margin-bottom: 6px;

    color: var(--sbh-navy);
    font-size: 19px;
}

.sbh-meeting__steps p {
    margin-bottom: 0;
    color: var(--sbh-muted);
    font-size: 15px;
}

/* =========================================================
   WITHOUT ALCOHOL
   ========================================================= */

.sbh-without {
    background-color: var(--sbh-white);
}

.sbh-without__frame {
    display: grid;
    grid-template-columns:
        minmax(0, 0.76fr)
        minmax(0, 1.24fr);
    gap: 10px;

    min-width: 0;
    padding: 10px;

    border: 1px solid var(--sbh-border);
    border-radius: 23px;

    background-color: var(--sbh-pale);
}

.sbh-without__heading,
.sbh-without__content {
    min-width: 0;
    padding: 24px;
    border-radius: 16px;
}

.sbh-without__heading {
    background-color: var(--sbh-deep);
}

.sbh-without__heading .sbh-heading {
    color: var(--sbh-white);
}

.sbh-without__heading .sbh-section-label {
    color: var(--sbh-medium);
}

.sbh-without__content {
    background-color: var(--sbh-white);
}

.sbh-without__content p {
    margin-bottom: 13px;
    color: var(--sbh-muted);
}

.sbh-without__content p:last-child {
    margin-bottom: 0;
}

.sbh-without__large {
    color: var(--sbh-strong);
    font-size: clamp(28px, 3vw, 41px);
    font-weight: 700;
    line-height: 1.12;
}

/* =========================================================
   PRICE
   ========================================================= */

.sbh-price {
    background-color: var(--sbh-light);
}

.sbh-price__layout {
    display: grid;
    grid-template-columns:
        minmax(0, 1.2fr)
        minmax(0, 0.8fr);
    gap: 12px;
}

.sbh-price__main,
.sbh-price__card {
    min-width: 0;
    padding: 26px;
    border-radius: 21px;
}

.sbh-price__main {
    border: 1px solid var(--sbh-border);
    background-color: var(--sbh-white);
}

.sbh-price__main p {
    margin-bottom: 14px;
    color: var(--sbh-muted);
}

.sbh-price__main p:last-child {
    margin-bottom: 0;
}

.sbh-price__lead {
    color: var(--sbh-text);
    font-size: clamp(19px, 1.95vw, 25px);
    line-height: 1.43;
}

.sbh-price__card {
    background-color: var(--sbh-deep);
    box-shadow: var(--sbh-shadow);
}

.sbh-price__card-label {
    margin-bottom: 18px;

    color: var(--sbh-medium);
    font-size: 11px;
    font-weight: 750;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.sbh-price__card-value {
    margin-bottom: 9px;
    color: var(--sbh-white);
    font-size: 23px;
    font-weight: 700;
}

.sbh-price__card-sign {
    margin-bottom: 9px;
    color: rgba(255, 255, 255, 0.68);
}

.sbh-price__card-note {
    margin: 18px 0 0;
    padding-top: 15px;
    border-top: 1px solid rgba(255, 255, 255, 0.19);

    color: var(--sbh-white);
    font-size: 14px;
}

.sbh-price__details {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 9px;

    margin-top: 12px;
}

.sbh-price__details article {
    min-width: 0;
    padding: 18px;

    border: 1px solid var(--sbh-border);
    border-radius: 16px;

    background-color: var(--sbh-white);
}

.sbh-price__details article:nth-child(even) {
    background-color: var(--sbh-pale);
}

.sbh-price__details span {
    display: block;
    margin-bottom: 9px;

    color: var(--sbh-strong);
    font-size: 11px;
    font-weight: 750;
    text-transform: uppercase;
}

.sbh-price__details p {
    margin-bottom: 0;
    color: var(--sbh-muted);
    font-size: 14px;
}

/* =========================================================
   ORDER
   ========================================================= */

.sbh-order {
    background-color: var(--sbh-white);
}

.sbh-order__top {
    display: grid;
    grid-template-columns:
        minmax(0, 1fr)
        minmax(0, 0.56fr);
    gap: 12px;

    margin-bottom: 12px;
}

.sbh-order__top > div,
.sbh-order__intro {
    min-width: 0;
    padding: 24px;
    border-radius: 19px;
}

.sbh-order__top > div {
    background-color: var(--sbh-pale);
}

.sbh-order__intro {
    margin-bottom: 0;
    color: var(--sbh-text);
    background-color: var(--sbh-light);
}

.sbh-order__message {
    display: grid;
    grid-template-columns:
        minmax(0, 175px)
        minmax(0, 1fr);
    gap: 22px;

    min-width: 0;
    margin-bottom: 11px;
    padding: 23px;

    border-radius: 18px;
    background-color: var(--sbh-deep);
}

.sbh-order__message-label {
    margin-bottom: 0;

    color: var(--sbh-medium);
    font-size: 11px;
    font-weight: 750;
    text-transform: uppercase;
}

.sbh-order__message blockquote {
    min-width: 0;
    margin-bottom: 0;

    color: var(--sbh-white);
    font-size: 18px;
    font-weight: 700;
    line-height: 1.48;
}

.sbh-order__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 9px;
}

.sbh-order__grid article {
    min-width: 0;
    padding: 18px;

    border: 1px solid var(--sbh-border);
    border-radius: 16px;

    background-color: var(--sbh-ice);
}

.sbh-order__grid article:nth-child(even) {
    background-color: var(--sbh-light);
}

.sbh-order__grid span {
    display: flex;
    width: 38px;
    height: 38px;
    align-items: center;
    justify-content: center;

    margin-bottom: 14px;
    border-radius: 50%;

    color: var(--sbh-white);
    background-color: var(--sbh-strong);

    font-size: 11px;
    font-weight: 750;
}

.sbh-order__grid h3 {
    margin-bottom: 7px;
    font-size: 18px;
}

.sbh-order__grid p {
    margin-bottom: 0;
    color: var(--sbh-muted);
    font-size: 14px;
}

.sbh-order__actions {
    display: flex;
    min-width: 0;
    flex-wrap: wrap;
    gap: 10px;

    margin-top: 19px;
}

/* =========================================================
   ABROAD
   ========================================================= */

.sbh-abroad {
    background-color: var(--sbh-pale);
}

.sbh-abroad__layout {
    display: grid;
    grid-template-columns:
        minmax(0, 0.74fr)
        minmax(0, 1.26fr);
    gap: 12px;
}

.sbh-abroad__heading,
.sbh-abroad__content {
    min-width: 0;
    padding: 26px;
    border-radius: 20px;
}

.sbh-abroad__heading {
    background-color: var(--sbh-deep);
}

.sbh-abroad__heading .sbh-heading {
    color: var(--sbh-white);
}

.sbh-abroad__heading .sbh-section-label {
    color: var(--sbh-medium);
}

.sbh-abroad__content {
    border: 1px solid var(--sbh-border);
    background-color: var(--sbh-white);
}

.sbh-abroad__content p {
    margin-bottom: 14px;
    color: var(--sbh-muted);
}

.sbh-abroad__content > p:first-child {
    color: var(--sbh-text);
    font-size: clamp(19px, 1.9vw, 25px);
}

.sbh-abroad__content > p:last-of-type {
    margin-bottom: 0;
}

.sbh-abroad__accent {
    margin-top: 18px;
    padding: 20px 22px;

    border-left: 5px solid var(--sbh-strong);
    border-radius: 0 15px 15px 0;

    background-color: var(--sbh-light);
}

.sbh-abroad__accent p {
    margin-bottom: 0;
    color: var(--sbh-text);
    font-weight: 700;
}

/* =========================================================
   SAFETY
   ========================================================= */

.sbh-safety {
    background-color: var(--sbh-navy);
}

.sbh-safety .sbh-heading {
    color: var(--sbh-white);
}

.sbh-safety .sbh-section-label {
    color: var(--sbh-medium);
}

.sbh-safety__header {
    max-width: none;
    margin-bottom: 12px;
    padding: 24px;

    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 19px;

    background-color: rgba(255, 255, 255, 0.08);
}

.sbh-safety__header > p:last-child {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.84);
}

.sbh-safety__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.sbh-safety__item {
    min-width: 0;
    padding: 20px;

    border-radius: 16px;
    background-color: var(--sbh-white);
}

.sbh-safety__item--deep {
    background-color: var(--sbh-light);
}

.sbh-safety__item--soft {
    background-color: var(--sbh-pale);
}

.sbh-safety__item--blue {
    background-color: var(--sbh-strong);
}

.sbh-safety__item span {
    display: block;
    margin-bottom: 13px;

    color: var(--sbh-strong);
    font-size: 11px;
    font-weight: 750;
    text-transform: uppercase;
}

.sbh-safety__item h3 {
    margin-bottom: 8px;

    color: var(--sbh-navy);
    font-size: 19px;
}

.sbh-safety__item p {
    margin-bottom: 0;
    color: var(--sbh-muted);
    font-size: 14px;
}

.sbh-safety__item--blue span,
.sbh-safety__item--blue h3,
.sbh-safety__item--blue p {
    color: var(--sbh-white);
}

/* =========================================================
   FAQ
   ========================================================= */

.sbh-faq {
    background-color: var(--sbh-white);
}

.sbh-faq__header {
    max-width: none;
    margin-bottom: 12px;
    padding: 25px;

    border-radius: 19px;
    background-color: var(--sbh-light);
}

.sbh-faq__header > p:last-child {
    margin-bottom: 0;
    color: var(--sbh-text);
}

.sbh-faq__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
}

.sbh-faq__grid article {
    min-width: 0;
    padding: 19px;

    border: 1px solid var(--sbh-border);
    border-radius: 15px;

    background-color: var(--sbh-ice);
}

.sbh-faq__grid article:nth-child(3n + 2) {
    background-color: var(--sbh-pale);
}

.sbh-faq__grid article:nth-child(4n) {
    background-color: var(--sbh-light);
}

.sbh-faq__grid h3 {
    margin-bottom: 7px;
    font-size: 18px;
    line-height: 1.25;
}

.sbh-faq__grid p {
    margin-bottom: 0;
    color: var(--sbh-muted);
    font-size: 14px;
}

/* =========================================================
   FINAL STORY
   ========================================================= */

.sbh-final-story {
    background-color: var(--sbh-light);
}

.sbh-final-story__inner {
    width: min(1100px, calc(100% - 40px));
    min-width: 0;
    max-width: 1100px;
    padding: 30px;

    border: 1px solid var(--sbh-border);
    border-radius: 23px;

    background-color: var(--sbh-white);
    box-shadow: var(--sbh-shadow);
}

.sbh-final-story__small {
    margin-bottom: 9px;

    color: var(--sbh-strong);
    font-size: clamp(19px, 2.1vw, 26px);
}

.sbh-final-story__large {
    max-width: 100%;
    margin-bottom: 23px;

    color: var(--sbh-deep);
    font-size: clamp(35px, 4.5vw, 61px);
    font-weight: 700;
    line-height: 1.04;
    letter-spacing: -0.05em;
}

.sbh-final-story__text {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 11px;

    padding-top: 12px;
    border-top: 1px solid var(--sbh-border);
}

.sbh-final-story__text p {
    min-width: 0;
    margin-bottom: 0;
    padding: 18px;

    border-radius: 15px;

    color: var(--sbh-text);
    background-color: var(--sbh-pale);
}

/* =========================================================
   MORE LINKS
   ========================================================= */

.sbh-more {
    padding-top: 42px;
    padding-bottom: 42px;
    background-color: var(--sbh-white);
}

.sbh-more__layout {
    display: grid;
    grid-template-columns:
        minmax(0, 0.54fr)
        minmax(0, 1.46fr);
    gap: 12px;
}

.sbh-more__heading {
    min-width: 0;
    padding: 23px;

    border-radius: 17px;
    background-color: var(--sbh-deep);
}

.sbh-more__heading .sbh-subheading {
    margin-bottom: 0;
    color: var(--sbh-white);
}

.sbh-more__links {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
}

.sbh-more__links a {
    display: flex;
    min-width: 0;
    min-height: 70px;
    align-items: center;

    padding: 17px 19px;

    border: 1px solid var(--sbh-border);
    border-radius: 15px;

    color: var(--sbh-deep);
    background-color: var(--sbh-pale);

    font-weight: 700;
    text-decoration: none;
}

.sbh-more__links a:nth-child(2),
.sbh-more__links a:nth-child(3) {
    background-color: var(--sbh-light);
}

.sbh-more__links a:hover {
    transform: translateY(-2px);
    background-color: var(--sbh-medium);
}

/* =========================================================
   FINAL CTA
   ========================================================= */

.sbh-final {
    padding-top: 42px;
    padding-bottom: 52px;
    background-color: var(--sbh-pale);
}

.sbh-final__layout {
    display: grid;
    grid-template-columns:
        minmax(0, 1fr)
        minmax(0, 0.55fr);
    gap: 20px;
    align-items: center;

    min-width: 0;
    padding: 32px;

    border-radius: 23px;

    background:
        radial-gradient(
            circle at 88% 15%,
            rgba(141, 215, 248, 0.25),
            transparent 31%
        ),
        var(--sbh-deep);

    box-shadow: var(--sbh-shadow);
}

.sbh-final__content {
    min-width: 0;
}

.sbh-final__text {
    max-width: 100%;
    margin-bottom: 19px;

    color: var(--sbh-white);
    font-size: clamp(37px, 4.5vw, 62px);
    font-weight: 700;
    line-height: 1.02;
    letter-spacing: -0.05em;
}

.sbh-final__actions {
    display: flex;
    min-width: 0;
    flex-wrap: wrap;
    gap: 10px;
}

.sbh-final__email {
    min-width: 0;
    padding: 20px;

    border: 1px solid rgba(255, 255, 255, 0.17);
    border-radius: 16px;

    background-color: rgba(255, 255, 255, 0.1);
}

.sbh-final__email a {
    display: block;
    max-width: 100%;

    color: var(--sbh-white);
    overflow-wrap: anywhere;
    word-break: break-word;
}

/* =========================================================
   LARGE TABLET
   ========================================================= */

@media (max-width: 1080px) {
    .sbh-price__details,
    .sbh-order__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sbh-safety__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sbh-rules__list,
    .sbh-benefits__grid {
        grid-template-columns: 1fr;
    }
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 920px) {
    .sbh-page section {
        padding-top: 46px;
        padding-bottom: 46px;
    }

    .sbh-hero__layout,
    .sbh-philosophy__frame,
    .sbh-rules__header,
    .sbh-conditions__layout,
    .sbh-benefits__header,
    .sbh-online__top,
    .sbh-support__content,
    .sbh-search__layout,
    .sbh-meeting__layout,
    .sbh-without__frame,
    .sbh-price__layout,
    .sbh-order__top,
    .sbh-abroad__layout,
    .sbh-more__layout,
    .sbh-final__layout {
        grid-template-columns: minmax(0, 1fr);
    }

    .sbh-hero__visual {
        width: 100%;
        max-width: 760px;
        margin-right: auto;
        margin-left: auto;
    }

    .sbh-philosophy__image {
        height: auto;
        min-height: 0;
        max-height: 420px;
    }

    .sbh-rules__image {
        max-height: 340px;
    }

    .sbh-conditions__image {
        min-height: 340px;
        max-height: 520px;
    }

    .sbh-online__image {
        height: auto;
        min-height: 0;
        max-height: 480px;
    }

    .sbh-support__conclusion {
        grid-column: auto;
    }

    .sbh-order__message {
        grid-template-columns: minmax(0, 1fr);
    }

    .sbh-final__email {
        max-width: 620px;
    }
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 760px) {
    .sbh-page {
        font-size: 16px;
        overflow-x: hidden;
    }

    .sbh-page section {
        padding-top: 38px;
        padding-bottom: 38px;
    }

    .sbh-shell {
        width: calc(100% - 28px);
    }

    .sbh-ritual__grid,
    .sbh-online__grid,
    .sbh-soul__grid,
    .sbh-safety__grid,
    .sbh-faq__grid,
    .sbh-final-story__text,
    .sbh-more__links {
        grid-template-columns: minmax(0, 1fr);
    }

    .sbh-hero__content {
        padding: 23px;
    }

    .sbh-hero__actions,
    .sbh-order__actions,
    .sbh-final__actions {
        flex-direction: column;
        align-items: stretch;
    }

    .sbh-hero__actions .sbh-button,
    .sbh-order__actions .sbh-button,
    .sbh-final__actions .sbh-button {
        width: 100%;
    }

    .sbh-support__visual,
    .sbh-support__image {
        min-height: 310px;
    }

    .sbh-support__visual::after {
        background: linear-gradient(
            0deg,
            rgba(16, 59, 85, 0.92),
            rgba(16, 59, 85, 0.05)
        );
    }

    .sbh-support__title-card {
        top: auto;
        right: 22px;
        bottom: 22px;
        left: 22px;

        width: auto;
        max-width: none;

        transform: none;
    }

    .sbh-price__details,
    .sbh-order__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sbh-final-story__inner {
        width: calc(100% - 28px);
    }
}

/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 560px) {
    .sbh-page {
        line-height: 1.55;
    }

    .sbh-page section {
        padding-top: 32px;
        padding-bottom: 32px;
    }

    .sbh-shell {
        width: calc(100% - 20px);
    }

    .sbh-heading {
        margin-bottom: 15px;
        font-size: clamp(29px, 9vw, 40px);
    }

    .sbh-subheading {
        font-size: clamp(26px, 8.3vw, 37px);
    }

    .sbh-hero {
        padding-top: 26px;
    }

    .sbh-hero__title {
        font-size: clamp(36px, 11vw, 50px);
    }

    .sbh-hero__visual {
        padding: 7px;
        border-radius: 18px;
    }

    .sbh-hero__image {
        width: 100%;
        max-width: 100%;
        height: auto;

        object-fit: contain;
        object-position: center;
    }

    .sbh-hero__quote {
        width: calc(100% - 16px);
        padding: 16px 17px;
    }

    .sbh-philosophy__content,
    .sbh-conditions__content,
    .sbh-search__heading,
    .sbh-search__content,
    .sbh-price__main,
    .sbh-price__card,
    .sbh-abroad__heading,
    .sbh-abroad__content,
    .sbh-final-story__inner {
        padding: 20px;
    }

    .sbh-ritual__item,
    .sbh-rules__list li,
    .sbh-benefits__grid li,
    .sbh-online__grid li,
    .sbh-soul__card,
    .sbh-safety__item,
    .sbh-faq__grid article {
        padding: 18px;
    }

    .sbh-rules__header > div {
        padding: 20px;
    }

    .sbh-conditions__image {
        min-height: 280px;
    }

    .sbh-conditions__badge {
        right: 12px;
        bottom: 12px;

        width: 94px;
        height: 94px;
    }

    .sbh-conditions__badge strong {
        font-size: 23px;
    }

    .sbh-support__list li,
    .sbh-meeting__steps li {
        grid-template-columns: minmax(0, 1fr);
    }

    .sbh-price__details,
    .sbh-order__grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .sbh-without__frame {
        padding: 9px;
    }

    .sbh-final-story__inner {
        width: calc(100% - 20px);
    }

    .sbh-final__layout {
        padding: 22px 19px;
    }

    .sbh-final__text {
        font-size: clamp(34px, 10.4vw, 47px);
    }
}

/* =========================================================
   320–375 PX
   ========================================================= */

@media (max-width: 375px) {
    .sbh-shell {
        width: calc(100% - 16px);
    }

    .sbh-final-story__inner {
        width: calc(100% - 16px);
    }

    .sbh-hero__title {
        font-size: 35px;
    }

    .sbh-heading {
        font-size: 29px;
    }

    .sbh-subheading {
        font-size: 26px;
    }

    .sbh-button {
        min-height: 48px;
        padding-right: 14px;
        padding-left: 14px;
        font-size: 14px;
    }

    .sbh-hero__content,
    .sbh-philosophy__content,
    .sbh-conditions__content,
    .sbh-search__heading,
    .sbh-search__content,
    .sbh-price__main,
    .sbh-price__card,
    .sbh-abroad__heading,
    .sbh-abroad__content,
    .sbh-final-story__inner {
        padding: 17px;
    }

    .sbh-final__email {
        padding: 16px;
    }
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
    .sbh-page *,
    .sbh-page *::before,
    .sbh-page *::after {
        animation-duration: 0.01ms;
        animation-iteration-count: 1;
        scroll-behavior: auto;
        transition-duration: 0.01ms;
    }

    .sbh-button:hover,
    .sbh-more__links a:hover {
        transform: none;
    }
}

/* =========================================================
   SOBUTYLNIK PAGE — FORCE COLOR AND DENSITY OVERRIDES
   ВСТАВИТЬ В САМЫЙ КОНЕЦ ГЛОБАЛЬНОЙ ТАБЛИЦЫ СТИЛЕЙ
   ========================================================= */

.sbh-page {
    --sbh-force-white: #ffffff;
    --sbh-force-ice: #f4fbfe;
    --sbh-force-pale: #e8f6fc;
    --sbh-force-light: #d1ecf9;
    --sbh-force-medium: #a9d9ef;
    --sbh-force-blue: #3a91bd;
    --sbh-force-strong: #236f98;
    --sbh-force-deep: #174f70;
    --sbh-force-navy: #103b55;
    --sbh-force-text: #294755;
    --sbh-force-muted: #587181;
    --sbh-force-border: rgba(24, 91, 128, 0.18);
}

/* Общая плотность */

.sbh-page > section {
    padding-top: 46px !important;
    padding-bottom: 46px !important;
}

.sbh-page .sbh-shell {
    width: calc(100% - 40px) !important;
    max-width: 1180px !important;
}

.sbh-page .sbh-heading {
    margin-bottom: 18px !important;
}

.sbh-page .sbh-subheading {
    margin-bottom: 16px !important;
}

.sbh-page p:last-child {
    margin-bottom: 0;
}

/* Первый экран */

.sbh-page .sbh-hero {
    background:
        radial-gradient(
            circle at 88% 12%,
            rgba(85, 171, 214, 0.24),
            transparent 27%
        ),
        linear-gradient(
            135deg,
            #ffffff 0%,
            #eaf7fc 55%,
            #ceeaf8 100%
        ) !important;
}

.sbh-page .sbh-hero__layout {
    gap: 28px !important;
}

.sbh-page .sbh-hero__content {
    padding: 30px !important;
    border: 1px solid var(--sbh-force-border) !important;
    border-radius: 24px !important;
    background: rgba(255, 255, 255, 0.94) !important;
    box-shadow: 0 16px 38px rgba(18, 72, 101, 0.11) !important;
}

.sbh-page .sbh-hero__visual {
    padding: 10px !important;
    border: 1px solid var(--sbh-force-border) !important;
    border-radius: 24px !important;
    background: var(--sbh-force-white) !important;
    box-shadow: 0 16px 38px rgba(18, 72, 101, 0.13) !important;
}

.sbh-page .sbh-hero__image {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: right center !important;
    background: var(--sbh-force-pale) !important;
}

.sbh-page .sbh-hero__quote {
    background: var(--sbh-force-deep) !important;
}

.sbh-page .sbh-hero__quote p {
    color: var(--sbh-force-white) !important;
}

/* Четыре первых смысловых блока */

.sbh-page .sbh-ritual {
    background: var(--sbh-force-pale) !important;
}

.sbh-page .sbh-ritual__grid {
    gap: 12px !important;
}

.sbh-page .sbh-ritual__item {
    padding: 24px !important;
    border: 1px solid var(--sbh-force-border) !important;
    border-radius: 18px !important;
    background: var(--sbh-force-white) !important;
    box-shadow: 0 10px 28px rgba(18, 72, 101, 0.08) !important;
}

.sbh-page .sbh-ritual__item:nth-child(1),
.sbh-page .sbh-ritual__item--featured {
    background: var(--sbh-force-deep) !important;
}

.sbh-page .sbh-ritual__item:nth-child(1) p,
.sbh-page .sbh-ritual__item:nth-child(1) a,
.sbh-page .sbh-ritual__item--featured p,
.sbh-page .sbh-ritual__item--featured a {
    color: var(--sbh-force-white) !important;
}

.sbh-page .sbh-ritual__item:nth-child(2) {
    background: var(--sbh-force-white) !important;
}

.sbh-page .sbh-ritual__item:nth-child(3),
.sbh-page .sbh-ritual__item--soft {
    background: var(--sbh-force-light) !important;
}

.sbh-page .sbh-ritual__item:nth-child(4),
.sbh-page .sbh-ritual__item--compact {
    background: var(--sbh-force-medium) !important;
}

.sbh-page .sbh-ritual__item:nth-child(2) p,
.sbh-page .sbh-ritual__item:nth-child(3) p,
.sbh-page .sbh-ritual__item:nth-child(4) p {
    color: var(--sbh-force-text) !important;
}

/* Философия */

.sbh-page .sbh-philosophy {
    background: var(--sbh-force-light) !important;
}

.sbh-page .sbh-philosophy__frame {
    border: 1px solid var(--sbh-force-border) !important;
    background: var(--sbh-force-white) !important;
    box-shadow: 0 16px 38px rgba(18, 72, 101, 0.11) !important;
}

.sbh-page .sbh-philosophy__image-wrap {
    background: var(--sbh-force-medium) !important;
}

.sbh-page .sbh-philosophy__content {
    padding: 30px !important;
    background: var(--sbh-force-white) !important;
}

.sbh-page .sbh-philosophy__accent {
    color: var(--sbh-force-deep) !important;
    border-left: 5px solid var(--sbh-force-strong) !important;
    background: var(--sbh-force-light) !important;
}

/* Как не испортить общение */

.sbh-page .sbh-rules {
    background: var(--sbh-force-navy) !important;
}

.sbh-page .sbh-rules__header > div {
    padding: 24px !important;
    border: 1px solid rgba(255, 255, 255, 0.16) !important;
    border-radius: 18px !important;
    background: rgba(255, 255, 255, 0.08) !important;
}

.sbh-page .sbh-rules .sbh-heading {
    color: var(--sbh-force-white) !important;
}

.sbh-page .sbh-rules .sbh-section-label {
    color: var(--sbh-force-medium) !important;
}

.sbh-page .sbh-rules__picture {
    padding: 7px !important;
    background: rgba(255, 255, 255, 0.12) !important;
}

.sbh-page .sbh-rules__list {
    gap: 11px !important;
}

.sbh-page .sbh-rules__list li {
    padding: 22px !important;
    border: 0 !important;
    border-radius: 17px !important;
    background: var(--sbh-force-white) !important;
}

.sbh-page .sbh-rules__list li:nth-child(2) {
    background: var(--sbh-force-medium) !important;
}

.sbh-page .sbh-rules__list li:nth-child(3) {
    background: var(--sbh-force-pale) !important;
}

.sbh-page .sbh-rules__list li p {
    color: var(--sbh-force-text) !important;
}

/* Условия */

.sbh-page .sbh-conditions {
    background: var(--sbh-force-white) !important;
}

.sbh-page .sbh-conditions__layout {
    gap: 20px !important;
}

.sbh-page .sbh-conditions__visual {
    background: var(--sbh-force-light) !important;
}

.sbh-page .sbh-conditions__content {
    padding: 28px !important;
    border: 1px solid var(--sbh-force-border) !important;
    border-radius: 22px !important;
    background: var(--sbh-force-pale) !important;
}

.sbh-page .sbh-conditions__price {
    background: var(--sbh-force-deep) !important;
}

.sbh-page .sbh-conditions__price p,
.sbh-page .sbh-conditions__price strong {
    color: var(--sbh-force-white) !important;
}

/* Почему услуга нужна */

.sbh-page .sbh-benefits {
    background: var(--sbh-force-light) !important;
}

.sbh-page .sbh-benefits__header {
    gap: 11px !important;
    margin-bottom: 12px !important;
}

.sbh-page .sbh-benefits__heading-wrap {
    padding: 24px !important;
    border: 1px solid var(--sbh-force-border) !important;
    border-radius: 18px !important;
    background: var(--sbh-force-white) !important;
}

.sbh-page .sbh-benefits__intro {
    padding: 24px !important;
    border: 1px solid var(--sbh-force-border) !important;
    border-radius: 18px !important;
    background: var(--sbh-force-pale) !important;
}

.sbh-page .sbh-benefits__image-wrap {
    background: var(--sbh-force-white) !important;
}

.sbh-page .sbh-benefits__grid {
    gap: 10px !important;
}

.sbh-page .sbh-benefits__grid li {
    padding: 21px !important;
    border: 1px solid var(--sbh-force-border) !important;
    border-radius: 16px !important;
    background: var(--sbh-force-white) !important;
}

.sbh-page .sbh-benefits__grid li:nth-child(2) {
    background: var(--sbh-force-pale) !important;
}

.sbh-page .sbh-benefits__grid li:nth-child(3) {
    background: var(--sbh-force-medium) !important;
}

.sbh-page .sbh-benefits__grid li p {
    color: var(--sbh-force-text) !important;
}

/* Онлайн */

.sbh-page .sbh-online {
    background: var(--sbh-force-white) !important;
}

.sbh-page .sbh-online__top {
    gap: 11px !important;
    margin-bottom: 11px !important;
}

.sbh-page .sbh-online__content {
    padding: 26px !important;
    border: 1px solid var(--sbh-force-border) !important;
    border-radius: 20px !important;
    background: var(--sbh-force-pale) !important;
}

.sbh-page .sbh-online__picture {
    padding: 7px !important;
    background: var(--sbh-force-light) !important;
}

.sbh-page .sbh-online__grid {
    gap: 10px !important;
}

.sbh-page .sbh-online__grid li {
    padding: 21px !important;
    border: 1px solid var(--sbh-force-border) !important;
    border-radius: 16px !important;
    background: var(--sbh-force-ice) !important;
}

.sbh-page .sbh-online__grid li:nth-child(2),
.sbh-page .sbh-online__grid li:nth-child(3) {
    background: var(--sbh-force-light) !important;
}

.sbh-page .sbh-online__grid li:nth-child(4) {
    background: var(--sbh-force-medium) !important;
}

.sbh-page .sbh-online__grid p {
    color: var(--sbh-force-text) !important;
}

/* Поддержка */

.sbh-page .sbh-support {
    background: var(--sbh-force-pale) !important;
}

.sbh-page .sbh-support__content {
    gap: 11px !important;
}

.sbh-page .sbh-support__intro {
    padding: 22px !important;
    border: 1px solid var(--sbh-force-border) !important;
    border-radius: 17px !important;
    background: var(--sbh-force-white) !important;
}

.sbh-page .sbh-support__list li {
    padding: 19px !important;
    border-radius: 16px !important;
    background: var(--sbh-force-light) !important;
}

.sbh-page .sbh-support__list li:nth-child(2) {
    background: var(--sbh-force-white) !important;
}

.sbh-page .sbh-support__conclusion {
    color: var(--sbh-force-deep) !important;
    border-left: 5px solid var(--sbh-force-strong) !important;
    background: var(--sbh-force-medium) !important;
}

/* Где найти собутыльника */

.sbh-page .sbh-search {
    background: var(--sbh-force-white) !important;
}

.sbh-page .sbh-search__layout {
    gap: 11px !important;
}

.sbh-page .sbh-search__heading {
    padding: 25px !important;
    border: 1px solid var(--sbh-force-border) !important;
    border-radius: 19px !important;
    background: var(--sbh-force-medium) !important;
}

.sbh-page .sbh-search__content {
    padding: 25px !important;
    border: 1px solid var(--sbh-force-border) !important;
    border-radius: 19px !important;
    background: var(--sbh-force-pale) !important;
}

.sbh-page .sbh-search__quote {
    background: var(--sbh-force-deep) !important;
}

.sbh-page .sbh-search__quote p {
    color: var(--sbh-force-white) !important;
}

/* С кем выпить и поговорить */

.sbh-page .sbh-soul {
    background: var(--sbh-force-light) !important;
}

.sbh-page .sbh-soul__header {
    padding: 24px !important;
    margin-bottom: 11px !important;
    border: 1px solid var(--sbh-force-border) !important;
    border-radius: 18px !important;
    background: var(--sbh-force-white) !important;
}

.sbh-page .sbh-soul__grid {
    gap: 10px !important;
}

.sbh-page .sbh-soul__card {
    padding: 22px !important;
    border: 1px solid var(--sbh-force-border) !important;
    border-radius: 16px !important;
    background: var(--sbh-force-white) !important;
}

.sbh-page .sbh-soul__card:nth-child(1),
.sbh-page .sbh-soul__card--deep {
    background: var(--sbh-force-deep) !important;
}

.sbh-page .sbh-soul__card:nth-child(1) h3,
.sbh-page .sbh-soul__card:nth-child(1) p,
.sbh-page .sbh-soul__card--deep h3,
.sbh-page .sbh-soul__card--deep p {
    color: var(--sbh-force-white) !important;
}

.sbh-page .sbh-soul__card:nth-child(2) {
    background: var(--sbh-force-white) !important;
}

.sbh-page .sbh-soul__card:nth-child(3),
.sbh-page .sbh-soul__card--soft {
    background: var(--sbh-force-pale) !important;
}

.sbh-page .sbh-soul__card:nth-child(4) {
    background: var(--sbh-force-medium) !important;
}

.sbh-page .sbh-soul__ending {
    border-left: 5px solid var(--sbh-force-strong) !important;
    background: var(--sbh-force-white) !important;
}

/* Как проходит встреча */

.sbh-page .sbh-meeting {
    background: var(--sbh-force-navy) !important;
}

.sbh-page .sbh-meeting__layout {
    gap: 11px !important;
}

.sbh-page .sbh-meeting__intro {
    padding: 24px !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    border-radius: 18px !important;
    background: rgba(255, 255, 255, 0.08) !important;
}

.sbh-page .sbh-meeting .sbh-heading {
    color: var(--sbh-force-white) !important;
}

.sbh-page .sbh-meeting__steps {
    gap: 8px !important;
}

.sbh-page .sbh-meeting__steps li {
    padding: 18px !important;
    border-radius: 15px !important;
    background: var(--sbh-force-white) !important;
}

.sbh-page .sbh-meeting__steps li:nth-child(even) {
    background: var(--sbh-force-light) !important;
}

.sbh-page .sbh-meeting__steps h3 {
    color: var(--sbh-force-navy) !important;
}

.sbh-page .sbh-meeting__steps p {
    color: var(--sbh-force-muted) !important;
}

/* Без алкоголя */

.sbh-page .sbh-without {
    background: var(--sbh-force-white) !important;
}

.sbh-page .sbh-without__frame {
    gap: 10px !important;
    padding: 10px !important;
    border: 1px solid var(--sbh-force-border) !important;
    background: var(--sbh-force-pale) !important;
}

.sbh-page .sbh-without__heading {
    padding: 24px !important;
    border-radius: 16px !important;
    background: var(--sbh-force-deep) !important;
}

.sbh-page .sbh-without__heading .sbh-heading {
    color: var(--sbh-force-white) !important;
}

.sbh-page .sbh-without__heading .sbh-section-label {
    color: var(--sbh-force-medium) !important;
}

.sbh-page .sbh-without__content {
    padding: 24px !important;
    border-radius: 16px !important;
    background: var(--sbh-force-white) !important;
}

/* Цена */

.sbh-page .sbh-price {
    background: var(--sbh-force-light) !important;
}

.sbh-page .sbh-price__layout {
    gap: 11px !important;
}

.sbh-page .sbh-price__main {
    padding: 25px !important;
    border: 1px solid var(--sbh-force-border) !important;
    border-radius: 19px !important;
    background: var(--sbh-force-white) !important;
}

.sbh-page .sbh-price__card {
    padding: 25px !important;
    border-radius: 19px !important;
    background: var(--sbh-force-deep) !important;
}

.sbh-page .sbh-price__card p {
    color: var(--sbh-force-white) !important;
}

.sbh-page .sbh-price__card-label {
    color: var(--sbh-force-medium) !important;
}

.sbh-page .sbh-price__details {
    gap: 8px !important;
    margin-top: 11px !important;
}

.sbh-page .sbh-price__details article {
    padding: 18px !important;
    border: 1px solid var(--sbh-force-border) !important;
    border-radius: 15px !important;
    background: var(--sbh-force-white) !important;
}

.sbh-page .sbh-price__details article:nth-child(even) {
    background: var(--sbh-force-pale) !important;
}

/* Как заказать */

.sbh-page .sbh-order {
    background: var(--sbh-force-white) !important;
}

.sbh-page .sbh-order__top {
    gap: 10px !important;
    margin-bottom: 10px !important;
}

.sbh-page .sbh-order__top > div {
    padding: 24px !important;
    border-radius: 18px !important;
    background: var(--sbh-force-pale) !important;
}

.sbh-page .sbh-order__intro {
    padding: 24px !important;
    border-radius: 18px !important;
    background: var(--sbh-force-light) !important;
}

.sbh-page .sbh-order__message {
    background: var(--sbh-force-deep) !important;
}

.sbh-page .sbh-order__message blockquote {
    color: var(--sbh-force-white) !important;
}

.sbh-page .sbh-order__grid {
    gap: 8px !important;
}

.sbh-page .sbh-order__grid article {
    padding: 18px !important;
    border: 1px solid var(--sbh-force-border) !important;
    border-radius: 15px !important;
    background: var(--sbh-force-ice) !important;
}

.sbh-page .sbh-order__grid article:nth-child(even) {
    background: var(--sbh-force-light) !important;
}

/* Русскоязычный собутыльник */

.sbh-page .sbh-abroad {
    background: var(--sbh-force-pale) !important;
}

.sbh-page .sbh-abroad__layout {
    gap: 11px !important;
}

.sbh-page .sbh-abroad__heading {
    padding: 25px !important;
    border-radius: 19px !important;
    background: var(--sbh-force-deep) !important;
}

.sbh-page .sbh-abroad__heading .sbh-heading {
    color: var(--sbh-force-white) !important;
}

.sbh-page .sbh-abroad__heading .sbh-section-label {
    color: var(--sbh-force-medium) !important;
}

.sbh-page .sbh-abroad__content {
    padding: 25px !important;
    border: 1px solid var(--sbh-force-border) !important;
    border-radius: 19px !important;
    background: var(--sbh-force-white) !important;
}

.sbh-page .sbh-abroad__accent {
    background: var(--sbh-force-light) !important;
}

/* Правила */

.sbh-page .sbh-safety {
    background: var(--sbh-force-navy) !important;
}

.sbh-page .sbh-safety__header {
    padding: 23px !important;
    margin-bottom: 11px !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    border-radius: 18px !important;
    background: rgba(255, 255, 255, 0.08) !important;
}

.sbh-page .sbh-safety .sbh-heading {
    color: var(--sbh-force-white) !important;
}

.sbh-page .sbh-safety__grid {
    gap: 9px !important;
}

.sbh-page .sbh-safety__item {
    padding: 19px !important;
    border-radius: 15px !important;
    background: var(--sbh-force-white) !important;
}

.sbh-page .sbh-safety__item:nth-child(2),
.sbh-page .sbh-safety__item:nth-child(4) {
    background: var(--sbh-force-light) !important;
}

.sbh-page .sbh-safety__item:nth-child(3),
.sbh-page .sbh-safety__item:nth-child(5) {
    background: var(--sbh-force-pale) !important;
}

.sbh-page .sbh-safety__item:nth-child(6),
.sbh-page .sbh-safety__item--blue {
    background: var(--sbh-force-strong) !important;
}

.sbh-page .sbh-safety__item:nth-child(6) h3,
.sbh-page .sbh-safety__item:nth-child(6) p,
.sbh-page .sbh-safety__item:nth-child(6) span,
.sbh-page .sbh-safety__item--blue h3,
.sbh-page .sbh-safety__item--blue p,
.sbh-page .sbh-safety__item--blue span {
    color: var(--sbh-force-white) !important;
}

/* FAQ */

.sbh-page .sbh-faq {
    background: var(--sbh-force-white) !important;
}

.sbh-page .sbh-faq__header {
    padding: 24px !important;
    margin-bottom: 11px !important;
    border-radius: 18px !important;
    background: var(--sbh-force-light) !important;
}

.sbh-page .sbh-faq__grid {
    gap: 8px !important;
}

.sbh-page .sbh-faq__grid article {
    padding: 18px !important;
    border: 1px solid var(--sbh-force-border) !important;
    border-radius: 14px !important;
    background: var(--sbh-force-ice) !important;
}

.sbh-page .sbh-faq__grid article:nth-child(3n + 2) {
    background: var(--sbh-force-pale) !important;
}

.sbh-page .sbh-faq__grid article:nth-child(4n) {
    background: var(--sbh-force-light) !important;
}

/* Финальная мысль */

.sbh-page .sbh-final-story {
    background: var(--sbh-force-light) !important;
}

.sbh-page .sbh-final-story__inner {
    padding: 28px !important;
    border: 1px solid var(--sbh-force-border) !important;
    border-radius: 21px !important;
    background: var(--sbh-force-white) !important;
}

.sbh-page .sbh-final-story__text {
    gap: 9px !important;
}

.sbh-page .sbh-final-story__text p {
    padding: 18px !important;
    border-radius: 14px !important;
    color: var(--sbh-force-text) !important;
    background: var(--sbh-force-pale) !important;
}

/* Другие предложения */

.sbh-page .sbh-more {
    background: var(--sbh-force-white) !important;
}

.sbh-page .sbh-more__layout {
    gap: 10px !important;
}

.sbh-page .sbh-more__heading {
    padding: 22px !important;
    border-radius: 16px !important;
    background: var(--sbh-force-deep) !important;
}

.sbh-page .sbh-more__heading .sbh-subheading {
    color: var(--sbh-force-white) !important;
}

.sbh-page .sbh-more__links {
    gap: 8px !important;
}

.sbh-page .sbh-more__links a {
    border: 1px solid var(--sbh-force-border) !important;
    background: var(--sbh-force-pale) !important;
}

.sbh-page .sbh-more__links a:nth-child(2),
.sbh-page .sbh-more__links a:nth-child(3) {
    background: var(--sbh-force-light) !important;
}

/* Финальный CTA */

.sbh-page .sbh-final {
    background: var(--sbh-force-pale) !important;
}

.sbh-page .sbh-final__layout {
    padding: 30px !important;
    background:
        radial-gradient(
            circle at 87% 15%,
            rgba(141, 215, 248, 0.25),
            transparent 31%
        ),
        var(--sbh-force-deep) !important;
}

.sbh-page .sbh-final__text,
.sbh-page .sbh-final__email a {
    color: var(--sbh-force-white) !important;
}

.sbh-page .sbh-final__email {
    border: 1px solid rgba(255, 255, 255, 0.18) !important;
    background: rgba(255, 255, 255, 0.1) !important;
}

/* Мобильная версия */

@media (max-width: 920px) {
    .sbh-page .sbh-hero__layout,
    .sbh-page .sbh-philosophy__frame,
    .sbh-page .sbh-rules__header,
    .sbh-page .sbh-conditions__layout,
    .sbh-page .sbh-benefits__header,
    .sbh-page .sbh-online__top,
    .sbh-page .sbh-support__content,
    .sbh-page .sbh-search__layout,
    .sbh-page .sbh-meeting__layout,
    .sbh-page .sbh-without__frame,
    .sbh-page .sbh-price__layout,
    .sbh-page .sbh-order__top,
    .sbh-page .sbh-abroad__layout,
    .sbh-page .sbh-more__layout,
    .sbh-page .sbh-final__layout {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 760px) {
    .sbh-page > section {
        padding-top: 34px !important;
        padding-bottom: 34px !important;
    }

    .sbh-page .sbh-shell {
        width: calc(100% - 24px) !important;
    }

    .sbh-page .sbh-ritual__grid,
    .sbh-page .sbh-rules__list,
    .sbh-page .sbh-benefits__grid,
    .sbh-page .sbh-online__grid,
    .sbh-page .sbh-soul__grid,
    .sbh-page .sbh-safety__grid,
    .sbh-page .sbh-faq__grid,
    .sbh-page .sbh-final-story__text,
    .sbh-page .sbh-more__links {
        grid-template-columns: 1fr !important;
    }

    .sbh-page .sbh-price__details,
    .sbh-page .sbh-order__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 560px) {
    .sbh-page .sbh-shell {
        width: calc(100% - 18px) !important;
    }

    .sbh-page .sbh-hero__content,
    .sbh-page .sbh-philosophy__content,
    .sbh-page .sbh-conditions__content,
    .sbh-page .sbh-search__heading,
    .sbh-page .sbh-search__content,
    .sbh-page .sbh-price__main,
    .sbh-page .sbh-price__card,
    .sbh-page .sbh-abroad__heading,
    .sbh-page .sbh-abroad__content,
    .sbh-page .sbh-final-story__inner {
        padding: 20px !important;
    }

    .sbh-page .sbh-price__details,
    .sbh-page .sbh-order__grid {
        grid-template-columns: 1fr !important;
    }
}
/* Контраст кнопок в финальном CTA */

.sbh-page .sbh-final__actions .sbh-button--white,
.sbh-page .sbh-final__actions .sbh-button--white:link,
.sbh-page .sbh-final__actions .sbh-button--white:visited {
    color: #174f70 !important;
    background-color: #ffffff !important;
    border-color: #ffffff !important;
    text-decoration: none !important;
}

.sbh-page .sbh-final__actions .sbh-button--white:hover {
    color: #103b55 !important;
    background-color: #d7eef9 !important;
    border-color: #d7eef9 !important;
}

.sbh-page .sbh-final__actions .sbh-button--outline-white,
.sbh-page .sbh-final__actions .sbh-button--outline-white:link,
.sbh-page .sbh-final__actions .sbh-button--outline-white:visited {
    color: #ffffff !important;
    background-color: transparent !important;
    border: 2px solid rgba(255, 255, 255, 0.9) !important;
    text-decoration: none !important;
}

.sbh-page .sbh-final__actions .sbh-button--outline-white:hover {
    color: #174f70 !important;
    background-color: #ffffff !important;
    border-color: #ffffff !important;
}

.sbh-page .sbh-final__actions .sbh-button--white:focus-visible,
.sbh-page .sbh-final__actions .sbh-button--outline-white:focus-visible {
    outline: 3px solid #acdcef;
    outline-offset: 4px;
}

__________________________________________________________________________________________________
стиль для главной
/* =========================================================
   СТАРАЯ ВЕРХНЯЯ ЧАСТЬ ГЛАВНОЙ СТРАНИЦЫ
   СЕКЦИИ 19–64, ПЕРЕНЕСЁННЫЕ В ОДИН CODE BLOCK
   ========================================================= */

.sbo-original {
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;

    color: inherit;
    background: transparent;

    box-sizing: border-box;
}

.sbo-original *,
.sbo-original *::before,
.sbo-original *::after {
    box-sizing: border-box;
}


/* =========================================================
   ОБЩАЯ СЕКЦИЯ
   ========================================================= */

.sbo-original__section {
    width: 100%;
    max-width: 100%;

    margin: 0;
    padding: 0;

    border-top: 1rem solid #02a0ef;
}

.sbo-original__section--last {
    border-bottom: 1rem solid #02a0ef;
}


/* Аналог стандартного .ct-section-inner-wrap Oxygen */

.sbo-original__inner {
    width: 100%;
    max-width: 1120px;

    margin-right: auto;
    margin-left: auto;

    padding: 75px 20px 0;
}


/* Секция 19 имела нулевые внутренние отступы */

.sbo-original__section--hero .sbo-original__inner {
    max-width: 100%;
    padding: 0;
}


/* Секция 64 имела padding-top: 0 и padding-bottom: 0 */

.sbo-original__section--video .sbo-original__inner {
    padding-top: 0;
    padding-bottom: 0;
}


/* =========================================================
   ОБЩАЯ СТРУКТУРА ДВУХ КОЛОНОК
   ========================================================= */

.sbo-original__row {
    display: flex;
    width: 100%;
    max-width: 100%;

    flex-direction: row;
    align-items: center;

    text-align: left;
}

.sbo-original__content {
    width: 75%;
    max-width: 75%;
}

.sbo-original__image-wrap {
    display: block;
    width: 25%;
    max-width: 25%;
    min-width: 0;
}

.sbo-original__image {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;

    margin: 0;
}


/* =========================================================
   ПЕРВАЯ СЕКЦИЯ — 50/50
   ========================================================= */

.sbo-original__hero-image-wrap {
    width: 50%;
    max-width: 50%;
}

.sbo-original__hero-content {
    width: 50%;
    max-width: 50%;

    padding: 2rem 1rem 2rem 0;

    font-size: clamp(
        1.6rem,
        calc(1.6rem + ((1vw - 0.32rem) * 0.9375)),
        2.5rem
    );

    text-align: justify;
}

.sbo-original__hero-content h1 {
    margin-top: 0;
}


/* =========================================================
   ТЕКСТ
   ========================================================= */

.sbo-original__content,
.sbo-original__hero-content {
    min-width: 0;
}

.sbo-original__content > :first-child,
.sbo-original__hero-content > :first-child {
    margin-top: 0;
}

.sbo-original__content > :last-child,
.sbo-original__hero-content > :last-child {
    margin-bottom: 0;
}

.sbo-original__content a {
    color: inherit;
}


/* =========================================================
   СЕКЦИЯ 43
   ФОТО С УСАМИ И БОРОДАМИ
   ========================================================= */

.sbo-original__portrait-wrap {
    width: 25%;
    max-width: 25%;
}


/* =========================================================
   СЕКЦИЯ 64 — ВИДЕОПОДБОРКА
   ========================================================= */

.sbo-original__video-layout {
    display: flex;
    width: 100%;

    flex-direction: column;
    align-items: center;

    gap: 2rem;

    padding-top: 3rem;
    padding-bottom: 3rem;

    text-align: left;
}

.sbo-original__video-text {
    width: 100%;

    padding-right: 1rem;
    padding-left: 1rem;
}

.sbo-original__video-button-wrap {
    display: flex;
    width: 100%;

    justify-content: center;
    align-items: center;

    text-align: center;
}

.sbo-original__video-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    max-width: 100%;
    min-height: 54px;

    padding: 13px 24px;

    color: inherit;
    border: 2px solid currentColor;
    border-radius: 4px;

    font-size: 2rem;
    font-weight: 900;
    line-height: 1.15;
    text-align: center;
    text-decoration: none;

    transition:
        color 160ms ease,
        background-color 160ms ease,
        transform 160ms ease;
}

.sbo-original__video-link:hover {
    transform: translateY(-2px);
    text-decoration: none;
}


/*
Если глобальный класс linkwrapper01 всё ещё существует,
его оформление также применится к кнопке.
*/


/* =========================================================
   МОБИЛЬНАЯ ВЕРСИЯ
   ========================================================= */

@media (max-width: 767px) {

    .sbo-original__inner {
        padding-right: 20px;
        padding-left: 20px;
    }

    .sbo-original__section--hero .sbo-original__inner {
        padding-right: 0;
        padding-left: 0;
    }

    .sbo-original__row {
        flex-direction: column;
    }

    .sbo-original__content,
    .sbo-original__image-wrap,
    .sbo-original__hero-image-wrap,
    .sbo-original__hero-content {
        width: 100%;
        max-width: 100%;
    }

    .sbo-original__hero-content {
        padding: 1.5rem 1rem;
    }

    .sbo-original__portrait-wrap {
        width: 50%;
        max-width: 50%;

        margin-right: auto;
        margin-left: auto;
    }

    .sbo-original__section--portrait .sbo-original__content {
        text-align: center;
    }

    .sbo-original__video-button-wrap {
        width: 75%;
    }

    .sbo-original__video-link {
        width: 100%;
        font-size: clamp(1.25rem, 6vw, 2rem);
    }
}


/* =========================================================
   УЗКИЕ ТЕЛЕФОНЫ
   ========================================================= */

@media (max-width: 479px) {

    .sbo-original__inner {
        padding-top: 52px;
        padding-right: 15px;
        padding-left: 15px;
    }

    .sbo-original__section--hero .sbo-original__inner {
        padding: 0;
    }

    .sbo-original__portrait-wrap {
        width: 65%;
        max-width: 65%;
    }

    .sbo-original__video-button-wrap {
        width: 100%;
    }
}
.humanai-page .humanai-related {
  margin-top: 42px;
  padding: 38px;
  border: 1px solid var(--humanai-border);
  border-radius: var(--humanai-radius-l);
  background:
    radial-gradient(
      circle at 100% 0,
      rgba(7, 155, 211, 0.1),
      transparent 31%
    ),
    var(--humanai-ice);
}

.humanai-page .humanai-related__head {
  max-width: 800px;
  margin-bottom: 30px;
}

.humanai-page .humanai-related__title {
  margin: 0;
  color: var(--humanai-heading);
  font-size: clamp(32px, 4vw, 52px);
  font-weight: 700;
  letter-spacing: -0.045em;
  line-height: 1.08;
}

.humanai-page .humanai-related__intro {
  max-width: 720px;
  margin-top: 17px;
  color: var(--humanai-muted);
  font-size: 18px;
  line-height: 1.65;
}

.humanai-page .humanai-related__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.humanai-page .humanai-related__card {
  display: flex;
  min-height: 100%;
  flex-direction: column;
  padding: 28px;
  border: 1px solid var(--humanai-border);
  border-top: 5px solid var(--humanai-blue);
  border-radius: var(--humanai-radius-m);
  background: var(--humanai-white);
  box-shadow: var(--humanai-shadow-small);
}

.humanai-page .humanai-related__card--accent {
  background:
    linear-gradient(
      135deg,
      var(--humanai-white),
      var(--humanai-sky)
    );
}

.humanai-page .humanai-related__number {
  display: inline-flex;
  width: 43px;
  height: 43px;
  align-items: center;
  justify-content: center;
  margin-bottom: 22px;
  border: 1px solid #aed8e4;
  border-radius: 50%;
  background: var(--humanai-ice);
  color: var(--humanai-blue-dark);
  font-size: 13px;
  font-weight: 700;
}

.humanai-page .humanai-related__card h3 {
  margin: 0;
  color: var(--humanai-heading);
  font-size: 23px;
  line-height: 1.25;
}

.humanai-page .humanai-related__card > p {
  margin-top: 14px;
  color: var(--humanai-text);
  font-size: 17px;
  line-height: 1.62;
}

.humanai-page .humanai-related__links {
  display: grid;
  gap: 10px;
  margin-top: 24px;
}

.humanai-page .humanai-related__links a {
  position: relative;
  display: block;
  padding: 13px 42px 13px 16px;
  border: 1px solid var(--humanai-border);
  border-radius: 12px;
  background: var(--humanai-ice);
  color: var(--humanai-blue-dark);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
  text-decoration: none;
  transition:
    border-color 180ms ease,
    background-color 180ms ease,
    color 180ms ease,
    transform 180ms ease;
}

.humanai-page .humanai-related__links a::after {
  position: absolute;
  top: 50%;
  right: 16px;
  content: "→";
  transform: translateY(-50%);
  transition: transform 180ms ease;
}

.humanai-page .humanai-related__links a:hover {
  border-color: var(--humanai-blue);
  background: var(--humanai-sky);
  color: var(--humanai-navy);
  transform: translateY(-1px);
}

.humanai-page .humanai-related__links a:hover::after {
  transform: translate(4px, -50%);
}

@media (max-width: 820px) {
  .humanai-page .humanai-related__grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  .humanai-page .humanai-related {
    padding: 24px;
    border-radius: 24px;
  }

  .humanai-page .humanai-related__card {
    padding: 23px;
  }

  .humanai-page .humanai-related__title {
    font-size: 32px;
  }

  .humanai-page .humanai-related__intro {
    font-size: 16px;
  }

  .humanai-page .humanai-related__card h3 {
    font-size: 21px;
  }

  .humanai-page .humanai-related__card > p,
  .humanai-page .humanai-related__links a {
    font-size: 16px;
  }
}body{
 padding-top:0px;
 padding-right:0px;
 padding-bottom:0px;
 padding-left:0px;
 margin-top:0px;
 margin-right:0px;
 margin-bottom:0px;
 margin-left:0px;
 height:100%;
 display:flex;
 flex-direction:column;
}
