@font-face {
  font-family: Aboreto;
  src: url('https://file.squarespace-cdn.com/content/v2/namespaces/fonts/libraries/sqsp/assets/489d69e2-c0a9-418d-9029-708f80f67883/latin.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

:root {
  --ink: #090806;
  --story-bg: #BF9446;
  --navy: #252f4d;
  --gold: #BF9445;
  --body-font: "Helvetica Neue", Helvetica, Arial, sans-serif;
  --heading-font: Aboreto, Georgia, serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--ink);
  color: var(--gold);
  font-family: var(--body-font);
  font-size: 16px;
  font-weight: 400;
  letter-spacing: .02em;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: .2em; }

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  color: var(--gold);
  font-family: var(--heading-font);
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: -.05em;
}

p {
  font-family: var(--body-font);
  font-weight: 400;
  letter-spacing: .02em;
}

.site-header {
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  width: 100%;
  display: flex;
  justify-content: center;
  padding: 2.6vw 4vw;
}
.brand img { width: min(170px, 12vw); }

.hero {
  min-height: 100vh;
  position: relative;
  display: grid;
  place-items: center;
  padding: 150px 6vw 70px;
  background-position: center;
  background-size: cover;
}
.hero-one {
  background-image: url('https://images.squarespace-cdn.com/content/v1/6a596ebd5200c86c4038a0b8/553f5a2c-6cbb-4a7b-bf7e-5573d885e2af/Ciddors_Hero1.png');
}
.shade { position: absolute; inset: 0; background: rgba(0,0,0,.39); }
.hero h1 {
  position: relative;
  margin: 0;
  max-width: 1050px;
  text-align: center;
  font-size: clamp(3rem, 4.25vw, 4.6rem);
  line-height: 1.08;
}

.story {
  background: var(--story-bg);
  padding-top: clamp(72px, 8vw, 128px);
}
.story-copy {
  width: min(1420px, 92vw);
  margin: 0 auto clamp(70px, 7vw, 112px);
  display: grid;
  grid-template-columns: 7fr 11fr;
  gap: 8vw;
  align-items: start;
}
.story h2 {
  margin-bottom: 0;
  font-size: clamp(2.15rem, 3vw, 3.25rem);
  line-height: 1.05;
}
.story p {
  max-width: 760px;
  margin: 0 0 1.45em;
  font-size: clamp(1rem, 1.15vw, 1.18rem);
  line-height: 1.5;
}
.story .lead {
  font-size: clamp(1.35rem, 1.65vw, 1.72rem);
  line-height: 1.34;
  letter-spacing: .02em;
}
.story-image { width: 100%; height: auto; }

.maxim {
  min-height: 78vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: clamp(34px, 4vw, 62px);
  padding: 8vw 6vw;
  background: var(--navy) url('https://images.squarespace-cdn.com/content/v1/6a596ebd5200c86c4038a0b8/4de1d606-f025-4641-937c-c825e01bfee3/Ciddors_pattern_blue.jpg') center/cover;
}
.maxim h2 {
  margin: 0;
  max-width: 1050px;
  text-align: center;
  font-size: clamp(3rem, 4.75vw, 5.1rem);
  line-height: 1.05;
}
.maxim img { width: clamp(150px, 12.5vw, 220px); }

footer {
  position: relative;
  padding: clamp(60px, 6.5vw, 100px) 4vw 50px;
  background: #161826;
  color: #fff;
  overflow: hidden;
}
.footer-wordmark {
  width: clamp(190px, 17vw, 300px);
  margin-bottom: 52px;
}
.footer-grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1.5fr;
  gap: clamp(28px, 4vw, 75px);
  max-width: 1500px;
}
.footer-grid h4 {
  margin: 0 0 13px;
  font-size: 1.5rem;
  line-height: 1.15;
}
.footer-grid p {
  margin: 0;
  font-size: clamp(.9rem, .95vw, 1.02rem);
  line-height: 1.5;
}
.footer-icon { width: 70px; margin-top: 70px; }

@media (max-width: 767px) {
  .site-header { justify-content: flex-start; padding: 6vw; }
  .brand img { width: 115px; }

  .hero {
    min-height: 92vh;
    padding: 120px 7vw 60px;
  }
  .hero h1 {
    font-size: clamp(2.25rem, 9vw, 3.2rem);
    line-height: 1.08;
  }

  .story { padding-top: 58px; }
  .story-copy {
    width: 88vw;
    grid-template-columns: 1fr;
    gap: 28px;
    margin-bottom: 55px;
  }
  .story h2 { font-size: clamp(2rem, 8vw, 2.7rem); }
  .story .lead { font-size: clamp(1.25rem, 5.4vw, 1.55rem); }
  .story p { font-size: 1rem; }
  .story-image { min-height: 55vh; object-fit: cover; }

  .maxim { min-height: 70vh; padding: 95px 7vw; }
  .maxim h2 {
    font-size: clamp(2.4rem, 9.5vw, 3.35rem);
    line-height: 1.06;
  }

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

@media (max-width: 480px) {
  .footer-grid { grid-template-columns: 1fr; }
}



/* Approved section colours and heading treatments */
.story,
.story h2,
.story h4,
.story p {
  color: #fff;
}

.story .lead {
  margin: 0 0 1.45em;
  font-family: var(--heading-font);
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: -.05em;
  color: #fff;
}

footer,
footer h4,
footer p,
footer a {
  color: #fff;
}

.footer-grid h4 {
  font-size: 1.5rem;
}
