:root {
  --ira-ink:#10282f;
  --ira-muted:#61757c;
  --ira-line:#dce6e8;
  --ira-soft:#f4f8f8;
  --ira-teal:#087f8c;
  --ira-teal-dark:#076873;
  --ira-orange:#ff9318;
  --ira-navy:#0b242c;
  --ira-white:#ffffff;
}

* {
  box-sizing:border-box;
}

html {
  scroll-behavior:smooth;
}

body.ht-ira {
  margin:0;
  background:#fff;
  color:var(--ira-ink);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
}

.ht-ira a {
  color:inherit;
  text-decoration:none;
}

.ht-ira-shell {
  width:min(1120px,calc(100% - 40px));
  margin:0 auto;
}

/* Header */

.ht-ira-header {
  position:sticky;
  top:0;
  z-index:100;
  height:72px;
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(16px);
  border-bottom:1px solid #e7edef;
}

.ht-ira-header-inner {
  height:100%;
  display:flex;
  align-items:center;
  gap:30px;
}

.ht-ira-logo img {
  display:block;
  width:178px;
  max-height:35px;
  object-fit:contain;
}

.ht-ira-nav {
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:24px;
}

.ht-ira-nav a {
  color:#3b4e55;
  font-size:.8rem;
  font-weight:720;
}

.ht-ira-nav a:hover {
  color:var(--ira-teal);
}

.ht-ira-nav .portal {
  padding:10px 15px;
  color:var(--ira-teal);
  border:1px solid #cfdddf;
  border-radius:9px;
}

/* Hero */

