:root { --vx-background:#f4f3ef; --vx-color-1:#f4f3ef; --vx-color-2:#153e72; --vx-color-3:#a8c0dc; --vx-color-4:#162a41; --ink:#162a41; --blue:#153e72; --line:#c9cdd0; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:28px; }
body { margin:0; background:#f4f3ef; color:var(--ink); font-family:"TikTok Sans",sans-serif; font-stretch:100%; font-weight:400; font-size:17px; line-height:1.45; }
a { color:inherit; text-decoration:none; }
button,input,textarea { font:inherit; }
button,a,input,textarea { -webkit-tap-highlight-color:transparent; }
a:focus-visible,button:focus-visible { outline:3px solid #87acd7; outline-offset:6px; }
img { display:block; max-width:100%; object-fit:cover; }
p,h1,h2,h3 { margin:0; }
h1,h2,h3 { font-weight:400; }
.wrap { width:calc(100% - 112px); max-width:1328px; margin-inline:auto; }
.opening { position:relative; background:#e7edf5; }
.header { min-height:107px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid #aab6c5; gap:24px; }
.brand { font-size:23px; font-weight:500; letter-spacing:-.04em; line-height:1.1; }
.brand span { display:block; font-size:12px; font-weight:400; letter-spacing:0; margin-top:8px; }
nav { display:flex; gap:34px; font-size:15px; }
nav a { padding:10px 0; }
nav a:hover { color:#467bad; }
.location { font-size:14px; }
.hero { padding:36px 0 0; }
.hero-top { display:flex; justify-content:space-between; align-items:flex-start; font-size:14px; }
.hero-top>span { padding-top:4px; }
h1 { font-size:clamp(60px,7.5vw,108px); letter-spacing:-.062em; line-height:.99; margin:29px 0 25px; }
h1>span { display:block; text-align:right; }
.hero-bottom { display:flex; justify-content:space-between; align-items:center; margin-bottom:34px; }
.hero-bottom p { font-size:17px; line-height:1.35; }
.button { border:0; display:inline-flex; justify-content:space-between; align-items:center; gap:32px; background:var(--blue); color:white; padding:19px 23px; font-size:16px; cursor:pointer; min-height:62px; transition:background .2s; }
.button img { filter:invert(1); flex:none; }
.button:hover { background:#255a94; }
.button:disabled { cursor:wait; opacity:.7; }
.hero-media { height:440px; position:relative; overflow:hidden; }
.hero-media>img { width:100%; height:100%; object-position:50% 58%; }
.media-note { position:absolute; bottom:25px; left:27px; color:white; font-size:19px; line-height:1.4; }
.media-note span { display:block; }
.hero-media:after { content:""; position:absolute; inset:45% 0 0; background:linear-gradient(transparent,#1022368c); pointer-events:none; }
.media-note { z-index:1; }
.section { padding-top:105px; padding-bottom:105px; }
.section-head { display:grid; grid-template-columns:1fr 2fr; gap:40px; margin-bottom:55px; }
.section-name { display:block; font-size:15px; padding-top:8px; }
h2 { font-size:clamp(40px,4.4vw,64px); letter-spacing:-.05em; line-height:1.03; }
.situation-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); }
.situation-grid article { padding:24px 28px 0 0; }
.situation-grid article+article { padding-left:28px; border-left:1px solid var(--line); }
.number { color:#60748b; font-size:15px; }
h3 { font-size:27px; line-height:1.1; letter-spacing:-.035em; }
.situation-grid h3 { margin:44px 0 18px; }
.situation-grid p { color:#526070; font-size:16px; max-width:340px; }
.statement { background:var(--blue); color:#f4f3ef; padding:90px 0; }
.statement p { font-size:clamp(35px,4.5vw,66px); line-height:1.08; letter-spacing:-.045em; }
.steps { border-top:1px solid var(--line); }
.step { display:grid; grid-template-columns:1fr 2fr 1fr; gap:30px; padding:34px 0 40px; border-bottom:1px solid var(--line); }
.step h3 { font-size:34px; margin-bottom:17px; }
.step p { max-width:490px; color:#526070; }
.duration { font-size:14px; justify-self:end; padding:8px 13px; border:1px solid #a9b5c3; height:max-content; border-radius:30px; }
.about { background:#e7e9e7; }
.about-grid { display:grid; grid-template-columns:1fr 1fr; gap:9%; }
.about-photo { max-width:560px; height:650px; }
.about-photo img { width:100%; height:100%; }
.about-copy { padding-top:14px; }
.about-copy h2 { font-size:76px; margin:27px 0; }
.lead { font-size:23px; max-width:400px; line-height:1.3; }
.experience { border-top:1px solid #b9c1c4; border-bottom:1px solid #b9c1c4; padding:20px 0; margin:30px 0; display:flex; align-items:center; gap:28px; }
.experience>span { font-size:26px; white-space:nowrap; }
.experience b { font-weight:300; font-size:92px; letter-spacing:-.075em; line-height:1; }
.experience p { font-size:15px; }
.about-copy>p:not(.lead) { color:#526070; max-width:430px; }
.geo { display:flex; gap:24px; font-size:14px; margin-top:30px; }
.contact { background:#142f50; color:#fff; }
.contact-grid { display:grid; grid-template-columns:1fr 1.15fr; gap:9%; }
.contact h2 { font-size:64px; margin:30px 0; }
.contact p { color:#becddd; font-size:16px; }
form { padding-top:8px; }
form>label { display:block; margin-top:25px; }
label { font-size:14px; }
.field-row { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
input:not([type=checkbox]),textarea { display:block; width:100%; border:0; border-bottom:1px solid #75879d; border-radius:0; background:transparent; color:white; padding:14px 0; outline:none; font-size:16px; }
input::placeholder,textarea::placeholder { color:#99adc4; opacity:1; }
input:focus,textarea:focus { border-color:white; }
textarea { resize:vertical; min-height:105px; }
form .consent { display:flex; align-items:flex-start; gap:10px; margin:26px 0; font-size:12px; color:#d2dce8; }
.consent input { width:18px; height:18px; flex:none; margin:0; accent-color:#9bbcea; }
.consent a { text-decoration:underline; text-underline-offset:3px; }
form .button { background:#e7edf4; color:#142f50; width:100%; }
form .button img { filter:none; }
form .button:hover { background:white; }
.policy { display:inline-block; margin-top:16px; font-size:12px; color:#b9cadd; text-decoration:underline; text-underline-offset:3px; }
.form-status:not(:empty) { margin-top:18px; }
.honey { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.footer { padding-top:38px; padding-bottom:38px; display:flex; justify-content:space-between; align-items:center; gap:20px; }
.footer p,.footer>a:last-child { font-size:14px; }
.legal { max-width:880px; padding-block:70px; }
.legal h1 { font-size:52px; line-height:1.05; margin:35px 0; }
.legal h2 { font-size:25px; margin:30px 0 12px; }
.legal p { margin:16px 0; }
.legal a { text-decoration:underline; }
@media(min-width:1600px) { .hero-media { height:500px; } }
@media(max-width:900px) { .wrap { width:calc(100% - 48px); } .location { display:none; } h1 { font-size:8vw; } .section { padding-block:75px; } .section-head { grid-template-columns:1fr 2fr; gap:20px; } .situation-grid h3 { font-size:23px; } .step { grid-template-columns:55px 1fr; } .duration { grid-column:2; justify-self:start; } .about-grid { gap:40px; } .about-copy h2 { font-size:58px; } .about-photo { height:620px; } .experience { gap:16px; } .geo { flex-direction:column; gap:7px; } .contact-grid { gap:40px; } .contact h2 { font-size:47px; } .field-row { grid-template-columns:1fr; gap:25px; } }
@media(max-width:600px) { .wrap { width:calc(100% - 36px); } .header { min-height:96px; flex-wrap:wrap; align-content:center; gap:15px; padding-block:19px; } .brand { font-size:21px; } .brand span { font-size:11px; margin-top:5px; } nav { gap:22px; font-size:13px; width:100%; } nav a { padding:0; } .hero { padding-top:26px; } .hero-top>span { display:none; } .hero-top p { font-size:13px; } h1 { font-size:clamp(36px,9.3vw,56px); margin:25px 0; letter-spacing:-.055em; line-height:1.06; } h1>span { text-align:left; } .hero-bottom { display:block; margin-bottom:26px; } .hero-bottom p { font-size:16px; margin-bottom:25px; } .hero-bottom .button { width:100%; } .hero-media { height:280px; } .media-note { left:18px; bottom:18px; font-size:16px; } .section { padding-block:60px; } .section-head { display:block; margin-bottom:32px; } .section-name { margin-bottom:24px; padding:0; font-size:14px; } h2 { font-size:41px; } .situation-grid { display:block; } .situation-grid article,.situation-grid article+article { padding:24px 0; border-left:0; border-bottom:1px solid var(--line); } .situation-grid h3 { margin:18px 0 12px; font-size:26px; } .situation-grid p { max-width:none; } .statement { padding:60px 0; } .statement p { font-size:36px; } .statement br { display:none; } .step { gap:18px; grid-template-columns:35px 1fr; padding-block:26px; } .step h3 { font-size:28px; } .step p { font-size:16px; } .duration { font-size:13px; } .about-grid { display:flex; flex-direction:column-reverse; gap:34px; } .about-copy { padding:0; } .about-copy h2 { font-size:60px; margin:0 0 25px; } .about-copy h2 br { display:none; } .lead { font-size:22px; } .about-photo { height:350px; width:100%; } .about-photo img { object-position:50% 65%; } .geo { flex-direction:row; justify-content:space-between; font-size:13px; gap:12px; } .contact-grid { display:block; } .contact h2 { font-size:47px; margin:0 0 25px; } .contact h2 br { display:none; } .contact p br { display:none; } form { margin-top:35px; } .footer { flex-wrap:wrap; padding-block:28px; } .footer p { width:100%; order:3; color:#526070; } .legal { padding-block:35px; } .legal h1 { font-size:35px; overflow-wrap:anywhere; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
