*{box-sizing:border-box}
html,body{margin:0;padding:0;overflow-x:hidden}
body{font-family:Arial,Helvetica,sans-serif;background:#f6f1ea;color:#151c24}

.ojd{background:#f6f1ea;color:#151c24}
.ojd a{text-decoration:none}

.ojd-wrap{
  width:100%;
  max-width:1180px;
  margin:0 auto;
}

.ojd-hero{
  background:linear-gradient(135deg,#151c24 0%,#202a35 72%,#6f5537 100%);
  color:#fff;
  padding:64px 24px 44px;
}

.ojd-back{
  display:inline-flex;
  align-items:center;
  margin-bottom:20px;
  color:#c8a06a;
  font-size:14px;
  font-weight:900;
}

.ojd-kicker{
  display:inline-flex;
  align-items:center;
  margin-bottom:14px;
  padding:8px 12px;
  background:rgba(200,160,106,.13);
  border:1px solid rgba(200,160,106,.45);
  color:#c8a06a;
  font-size:13px;
  font-weight:900;
  letter-spacing:.05em;
  text-transform:uppercase;
}

.ojd-hero h1{
  margin:0 0 16px;
  max-width:900px;
  color:#fff;
  font-size:52px;
  line-height:1.05;
  letter-spacing:-1.8px;
}

.ojd-hero p{
  margin:0;
  max-width:760px;
  color:#dbe0e6;
  font-size:19px;
  line-height:1.55;
}

.ojd-main{
  padding:44px 24px 58px;
}

.ojd-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  gap:24px;
  align-items:start;
}

.ojd-card{
  background:#fff;
  border:1px solid #eadfce;
  border-top:6px solid #c8a06a;
  padding:28px;
  box-shadow:0 24px 64px rgba(21,28,36,.08);
}

.ojd-card.high{border-top-color:#9b2f2f}
.ojd-card.mid{border-top-color:#c8a06a}
.ojd-card.low{border-top-color:#2f7651}

.ojd-card h2{
  margin:0 0 18px;
  color:#151c24;
  font-size:32px;
  line-height:1.12;
}

.ojd-status{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:18px;
}

.ojd-status span{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 10px;
  background:#151c24;
  color:#fff;
  font-size:12px;
  font-weight:900;
}

.ojd-status .light{
  background:#fff8ed;
  color:#7a552a;
  border:1px solid #eadfce;
}

.ojd-status .danger{background:#9b2f2f;color:#fff}
.ojd-status .warn{background:#c8a06a;color:#151c24}
.ojd-status .safe{background:#2f7651;color:#fff}

.ojd-facts{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:12px;
  margin-bottom:24px;
}

.ojd-fact{
  background:#fff8ed;
  border:1px solid #eadfce;
  padding:14px;
}

.ojd-fact small{
  display:block;
  margin-bottom:4px;
  color:#7a552a;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
}

.ojd-fact b{
  display:block;
  color:#151c24;
  font-size:15px;
  line-height:1.3;
}

.ojd-text-block{
  margin-top:22px;
  padding-top:22px;
  border-top:1px solid #eadfce;
}

.ojd-text-block h3{
  margin:0 0 8px;
  color:#151c24;
  font-size:22px;
}

.ojd-text-block p{
  margin:0;
  color:#4f5964;
  font-size:16px;
  line-height:1.6;
}

.ojd-side{
  background:#fff;
  border:1px solid #eadfce;
  border-top:6px solid #151c24;
  padding:24px;
  position:sticky;
  top:18px;
  box-shadow:0 24px 64px rgba(21,28,36,.08);
}

.ojd-side h2{
  margin:0 0 10px;
  color:#151c24;
  font-size:26px;
  line-height:1.15;
}

.ojd-side p{
  margin:0 0 18px;
  color:#68717c;
  font-size:15px;
  line-height:1.5;
}

.ojd-price{
  margin-bottom:18px;
  padding:18px;
  background:#fff8ed;
  border:1px solid #eadfce;
}

.ojd-price small{
  display:block;
  color:#7a552a;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
}

.ojd-price b{
  display:block;
  margin-top:4px;
  color:#151c24;
  font-size:28px;
  line-height:1.1;
}

.ojd-form{
  display:grid;
  gap:10px;
}

.ojd-form input,
.ojd-form textarea{
  width:100%;
  min-height:46px;
  padding:12px;
  border:1px solid #d8c7b3;
  background:#fff;
  color:#151c24;
  font-family:Arial,Helvetica,sans-serif;
  font-size:14px;
}

.ojd-form textarea{
  min-height:96px;
  resize:vertical;
}

.ojd-form button{
  min-height:54px;
  border:0;
  background:#151c24;
  color:#fff;
  font-size:15px;
  font-weight:900;
  cursor:pointer;
}

.ojd-note{
  margin-top:12px;
  color:#68717c;
  font-size:12px;
  line-height:1.45;
}

.ojd-footer{
  background:#111820;
  color:#b9c2cc;
  text-align:center;
  padding:34px 18px;
}

.ojd-footer a{
  color:#fff;
  font-weight:900;
}

@media(max-width:900px){
  .ojd-hero{
    padding:44px 16px 34px;
  }

  .ojd-hero h1{
    font-size:34px;
    letter-spacing:-1px;
  }

  .ojd-main{
    padding:34px 16px 44px;
  }

  .ojd-grid,
  .ojd-facts{
    grid-template-columns:1fr;
  }

  .ojd-card{
    padding:22px;
  }

  .ojd-card h2{
    font-size:26px;
  }

  .ojd-side{
    position:relative;
    top:auto;
  }
}

/* === Contractor interest form upgrade === */
.ojd-guidance{
  margin:0 0 18px;
  padding:16px;
  background:#fff8ed;
  border:1px solid #eadfce;
}

.ojd-guidance b{
  display:block;
  color:#151c24;
  font-size:15px;
  margin-bottom:8px;
}

.ojd-guidance ul{
  margin:0;
  padding-left:18px;
  color:#4f5964;
  font-size:13px;
  line-height:1.5;
}

.ojd-form label{
  display:grid;
  gap:6px;
}

.ojd-form label span{
  color:#151c24;
  font-size:13px;
  font-weight:900;
}

.ojd-form button{
  margin-top:4px;
}

.ojd-form button:hover{
  background:#7a552a;
}

/* === Hard lock same detail price typography === */
.ojd-price,
.ojd-price *{
  font-family:Arial, Helvetica, sans-serif !important;
}

.ojd-price small{
  display:block !important;
  color:#7a552a !important;
  font-size:12px !important;
  font-weight:900 !important;
  line-height:1.2 !important;
  text-transform:uppercase !important;
}

.ojd-price b{
  display:block !important;
  margin-top:4px !important;
  color:#151c24 !important;
  font-size:28px !important;
  font-weight:900 !important;
  line-height:1.1 !important;
}

/* === Hard lock same detail price typography === */
.ojd-price,
.ojd-price *{
  font-family:Arial, Helvetica, sans-serif !important;
}

.ojd-price small{
  display:block !important;
  color:#7a552a !important;
  font-size:12px !important;
  font-weight:900 !important;
  line-height:1.2 !important;
  text-transform:uppercase !important;
}

.ojd-price b{
  display:block !important;
  margin-top:4px !important;
  color:#151c24 !important;
  font-size:28px !important;
  font-weight:900 !important;
  line-height:1.1 !important;
}