.ht-ira-hero {
  position:relative;
  overflow:hidden;
  padding:84px 0 76px;
  background:
    radial-gradient(circle at 84% 18%,rgba(8,127,140,.16),transparent 31%),
    radial-gradient(circle at 11% 95%,rgba(255,147,24,.09),transparent 26%),
    linear-gradient(180deg,#f8fbfb 0%,#fff 100%);
  border-bottom:1px solid var(--ira-line);
}

.ht-ira-hero-grid {
  display:grid;
  grid-template-columns:1.12fr .88fr;
  gap:66px;
  align-items:center;
}

.ht-ira-kicker {
  display:inline-flex;
  align-items:center;
  gap:9px;
  color:var(--ira-teal);
  font-size:.67rem;
  font-weight:850;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.ht-ira-kicker::before {
  content:"";
  width:19px;
  height:2px;
  background:var(--ira-orange);
  border-radius:3px;
}

.ht-ira-hero h1 {
  max-width:720px;
  margin:15px 0 19px;
  color:var(--ira-navy);
  font-size:clamp(2.65rem,4.4vw,4.15rem);
  line-height:.98;
  letter-spacing:-.055em;
}

.ht-ira-hero-copy > p {
  max-width:670px;
  margin:0;
  color:var(--ira-muted);
  font-size:1.02rem;
  line-height:1.72;
}

.ht-ira-actions {
  display:flex;
  flex-wrap:wrap;
  gap:11px;
  margin-top:27px;
}

.ht-ira-btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:0 18px;
  border-radius:9px;
  font-size:.79rem;
  font-weight:800;
}

.ht-ira-btn-primary {
  color:#fff!important;
  background:var(--ira-teal);
}

.ht-ira-btn-primary:hover {
  background:var(--ira-teal-dark);
}

.ht-ira-btn-secondary {
  color:var(--ira-ink)!important;
  background:#fff;
  border:1px solid var(--ira-line);
}

.ht-ira-proof {
  display:flex;
  flex-wrap:wrap;
  gap:17px;
  margin-top:24px;
  color:#718389;
  font-size:.72rem;
  font-weight:650;
}

.ht-ira-proof span {
  display:flex;
  align-items:center;
  gap:7px;
}

.ht-ira-proof i {
  width:6px;
  height:6px;
  background:var(--ira-teal);
  border-radius:50%;
}

/* Hero right */

.ht-ira-hero-panel {
  padding:22px;
  border:1px solid #d8e4e6;
  border-radius:19px;
  background:rgba(255,255,255,.89);
  box-shadow:0 24px 65px rgba(12,43,51,.09);
}

.ht-ira-panel-head {
  margin-bottom:15px;
}

.ht-ira-panel-head span {
  display:block;
  color:var(--ira-teal);
  font-size:.61rem;
  font-weight:850;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.ht-ira-panel-head strong {
  display:block;
  margin-top:5px;
  color:var(--ira-navy);
  font-size:1.04rem;
}

.ht-ira-equipment-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9px;
}

.ht-ira-equipment-grid div {
  min-height:83px;
  padding:14px;
  border:1px solid var(--ira-line);
  border-radius:11px;
  background:#f8fafb;
}

.ht-ira-equipment-grid strong {
  display:block;
  color:#284047;
  font-size:.79rem;
}

.ht-ira-equipment-grid span {
  display:block;
  margin-top:5px;
  color:#77878d;
  font-size:.69rem;
  line-height:1.42;
}

/* Common sections */

.ht-ira-section {
  padding:78px 0;
}

.ht-ira-section-soft {
  background:var(--ira-soft);
}

.ht-ira-section-dark {
  color:#fff;
  background:var(--ira-navy);
}

.ht-ira-head {
  display:grid;
  grid-template-columns:1.05fr .75fr;
  gap:64px;
  align-items:end;
  margin-bottom:34px;
}

.ht-ira-head h2 {
  margin:9px 0 0;
  color:var(--ira-navy);
  font-size:clamp(1.85rem,3vw,2.65rem);
  line-height:1.04;
  letter-spacing:-.045em;
}

.ht-ira-head > p {
  margin:0;
  color:var(--ira-muted);
  font-size:.91rem;
  line-height:1.7;
}

.ht-ira-section-dark .ht-ira-head h2 {
  color:#fff;
}

.ht-ira-section-dark .ht-ira-head > p {
  color:#b7c7cb;
}

.ht-ira-section-dark .ht-ira-kicker {
  color:#77d0d5;
}

/* Audience */

.ht-ira-audience {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:17px;
}

.ht-ira-card {
  padding:27px;
  border:1px solid var(--ira-line);
  border-radius:15px;
  background:#fff;
}

.ht-ira-card-label {
  color:var(--ira-teal);
  font-size:.62rem;
  font-weight:850;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.ht-ira-card h3 {
  margin:9px 0 9px;
  color:var(--ira-navy);
  font-size:1.25rem;
}

.ht-ira-card p {
  margin:0;
  color:var(--ira-muted);
  font-size:.84rem;
  line-height:1.65;
}

/* Services */

.ht-ira-services {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border:1px solid var(--ira-line);
  border-radius:15px;
  overflow:hidden;
  background:#fff;
}

.ht-ira-services article {
  min-height:205px;
  padding:24px;
  border-right:1px solid var(--ira-line);
}

.ht-ira-services article:last-child {
  border-right:0;
}

.ht-ira-number {
  color:var(--ira-teal);
  font-size:.63rem;
  font-weight:850;
  letter-spacing:.1em;
}

.ht-ira-services h3 {
  margin:22px 0 9px;
  color:var(--ira-navy);
  font-size:1.03rem;
}

.ht-ira-services p {
  margin:0;
  color:var(--ira-muted);
  font-size:.78rem;
  line-height:1.62;
}

/* Equipment list */

.ht-ira-types {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
}

.ht-ira-type {
  padding:21px;
  border:1px solid var(--ira-line);
  border-radius:13px;
  background:#fff;
}

.ht-ira-type strong {
  display:block;
  color:var(--ira-navy);
  font-size:.9rem;
}

.ht-ira-type p {
  margin:6px 0 0;
  color:var(--ira-muted);
  font-size:.76rem;
  line-height:1.55;
}

/* Process */

.ht-ira-process {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid rgba(255,255,255,.15);
  border-bottom:1px solid rgba(255,255,255,.15);
}

.ht-ira-process article {
  min-height:190px;
  padding:26px;
  border-right:1px solid rgba(255,255,255,.13);
}

.ht-ira-process article:last-child {
  border-right:0;
}

.ht-ira-process .ht-ira-number {
  color:#73d1d6;
}

.ht-ira-process h3 {
  margin:20px 0 7px;
  color:#fff;
  font-size:1rem;
}

.ht-ira-process p {
  margin:0;
  color:#acbdc2;
  font-size:.77rem;
  line-height:1.57;
}

/* Data */

.ht-ira-data-grid {
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:45px;
  align-items:start;
}

.ht-ira-data-copy h2 {
  margin:10px 0 16px;
  color:var(--ira-navy);
  font-size:clamp(1.85rem,2.8vw,2.55rem);
  letter-spacing:-.04em;
  line-height:1.05;
}

.ht-ira-data-copy p {
  color:var(--ira-muted);
  font-size:.88rem;
  line-height:1.72;
}

.ht-ira-data-panel {
  padding:27px;
  border:1px solid var(--ira-line);
  border-radius:16px;
  background:#fff;
}

.ht-ira-data-panel strong {
  display:block;
  margin-bottom:14px;
  color:var(--ira-navy);
  font-size:1rem;
}

.ht-ira-data-panel ul {
  margin:0;
  padding-left:19px;
}

.ht-ira-data-panel li {
  margin:7px 0;
  color:#586c73;
  font-size:.81rem;
  line-height:1.55;
}

.ht-ira-note {
  margin-top:17px;
  padding:15px 17px;
  border-left:3px solid var(--ira-orange);
  border-radius:0 9px 9px 0;
  background:#fff8ef;
  color:#685b4d;
  font-size:.75rem;
  line-height:1.58;
}

/* CTA */

.ht-ira-cta {
  padding:72px 0;
  background:
    radial-gradient(circle at 85% 15%,rgba(255,255,255,.08),transparent 27%),
    linear-gradient(135deg,#087f8c,#096974 65%,#0a5660);
  color:#fff;
}

.ht-ira-cta-grid {
  display:grid;
  grid-template-columns:1fr auto;
  gap:45px;
  align-items:center;
}

.ht-ira-cta h2 {
  max-width:700px;
  margin:8px 0 12px;
  color:#fff;
  font-size:clamp(1.9rem,3vw,2.7rem);
  line-height:1.05;
  letter-spacing:-.04em;
}

.ht-ira-cta p {
  max-width:700px;
  margin:0;
  color:#d5e8ea;
  font-size:.9rem;
  line-height:1.68;
}

.ht-ira-cta .ht-ira-kicker {
  color:#c2eef0;
}

.ht-ira-cta .ht-ira-btn {
  background:#fff;
  color:var(--ira-teal)!important;
  white-space:nowrap;
}

/* Footer */

.ht-ira-footer {
  position:relative;
  background:#091b21;
  color:#9cafb4;
}

.ht-ira-footer-grid {
  display:grid;
  grid-template-columns:1.7fr repeat(3,1fr);
  gap:44px;
  padding:45px 0 34px;
}

.ht-ira-footer-brand img {
  width:164px;
  filter:brightness(0) invert(1);
}

.ht-ira-footer-brand p {
  max-width:300px;
  margin:12px 0 0;
  color:#83989e;
  font-size:.77rem;
  line-height:1.55;
}

.ht-ira-footer-nav strong {
  display:block;
  margin-bottom:10px;
  color:#fff;
  font-size:.71rem;
}

.ht-ira-footer-nav a {
  display:block;
  margin:7px 0;
  color:#91a4aa;
  font-size:.72rem;
}

.ht-ira-footer-nav a:hover {
  color:#fff;
}

.ht-ira-footer-bottom {
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding:17px 0 23px;
  border-top:1px solid rgba(255,255,255,.09);
  color:#71868c;
  font-size:.68rem;
}

/* Accessibility */

.ht-ira a:focus {
  outline:none;
}

.ht-ira a:focus-visible {
  outline:2px solid var(--ira-teal);
  outline-offset:3px;
  border-radius:4px;
}

/* Responsive */

@media(max-width:920px) {
  .ht-ira-hero-grid,
  .ht-ira-data-grid {
    grid-template-columns:1fr;
  }

  .ht-ira-services {
    grid-template-columns:1fr 1fr;
  }

  .ht-ira-services article:nth-child(2) {
    border-right:0;
  }

  .ht-ira-services article {
    border-bottom:1px solid var(--ira-line);
  }

  .ht-ira-services article:nth-child(3),
  .ht-ira-services article:nth-child(4) {
    border-bottom:0;
  }

  .ht-ira-process {
    grid-template-columns:1fr 1fr;
  }

  .ht-ira-process article:nth-child(2) {
    border-right:0;
  }

  .ht-ira-process article {
    border-bottom:1px solid rgba(255,255,255,.13);
  }

  .ht-ira-process article:nth-child(3),
  .ht-ira-process article:nth-child(4) {
    border-bottom:0;
  }
}

@media(max-width:760px) {
  .ht-ira-nav a:not(.portal) {
    display:none;
  }

  .ht-ira-hero {
    padding:58px 0;
  }

  .ht-ira-head {
    grid-template-columns:1fr;
    gap:18px;
  }

  .ht-ira-audience,
  .ht-ira-types,
  .ht-ira-cta-grid {
    grid-template-columns:1fr;
  }

  .ht-ira-footer-grid {
    grid-template-columns:1fr 1fr;
  }

  .ht-ira-footer-brand {
    grid-column:1/-1;
  }
}

@media(max-width:540px) {
  .ht-ira-shell {
    width:calc(100% - 28px);
  }

  .ht-ira-header {
    height:66px;
  }

  .ht-ira-logo img {
    width:154px;
  }

  .ht-ira-nav .portal {
    padding:8px 10px;
    font-size:.7rem;
  }

  .ht-ira-hero h1 {
    font-size:2.3rem;
  }

  .ht-ira-equipment-grid,
  .ht-ira-services,
  .ht-ira-process {
    grid-template-columns:1fr;
  }

  .ht-ira-services article,
  .ht-ira-process article {
    border-right:0;
    border-bottom:1px solid var(--ira-line);
  }

  .ht-ira-process article {
    border-bottom-color:rgba(255,255,255,.13);
  }

  .ht-ira-services article:last-child,
  .ht-ira-process article:last-child {
    border-bottom:0;
  }

  .ht-ira-footer-bottom {
    flex-direction:column;
    gap:4px;
  }
}


/* HT ASSET RECOVERY COMPACT TYPE V2 */

.ht-ira-hero h1 {
  max-width:650px;
  font-size:clamp(2.65rem,4.4vw,4.15rem);
  line-height:1.01;
  letter-spacing:-.05em;
}

.ht-ira-head h2 {
  font-size:clamp(1.85rem,3vw,2.65rem);
  line-height:1.06;
}

.ht-ira-data-copy h2 {
  font-size:clamp(1.85rem,2.8vw,2.55rem);
  line-height:1.07;
}

.ht-ira-cta h2 {
  font-size:clamp(1.9rem,3vw,2.7rem);
  line-height:1.06;
}

@media(max-width:760px) {
  .ht-ira-hero h1 {
    font-size:2.45rem;
  }

  .ht-ira-head h2,
  .ht-ira-data-copy h2,
  .ht-ira-cta h2 {
    font-size:2rem;
  }
}

@media(max-width:540px) {
  .ht-ira-hero h1 {
    font-size:2.15rem;
  }

  .ht-ira-head h2,
  .ht-ira-data-copy h2,
  .ht-ira-cta h2 {
    font-size:1.85rem;
  }
}

/* HT ASSET RECOVERY — FINAL COMPACT SCALE */

.ht-ira-hero {
  padding-top:64px;
  padding-bottom:62px;
}

.ht-ira-hero-grid {
  gap:54px;
}

.ht-ira-hero h1 {
  max-width:610px;
  margin:14px 0 16px;
  font-size:clamp(2.4rem,3.45vw,3.35rem);
  line-height:1.03;
  letter-spacing:-.045em;
}

.ht-ira-hero-copy > p {
  max-width:620px;
  font-size:.96rem;
  line-height:1.65;
}

.ht-ira-head h2 {
  font-size:clamp(1.7rem,2.45vw,2.25rem);
}

.ht-ira-data-copy h2 {
  font-size:clamp(1.7rem,2.4vw,2.2rem);
}

.ht-ira-cta h2 {
  font-size:clamp(1.75rem,2.5vw,2.3rem);
}

@media(max-width:760px) {
  .ht-ira-hero {
    padding-top:48px;
    padding-bottom:50px;
  }

  .ht-ira-hero h1 {
    font-size:2.2rem;
  }

  .ht-ira-head h2,
  .ht-ira-data-copy h2,
  .ht-ira-cta h2 {
    font-size:1.8rem;
  }
}

@media(max-width:540px) {
  .ht-ira-hero h1 {
    font-size:2rem;
  }
}
