
:root{
  --bg:#ffffff;
  --ink:#0f172a;
  --muted:#475569;
  --brand:#2563eb;
  --brand-ink:#ffffff;
  --ring: rgba(37, 99, 235, .25);
  --container: 1100px;
  --radius: 1.25rem;
  --shadow: 0 10px 30px rgba(2,6,23,0.08);
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, Noto Sans, "Apple Color Emoji", "Segoe UI Emoji";
  color:var(--ink);
  background:var(--bg);
  line-height:1.65;
}

.page{display:block}

.container{
  max-width:var(--container);
  margin-inline:auto;
  padding: clamp(1rem, 2vw, 2rem);
}

/*.section{padding: clamp(2rem, 5vw, 4rem) 0}*/
/*.section{padding-bottom: 25px;}*/

h1,h2,h3{line-height:1.2;margin:0 0 .6em}
h1{font-size: clamp(2rem, 4vw, 3rem)}
h2{font-size: clamp(1.5rem, 3vw, 2rem)}
h3{font-size: clamp(1.25rem, 2.5vw, 1.5rem)}

p{margin:0 0 1rem}
ul{padding-left:1.2rem}

.hero{
  position:relative;
  isolation:isolate;
  border-radius: 0 0 var(--radius) var(--radius);
  overflow:hidden;
  box-shadow: var(--shadow);
}

.hero__image{
  display:block;
  width:100%;
  height: clamp(260px, 55vw, 520px);
  object-fit: cover;
  filter: saturate(1.05);
  object-position: bottom;
}

.hero__overlay{
  position:absolute;
  inset: 0;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap: .75rem;
  padding: clamp(1rem, 3vw, 2rem);
  background: linear-gradient(to top, rgba(2,6,23,.55) 0%, rgba(2,6,23,.25) 50%, rgba(2,6,23,0) 100%);
  color:#fff;
}

.hero__title{
  font-size: clamp(2rem, 6vw, 3.25rem);
  font-weight: 800;
  letter-spacing: .2px;
  text-shadow: 0 8px 40px rgba(0,0,0,.35);
}

.hero__subtitle{
  font-size: clamp(1rem, 2.5vw, 1.25rem);
  opacity:.95;
  max-width: 60ch;
}

.btn{
  display:inline-block;
  padding: .8rem 1.1rem;
  border-radius: calc(var(--radius) - .25rem);
  text-decoration:none;
  font-weight: 600;
  transition: transform .15s ease, box-shadow .15s ease, background .2s ease, color .2s ease;
  box-shadow: var(--shadow);
  border: 1px solid transparent;
  width: fit-content;
}

.btn:focus-visible{
  outline: 4px solid var(--ring);
  outline-offset: 2px;
}

.btn--primary{
  background:var(--brand);
  color:var(--brand-ink);
}

.btn--primary:hover{ transform: translateY(-1px) }

.btn--ghost{
  background: transparent;
  color: var(--ink);
  border-color: rgba(2,6,23,.08);
}

.btn--ghost:hover{ transform: translateY(-1px) }

.grid{
  display:grid;
  grid-template-columns: 1fr;
  gap: clamp(1rem, 3vw, 2rem);
}
@media (min-width: 860px){
  .grid{ grid-template-columns: 1fr 1fr }
}

.facts{
  list-style:none;
  padding:0;
  margin:0 0 1rem;
}
.facts li{
  display:flex;
  gap:.5rem;
  padding:.35rem 0;
  border-bottom: 1px dashed rgba(2,6,23,.08);
}
.facts li span{
  min-width: 6ch;
  color: var(--muted);
}

.note{
  font-size:.95rem;
  color: var(--muted);
  background: rgba(2,6,23,.035);
  padding: .75rem 1rem;
  border-radius: calc(var(--radius) - .35rem);
  border: 1px solid rgba(2,6,23,.06);
}

.cta-row{ display:flex; gap:.75rem; flex-wrap:wrap; margin-top:.5rem }

@media only screen and (max-width: 992px) {

  .hero__title{
    display: none;
  }

  .hero__subtitle{
    display: none;
  }

}