/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
      "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
  }
}
@layer base {
  *, ::after, ::before, ::backdrop, ::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }
  html, :host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }
  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }
  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }
  b, strong {
    font-weight: bolder;
  }
  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }
  small {
    font-size: 80%;
  }
  sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring {
    outline: auto;
  }
  progress {
    vertical-align: baseline;
  }
  summary {
    display: list-item;
  }
  ol, ul, menu {
    list-style: none;
  }
  img, svg, video, canvas, audio, iframe, embed, object {
    display: block;
    vertical-align: middle;
  }
  img, video {
    max-width: 100%;
    height: auto;
  }
  button, input, select, optgroup, textarea, ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
  }
  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }
  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }
  ::file-selector-button {
    margin-inline-end: 4px;
  }
  ::placeholder {
    opacity: 1;
  }
  @supports (not (-webkit-appearance: -apple-pay-button))  or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentcolor;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  textarea {
    resize: vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit {
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}
@layer utilities;
:root {
  --ink: #0d1015;
  --ink-soft: #18171a;
  --paper: #f2eadc;
  --paper-light: #fbf6ed;
  --copper: #c77b3d;
  --amber: #e4a35f;
  --muted: #aa9b89;
  --rule-dark: rgba(242, 234, 220, .17);
  --rule-light: rgba(32, 20, 13, .18);
}
* {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
}
body {
  background: var(--ink);
  color: var(--paper);
  font-family: Inter, Avenir, "Segoe UI", Helvetica, Arial, sans-serif;
  margin: 0;
}
a {
  color: inherit;
  text-decoration: none;
}
h1, h2, h3, p {
  margin-top: 0;
}
::selection {
  background: var(--copper);
  color: var(--ink);
}
.site-header {
  align-items: center;
  background: linear-gradient(180deg, rgba(7,8,10,.88), transparent);
  display: flex;
  justify-content: space-between;
  left: 0;
  padding: 23px clamp(22px, 4.5vw, 78px) 60px;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 10;
}
.brand {
  align-items: center;
  display: inline-flex;
  font-size: .7rem;
  font-weight: 750;
  gap: 14px;
  letter-spacing: .2em;
  text-transform: uppercase;
}
.brand-glyph {
  align-items: center;
  border: 1px solid var(--copper);
  color: var(--amber);
  display: flex;
  font-family: Georgia, serif;
  font-size: 1.05rem;
  height: 37px;
  justify-content: center;
  transform: rotate(45deg);
  width: 37px;
}
.brand-glyph i {
  font-style: normal;
  transform: rotate(-45deg);
}
nav {
  align-items: center;
  display: flex;
  gap: clamp(20px, 3vw, 46px);
}
nav a {
  color: #d6c8b6;
  font-size: .64rem;
  letter-spacing: .17em;
  padding: 9px 0;
  text-transform: uppercase;
}
nav a:hover {
  color: var(--amber);
}
nav .nav-contact {
  border-bottom: 1px solid var(--copper);
  color: var(--paper);
}
.hero {
  min-height: 100svh;
  overflow: hidden;
  position: relative;
}
.hero-visual {
  background-image: url('/hero-horizon.png');
  background-position: center;
  background-size: cover;
  inset: 0;
  position: absolute;
}
.hero-overlay {
  background: linear-gradient(90deg, rgba(7,9,13,.95) 0%, rgba(7,9,13,.72) 39%, rgba(7,9,13,.12) 78%), linear-gradient(0deg, rgba(7,9,13,.78), transparent 52%);
  inset: 0;
  position: absolute;
}
.hero-copy {
  bottom: clamp(55px, 8.5vh, 105px);
  left: clamp(24px, 7vw, 120px);
  max-width: 1000px;
  position: absolute;
  z-index: 2;
}
.overline, .section-label {
  color: var(--copper);
  font-size: .62rem;
  font-weight: 800;
  letter-spacing: .24em;
  margin-bottom: 26px;
  text-transform: uppercase;
}
.hero h1 {
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(4.6rem, 9.8vw, 10.5rem);
  font-weight: 400;
  letter-spacing: -.068em;
  line-height: .8;
  margin: 0;
}
.hero h1 em {
  color: var(--amber);
  font-weight: 400;
}
.hero-intro {
  align-items: end;
  display: flex;
  gap: 50px;
  justify-content: space-between;
  margin-top: 50px;
  max-width: 800px;
}
.hero-intro p {
  color: #d0c2b1;
  font-family: Georgia, serif;
  font-size: clamp(1rem, 1.5vw, 1.25rem);
  line-height: 1.6;
  margin: 0;
  max-width: 540px;
}
.hero-intro a {
  border-bottom: 1px solid var(--amber);
  font-size: .63rem;
  font-weight: 800;
  letter-spacing: .16em;
  padding: 10px 0;
  text-transform: uppercase;
  white-space: nowrap;
}
.hero-count {
  color: rgba(255,255,255,.55);
  font-size: .55rem;
  letter-spacing: .2em;
  position: absolute;
  right: 35px;
  top: 110px;
  transform: rotate(90deg);
  transform-origin: right top;
  z-index: 2;
}
.manifesto {
  background: var(--paper-light);
  color: #24170f;
  display: grid;
  gap: 6vw;
  grid-template-columns: .55fr 2.1fr;
  padding: clamp(100px, 14vw, 210px) clamp(24px, 7vw, 120px);
}
.manifesto h2, .song h2, .contact h2 {
  font-family: Georgia, serif;
  font-size: clamp(3.5rem, 7.4vw, 8rem);
  font-weight: 400;
  letter-spacing: -.065em;
  line-height: .88;
  margin: 0;
}
.manifesto h2 em, .song h2 em, .contact h2 em {
  color: var(--copper);
  font-weight: 400;
}
.manifesto div > p {
  color: #615044;
  font-family: Georgia, serif;
  font-size: clamp(1.15rem, 1.85vw, 1.55rem);
  line-height: 1.65;
  margin: 55px 0 0 24%;
  max-width: 690px;
}
.home-offer {
  align-items: end;
  background: var(--copper);
  color: var(--ink);
  display: grid;
  gap: 6vw;
  grid-template-columns: .55fr 2.1fr;
  padding: clamp(70px, 9vw, 125px) clamp(24px, 7vw, 120px);
}
.home-offer .section-label {
  align-self: start;
  color: #5d341f;
}
.home-offer > div {
  align-items: end;
  display: grid;
  gap: 35px 6vw;
  grid-template-columns: 1.45fr .8fr;
}
.home-offer h2 {
  font-family: Georgia, serif;
  font-size: clamp(3rem, 5.8vw, 6.4rem);
  font-weight: 400;
  grid-column: 1 / 3;
  letter-spacing: -.06em;
  line-height: .9;
  margin: 0;
}
.home-offer h2 em {
  color: var(--paper-light);
  font-weight: 400;
}
.home-offer p {
  font-family: Georgia, serif;
  font-size: clamp(1.05rem, 1.5vw, 1.3rem);
  line-height: 1.65;
  margin: 0;
  max-width: 620px;
}
.home-offer a {
  border-bottom: 2px solid var(--ink);
  display: inline-flex;
  font-size: .66rem;
  font-weight: 850;
  gap: 22px;
  justify-self: start;
  letter-spacing: .15em;
  padding: 11px 0;
  text-transform: uppercase;
}
.services {
  background: var(--ink);
  padding: clamp(100px, 13vw, 190px) clamp(24px, 7vw, 120px);
}
.light-label {
  color: var(--amber);
}
.services-head {
  align-items: end;
  display: flex;
  gap: 50px;
  justify-content: space-between;
  margin-bottom: 80px;
}
.services-head h2, .process-heading h2 {
  font-family: Georgia, serif;
  font-size: clamp(3.4rem, 6.7vw, 7.2rem);
  font-weight: 400;
  letter-spacing: -.06em;
  line-height: .9;
  margin: 0;
}
.services-head h2 em, .process-heading h2 em {
  color: var(--amber);
  font-weight: 400;
}
.service-list {
  border-top: 1px solid var(--rule-dark);
}
.service-list article {
  align-items: center;
  border-bottom: 1px solid var(--rule-dark);
  display: grid;
  gap: 35px;
  grid-template-columns: 70px 1fr 1.1fr;
  min-height: 170px;
  transition: padding 220ms ease;
}
.service-list article:hover {
  padding-left: 18px;
}
.service-list article > span {
  color: var(--amber);
  font-size: .63rem;
  letter-spacing: .15em;
}
.service-list h3 {
  font-family: Georgia, serif;
  font-size: clamp(1.8rem, 3vw, 3.2rem);
  font-weight: 400;
  margin: 0;
}
.service-list p {
  color: var(--muted);
  font-family: Georgia, serif;
  line-height: 1.65;
  margin: 0;
  max-width: 550px;
}
.song {
  background: var(--paper);
  color: #25170f;
  overflow: hidden;
  padding: clamp(95px, 12vw, 175px) clamp(24px, 7vw, 120px) 0;
}
.song-intro {
  display: grid;
  gap: 4vw;
  grid-template-columns: 1.4fr .65fr;
}
.song-intro .section-label {
  grid-column: 1 / 3;
}
.song-intro > p {
  align-self: end;
  color: #604c3f;
  font-family: Georgia, serif;
  font-size: clamp(1.1rem, 1.7vw, 1.42rem);
  line-height: 1.7;
  margin: 0;
}
.song-intro > a {
  border-bottom: 1px solid #25170f;
  display: inline-flex;
  font-size: .64rem;
  font-weight: 800;
  gap: 22px;
  grid-column: 2;
  justify-self: start;
  letter-spacing: .16em;
  padding: 12px 0;
  text-transform: uppercase;
}
.song-options {
  border-top: 1px solid var(--rule-light);
  margin-top: 100px;
}
.song-options article {
  border-bottom: 1px solid var(--rule-light);
  display: grid;
  gap: 30px;
  grid-template-columns: 90px 1fr;
  padding: 38px 0;
}
.song-options article > span {
  color: var(--copper);
  font-size: .63rem;
  letter-spacing: .16em;
  padding-top: 8px;
}
.song-options .song-option-copy {
  align-items: start;
  display: grid;
  gap: 45px;
  grid-template-columns: 1fr 1.2fr;
}
.song-options h3 {
  font-family: Georgia, serif;
  font-size: clamp(1.8rem, 3vw, 3.2rem);
  font-weight: 400;
  margin: 0;
}
.song-options p {
  color: #6a5749;
  font-family: Georgia, serif;
  line-height: 1.65;
  margin: 0;
  max-width: 520px;
}
.song-option-details {
  min-width: 0;
}
.song-example {
  background: #281b13;
  border-left: 4px solid var(--copper);
  color: var(--paper);
  margin-top: 26px;
  padding: 22px;
}
.song-example-heading {
  align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
}
.song-example-heading span {
  color: var(--amber);
  font-size: .58rem;
  font-weight: 850;
  letter-spacing: .17em;
  text-transform: uppercase;
}
.song-example-heading strong {
  font-family: Georgia, serif;
  font-size: 1.25rem;
  font-weight: 400;
}
.song-options .song-example > p {
  color: #c5b7a7;
  font-family: inherit;
  font-size: .78rem;
  margin: 10px 0 17px;
}
.song-example audio {
  display: block;
  height: 42px;
  width: 100%;
}
.occasion-strip {
  align-items: center;
  background: var(--copper);
  color: var(--ink);
  display: flex;
  gap: clamp(16px, 3vw, 48px);
  justify-content: center;
  margin: 110px calc(clamp(24px, 7vw, 120px) * -1) 0;
  overflow: hidden;
  padding: 23px 25px;
  white-space: nowrap;
}
.occasion-strip span {
  font-family: Georgia, serif;
  font-size: clamp(1.1rem, 1.8vw, 1.7rem);
  font-style: italic;
}
.occasion-strip i {
  font-style: normal;
}
.process {
  background: #15171d;
  display: grid;
  gap: 8vw;
  grid-template-columns: 1fr 1.05fr;
  padding: clamp(100px, 13vw, 190px) clamp(24px, 7vw, 120px);
}
.process-heading {
  align-self: start;
  position: sticky;
  top: 50px;
}
.process-heading .section-label {
  margin-bottom: 32px;
}
.process ol {
  border-top: 1px solid var(--rule-dark);
  list-style: none;
  margin: 0;
  padding: 0;
}
.process li {
  border-bottom: 1px solid var(--rule-dark);
  display: grid;
  gap: 28px;
  grid-template-columns: 55px 1fr;
  padding: 45px 0;
}
.process li > span {
  color: var(--amber);
  font-size: .61rem;
  letter-spacing: .15em;
  padding-top: 8px;
}
.process h3 {
  font-family: Georgia, serif;
  font-size: clamp(1.7rem, 2.5vw, 2.8rem);
  font-weight: 400;
  margin-bottom: 14px;
}
.process li p {
  color: var(--muted);
  font-family: Georgia, serif;
  line-height: 1.65;
  margin: 0;
}
.statement {
  background: var(--ink);
  padding: clamp(110px, 16vw, 240px) clamp(24px, 7vw, 120px);
  text-align: center;
}
.statement p {
  color: #827769;
  font-family: Georgia, serif;
  font-size: clamp(3.4rem, 8.5vw, 9rem);
  letter-spacing: -.065em;
  line-height: .88;
  margin: 0;
}
.statement p:nth-child(2) {
  color: var(--paper);
}
.statement p em {
  color: var(--amber);
  font-weight: 400;
}
.contact {
  background: var(--copper);
  color: var(--ink);
  display: grid;
  gap: 6vw;
  grid-template-columns: .55fr 2fr;
  padding: clamp(100px, 13vw, 190px) clamp(24px, 7vw, 120px);
}
.contact .section-label {
  color: #5d341f;
}
.contact div > p {
  font-family: Georgia, serif;
  font-size: 1.12rem;
  font-style: italic;
  margin-bottom: 35px;
}
.contact h2 em {
  color: var(--paper-light);
}
.contact a {
  border-bottom: 2px solid var(--ink);
  display: inline-flex;
  font-family: Georgia, serif;
  font-size: clamp(1.25rem, 2.5vw, 2.4rem);
  gap: 24px;
  margin-top: 55px;
  padding-bottom: 8px;
}
footer {
  align-items: center;
  color: var(--muted);
  display: grid;
  font-size: .62rem;
  gap: 30px;
  grid-template-columns: 1fr auto auto 1fr;
  letter-spacing: .14em;
  padding: 38px clamp(24px, 4.5vw, 78px);
  text-transform: uppercase;
}
footer p {
  font-family: Georgia, serif;
  font-style: italic;
  letter-spacing: .06em;
  margin: 0;
  text-transform: none;
}
footer > span:last-child {
  justify-self: end;
}
.footer-hosting {
  color: var(--amber);
}
.web-page {
  --web-ink: #110b08;
  --web-paper: #f7f0e4;
  --web-yellow: #e0a05e;
  --web-coral: #c57b3c;
  background: var(--web-paper);
  color: var(--web-ink);
  min-height: 100vh;
}
.web-header {
  align-items: center;
  display: flex;
  justify-content: space-between;
  left: 0;
  padding: 22px clamp(20px, 4.5vw, 76px);
  position: absolute;
  right: 0;
  top: 0;
  z-index: 10;
}
.web-brand {
  color: var(--web-paper);
}
.web-header nav a {
  color: var(--web-paper);
}
.web-header nav .web-nav-cta {
  background: var(--web-yellow);
  border: 0;
  border-radius: 999px;
  color: var(--web-ink);
  padding: 13px 20px;
}
.web-hero {
  align-items: end;
  background: var(--web-ink);
  color: var(--web-paper);
  display: grid;
  min-height: 100svh;
  overflow: hidden;
  padding: 150px clamp(24px, 7vw, 120px) clamp(58px, 8vw, 105px);
  position: relative;
}
.web-grid {
  background-image: linear-gradient(rgba(255,255,255,.055) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px);
  background-size: 52px 52px;
  inset: 0;
  mask-image: linear-gradient(90deg, transparent, black 52%, black);
  position: absolute;
}
.web-grid::before, .web-grid::after {
  border: 1px solid rgba(244,232,63,.55);
  border-radius: 50%;
  content: "";
  position: absolute;
}
.web-grid::before {
  height: min(48vw, 780px);
  right: -10vw;
  top: 10vh;
  width: min(48vw, 780px);
}
.web-grid::after {
  border-color: rgba(197,123,60,.6);
  height: min(28vw, 450px);
  right: 16vw;
  top: 24vh;
  width: min(28vw, 450px);
}
.web-hero-copy {
  max-width: 820px;
  position: relative;
  z-index: 2;
}
.web-kicker, .web-section-head > p, .web-terms > p, .web-label-light {
  color: var(--web-coral);
  font-size: .63rem;
  font-weight: 850;
  letter-spacing: .22em;
  margin-bottom: 28px;
  text-transform: uppercase;
}
.web-hero h1 {
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(4.6rem, 8.5vw, 9.2rem);
  font-weight: 400;
  letter-spacing: -.075em;
  line-height: .8;
  margin: 0;
}
.web-hero h1 em {
  color: var(--web-yellow);
  font-family: Georgia, serif;
  font-weight: 400;
}
.web-lead {
  color: #bebdb6;
  font-family: Georgia, serif;
  font-size: clamp(1.1rem, 1.7vw, 1.45rem);
  line-height: 1.6;
  margin: 45px 0 0;
  max-width: 650px;
}
.web-button {
  background: var(--web-yellow);
  border-radius: 999px;
  color: var(--web-ink);
  display: inline-flex;
  font-size: .7rem;
  font-weight: 850;
  gap: 24px;
  letter-spacing: .12em;
  margin-top: 32px;
  padding: 18px 25px;
  text-transform: uppercase;
}
.web-offer {
  background: rgba(29, 18, 13, .92);
  border: 1px solid rgba(224, 160, 94, .62);
  box-shadow: 0 30px 80px rgba(0,0,0,.36);
  color: var(--web-paper);
  padding: 30px;
  position: absolute;
  right: clamp(24px, 7vw, 120px);
  top: 17vh;
  width: min(360px, 32vw);
  z-index: 2;
}
.web-offer::before {
  background: var(--web-coral);
  content: "";
  height: 1px;
  left: -42px;
  position: absolute;
  top: 48px;
  width: 42px;
}
.web-offer > p {
  color: var(--web-yellow);
  font-size: .61rem;
  font-weight: 800;
  letter-spacing: .18em;
  margin-bottom: 20px;
  text-transform: uppercase;
}
.web-offer-price {
  align-items: flex-start;
  border-bottom: 1px solid rgba(255,255,255,.16);
  display: flex;
  padding-bottom: 18px;
}
.web-offer-price span {
  color: var(--web-yellow);
  font-family: Georgia, serif;
  font-size: 2rem;
  margin: 15px 8px 0 0;
}
.web-offer-price strong {
  font-family: Georgia, serif;
  font-size: clamp(6rem, 9vw, 9rem);
  font-weight: 400;
  letter-spacing: -.09em;
  line-height: .72;
}
.web-offer > small {
  color: #a99a88;
  display: block;
  font-size: .56rem;
  letter-spacing: .17em;
  margin-top: 13px;
  text-transform: uppercase;
}
.web-offer ul {
  color: #d4c7b7;
  font-family: Georgia, serif;
  line-height: 1.55;
  list-style: none;
  margin: 25px 0;
  padding: 0;
}
.web-offer li {
  border-bottom: 1px solid rgba(255,255,255,.1);
  padding: 8px 0;
}
.web-offer li::before {
  color: var(--web-coral);
  content: "—";
  margin-right: 10px;
}
.web-offer > a {
  align-items: center;
  background: var(--web-coral);
  color: var(--web-ink);
  display: flex;
  font-size: .62rem;
  font-weight: 850;
  justify-content: space-between;
  letter-spacing: .14em;
  padding: 15px 17px;
  text-transform: uppercase;
}
.web-proof {
  bottom: clamp(62px, 8vw, 112px);
  color: #a6a49e;
  font-family: Georgia, serif;
  line-height: 1.55;
  margin: 0;
  position: absolute;
  right: clamp(24px, 7vw, 120px);
  text-align: right;
  z-index: 2;
}
.web-proof strong {
  color: var(--web-yellow);
  font-weight: 400;
}
.web-included, .web-process {
  padding: clamp(100px, 13vw, 190px) clamp(24px, 7vw, 120px);
}
.web-section-head {
  align-items: end;
  display: flex;
  gap: 50px;
  justify-content: space-between;
  margin-bottom: 80px;
}
.web-section-head h2, .web-audience h2, .web-terms h2, .web-order h2, .web-domain h2 {
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(3.5rem, 7.4vw, 8rem);
  font-weight: 400;
  letter-spacing: -.07em;
  line-height: .86;
  margin: 0;
}
.web-section-head h2 em, .web-audience h2 em, .web-order h2 em {
  color: var(--web-coral);
  font-family: Georgia, serif;
  font-weight: 400;
}
.web-included ul {
  border-top: 1px solid var(--rule-light);
  list-style: none;
  margin: 0;
  padding: 0;
}
.web-included li {
  align-items: center;
  border-bottom: 1px solid var(--rule-light);
  display: grid;
  gap: 30px;
  grid-template-columns: 70px 1fr 55px;
  min-height: 112px;
}
.web-included li > span {
  color: var(--web-coral);
  font-size: .63rem;
  letter-spacing: .15em;
}
.web-included li strong {
  font-size: clamp(1.15rem, 2vw, 1.85rem);
}
.web-included li i {
  align-items: center;
  background: var(--web-yellow);
  border-radius: 50%;
  display: flex;
  font-style: normal;
  height: 42px;
  justify-content: center;
  width: 42px;
}
.web-audience {
  background: var(--web-ink);
  color: var(--web-paper);
  padding: clamp(100px, 13vw, 190px) clamp(24px, 7vw, 120px);
}
.web-label-light {
  color: var(--web-yellow);
}
.web-audience > div:first-child {
  margin-bottom: 80px;
}
.web-audience h2 em {
  color: var(--web-yellow);
}
.web-audience-grid {
  border-left: 1px solid rgba(255,255,255,.17);
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}
.web-audience article {
  border-right: 1px solid rgba(255,255,255,.17);
  min-height: 320px;
  padding: 26px;
}
.web-audience article > span {
  color: var(--web-coral);
  font-size: .62rem;
  letter-spacing: .15em;
}
.web-audience h3 {
  font-size: clamp(1.5rem, 2.3vw, 2.3rem);
  margin: 90px 0 18px;
}
.web-audience article p {
  color: #aaa9a4;
  font-family: Georgia, serif;
  line-height: 1.6;
}
.web-process {
  display: grid;
  gap: 8vw;
  grid-template-columns: .9fr 1.1fr;
}
.web-process .web-section-head {
  align-items: start;
  display: block;
  margin: 0;
}
.web-process .web-section-head p {
  margin-bottom: 30px;
}
.web-process ol {
  border-top: 1px solid var(--rule-light);
  list-style: none;
  margin: 0;
  padding: 0;
}
.web-process li {
  border-bottom: 1px solid var(--rule-light);
  display: grid;
  gap: 28px;
  grid-template-columns: 55px 1fr;
  padding: 38px 0;
}
.web-process li > span {
  color: var(--web-coral);
  font-size: 1.7rem;
  font-weight: 900;
}
.web-process h3 {
  font-size: clamp(1.4rem, 2vw, 2rem);
  margin-bottom: 12px;
}
.web-process li p {
  color: #685f55;
  font-family: Georgia, serif;
  line-height: 1.65;
  margin: 0;
}
.web-domain {
  background: var(--web-coral);
  color: var(--web-ink);
  display: grid;
  gap: 5vw;
  grid-template-columns: 1.25fr .65fr;
  padding: clamp(90px, 12vw, 170px) clamp(24px, 7vw, 120px);
}
.web-domain > div:first-child > p {
  color: #57311e;
  font-size: .62rem;
  font-weight: 850;
  letter-spacing: .2em;
  margin-bottom: 28px;
  text-transform: uppercase;
}
.web-domain h2 em {
  color: var(--web-paper);
  font-weight: 400;
}
.web-domain-price {
  align-self: center;
  border-bottom: 1px solid rgba(17,11,8,.35);
  border-top: 1px solid rgba(17,11,8,.35);
  display: flex;
  flex-direction: column;
  padding: 24px 0;
}
.web-domain-price span {
  font-size: .61rem;
  font-weight: 850;
  letter-spacing: .18em;
  text-transform: uppercase;
}
.web-domain-price strong {
  font-family: Georgia, serif;
  font-size: clamp(3.5rem, 6vw, 6.5rem);
  font-weight: 400;
  letter-spacing: -.06em;
  line-height: .95;
}
.web-domain-price i {
  font-family: Georgia, serif;
  font-size: 1.1rem;
}
.web-domain-note {
  font-family: Georgia, serif;
  font-size: clamp(1.05rem, 1.5vw, 1.28rem);
  grid-column: 1 / 3;
  line-height: 1.7;
  margin: 20px 0 0 28%;
  max-width: 760px;
}
.web-terms {
  background: var(--web-paper);
  display: grid;
  gap: 6vw;
  grid-template-columns: .55fr 2fr;
  padding: clamp(90px, 12vw, 170px) clamp(24px, 7vw, 120px);
}
.web-terms > p {
  color: #79553b;
}
.web-terms h2 {
  font-size: clamp(3.2rem, 6vw, 6.6rem);
}
.web-terms div > p {
  font-family: Georgia, serif;
  font-size: clamp(1.05rem, 1.55vw, 1.3rem);
  line-height: 1.7;
  margin: 42px 0 0 19%;
  max-width: 700px;
}
.web-order {
  background: var(--web-ink);
  color: var(--web-paper);
  padding: clamp(100px, 14vw, 210px) clamp(24px, 7vw, 120px);
}
.web-order .web-label-light {
  color: #532719;
}
.web-order .web-label-light {
  color: var(--web-yellow);
}
.web-order h2 em {
  color: var(--web-yellow);
}
.web-order > a {
  border-bottom: 2px solid var(--web-coral);
  display: inline-flex;
  font-size: clamp(1.35rem, 2.7vw, 2.6rem);
  font-weight: 850;
  gap: 35px;
  margin-top: 70px;
  padding-bottom: 10px;
}
.web-footer {
  background: var(--web-ink);
  color: #aaa9a4;
  grid-template-columns: 1fr auto 1fr;
}
.web-footer > span:last-child {
  justify-self: end;
}
@media (max-width: 900px) {
  .manifesto {
    grid-template-columns: .55fr 2fr;
  }
  .home-offer {
    grid-template-columns: 1fr;
  }
  .services-head {
    align-items: start;
    flex-direction: column;
  }
  .song-intro {
    grid-template-columns: 1fr;
  }
  .song-intro .section-label, .song-intro > a {
    grid-column: 1;
  }
  .process {
    grid-template-columns: 1fr;
  }
  .process-heading {
    position: static;
  }
  .web-proof {
    display: none;
  }
  .web-offer {
    right: 28px;
    width: 300px;
  }
  .web-audience-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .web-process {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 680px) {
  .site-header {
    padding: 16px 20px 45px;
  }
  .brand > span:last-child, nav a:not(.nav-contact) {
    display: none;
  }
  .hero-visual {
    background-position: 60% center;
  }
  .hero-overlay {
    background: linear-gradient(0deg, rgba(7,9,13,.96) 0%, rgba(7,9,13,.4) 77%, rgba(7,9,13,.72) 100%);
  }
  .hero-copy {
    bottom: 42px;
    left: 22px;
    right: 22px;
  }
  .hero h1 {
    font-size: clamp(4rem, 19vw, 6.4rem);
  }
  .hero-intro {
    align-items: start;
    flex-direction: column;
    gap: 20px;
    margin-top: 30px;
  }
  .hero-count {
    display: none;
  }
  .manifesto, .home-offer, .contact {
    display: block;
  }
  .manifesto div, .home-offer > div, .contact div {
    margin-top: 38px;
  }
  .home-offer > div {
    display: block;
  }
  .home-offer p {
    margin-top: 28px;
  }
  .home-offer a {
    margin-top: 30px;
  }
  .manifesto div > p {
    margin-left: 0;
  }
  .service-list article {
    grid-template-columns: 45px 1fr;
    padding: 30px 0;
  }
  .service-list p {
    grid-column: 2;
  }
  .service-list article:hover {
    padding-left: 0;
  }
  .song-intro {
    gap: 28px;
  }
  .song-options article {
    grid-template-columns: 42px 1fr;
  }
  .song-options .song-option-copy {
    display: block;
  }
  .song-options h3 {
    margin-bottom: 12px;
  }
  .occasion-strip {
    justify-content: flex-start;
  }
  footer {
    grid-template-columns: 1fr;
  }
  footer > span:last-child {
    justify-self: start;
  }
  .web-header {
    padding: 16px 20px;
  }
  .web-header nav a:not(.web-nav-cta) {
    display: none;
  }
  .web-hero {
    align-items: end;
    padding: 130px 22px 55px;
  }
  .web-hero h1 {
    font-size: clamp(4rem, 20vw, 6.7rem);
  }
  .web-offer {
    margin-top: 55px;
    padding: 24px;
    position: relative;
    right: auto;
    top: auto;
    width: 100%;
  }
  .web-offer::before {
    display: none;
  }
  .web-offer-price strong {
    font-size: 7rem;
  }
  .web-section-head {
    align-items: start;
    flex-direction: column;
  }
  .web-audience-grid {
    border-top: 1px solid rgba(255,255,255,.17);
    grid-template-columns: 1fr;
  }
  .web-audience article {
    border-bottom: 1px solid rgba(255,255,255,.17);
    min-height: 0;
  }
  .web-audience h3 {
    margin-top: 50px;
  }
  .web-terms {
    display: block;
  }
  .web-terms > div {
    margin-top: 45px;
  }
  .web-terms div > p {
    margin-left: 0;
  }
  .web-footer {
    grid-template-columns: 1fr;
  }
  .web-domain {
    display: block;
  }
  .web-domain-price {
    margin-top: 55px;
  }
  .web-domain-note {
    margin-left: 0;
    margin-top: 45px;
  }
}
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
  *, *::before, *::after {
    transition-duration: .01ms !important;
  }
}
.footer-links {
  display: flex;
  gap: 24px;
  flex-wrap: wrap;
}
.references-page .site-header {
  position: relative;
  padding-bottom: 28px;
  background: var(--ink);
}
.references-intro {
  padding: 90px clamp(24px,7vw,120px) 100px;
  background: radial-gradient(ellipse at 90% 40%,#39291f 0,transparent 65%),var(--ink);
}
.references-intro h1 {
  font: 400 clamp(3.5rem,7.5vw,8rem)/.98 Georgia,serif;
  letter-spacing: -.055em;
  margin-bottom: 36px;
}
.references-intro h1 em,.references-cta em {
  color: var(--amber);
  font-weight: 400;
}
.references-intro>p:not(.overline) {
  max-width: 600px;
  color: #d0c2b1;
  font: 1.22rem/1.7 Georgia,serif;
}
.references-intro>a,.references-cta>a {
  display: inline-block;
  border-bottom: 1px solid var(--copper);
  padding: 12px 0;
  margin: 12px 30px 0 0;
  font-size: .85rem;
}
.references-work {
  background: var(--paper-light);
  color: #24170f;
  padding: 80px clamp(24px,7vw,120px);
}
.references-heading h2 {
  font: 400 clamp(2.5rem,4vw,4.5rem)/1.1 Georgia,serif;
  letter-spacing: -.04em;
  margin-bottom: 45px;
}
.references-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 24px;
}
.reference-card {
  display: flex;
  flex-direction: column;
  padding: 36px;
  background: var(--paper);
  border: 1px solid var(--rule-light);
}
.reference-card-top {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  font-size: .67rem;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: #74513a;
  margin-bottom: 50px;
}
.reference-card h3 {
  font: 400 clamp(1.8rem,3vw,2.9rem)/1.1 Georgia,serif;
  letter-spacing: -.03em;
  margin-bottom: 18px;
}
.reference-card>p {
  color: #615044;
  line-height: 1.7;
  max-width: 440px;
  margin-bottom: 35px;
}
.reference-card>a {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  border-top: 1px solid var(--rule-light);
  padding-top: 20px;
  margin-top: auto;
  font-size: .9rem;
  overflow-wrap: anywhere;
}
.reference-card>a:hover {
  color: #8a481b;
}
.reference-link-note {
  font-size: .78rem;
  color: #615044;
  margin: 24px 0 0;
}
.references-cta {
  padding: 90px clamp(24px,7vw,120px);
}
.references-cta h2 {
  font: 400 clamp(3rem,6vw,6rem)/1 Georgia,serif;
  letter-spacing: -.045em;
}
.references-cta>p:not(.overline) {
  color: #d0c2b1;
  line-height: 1.7;
}
a:focus-visible {
  outline: 2px solid var(--copper);
  outline-offset: 6px;
}
@media (max-width:900px) {
  .site-header nav {
    gap: 18px;
  }
  .site-header .brand {
    letter-spacing: .1em;
  }
}
@media (max-width:680px) {
  nav a.nav-reference {
    display: block;
  }
  .references-intro {
    padding-top: 55px;
    padding-bottom: 65px;
  }
  .references-grid {
    grid-template-columns: 1fr;
  }
  .reference-card {
    padding: 26px;
  }
  .references-work {
    padding-top: 55px;
    padding-bottom: 55px;
  }
  .reference-card-top {
    margin-bottom: 36px;
  }
  .references-page .site-header {
    padding-bottom: 20px;
  }
  .site-header nav {
    gap: 15px;
  }
  .site-header nav a {
    font-size: .58rem;
    letter-spacing: .08em;
  }
}
