/* Navigation refresh: scoped to the site header. */
header{box-shadow:0 4px 24px #10293b0d}header .navigation{position:relative;gap:20px;padding-top:10px;padding-bottom:10px;border-top:1px solid #e6edf3}header nav[aria-label="Основное меню"]{gap:6px;min-width:0}header nav[aria-label="Основное меню"]>.navitem>summary,header nav[aria-label="Основное меню"]>a{display:flex;align-items:center;gap:9px;padding:13px 16px;border:0;border-radius:8px;font-size:15px;line-height:1.4;font-weight:700;color:#18354d;transition:background .18s,color .18s}header .navitem>summary::-webkit-details-marker{display:none}header .navitem>summary:after{content:'';display:block;width:7px;height:7px;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:rotate(45deg);margin:0 2px 4px 3px;opacity:.65;transition:transform .18s}header .navitem[open]>summary:after{transform:rotate(225deg);margin-bottom:0}header nav[aria-label="Основное меню"]>a:hover,header .navitem>summary:hover,header .navitem[open]>summary,header .navitem.menu-current>summary,header nav[aria-label="Основное меню"]>a[aria-current="page"]{background:#edf6fc;color:#007ad5}header .dropdown{top:calc(100% + 10px);padding:14px;border:1px solid #dce7f0;border-radius:12px;box-shadow:0 18px 48px #071d3326;max-height:min(68vh,620px);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#a8c4d8 #f3f7fa;width:370px}header .dropdown a{padding:11px 13px;border-radius:7px;font-size:14px;line-height:1.5;font-weight:500;transition:background .15s,color .15s}header .dropdown a:hover,header .dropdown a[aria-current="page"]{background:#edf6fc;color:#006bbd}header .dropdown .strong{padding:14px;margin-bottom:8px;border:0;border-radius:8px;background:#edf6fc;color:#006bbd;font-size:15px;font-weight:800}header .navcta{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border:1px solid #cfe3f2;border-radius:8px;padding:13px 17px;background:#f3f9fd;font-size:14px;color:#007ad5;transition:background .18s}header .navcta:hover{background:#dfedf8}header nav a:focus-visible,header nav summary:focus-visible,header #menuToggle:focus-visible{outline:3px solid #43b8f3;outline-offset:2px}@media(min-width:1100px){header .navitem:nth-child(2) .dropdown,header .navitem:nth-child(3) .dropdown{width:680px;display:grid;grid-template-columns:1fr 1fr;gap:2px 10px;align-content:start}header .navitem:nth-child(2) .dropdown{left:-150px}header .navitem:nth-child(3) .dropdown{left:-220px}header .dropdown .strong{grid-column:1/-1}}@media(min-width:901px) and (max-width:1099px){header nav[aria-label="Основное меню"]>.navitem>summary,header nav[aria-label="Основное меню"]>a{padding:12px 11px;font-size:14px}header .navcta{display:none}}@media(max-width:900px){header .navigation{display:block;padding-top:9px;padding-bottom:9px}header #menuToggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:13px 16px;border:1px solid #dce7f0;border-radius:8px;background:#f3f8fc;font-size:15px;color:#18354d}header #menuToggle[aria-expanded="true"]{background:#e7f3fc;color:#007ad5}header nav[aria-label="Основное меню"]{display:none;padding:9px 0 2px;gap:5px}header nav[aria-label="Основное меню"].open{display:flex;flex-direction:column;max-height:55dvh;overflow-y:auto;overscroll-behavior:contain}header nav[aria-label="Основное меню"]>.navitem>summary,header nav[aria-label="Основное меню"]>a{padding:14px 16px;min-height:48px;justify-content:space-between;font-size:16px}header .dropdown{position:static;width:100%;max-height:none;padding:8px;margin:4px 0 10px;background:#f8fbfd;box-shadow:none;border:1px solid #e0eaf2;border-radius:9px}header .dropdown a{padding:12px;font-size:14px;line-height:1.55}header .navcta{display:none}}@media(prefers-reduced-motion:reduce){header nav *,header .navcta{transition:none!important}}
/* Header contact strip: same typography as menu, at 65% of menu size. */
body .top,body .top .wrap{font-family:Roboto,Arial,sans-serif;font-size:9.75px;font-weight:700;line-height:1.4;color:#18354d;letter-spacing:normal}body .top .wrap a,body .top .wrap span{font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit}body .top .wrap{gap:16px;align-items:center;padding-top:10px;padding-bottom:10px}@media(min-width:901px) and (max-width:1099px){body .top,body .top .wrap{font-size:9.1px}}@media(max-width:900px){body .top,body .top .wrap{font-size:10.4px}}@media(max-width:700px){body .top .wrap{gap:8px;flex-wrap:wrap}}
/* Restore original contact strip sizes while preserving menu font and weight. */
body .top,body .top .wrap{font-size:15.6px}@media(max-width:700px){body .top,body .top .wrap{font-size:11.7px}}

/* Contact strip: 13px at every viewport width. */
body .top,body .top .wrap,body .top .wrap span,body .top .wrap a{font-size:13px}

/* Center the telephone within the desktop header. */
@media(min-width:901px){body header .head{position:relative;min-height:96px}body header .head .phone{position:absolute;left:50%;transform:translateX(-50%);margin:0;text-align:center;white-space:nowrap}body header .head .phone small{font-size:13px;font-weight:500;line-height:1.5;margin-top:5px}body header .head .max-link{margin-left:auto}body header .head .small{margin-left:0}}@media(min-width:901px) and (max-width:1050px){body header .head .phone{font-size:22px}body header .head .phone small{font-size:11px}}

/* Keep the call button right aligned after removing the messenger icon. */
@media(min-width:901px){body header .head>.small{margin-left:auto}}

body header .head .phone small{font-family:Roboto,Arial,sans-serif;font-weight:400;font-style:normal}

/* Telephone occupies the right side of the header on all screens. */
body header .head{display:flex;justify-content:space-between;align-items:center}body header .head .phone{display:block;position:static;left:auto;transform:none;margin-left:auto;text-align:right;white-space:nowrap;font-size:26px;line-height:1.3;text-decoration:none}body header .head .phone small{display:block;font-family:Roboto,Arial,sans-serif;font-weight:400;font-size:13px;line-height:1.5;margin-top:5px}body header .head .phone:focus-visible{outline:3px solid #43b8f3;outline-offset:5px;border-radius:4px}@media(max-width:900px){body header .head{flex-wrap:nowrap;gap:18px}body header .head .phone{display:block;font-size:22px}}@media(max-width:600px){body header .head{gap:12px;flex-wrap:wrap}body header .head>a:first-child{flex:0 1 155px;width:155px;min-width:125px}body header .head .phone{font-size:18px;padding:8px 0;min-height:48px}body header .head .phone small{font-size:10px;white-space:normal;max-width:180px}}@media(max-width:380px){body header .head{justify-content:center;gap:6px}body header .head .phone{margin-left:0;text-align:center}body header .head .phone small{max-width:none}}

body header .head .header-phone-group{margin-left:auto;text-align:right}body header .head .header-phone-group .phone{padding:0;margin:0;min-height:0}body header .head .header-meeting-link{display:block;margin:5px 0 0 auto;padding:0;background:none;border:0;color:#647585;font-family:Roboto,Arial,sans-serif;font-size:13px;font-weight:400;line-height:1.5;text-decoration:underline;text-underline-offset:3px;cursor:pointer}body header .head .header-meeting-link:hover{color:#104ab0}@media(max-width:600px){body header .head .header-meeting-link{font-size:10px;max-width:180px}}@media(max-width:380px){body header .head .header-phone-group{margin-left:0;text-align:center}body header .head .header-meeting-link{margin-left:auto;margin-right:auto;max-width:none}}

/* Compact desktop enquiry dialog without clipping its fields. */
@media(min-width:901px){body #requestDialog{max-width:660px;width:calc(100% - 48px);padding:26px 32px;max-height:calc(100dvh - 32px);overflow-y:auto}body #requestDialog .eyebrow{margin-bottom:10px;font-size:11px}body #requestDialog h2{font-size:27px;line-height:1.2;margin-bottom:12px}body #requestDialog .scope-note{font-size:14px;line-height:1.5;margin:0 0 14px}body #requestDialog .leadform label{font-size:13px;margin-bottom:11px}body #requestDialog .leadform input,body #requestDialog .leadform select,body #requestDialog .leadform textarea{font-size:15px;line-height:1.3;padding:10px 12px;margin-top:5px}body #requestDialog .leadform textarea{height:66px;min-height:56px;resize:vertical}body #requestDialog .fields{gap:14px}body #requestDialog .leadform .btn{font-size:15px;padding:12px 20px;min-height:44px}body #requestDialog .leadform small{font-size:11px;line-height:1.5;margin-top:10px}body #requestDialog .status:empty{display:none}body #requestDialog .status{font-size:13px;line-height:1.5;margin:10px 0 0}}@media(min-width:901px) and (max-height:650px){body #requestDialog{padding:18px 28px}body #requestDialog .eyebrow{display:none}body #requestDialog .leadform label{margin-bottom:8px}body #requestDialog .scope-note{margin-bottom:10px}body #requestDialog .leadform textarea{height:52px;min-height:45px}}

/* Meeting action styled as the former next-step text link. */
body header .head .header-meeting-link{color:var(--blue);font-size:14.3px;font-weight:400;line-height:1.8;text-decoration:none;margin-top:7px}body header .head .header-meeting-link:hover{color:#0b40b9;text-decoration:underline;text-underline-offset:3px}@media(max-width:600px){body header .head .header-meeting-link{font-size:12px;max-width:190px}}

body .top .wrap span a.header-schedule-map{color:var(--blue);text-decoration:none;font-weight:400}body .top .wrap span a.header-schedule-map:hover{color:#0b40b9;text-decoration:none}

/* Cost action matches primary buttons on light surfaces. */
body header .navigation .navcta{background:#104ab0;color:#fff;border:1px solid #104ab0;border-radius:30px;padding:14px 22px;font-family:Roboto,Arial,sans-serif;font-size:15px;font-weight:600;line-height:1.4;text-decoration:none;box-shadow:none}body header .navigation .navcta:hover{background:#0b40b9;border-color:#0b40b9;color:#fff}body header .navigation .navcta:focus-visible{outline:3px solid #43b8f3;outline-offset:3px}

body .top .wrap .header-schedule-text{font-weight:400;font-size:13px;color:#18354d;text-decoration:none}

body .top .wrap>span:first-child,body .top .wrap>span:first-child a{font-weight:400;font-size:13px}
