*{box-sizing:border-box}
:root{--navy:#071b32;--ink:#0b1f39;--muted:#64748b;--line:#d7dee7;--gold:#e2b95f}
html,body{margin:0;min-height:100%;font-family:Arial,"Helvetica Neue",sans-serif;color:var(--ink);background:#edf1f5}
.page{min-height:calc(100vh - 88px);display:grid;grid-template-columns:50% 50%;background:#fff}
.signup-panel{background:#fff;display:flex;justify-content:center}
.inner{width:min(100%,720px);padding:40px 8.5% 42px}
.logo{display:block;width:min(335px,72%);height:auto;margin-bottom:44px}
.eyebrow{font-size:14px;letter-spacing:.16em;font-weight:700;color:#2d6eb4;margin-bottom:20px}
h1{font-size:54px;line-height:1.02;letter-spacing:-.045em;margin:0 0 20px;font-weight:700}
.intro{font-size:18px;line-height:1.52;color:#30445c;margin:0 0 34px;max-width:560px}
.name-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.field{display:block;margin:0 0 14px}.field>span{display:block;font-size:15px;font-weight:700;margin:0 0 8px}.field b{font-weight:700}
.field input{width:100%;height:72px;border:1px solid var(--line);border-radius:10px;padding:0 17px;font:inherit;font-size:16px;outline:0;color:var(--ink);background:#fff}
.field input::placeholder{color:#8b99aa}.field input:focus{border-color:#35689d;box-shadow:0 0 0 4px rgba(53,104,157,.1)}
.phone{height:72px;border:1px solid var(--line);border-radius:10px;display:flex;align-items:center;overflow:hidden}
.flag{font-size:21px;padding-left:17px}.drop{font-size:17px;padding:0 13px;color:#4e6075}.code{height:40px;border-left:1px solid #dfe4ea;border-right:1px solid #dfe4ea;padding:0 14px;display:flex;align-items:center;font-size:16px}
.phone input{border:0!important;box-shadow:none!important;height:100%;flex:1;min-width:0}
.submit{width:100%;height:68px;border:0;border-radius:9px;background:var(--gold);color:#0b1c31;font-size:18px;font-weight:700;display:flex;justify-content:center;align-items:center;gap:28px;cursor:pointer;margin-top:8px}
.submit strong{font-size:26px;font-weight:500}.submit:disabled{opacity:.65;cursor:wait}
.privacy{display:flex;justify-content:center;gap:9px;align-items:center;color:#69788a;font-size:12.5px;margin:13px 0 25px}.privacy:first-letter{color:var(--navy)}
.message{height:0;text-align:center;font-size:13px}.message.error{height:auto;color:#b42318;margin-bottom:12px}.message.ok{height:auto;color:#16794a;margin-bottom:12px}
.features{border-top:1px solid #dce2e8;border-bottom:1px solid #dce2e8;padding:21px 0;display:grid;grid-template-columns:repeat(4,1fr);text-align:center;gap:8px}
.features>div{font-size:12.5px;line-height:1.3}.features i{height:34px;display:flex;align-items:center;justify-content:center;font-style:normal;font-size:28px;margin-bottom:7px}
.bars{gap:3px!important;align-items:flex-end!important}.bars em{display:block;width:5px;background:var(--ink);border-radius:1px}.bars em:nth-child(1){height:12px}.bars em:nth-child(2){height:21px}.bars em:nth-child(3){height:29px}
.testimonial{text-align:center;padding-top:23px}.testimonial>div{font-family:Georgia,serif;font-style:italic;font-size:18px;line-height:1.4}.testimonial small{display:block;font-size:11px;letter-spacing:.14em;color:#738094;margin-top:10px}
.image-panel{position:relative;overflow:hidden;min-height:100%;background:var(--navy);display:flex;align-items:flex-start;justify-content:center}
.skyline{width:100%;height:auto;max-width:none;display:block;object-fit:contain;object-position:center top}
footer{height:88px;background:var(--navy);color:#fff;padding:0 8.7%;display:flex;align-items:center;justify-content:space-between}
.footer-brand{display:flex;flex-direction:column}.footer-brand strong{font-size:19px}.footer-brand small{font-size:8px;letter-spacing:.25em;color:#b9c5d2;margin-top:3px}
footer nav{display:flex;gap:38px}footer a{color:#fff;text-decoration:none;font-size:14px}
dialog{border:0;border-radius:16px;box-shadow:0 20px 70px rgba(0,0,0,.28);padding:0}.modal{text-align:center;padding:34px 30px;width:330px}.check{width:52px;height:52px;border-radius:50%;background:#e8f5ee;color:#16794a;display:grid;place-items:center;margin:auto;font-size:28px}.modal h2{font-size:28px;margin:14px 0 7px}.modal p{color:#5d6d80;line-height:1.5}.modal button{border:0;border-radius:8px;background:var(--gold);font-weight:700;padding:12px 24px;cursor:pointer}
@media(max-width:1100px){
  .page{grid-template-columns:1fr 1fr}
  .inner{padding-left:7%;padding-right:7%}
  h1{font-size:46px}
  .intro{font-size:17px}
  .logo{width:285px}
}

@media(max-width:820px){
  body{background:#fff}
  .page{display:flex;flex-direction:column;min-height:0}
  .image-panel{
    order:1;
    width:100%;
    height:auto;
    min-height:0;
    aspect-ratio:2/3;
    flex:none;
    display:block;
    background:var(--navy);
  }
  .skyline{
    width:100%;
    height:100%;
    display:block;
    object-fit:contain;
    object-position:center top;
  }
  .signup-panel{order:2;width:100%}
  .inner{width:100%;max-width:680px;margin:0 auto;padding:38px 34px 46px}
  .logo{width:290px;margin-bottom:34px}
  .eyebrow{font-size:12px;letter-spacing:.14em}
  h1{font-size:46px}
  .intro{font-size:17px}
  footer{height:auto;padding:25px 34px;gap:20px}
}

@media(max-width:600px){
  .image-panel{
    width:100%;
    height:auto;
    aspect-ratio:2/3;
  }
  .skyline{
    width:100%;
    height:100%;
    object-fit:contain;
  }
  .inner{padding:30px 20px 38px}
  .logo{width:245px;margin-bottom:30px}
  .eyebrow{font-size:10px;letter-spacing:.115em;line-height:1.5}
  h1{font-size:38px;line-height:1.05;letter-spacing:-.04em;margin-bottom:17px}
  .intro{font-size:16px;line-height:1.5;margin-bottom:25px}
  .name-grid{grid-template-columns:1fr;gap:0}
  .field{margin-bottom:13px}
  .field>span{font-size:14px}
  .field input,.phone{height:62px}
  .phone input{font-size:15px}
  .submit{height:62px;font-size:17px}
  .privacy{font-size:11px;line-height:1.4;text-align:left;align-items:flex-start}
  .features{grid-template-columns:repeat(4,1fr);gap:2px;padding:17px 0}
  .features>div{font-size:9.5px;line-height:1.25}
  .features i{font-size:22px;height:27px;margin-bottom:6px}
  .testimonial{padding-top:20px}
  .testimonial>div{font-size:16px}
  .testimonial small{font-size:9px}
  footer{padding:22px 20px;flex-direction:column;align-items:flex-start}
  footer nav{gap:20px;flex-wrap:wrap}
}

@media(max-width:380px){
  .inner{padding-left:16px;padding-right:16px}
  .logo{width:220px}
  h1{font-size:34px}
  .eyebrow{font-size:9px}
  .features>div{font-size:8.5px}
  .flag{padding-left:12px}.drop{padding:0 9px}.code{padding:0 10px}
}
