@font-face { font-family:'suisse'; src:url('/assets/fonts/suisse/suisse-intl-regular.woff') format('woff'); font-weight:400; font-style:normal; font-display:fallback; }
@font-face { font-family:'suisse'; src:url('/assets/fonts/suisse/suisse-intl-medium.woff') format('woff'); font-weight:500; font-style:normal; font-display:fallback; }

:root {
--text: hsla(0,0%,0%,1);
--link: hsl(220,100%,30%);
--grey-link: hsla(0,0%,0%,.5);

--primary:hsl(220,65%,33%);
--secondary:hsl(220,15%,97%);

--form-element-height: 47px;
--radius-input: 5px;
--input-border: rgba(0,0,0,0.22);
--input-border-hover: rgba(0,0,0,0.44);

--button-hover: hsl(220,55%,40%);

--placeholder: hsla(0,0%,0%,.6);
}

html,body { margin:0; padding:0; background:#fff; }

html { scroll-behavior:smooth; }

h1,h2,h3,h4 { font-weight:400; margin:0; }
h1 { font-size:36px; line-height:42px; letter-spacing:0; margin-bottom:30px; }
h2 { font-size:24px; line-height:30px; margin-bottom:14px; }
h3 { font-size:30px; line-height:1.4; margin-bottom:16px; }
h4 { font-size:26px; line-height:1.4; margin-bottom:16px; }

p { margin:0 0 1.4em; }

svg, img { display:block; }

a, .a { color:var(--link); text-decoration:none; }
a:hover, .a:hover { color:inherit !important; }
.a { cursor:pointer; }

b { font-weight:500; }

.path { list-style:none; padding:0; display:flex; flex-wrap:wrap; margin:0 0 26px; color:hsl(0,0%,0%,.4); font-size:14px; }
.path li:after { margin:0 6px; content:'\2022'; }
.path li:last-child:after { content:normal; margin:auto; }

html { display:block; height:100%; }
body { font-family:'suisse',sans-serif; color:var(--text); font-size:16px; line-height:26px; letter-spacing:0.02em; min-height:100%; display:flex; flex-direction:column; }

body > header { font-size:15px; line-height:24px; }
body > header, footer, main { padding:0 20px; }

body > header > div, footer > div, section { width:100%; max-width:1180px; }
body > header > div, footer > div { display:flex; column-gap:140px; padding:0 20px; box-sizing:border-box; }

body > header a, footer a { color:var(--grey-link); }

.error { color:hsl(0,100%,50%); }

.success { background:hsl(120,60%,90%); padding:10px 16px; border-radius:4px; font-size:15px; line-height:24px; animation:success 2s forwards }

@keyframes success { from { background-color:hsl(120,65%,75%); } to { background-color:hsl(120,60%,90%); } }

main { width:100%; box-sizing:border-box; padding-top:120px; }
main.home { padding-top:64px; }
section { margin:0 auto; box-sizing:border-box; }

/* burger menu */
.burger-menu { display:none; }
.burger-menu button { position:relative; border-radius:2px; height:15px; width:26px; padding:0; font-size:0; line-height:0; background:none; color:inherit; padding:5px; box-sizing:content-box; display:flex; align-items:center; transition:transform 0.1s; }
.burger-menu button:hover { background:none; }
.burger-menu button:active { transform:scale(90%); }

.burger-menu button span { width:100%; border-bottom:2px solid #333; border-radius:3px; position:relative; transition:transform 0.1s, border-color 0.1s; margin-top:-1px; }
.burger-menu button span::before { content:""; position:absolute; top:-6px; left:0; width:100%; border-bottom:2px solid #333; border-radius:3px; transition:transform 0.1s; transform-origin:center; }
.burger-menu button span::after { content:""; position:absolute; top:6px; left:0; width:100%; border-bottom:2px solid #333; border-radius:3px; transition:transform 0.1s; transform-origin:center; }

.mmactive .burger-menu button span { border-color:transparent; }
.mmactive .burger-menu button span::before { transform:translateY(6px) rotate(45deg); }
.mmactive .burger-menu button span::after { transform:translateY(-6px) rotate(-45deg); }

body > header.white .burger-menu button span { border-color:#fff; }
body > header.white .burger-menu button span::before { border-color:#fff; }
body > header.white .burger-menu button span::after { border-color:#fff; }

/* placeholder */
::-webkit-input-placeholder { color:var(--placeholder); opacity:1; } /* WebKit, Blink, Edge */
::-moz-placeholder { color:var(--placeholder); opacity:1; } /* Mozilla Firefox 19+ */
:-moz-placeholder { color:var(--placeholder); opacity:1; } /* Mozilla Firefox 4 to 18 */
:-ms-input-placeholder { color:var(--placeholder); opacity:1; } /* Internet Explorer 10-11 */
:placeholder-shown { color:var(--placeholder); opacity:1; } /* Standard */

/* form elements */
/* disable double tap zoom for mobile devices */
label, input[type=button], input[type=submit], button, .a, a, .grey, [tabindex] { touch-action:manipulation; }

/* form elements */
input, button, select, textarea { display:block; font-size:inherit; font-family:inherit; color:inherit; -webkit-tap-highlight-color:transparent; outline:none; }
input::-ms-clear { display:none; }

/* text inputs */
input:where([type=text],[type=email],[type=password]), textarea { border:1px solid var(--input-border); border-radius:var(--radius-input); -webkit-appearance:none; max-width:100%; box-sizing:border-box; transition:border-color .1s, box-shadow .1s; }
input:where([type=text],[type=email],[type=password]) { padding:0 12px; height:var(--form-element-height); }
textarea { padding:10px 12px; }

/* text inputs - hover, focus */
input:where([type=text],[type=email],[type=password]):hover, textarea:hover { border-color:var(--input-border-hover); transition:none; }
*:not(.chosen-search) > input:where([type=text],[type=email],[type=password]):focus, textarea:focus { border-color:var(--primary) !important; box-shadow:0 0 0 1px var(--primary); transition:border-color .1s, box-shadow .1s; }

/* buttons */
input:where([type=button],[type=submit]), button { border:none; font-weight:400; line-height:var(--form-element-height); padding:0 22px; -webkit-appearance:none; cursor:pointer; outline:none; overflow:visible; border-radius:99px; background:var(--primary); color:#fff; transition:color .1s, background-color .1s; }

button { white-space:nowrap; text-decoration:none; -webkit-user-select:none; user-select:none; }
button::-moz-focus-inner { padding:0; border:0; } /* fix Firefox padding */

input:where([type=button],[type=submit]):hover, button:hover { background:var(--button-hover); }
input:where([type=button],[type=submit]):focus-visible, button:focus-visible { outline:revert; }
input:where([type=button],[type=submit]):active, button:active { background:var(--primary); transform:scale(98%); }

/* classes */
.button { display:flex; }
.button a { color:#fff !important; line-height:var(--form-element-height); padding:0 22px; border-radius:99px; background:var(--primary); display:flex; align-items:center; column-gap:12px; transition:color .1s, background-color .1s; -webkit-user-drag:none; user-drag:none; outline-offset:3px; }
.button a:after { content:''; background:url(/assets/svg/16px-arrow-right-white.svg) no-repeat right center; width:16px; height:16px; }
.button a:hover { background:var(--button-hover); }
.button a:active { transform:scale(98%); opacity:1; }

/* input with label */
p.labeled { position:relative; }
p.labeled input { height:50px; }
p.labeled label { position:absolute; left:0; top:0; z-index:2; height:100%; display:flex; align-items:center; pointer-events:none; padding-left:14px; box-sizing:border-box; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; max-width:calc(100% - 28px); transition:all .2s; color:var(--placeholder); }
p.labeled input:focus + label, p.labeled input:not(:placeholder-shown) + label, p.labeled:focus-within input + label { padding-bottom:22px; font-size:12px; line-height:18px; color:hsla(0,0%,0%,.5); }
p.labeled input:focus + label/*, p.labeled:focus-within input + label*/ {  }
p.labeled input:focus, p.labeled input:not(:placeholder-shown), p.labeled:focus-within input { padding-top:16px; }

p.labeled ::-webkit-input-placeholder { opacity:0; transition:all .1s; }
p.labeled ::-moz-placeholder { opacity:0; transition:all .1s; }
p.labeled :-moz-placeholder { opacity:0; transition:all .1s; }
p.labeled :-ms-input-placeholder { opacity:0; transition:all .1s; }
p.labeled :placeholder { opacity:0; transition:all .1s; }

/* site header */
body > header { position:fixed; z-index:1000; left:0; top:0; width:100%; box-sizing:border-box; padding-top:20px; padding-bottom:20px; display:flex; justify-content:center; }
body > header p.logo { margin-bottom:0; font-size:0; line-height:0; }
body > header p.logo a { display:block; background:url(/assets/svg/n7capital.svg); background-repeat:no-repeat; background-size:contain; width:97px; height:22px; }
body > header ul { display:flex; column-gap:36px; list-style:none; margin:0; padding:0; box-sizing:border-box; }
body > header ul li.s a { color:inherit; }

body > header.white p.logo { filter:brightness(10); }
body > header.white ul a { color:hsla(0,0%,100%,0.45); }
body > header.white ul a:hover { color:hsla(0,0%,100%,1); }
body > header.white ul li.s a { color:#fff; }

/* footer */
footer { display:flex; justify-content:center; padding-top:140px; padding-bottom:60px; margin:auto 0 0; font-size:14px; }
footer p.logo { margin-bottom:0; font-size:0; line-height:0; }
footer p.logo a { display:block; background:url(/assets/svg/n7capital.svg); background-repeat:no-repeat; background-size:contain; width:74px; height:17px; }
footer ul { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:6px; }

/* content header */
.narrow { max-width:860px; }
/*main header .narrow { margin:0 auto; }

main header { padding:0 20px; margin-bottom:90px; }
main header > div { background:var(--secondary); border-radius:20px; padding:100px 0; padding:100px 0; }
main header h1 { margin-bottom:0; }*/

/* other pages */
main.cookie-policy, main.privacy-policy { font-size:15px; line-height:24px; }

@media screen and (max-width:890px) {

main { padding-top:90px; }

body > header > div, footer > div { padding:0; }

body > header > div { justify-content:space-between; }
body > header nav { display:none; }
body > header .burger-menu { display:block; }

.mmactive { position:fixed; width:100%; }

.mmactive body > header p.logo { z-index:999; }

.mmactive body > header { position:static; }
body > header nav { position:fixed; background:#fff; left:0; top:0; bottom:0; right:0; }
body > header nav ul { flex-direction:column; padding-top:64px; padding-left:20px; padding-right:20px; font-size:17px; line-height:23px; }
body > header nav ul li a { display:block; padding:16px 0; border-bottom:1px solid #eee; }
body > header nav ul li:first-child a { border-top:1px solid #eee; }

.mmactive body > header nav { display:block; }

footer > div { display:block; }
footer p.logo { margin-bottom:20px; }
footer ul { gap:20px; flex-direction:row; }
footer ul + ul { padding-top:3px; }
}