@font-face {
  font-family: "Big Shoulders";
  src: url("/fonts/BigShoulders-800.ttf") format("truetype");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Libre Franklin";
  src: url("/fonts/LibreFranklin-600.ttf") format("truetype");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

:root {
  color-scheme: light;
  --stock: #ffffff;
  --ink: #1e2a44;
  --ink-soft: #3d4a68;
  --leaf: #2e6b3f;
  --tomato: #c8372d;
  --tomato-deep: #a52a21;
  --marigold: #f4c430;
}

* { box-sizing: border-box; }
::selection { background: var(--marigold); color: var(--ink); }

body {
  margin: 0;
  background: var(--stock);
  color: var(--ink);
  font-family: "Libre Franklin", Arial, sans-serif;
  font-weight: 600;
  line-height: 1.6;
}

a { color: inherit; text-underline-offset: 0.22em; }
a:focus-visible { outline: 3px solid var(--ink); outline-offset: 5px; }
.masthead { background: var(--leaf); color: var(--stock); }

.masthead-inner {
  display: flex;
  align-items: center;
  gap: 10px;
  width: min(1180px, calc(100% - 64px));
  min-height: 76px;
  margin-inline: auto;
  font-family: "Big Shoulders", "Arial Narrow", sans-serif;
  font-size: 28px;
  line-height: 1;
}

.listing {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  grid-template-areas: "domain domain" "contact botanical";
  column-gap: 48px;
  width: min(1180px, calc(100% - 64px));
  margin: 76px auto 0;
}

.domain { grid-area: domain; }

h1 {
  margin: 0;
  font-family: "Big Shoulders", "Arial Narrow", sans-serif;
  font-size: clamp(48px, 8vw, 96px);
  font-weight: 800;
  line-height: 1.08;
  letter-spacing: -0.015em;
  overflow-wrap: anywhere;
  text-wrap: balance;
}

.sale-notice {
  margin: 24px 0 0;
  font-size: clamp(20px, 2.4vw, 28px);
  line-height: 1.4;
}

.contact { grid-area: contact; align-self: start; padding-block: 48px 60px; }

.offer {
  display: table;
  min-height: 52px;
  padding: 13px 26px;
  border-radius: 3px;
  background: var(--tomato);
  color: var(--stock);
  font-family: "Big Shoulders", "Arial Narrow", sans-serif;
  font-size: 27px;
  font-weight: 800;
  line-height: 1;
  text-decoration: none;
}

.offer:hover { background: var(--tomato-deep); }

.email {
  display: table;
  min-height: 44px;
  margin-top: 20px;
  padding-block: 8px;
  overflow-wrap: anywhere;
}

.email:hover { text-decoration-thickness: 2px; }
.closed { margin: 100px 0 0; color: var(--ink-soft); font-size: 14px; }

.botanical {
  grid-area: botanical;
  justify-self: end;
  width: 100%;
  max-width: 420px;
  height: auto;
  margin-top: -40px;
}

@media (max-width: 700px) {
  .masthead-inner, .listing { width: calc(100% - 40px); }
  .masthead-inner { min-height: 64px; font-size: 25px; }
  .listing {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "domain" "contact" "botanical";
    margin-top: 40px;
  }
  h1 { font-size: clamp(40px, 10.6vw, 70px); }
  .sale-notice { margin-top: 20px; }
  .contact { padding-block: 28px 0; }
  .closed { margin-top: 32px; }
  .botanical { width: 72%; max-width: 300px; margin-top: 24px; margin-bottom: 28px; }
}
