@font-face{font-family:Bebas;src:url(../fonts/b389b6844a6497ea.ttf)}@font-face{font-family:Mont;src:url(../fonts/294ad664949736fe.ttf)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#192536;background:#fff;font:16px/1.6 Mont,Arial,sans-serif}h1,h2,h3,h4{font-family:Bebas,sans-serif;font-weight:400;line-height:1.13;margin:0 0 20px;text-transform:uppercase}h1{font-size:86px}h2{font-size:54px}h3{font-size:30px}h4{font-size:24px}p{margin:0 0 20px}a{color:inherit}header{display:flex;align-items:center;justify-content:space-between;padding:24px max(24px,calc((100% - 1200px)/2));gap:40px;border-bottom:1px solid #e0e5ea}header h3{font-size:25px;margin:0}header small{font-size:11px}nav{display:flex;gap:24px;font-size:13px}nav a{text-decoration:none}.wrap{max-width:1200px;margin:auto;padding:72px 24px}.paper{background:#f5f3ef}.navy{background:#112742;color:white}.eyebrow{font-size:12px;letter-spacing:.08em;color:#b21f2d;margin-bottom:30px}.navy .eyebrow{color:#e2b3ba}.red{color:#b21f2d}.btn,button{display:inline-block;text-decoration:none;font:14px/1.5 Mont,sans-serif;padding:16px 22px;background:#b21f2d;color:white;border:0;cursor:pointer}.btn.alt{background:white;color:#112742;border:1px solid #d9dfe5}.hero,.two{display:grid;grid-template-columns:1fr 1fr;gap:64px}.hero img{width:100%;max-height:610px;object-fit:cover}.hero h1{margin-top:30px}.hero .slogan{font-size:36px}.hero p{max-width:560px}.buttons{display:flex;flex-wrap:wrap;gap:16px;margin:30px 0}.stats{display:grid;grid-template-columns:repeat(3,1fr);background:#112742;color:white;border-top:4px solid #b21f2d;margin-top:48px;padding:30px;gap:30px}.stats h3{font-size:40px;margin:0}.stats p{font-size:13px;margin:8px 0 0}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.card{padding:28px;background:white;color:#192536}.card .number{font:42px Bebas;color:#b21f2d;margin-bottom:26px}.card p{font-size:15px}.topline{border-top:3px solid #b21f2d}.bio p{max-width:710px}.badge{background:#112742;color:white;padding:24px;border-left:4px solid #b21f2d}.badge h3{margin:0 0 12px}.service{background:#f5f3ef;border-top:3px solid #b21f2d;padding:28px}.service h3{min-height:68px}.service>p{min-height:72px;font-size:15px}summary{list-style:none;cursor:pointer;color:#b21f2d;font-size:14px;font-weight:bold;padding:12px 0}summary:after{content:' +';float:right}details[open] summary:after{content:' −'}details article{padding-top:24px;border-top:1px solid #ddd;margin-top:10px}details p{font-size:14px}details h4{font-size:24px;margin-top:24px}.review{min-height:335px}.review h3{font-size:28px}.review .theme{color:#b21f2d;font-size:13px}.review small{font-size:12px;color:#697585}.review a{display:block;margin-top:20px;color:#b21f2d;font-size:13px}.slide-controls{display:flex;align-items:center;justify-content:space-between;margin-top:30px}.video{display:flex;flex-direction:column;min-width:0}.video img{width:100%;display:block}.video h3{margin-top:20px;font-size:28px;min-height:96px}.video a.btn{margin-top:auto;width:100%;text-align:center}.guide img{width:100%}.form{background:#112742;color:white;padding:36px}.form input,.form textarea,.guide input[type=email]{width:100%;padding:18px;font:14px Mont;background:#fff;border:1px solid #d9dfe5;margin:0 0 20px;display:block}.form label,.guide label{display:block;font-size:12px;margin:14px 0}.form input[type=checkbox],.guide input[type=checkbox]{display:inline;width:auto;margin:0 8px 0 0}.form textarea{min-height:160px}.form button{width:100%}.note{font-size:12px;opacity:.7}iframe{width:100%;height:470px;border:0;background:#f5f3ef}.contacts h3{margin-top:30px;font-size:26px}.channels{display:flex;gap:16px;flex-wrap:wrap;margin:38px 0}.channels a{background:white;padding:25px;flex:1;font-family:Bebas;font-size:25px;text-decoration:none}.maxrow{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ddd;padding-top:30px}footer .wrap{padding-top:44px;padding-bottom:44px}footer p,footer a{font-size:13px}footer .channels{margin:0 0 24px;gap:20px}footer .channels a{font-family:Mont;font-size:13px;background:none;padding:0;flex:none}.legal{border-top:1px solid #496079;margin-top:30px;padding-top:30px}.legal p{max-width:1100px}.mobile-note{padding:10px 24px;font-size:11px;color:#6b7480}section{scroll-margin-top:20px}@media(max-width:800px){header{padding:18px 22px;display:block}nav{gap:16px;flex-wrap:wrap;margin-top:15px}.hero,.two{grid-template-columns:1fr;gap:32px}.hero h1{font-size:58px}.hero img{max-height:430px}.wrap{padding:48px 22px}h2{font-size:40px}.grid3,.grid4{grid-template-columns:1fr}.stats{grid-template-columns:1fr;padding:24px}.service h3,.service>p{min-height:0}.channels a{flex:0 0 calc(50% - 8px)}.maxrow{display:block}.maxrow .btn{margin-top:15px}.slide-controls button{padding:12px;font-size:11px}.review{min-height:0}iframe{height:340px}}.photo-slot{margin:0;align-self:start}.photo-slot img{width:100%;display:block;object-fit:cover;object-position:center}.photo-slot figcaption{padding:16px 8px 4px;font-size:13px;color:#112742}.photo-slot figcaption span{display:block;color:#697585;font-size:11px;margin-top:4px}.bio-layout{grid-template-columns:1.3fr .7fr;gap:55px}.bio-photo{margin-top:40px}.bio-photo img{aspect-ratio:3/4}.consult-photo{max-width:380px;margin-top:35px}.consult-photo img{aspect-ratio:4/3;object-position:center 35%}.read-review{background:transparent;color:#b21f2d;padding:0;margin-top:16px;text-align:left;font-size:13px;text-decoration:underline;text-underline-offset:4px}.review{display:flex;flex-direction:column}.review .read-review{margin-top:auto;padding-top:16px}dialog{width:min(760px,calc(100vw - 32px));max-height:85vh;border:0;border-top:4px solid #b21f2d;padding:44px;overflow:auto;color:#192536;background:white}dialog::backdrop{background:rgba(10,25,45,.65)}dialog h3{padding-right:40px;font-size:36px}#review-body p{font-size:16px;line-height:1.75}.dialog-close{position:absolute;top:15px;right:18px;background:transparent;color:#112742;font:32px/1 Mont;padding:4px 10px}:focus-visible{outline:2px solid #b21f2d;outline-offset:4px}@media(max-width:800px){.video h3{min-height:0}.video a.btn{margin-top:10px}.bio-layout{grid-template-columns:1fr}.bio-photo{margin-top:0}.photo-slot{width:100%}.consult-photo{max-width:100%}dialog{padding:32px 22px}dialog h3{font-size:30px}} .reveal{transition:opacity .65s ease,transform .65s ease}.reveal-pending{opacity:0;transform:translateY(18px)}.reveal.is-visible{opacity:1;transform:none}.btn,button,.channels a{transition:transform .18s ease,box-shadow .18s ease}@media(hover:hover){.btn:hover,button:hover,.channels a:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(17,39,66,.12)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,.btn,button,.channels a{transition:none}.reveal-pending{opacity:1;transform:none}.btn:hover,button:hover,.channels a:hover{transform:none}}.service{align-self:start;transition:box-shadow .25s ease}.service:has(details[data-expanded=true]){box-shadow:0 12px 30px rgba(17,39,66,.08)}.service summary{display:flex;align-items:center;justify-content:space-between;gap:12px}.service summary::-webkit-details-marker{display:none}.service summary:after,.service details[open] summary:after{content:'+';float:none;font-size:24px;font-weight:400;line-height:1;transition:transform .3s ease}.service details[data-expanded=true] summary:after{transform:rotate(45deg)}@media(prefers-reduced-motion:reduce){.service,.service summary:after{transition:none}}
.roman-approach{margin:28px 0 0;padding:26px;border-left:4px solid #B52538;background:#112742;color:#fff}
.roman-approach .approach-label{font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin:0 0 12px;color:#fff}
.roman-approach .approach-main{font-size:21px;line-height:1.5;margin:0 0 14px;color:#fff}
.roman-approach p:last-child{margin:0;color:#fff}
.bio-photo{align-self:end;margin:0;box-shadow:none}.bio-photo img{aspect-ratio:4/5;object-fit:cover;object-position:center 25%}
#services .service{min-height:350px;display:flex;flex-direction:column;align-self:start}
#services .service>h3{font-size:28px;line-height:1.15;height:108px;min-height:108px;flex-shrink:0;margin:0 0 20px}
#services .service>p{min-height:72px;margin:0 0 20px}
#services .service>details{margin-top:auto}
#services .service summary{min-height:48px}
@media(max-width:800px){.roman-approach{padding:22px}.roman-approach .approach-main{font-size:19px}.bio-photo{align-self:start;margin:0}.bio-photo img{aspect-ratio:4/5}#services .service{min-height:0}#services .service>h3{height:auto;min-height:0}#services .service>p{min-height:0}}

.actions-section .service{min-height:350px;display:flex;flex-direction:column;align-self:start}
.actions-section .service>.number{font-family:Bebas,sans-serif;font-size:32px;line-height:1.1;margin:0 0 24px}
.actions-section .service>h3{font-size:28px;line-height:1.15;height:108px;min-height:108px;flex-shrink:0;margin:0 0 20px}
.actions-section .service>p{min-height:72px;margin:0;font-size:15px}
.btn,button{transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}
@media(hover:hover){.btn:hover,button:hover{transform:translateY(-3px);filter:brightness(1.08);box-shadow:0 8px 20px rgba(17,39,66,.18)}}
.btn:active,button:active{transform:translateY(0) scale(.98);box-shadow:none}
@media(max-width:800px){.actions-section .service{min-height:0}.actions-section .service>h3{height:auto;min-height:0}.actions-section .service>p{min-height:0}}
@media(prefers-reduced-motion:reduce){.btn,button{transition:none}.btn:hover,button:hover,.btn:active,button:active{transform:none}}

.error-summary,.invalid-feedback{color:#ffbcc4}.form .field{margin-bottom:16px}.field label{display:block}.field input[type=checkbox]{width:auto;display:inline;margin:0 8px 0 0}.trap{position:absolute;left:-10000px}.review-full[hidden]{display:none}.form-error{color:#b21f2d}.success{padding:20px;background:#f5f3ef}

.roman-captcha{margin:20px 0;min-height:100px}.roman-captcha iframe{width:100%;max-width:100%}.field .invalid-feedback{display:block}.form input[type=hidden],.guide input[type=hidden]{display:none}

.site-header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: 24px;
    padding-top: 20px;
    padding-bottom: 20px;
    background: #112742;
    color: #fff;
    border-bottom: 0;
}
.site-header__brand {
    justify-self: start;
    color: #fff;
    text-decoration: none;
}
.site-header__nav {
    justify-content: center;
    align-items: center;
    gap: 20px;
    margin: 0;
    text-align: center;
}
.site-header__nav a {
    color: #fff;
    white-space: nowrap;
}
.site-header__nav a:hover {
    text-decoration: underline;
    text-underline-offset: 5px;
}
.site-header__actions {
    display: flex;
    align-items: center;
    justify-self: end;
    gap: 12px;
}
.site-header__social {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    color: #fff;
    border: 1px solid rgba(255, 255, 255, .45);
    border-radius: 50%;
}
.site-header__social svg {
    display: block;
    width: 20px;
    height: 20px;
}
.site-header__social:hover {
    background: #b21f2d;
    border-color: #b21f2d;
}
.site-header__button {
    padding: 13px 18px;
    white-space: nowrap;
}
#principles h2 {
    color: #fff;
}
.channels-section .channels a {
    background: #112742;
    color: #fff;
}
footer .channels a {
    text-decoration: underline;
    text-underline-offset: 4px;
}
@media (max-width: 1200px) {
    .site-header {
        grid-template-columns: 1fr auto;
    }
    .site-header__nav {
        grid-column: 1 / -1;
        grid-row: 2;
        justify-self: center;
        flex-wrap: wrap;
    }
}
@media (max-width: 600px) {
    .site-header {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    .site-header__brand {
        justify-self: center;
    }
    .site-header__nav {
        gap: 12px 20px;
    }
    .site-header__actions {
        grid-row: 3;
        justify-self: center;
    }
}
#videos .video h3 {
    min-height: 0;
}

.video-preview {
    position: relative;
    display: block;
    width: 272px;
    max-width: 100%;
    aspect-ratio: 1;
}
.video-preview img {
    width: 100%;
    height: 100%;
    aspect-ratio: 1;
    object-fit: contain;
}
.video-preview__play {
    position: absolute;
    right: 16px;
    bottom: 16px;
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #b21f2d;
    color: #fff;
    font-size: 16px;
}

.afterform .wrap {
    max-width: 920px;
}
.afterform h1 {
    font-size: clamp(30px, 5vw, 48px);
    overflow-wrap: break-word;
}
.afterform h2 {
    margin-top: 32px;
}
.afterform .buttons {
    flex-wrap: wrap;
    margin: 28px 0;
}

.form .smart-captcha,
.guide-form .smart-captcha {
    min-width: 0;
    margin-bottom: 20px;
}

.bio li::marker {
    color: #b21f2d;
}

.hero .buttons .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 1 260px;
    width: 260px;
    max-width: 100%;
    min-height: 60px;
    text-align: center;
}
.hero > div {
    min-width: 0;
}

.guide-subscriptions .btn {
    background: #112742;
    color: #fff;
}

.hero-photo {
    position: relative;
}
.hero-intro {
    position: absolute;
    top: 24px;
    right: 24px;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #fff;
    text-align: left;
    text-shadow: 0 1px 5px rgba(0, 0, 0, .6);
    font: 24px/1.25 Bebas, sans-serif;
    cursor: pointer;
}
.hero-intro__play {
    display: grid;
    place-items: center;
    flex: 0 0 54px;
    width: 54px;
    height: 54px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .9);
    color: #b21f2d;
    animation: intro-pulse 2.6s ease-in-out infinite;
    text-shadow: none;
}
.hero-intro__play svg {
    width: 20px;
    height: 24px;
    margin-left: 4px;
    fill: currentColor;
}
@keyframes intro-pulse {
    0%, 100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(255, 255, 255, .4); }
    50% { transform: scale(1.06); box-shadow: 0 0 0 10px rgba(255, 255, 255, 0); }
}
body.intro-video-open {
    overflow: hidden;
}
.intro-video-dialog {
    width: min(440px, calc(100vw - 96px), calc((100dvh - 32px) * 9 / 16));
    max-height: calc(100dvh - 32px);
    padding: 0;
    border: 0;
    background: transparent;
    overflow: visible;
}
.intro-video-dialog::backdrop {
    background: rgba(10, 25, 45, .85);
}
.intro-video-close {
    position: absolute;
    top: 0;
    right: -44px;
    width: 40px;
    height: 40px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #fff;
    font: 32px/1 Arial, sans-serif;
    cursor: pointer;
}
.intro-video-player {
    aspect-ratio: 9 / 16;
    background: #000;
}
.intro-video-player iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}
@media (max-width: 600px) {
    .hero-intro {
        top: 18px;
        right: 16px;
        gap: 10px;
        font-size: 20px;
    }
    .hero-intro__play {
        flex-basis: 46px;
        width: 46px;
        height: 46px;
    }
}
