:root{
  --vp74-navy:#071a33;
  --vp74-blue:#315b83;
  --vp74-gold:#bf9638;
  --vp74-gold-light:#ead7a1;
  --vp74-soft:#f4f6f8;
  --vp74-muted:#6d7889;
  --vp74-line:#e1e6eb;
  --vp74-shadow:0 18px 55px rgba(7,26,51,.08)
}

.vp74-hero{
  padding:185px 0 78px;
  background:
    radial-gradient(circle at 85% 18%,rgba(217,187,99,.28),transparent 31%),
    linear-gradient(135deg,#fff,#f7efd8);
  border-bottom:1px solid #e8dcb9
}

.vp74-hero h1{
  max-width:860px;
  margin:14px 0;
  color:var(--vp74-navy);
  font-family:Poppins,Arial,sans-serif;
  font-size:clamp(52px,7vw,82px);
  line-height:1.02;
  letter-spacing:-.055em
}

.vp74-hero p{
  max-width:760px;
  margin:0;
  color:#637186;
  font-size:18px;
  line-height:1.72
}

.vp74-alert{
  margin-top:20px;
  padding:15px 18px;
  border-radius:13px
}

.vp74-alert.success{
  color:#245d36;
  background:#eaf7ed
}

.vp74-alert.error{
  color:#7b2d2d;
  background:#fff0f0
}

.vp74-intro{
  padding:78px 0;
  background:#fff
}

.vp74-intro-grid{
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:48px;
  align-items:start
}

.vp74-intro h2,
.vp74-form-heading h2{
  margin:8px 0 14px;
  color:var(--vp74-navy);
  font-family:Poppins,Arial,sans-serif;
  font-size:clamp(34px,4vw,52px);
  line-height:1.1
}

.vp74-intro p,
.vp74-form-heading p{
  color:var(--vp74-muted);
  font-size:16px;
  line-height:1.8
}

.vp74-benefits{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:13px;
  margin-top:28px
}

.vp74-benefits article{
  padding:18px;
  border:1px solid var(--vp74-line);
  border-radius:16px;
  background:#fff;
  box-shadow:0 10px 35px rgba(7,26,51,.04)
}

.vp74-benefits strong,
.vp74-benefits span{
  display:block
}

.vp74-benefits strong{
  color:var(--vp74-navy);
  font-size:13px
}

.vp74-benefits span{
  margin-top:7px;
  color:var(--vp74-muted);
  font-size:11px;
  line-height:1.55
}

.vp74-callout{
  padding:25px;
  border:1px solid #e5d4a4;
  border-radius:20px;
  background:#fbf7ea;
  box-shadow:var(--vp74-shadow)
}

.vp74-callout ol{
  display:grid;
  gap:14px;
  padding-left:22px;
  color:var(--vp74-navy);
  line-height:1.6
}

.vp74-form-section{
  padding:78px 0;
  background:var(--vp74-soft)
}

.vp74-form-grid{
  display:grid;
  grid-template-columns:.72fr 1.28fr;
  gap:42px;
  align-items:start
}

.vp74-form-heading{
  position:sticky;
  top:130px
}

.vp74-form{
  padding:26px;
  border:1px solid var(--vp74-line);
  border-radius:22px;
  background:#fff;
  box-shadow:var(--vp74-shadow)
}

.vp74-fields{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px
}

.vp74-span-2{
  grid-column:1/-1
}

.vp74-form label>span,
.vp74-form legend{
  display:block;
  margin-bottom:7px;
  color:var(--vp74-navy);
  font-size:11px;
  font-weight:800
}

.vp74-form input,
.vp74-form select,
.vp74-form textarea{
  width:100%;
  box-sizing:border-box;
  padding:13px 14px;
  border:1px solid #dfe5ec;
  border-radius:12px;
  background:#fff;
  font:inherit
}

.vp74-form input:focus,
.vp74-form select:focus,
.vp74-form textarea:focus{
  outline:none;
  border-color:#c7a34a;
  box-shadow:0 0 0 3px rgba(191,150,56,.12)
}

.vp74-areas{
  margin:22px 0;
  padding:0;
  border:0
}

.vp74-area-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px
}

.vp74-area-card{
  display:flex;
  gap:10px;
  align-items:flex-start;
  padding:13px;
  border:1px solid var(--vp74-line);
  border-radius:13px;
  cursor:pointer
}

.vp74-area-card input{
  width:auto;
  margin-top:3px
}

.vp74-area-card span{
  margin:0!important
}

.vp74-area-card strong,
.vp74-area-card small{
  display:block
}

.vp74-area-card strong{
  color:var(--vp74-navy);
  font-size:11px
}

.vp74-area-card small{
  margin-top:4px;
  color:var(--vp74-muted);
  font-size:9px;
  line-height:1.45
}

.vp74-consent{
  display:flex;
  align-items:flex-start;
  gap:9px;
  margin:18px 0
}

.vp74-consent input{
  width:auto;
  margin-top:3px
}

.vp74-consent span{
  margin:0!important;
  color:var(--vp74-muted)!important;
  font-size:10px!important;
  line-height:1.55
}

.vp74-form button{
  width:100%;
  min-height:50px;
  border:0;
  border-radius:999px;
  color:var(--vp74-navy);
  background:linear-gradient(
    135deg,
    var(--vp74-gold),
    var(--vp74-gold-light)
  );
  font-weight:900;
  cursor:pointer
}

@media(max-width:1000px){
  .vp74-intro-grid,
  .vp74-form-grid{
    grid-template-columns:1fr
  }

  .vp74-form-heading{
    position:static
  }
}

@media(max-width:700px){
  .vp74-hero{
    padding-top:145px
  }

  .vp74-benefits,
  .vp74-fields,
  .vp74-area-grid{
    grid-template-columns:1fr
  }

  .vp74-span-2{
    grid-column:auto
  }

  .vp74-form{
    padding:18px
  }
}
