.ptk-contact-page{
  background:#F5F7FA;
  color:var(--ink);
}

.ptk-contact-hero{
  position:relative;
  min-height:500px;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:var(--navy);
  color:#fff;
}

.ptk-contact-hero-image{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

.ptk-contact-hero-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(0,31,86,.96) 0%,rgba(0,31,86,.82) 40%,rgba(0,31,86,.38) 70%,rgba(0,31,86,.10) 100%);
}

.ptk-contact-hero-inner{
  position:relative;
  z-index:2;
  padding-top:72px;
  padding-bottom:72px;
}

.ptk-contact-hero-copy{
  max-width:650px;
}

.ptk-contact-eyebrow{
  display:inline-flex;
  background:var(--orange);
  color:#fff;
  font-weight:900;
  font-size:12px;
  line-height:1;
  letter-spacing:.08em;
  text-transform:uppercase;
  padding:9px 12px;
  border-radius:4px;
}

.ptk-contact-hero-copy h1{
  margin:14px 0 18px;
  max-width:650px;
  color:#fff;
  font-size:clamp(42px,5vw,58px);
  line-height:1.03;
  letter-spacing:-.025em;
}

.ptk-contact-hero-copy p{
  max-width:620px;
  margin:0;
  color:#F1F5FB;
  font-size:19px;
  line-height:1.55;
}

.ptk-contact-body{
  padding:54px 0 76px;
}

.ptk-contact-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,390px);
  gap:28px;
  align-items:start;
}

.ptk-contact-copy{
  background:#fff;
  border:1px solid var(--line);
  border-top:5px solid var(--orange);
  border-radius:16px;
  box-shadow:0 12px 28px rgba(0,31,86,.08);
  padding:42px;
}

.ptk-contact-content{
  color:var(--ink);
  font-size:17px;
}

.ptk-contact-content > :first-child{margin-top:0}
.ptk-contact-content > :last-child{margin-bottom:0}
.ptk-contact-content p{margin:0 0 18px}
.ptk-contact-content h2{
  margin:30px 0 12px;
  color:var(--navy);
  font-size:28px;
  line-height:1.15;
}
.ptk-contact-content ul{
  margin:0 0 22px;
  padding-left:22px;
}
.ptk-contact-content li+li{margin-top:6px}
.ptk-contact-content .ptk-whatsapp-form{
  margin-top:8px;
}

.ptk-contact-photo{
  margin:0;
  overflow:hidden;
  background:#fff;
  border:1px solid var(--line);
  border-radius:16px;
  box-shadow:0 12px 28px rgba(0,31,86,.08);
}

.ptk-contact-photo img{
  display:block;
  width:100%;
  height:auto;
}

.ptk-contact-photo--portrait{
  max-width:390px;
  justify-self:end;
}

@media (max-width:900px){
  .ptk-contact-hero{min-height:430px}
  .ptk-contact-hero-inner{padding-top:58px;padding-bottom:58px}
  .ptk-contact-body{padding:44px 0 62px}
  .ptk-contact-layout{grid-template-columns:1fr}
  .ptk-contact-photo--portrait{justify-self:center;width:min(100%,390px)}
}

@media (max-width:620px){
  .ptk-contact-hero{min-height:390px}
  .ptk-contact-hero-image{object-position:58% center}
  .ptk-contact-hero-overlay{
    background:linear-gradient(90deg,rgba(0,31,86,.96) 0%,rgba(0,31,86,.84) 58%,rgba(0,31,86,.48) 100%);
  }
  .ptk-contact-hero-inner{padding-top:46px;padding-bottom:46px}
  .ptk-contact-hero-copy h1{font-size:40px}
  .ptk-contact-hero-copy p{font-size:17px}
  .ptk-contact-body{padding:34px 0 48px}
  .ptk-contact-layout{gap:18px}
  .ptk-contact-copy{padding:28px 22px;border-radius:13px}
  .ptk-contact-photo{border-radius:13px}
  .ptk-contact-content{font-size:16px}
  .ptk-contact-content h2{font-size:25px}
}
