@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Libre+Caslon+Display&display=swap');
:root {
  --paper:#f5f3eb;
  --ink:#202720;
  --soft:#6e736b;
  --line:#d7d9cc;
  --olive:#69794f;
  --dark:#171d18;
  --serif:'Libre Caslon Display',Georgia,serif;
  --sans:'DM Sans',Arial,sans-serif;
  --header-height:90px
}
* {
  box-sizing:border-box
}
html {
  scroll-behavior:smooth;
  scroll-padding-top:104px
}
body {
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:var(--sans);
  font-size:16px;
  -webkit-font-smoothing:antialiased
}
body:has(dialog[open]) {
  overflow:hidden
}
img {
  display:block;
  max-width:100%
}
a {
  color:inherit;
  text-decoration:none
}
button,input,textarea,select {
  font:inherit
}
button,a,input,textarea,select {
  -webkit-tap-highlight-color:transparent
}
button {
  cursor:pointer
}
button:disabled {
  cursor:wait
}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible {
  outline:3px solid #a7aa66;
  outline-offset:5px
}
[hidden] {
  display:none!important
}
h1,h2,h3,p {
  margin:0
}
h2,h3 {
  font-weight:400
}
h2 {
  font-family:var(--serif);
  font-size:clamp(45px,5vw,76px);
  line-height:1.06;
  letter-spacing:-.035em
}
h2 em {
  font-weight:400;
  color:#717b63
}
em {
  font-family:var(--serif);
  font-weight:400
}
p {
  line-height:1.75
}
.sr-only {
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0
}
.skip-link {
  position:fixed;
  z-index:200;
  left:20px;
  top:-70px;
  background:var(--paper);
  color:var(--ink);
  padding:16px
}
.skip-link:focus {
  top:10px
}
.preview-strip {
  height:28px;
  background:#e5e6da;
  color:#555e50;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:9px;
  font-size:10px;
  letter-spacing:.1em;
  text-transform:uppercase
}
.preview-dot {
  height:5px;
  width:5px;
  border-radius:50%;
  background:#667452
}
.preview-divider {
  color:#a6aa97;
  margin:0 4px
}
.site-header {
  height:var(--header-height);
  padding:0 5.5%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:35px;
  background:var(--paper);
  position:relative;
  z-index:10;
  border-bottom:1px solid rgba(37,51,36,.08)
}
.wordmark {
  font-family:var(--serif);
  font-size:37px;
  line-height:1;
  letter-spacing:-2px;
  white-space:nowrap
}
.wordmark>span:not(.wordmark-dot) {
  font-style:italic;
  font-size:.78em;
  letter-spacing:-1.5px;
  margin:0 2px
}
.wordmark-dot {
  color:#7d896b
}
.desktop-nav {
  display:flex;
  gap:32px;
  font-size:12px;
  letter-spacing:.03em
}
.desktop-nav a {
  position:relative;
  padding:10px 0
}
.desktop-nav a:after {
  content:'';
  position:absolute;
  bottom:4px;
  left:0;
  width:0;
  height:1px;
  background:var(--ink);
  transition:width .2s
}
.desktop-nav a:hover:after {
  width:100%
}
.header-cta {
  border-bottom:1px solid #7c826e;
  padding:12px 0;
  font-size:12px;
  display:flex;
  gap:28px;
  align-items:center
}
.header-cta span {
  font-size:19px
}
.menu-toggle {
  display:none;
  background:none;
  border:0;
  padding:10px;
  width:42px;
  height:42px
}
.menu-toggle span {
  display:block;
  background:var(--ink);
  width:22px;
  height:1px;
  margin:6px 0
}
.mobile-menu {
  position:absolute;
  z-index:20;
  top:108px;
  left:0;
  right:0;
  background:var(--paper);
  padding:10px 6% 25px;
  box-shadow:0 15px 20px #1112
}
.mobile-menu a {
  display:block;
  padding:16px 0;
  border-bottom:1px solid var(--line)
}
.hero {
  min-height:660px;
  height:calc(100svh - 118px);
  max-height:880px;
  position:relative;
  isolation:isolate;
  background:#141714;
  color:var(--paper);
  overflow:hidden
}
.hero-image,.hero-vignette {
  position:absolute;
  inset:0;
  z-index:-1
}
.hero-image img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 52%
}
.hero-vignette {
  background:linear-gradient(90deg,#101711e8 0%,#101711ae 25%,#10171130 55%,transparent 75%),linear-gradient(0deg,#111812bc,transparent 28%)
}
.hero-content {
  width:90%;
  margin:0 auto;
  padding:84px 0 130px
}
.eyebrow {
  font-size:10px;
  font-weight:550;
  letter-spacing:.19em;
  display:flex;
  align-items:center;
  gap:17px
}
.hero-eyebrow {
  font-size:10px;
  letter-spacing:.21em;
  color:#d7dccb
}
.hero-eyebrow>span {
  height:6px;
  width:6px;
  border-radius:50%;
  background:#adb88e
}
.hero h1 {
  font-family:var(--serif);
  font-size:clamp(84px,9vw,144px);
  letter-spacing:-.047em;
  line-height:.93;
  font-weight:400;
  margin:39px 0 25px
}
.hero h1 em {
  color:#d4d9b7
}
.hero-intro {
  font-size:15px;
  color:#d3d6ca;
  line-height:1.65;
  margin-bottom:32px
}
.button {
  min-height:53px;
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:35px;
  padding:17px 23px;
  font-size:12px;
  font-weight:550;
  border:1px solid transparent;
  transition:background .2s,transform .2s
}
.button span {
  font-size:20px;
  line-height:1
}
.button:hover {
  transform:translateY(-2px)
}
.button-cream {
  background:#eceddb;
  color:#243023
}
.button-cream:hover {
  background:#fffdec
}
.button-dark {
  background:var(--ink);
  color:var(--paper)
}
.button-dark:hover {
  background:#3c4939
}
.hero-caption {
  position:absolute;
  right:5%;
  top:39px;
  display:flex;
  flex-direction:column;
  gap:8px;
  font-size:8px;
  letter-spacing:.16em;
  color:#c5ccba;
  text-align:right
}
.scroll-cue {
  position:absolute;
  bottom:34px;
  left:5%;
  display:flex;
  gap:14px;
  align-items:center;
  font-size:8px;
  letter-spacing:.2em;
  color:#d8ddce
}
.scroll-cue>span {
  display:block;
  height:30px;
  width:1px;
  background:#d6ddc4
}
.hero-index {
  position:absolute;
  bottom:34px;
  right:5%;
  font-size:12px;
  letter-spacing:.08em
}
.hero-index>span {
  color:#85927d;
  margin:0 9px
}
.intro-ribbon {
  min-height:78px;
  display:flex;
  justify-content:space-around;
  align-items:center;
  gap:20px;
  border-bottom:1px solid var(--line);
  font-size:9px;
  letter-spacing:.16em;
  padding:15px 5%
}
.intro-ribbon i {
  font-style:normal;
  font-size:22px;
  font-weight:400;
  color:#8a9477
}
.section-pad {
  padding:85px 7% 100px
}
.section-heading {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:37px;
  gap:20px
}
.section-number {
  font-size:10px;
  border:1px solid #b8bfa8;
  min-width:24px;
  height:24px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  letter-spacing:0
}
.small-note {
  font-size:11px;
  color:var(--soft)
}
.collection-intro {
  display:grid;
  grid-template-columns:1.6fr 1fr;
  gap:60px;
  align-items:end;
  margin-bottom:50px
}
.collection-intro p {
  color:var(--soft);
  font-size:13px;
  max-width:360px;
  padding-bottom:5px
}
.collection-feature {
  display:grid;
  grid-template-columns:1.6fr 1fr;
  min-height:570px
}
.collection-photo {
  position:relative;
  overflow:hidden;
  background:#232920
}
.collection-photo>img {
  height:100%;
  width:100%;
  object-fit:cover;
  object-position:75% center
}
.image-note {
  position:absolute;
  bottom:18px;
  left:22px;
  color:#dce1d3;
  font-size:9px;
  letter-spacing:.03em;
  background:#171d1880;
  padding:5px 8px
}
.image-expand {
  position:absolute;
  right:22px;
  bottom:18px;
  background:var(--paper);
  color:var(--ink);
  border:0;
  border-radius:50%;
  width:38px;
  height:38px;
  font-size:23px
}
.collection-story {
  padding:44px 12% 40px;
  background:#e8eadd;
  display:flex;
  flex-direction:column;
  justify-content:center
}
.micro-label {
  font-size:9px;
  letter-spacing:.15em;
  line-height:1.5
}
.collection-count {
  font-family:var(--serif);
  font-size:104px;
  line-height:1;
  margin:15px 0 0;
  letter-spacing:-5px
}
.collection-count>span {
  font-size:58px;
  vertical-align:top;
  line-height:1.6;
  margin-left:5px;
  letter-spacing:-1px
}
.count-label {
  font-size:12px;
  color:#69715e;
  line-height:1.4
}
.fine-rule {
  height:1px;
  background:#c8cdb8;
  width:100%;
  margin:28px 0
}
.collection-story h3 {
  font-family:var(--serif);
  font-size:44px;
  letter-spacing:-.02em;
  line-height:1.03;
  margin-bottom:14px
}
.collection-story>p:not(.count-label) {
  font-size:12px;
  color:#656d5d;
  max-width:275px
}
.text-link {
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:23px;
  border:0;
  border-bottom:1px solid #b5bca5;
  padding:11px 0;
  background:transparent;
  font-size:11px;
  font-weight:500;
  max-width:max-content
}
.text-link>span:not(.sr-only) {
  font-size:19px
}
.collection-story .text-link {
  margin-top:17px
}
.about-section {
  display:grid;
  grid-template-columns:1fr 1.1fr;
  background:#232c22;
  color:#efefdc
}
.about-image {
  position:relative;
  min-height:665px;
  max-height:760px;
  overflow:hidden
}
.about-image>img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 30%;
  filter:saturate(.65)
}
.about-image:after {
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(0deg,#172015a8,transparent 50%)
}
.about-photo-caption {
  position:absolute;
  z-index:1;
  bottom:25px;
  left:30px;
  right:30px;
  display:flex;
  justify-content:space-between;
  font-size:9px;
  letter-spacing:.14em
}
.about-copy {
  padding:65px 13% 55px;
  position:relative
}
.about-copy .eyebrow {
  color:#c1cbb2;
  margin-bottom:36px
}
.about-copy .section-number {
  border-color:#748365
}
.about-copy h2 {
  font-size:clamp(48px,4.6vw,70px);
  max-width:480px
}
.about-copy h2 em {
  color:#bbc7a8
}
.about-lead {
  font-size:16px;
  line-height:1.6;
  margin:25px 0 17px;
  color:#e2e6d6
}
.about-copy>p:not(.eyebrow):not(.about-lead) {
  font-size:13px;
  color:#bdc6b3;
  max-width:350px
}
.about-copy .text-link {
  margin-top:25px;
  border-color:#728067
}
.signature {
  position:absolute;
  bottom:28px;
  right:40px;
  font-family:var(--serif);
  font-size:64px;
  font-style:italic;
  transform:rotate(-10deg);
  opacity:.45
}
.stories-section {
  padding-top:95px;
  padding-bottom:95px
}
.stories-title {
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:30px;
  margin-bottom:38px
}
.stories-title p {
  font-size:12px;
  color:var(--soft)
}
.story-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:25px
}
.story-img {
  height:390px;
  position:relative;
  overflow:hidden;
  background:#e4e5d8
}
.story-img img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 35%;
  filter:saturate(.6);
  transition:transform .6s,filter .6s
}
.story-card:hover .story-img img {
  transform:scale(1.035);
  filter:saturate(.9)
}
.story-img:after {
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(0deg,#15201259,transparent 60%)
}
.story-tag {
  position:absolute;
  z-index:1;
  top:15px;
  left:15px;
  background:#f4f3e9eb;
  color:#293626;
  font-size:8px;
  padding:7px 10px;
  letter-spacing:.12em
}
.play-icon {
  z-index:1;
  position:absolute;
  bottom:19px;
  right:19px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid #f6f5dfb5;
  border-radius:50%;
  color:#f6f5df;
  width:43px;
  height:43px;
  font-size:22px;
  background:#111a143d;
  padding-left:2px
}
.story-card-bottom {
  border-bottom:1px solid var(--line);
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:18px 1px;
  font-size:12px
}
.story-card-bottom>span:last-child {
  font-size:22px
}
.partnership-intro {
  background:#e7e9dc;
  padding-bottom:72px
}
.partnership-intro-grid {
  display:grid;
  grid-template-columns:1.65fr 1fr;
  gap:60px;
  align-items:end;
  margin:35px 0 52px
}
.partnership-intro-grid h2 {
  font-size:clamp(42px,4.5vw,69px)
}
.partnership-intro-grid>div p {
  font-size:13px;
  color:#687260;
  max-width:330px
}
.partnership-intro-grid .text-link {
  margin-top:12px
}
.partnership-types {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-top:1px solid #c2c9b2;
  padding-top:31px;
  gap:40px
}
.partnership-types article {
  padding-right:30px
}
.partnership-types article+article {
  border-left:1px solid #c8cebd;
  padding-left:40px
}
.partnership-types article>span {
  font-size:8px;
  letter-spacing:.15em;
  color:#647456
}
.partnership-types h3 {
  font-family:var(--serif);
  font-size:37px;
  line-height:1.08;
  letter-spacing:-.025em;
  margin:18px 0 12px
}
.partnership-types p {
  font-size:12px;
  color:#687260;
  max-width:265px
}
.enquiry-section {
  display:grid;
  grid-template-columns:1fr 1.15fr;
  gap:9%;
  padding-top:100px;
  padding-bottom:110px
}
.enquiry-copy .eyebrow {
  font-size:9px;
  margin-bottom:30px
}
.enquiry-copy h2 {
  font-size:clamp(50px,5vw,76px);
  line-height:1.05
}
.enquiry-copy>p:not(.eyebrow):not(.form-note) {
  font-size:13px;
  color:var(--soft);
  margin:25px 0 23px;
  max-width:305px
}
.email-link {
  display:flex;
  gap:17px;
  align-items:center;
  max-width:max-content;
  font-size:12px;
  font-weight:500;
  border-bottom:1px solid #c2c8b3;
  padding-bottom:12px;
  overflow-wrap:anywhere
}
.email-link>span {
  font-size:20px
}
.enquiry-copy>.form-note {
  max-width:320px;
  margin-top:21px
}
.form-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px
}
.form-field {
  margin-bottom:24px;
  min-width:0
}
.form-field label,.type-fieldset legend {
  display:block;
  font-size:10px;
  font-weight:550;
  margin-bottom:10px
}
.optional {
  font-weight:400;
  color:#7b8074;
  font-size:9px
}
.form-field input,.form-field textarea,.form-field select {
  width:100%;
  border:1px solid #c8ccbd;
  background:transparent;
  color:var(--ink);
  padding:13px 12px;
  font-size:11px;
  border-radius:0;
  outline-offset:2px;
  min-height:44px
}
.form-field input::placeholder,.form-field textarea::placeholder {
  color:#858b7e
}
.form-field input:focus,.form-field textarea:focus,.form-field select:focus {
  border-color:#4d623f;
  background:#fbfbf4
}
.form-field textarea {
  resize:vertical;
  line-height:1.6;
  min-height:120px
}
.type-fieldset {
  border:0;
  margin:0 0 24px;
  padding:0
}
.type-options {
  display:flex;
  flex-wrap:wrap;
  gap:8px
}
.type-options label {
  position:relative;
  cursor:pointer
}
.type-options label input {
  position:absolute;
  inset:0;
  opacity:0;
  width:100%;
  height:100%;
  cursor:pointer;
  margin:0
}
.type-options label>span {
  display:block;
  border:1px solid #c8ccbd;
  font-size:10px;
  padding:11px 13px;
  transition:background .15s
}
.type-options label input:checked+span {
  background:var(--ink);
  color:var(--paper);
  border-color:var(--ink)
}
.type-options label input:focus-visible+span {
  outline:3px solid #a7aa66;
  outline-offset:3px
}
.character-count {
  text-align:right;
  font-size:9px;
  color:#7c8374;
  margin-top:5px
}
.submit-button {
  width:100%;
  margin-top:2px
}
.form-note {
  font-size:10px;
  line-height:1.8;
  color:#6d7565;
  margin-top:12px
}
.form-note a,.inline-button {
  text-decoration:underline;
  text-underline-offset:3px
}
.inline-button {
  font-size:inherit;
  padding:0;
  border:0;
  background:transparent;
  color:inherit
}
.form-status {
  font-size:12px;
  font-weight:500;
  color:#425a33;
  margin-top:15px
}
.form-status:empty {
  display:none
}
.draft-actions {
  display:flex;
  flex-wrap:wrap;
  gap:10px 25px;
  margin-top:10px
}
.draft-actions details {
  width:100%;
  font-size:11px;
  line-height:1.6
}
.draft-actions summary {
  cursor:pointer;
  padding:10px 0
}
.draft-actions pre {
  white-space:pre-wrap;
  word-break:break-word;
  font:11px/1.8 var(--sans);
  padding:15px;
  background:#e8ebdf
}
.site-footer {
  background:var(--dark);
  color:#e0e4d5;
  padding:45px 7% 22px;
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:center;
  gap:42px
}
.site-footer .wordmark {
  font-size:43px
}
.footer-socials {
  display:flex;
  justify-content:flex-end;
  gap:30px;
  font-size:11px
}
.footer-bottom {
  grid-column:1/-1;
  display:flex;
  justify-content:space-between;
  gap:20px;
  border-top:1px solid #40483a;
  padding-top:21px;
  font-size:9px;
  color:#a6b097
}
.footer-bottom>span:nth-child(2) {
  font-family:var(--serif);
  font-size:15px;
  font-style:italic;
  letter-spacing:.03em
}
dialog {
  padding:0;
  border:0;
  color:var(--ink);
  background:var(--paper);
  max-height:90svh;
  max-width:95vw
}
dialog::backdrop {
  background:#0d170fd6;
  backdrop-filter:blur(8px)
}
.dialog-close {
  position:absolute;
  top:14px;
  right:14px;
  z-index:1;
  background:var(--paper);
  border:1px solid #bdc5ad;
  border-radius:50%;
  width:40px;
  height:40px;
  font-size:29px;
  color:var(--ink);
  line-height:1
}
.watch-dialog {
  width:1050px
}
.watch-dialog>img {
  width:100%;
  max-height:66svh;
  object-fit:cover
}
.dialog-caption {
  padding:25px 30px
}
.dialog-caption h2 {
  font-size:34px
}
.dialog-caption p {
  font-size:12px;
  color:var(--soft);
  margin-top:12px
}
.privacy-dialog {
  padding:50px;
  width:570px
}
.privacy-dialog h2 {
  font-size:44px;
  margin:24px 0
}
.privacy-dialog p:not(.eyebrow) {
  font-size:13px;
  color:#66705c;
  margin:15px 0
}
.privacy-dialog .button {
  margin-top:15px
}
.watch-dialog,.privacy-dialog {
  box-shadow:0 25px 100px #0005
}
@media(min-width:1600px) {
  .hero-content {
    padding-top:110px
  }
  .hero h1 {
    font-size:155px
  }
  .hero {
    height:850px
  }
  .section-pad {
    padding-left:max(7%,calc((100vw - 1400px)/2));
    padding-right:max(7%,calc((100vw - 1400px)/2))
  }
}
@media(max-width:1050px) {
  .site-header {
    gap:20px
  }
  .desktop-nav {
    gap:19px
  }
  .hero {
    min-height:620px
  }
  .hero-content {
    padding-top:78px
  }
  .hero-image img {
    object-position:58% center
  }
  .hero-vignette {
    background:linear-gradient(90deg,#101711e8,#10171185 40%,#10171110 80%),linear-gradient(0deg,#111812bc,transparent 32%)
  }
  .collection-feature {
    min-height:520px;
    grid-template-columns:1.3fr 1fr
  }
  .collection-intro {
    gap:30px
  }
  .collection-story {
    padding:35px 10%
  }
  .collection-count {
    font-size:90px
  }
  .collection-story h3 {
    font-size:37px
  }
  .about-copy {
    padding:55px 10% 65px
  }
  .about-image {
    min-height:650px
  }
  .story-img {
    height:320px
  }
  .enquiry-section {
    gap:7%;
    grid-template-columns:1fr 1.2fr
  }
  .form-grid {
    gap:15px
  }
  .form-field label,.type-fieldset legend {
    font-size:11px
  }
  .form-field input,.form-field textarea,.form-field select {
    font-size:12px
  }
  .form-note {
    font-size:11px
  }
  .partnership-intro-grid {
    gap:30px
  }
  .partnership-types {
    gap:25px
  }
  .partnership-types article+article {
    padding-left:25px
  }
}
@media(max-width:760px) {
  :root {
    --header-height:80px
  }
  html {
    scroll-padding-top:20px
  }
  .site-header {
    padding:0 6%;
    gap:18px
  }
  .wordmark {
    font-size:35px
  }
  .desktop-nav {
    display:none
  }
  .header-cta {
    font-size:10px;
    margin-left:auto;
    gap:13px
  }
  .menu-toggle {
    display:block;
    flex-shrink:0
  }
  .hero {
    min-height:675px;
    height:calc(100svh - 108px);
    max-height:850px
  }
  .hero-content {
    width:88%;
    padding-top:80px
  }
  .hero h1 {
    font-size:clamp(80px,16vw,112px);
    margin:35px 0 27px
  }
  .hero-eyebrow {
    font-size:9px;
    letter-spacing:.16em
  }
  .hero-image img {
    object-position:65% center;
    opacity:.83
  }
  .hero-vignette {
    background:linear-gradient(90deg,#101711d9,#10171166 48%,#10171100),linear-gradient(0deg,#111812e6,transparent 60%)
  }
  .hero-caption {
    display:none
  }
  .hero-intro {
    font-size:14px
  }
  .hero .button {
    font-size:11px;
    padding:16px 20px;
    gap:30px
  }
  .hero-index {
    right:6%
  }
  .scroll-cue {
    left:6%
  }
  .intro-ribbon {
    padding:20px 6%;
    gap:15px;
    min-height:65px
  }
  .intro-ribbon span {
    font-size:8px;
    line-height:1.6;
    text-align:center
  }
  .intro-ribbon span:last-child,.intro-ribbon i:last-of-type {
    display:none
  }
  .intro-ribbon i {
    font-size:17px
  }
  .section-pad {
    padding:62px 6% 67px
  }
  .section-heading {
    margin-bottom:27px
  }
  .eyebrow {
    font-size:9px;
    letter-spacing:.15em;
    gap:12px
  }
  .section-number {
    height:22px;
    min-width:22px;
    font-size:9px
  }
  .small-note {
    font-size:10px
  }
  .collection-intro {
    display:block;
    margin-bottom:32px
  }
  .collection-intro h2 {
    font-size:48px
  }
  .collection-intro p {
    font-size:13px;
    max-width:400px;
    margin-top:22px
  }
  .collection-feature {
    display:block
  }
  .collection-photo {
    height:420px
  }
  .collection-photo>img {
    object-position:72% center
  }
  .collection-story {
    padding:36px;
    display:grid;
    grid-template-columns:1fr 1.2fr;
    column-gap:28px;
    align-items:start
  }
  .collection-story>.micro-label {
    grid-column:1/-1;
    font-size:9px
  }
  .collection-count {
    grid-column:1;
    grid-row:2;
    font-size:85px;
    margin-top:16px
  }
  .collection-count>span {
    font-size:45px
  }
  .count-label {
    grid-column:1;
    grid-row:3;
    font-size:11px;
    max-width:135px;
    margin-top:3px
  }
  .fine-rule {
    display:none
  }
  .collection-story h3 {
    grid-column:2;
    grid-row:2;
    font-size:32px;
    margin:20px 0 8px
  }
  .collection-story>p:not(.count-label) {
    grid-column:2;
    grid-row:3;
    font-size:12px
  }
  .collection-story .text-link {
    grid-column:1/-1;
    margin-top:26px;
    font-size:12px
  }
  .about-section {
    display:flex;
    flex-direction:column
  }
  .about-image {
    min-height:0;
    height:480px;
    max-height:480px
  }
  .about-image>img {
    object-position:center 26%
  }
  .about-copy {
    padding:47px 7% 75px
  }
  .about-copy .eyebrow {
    margin-bottom:25px
  }
  .about-copy h2 {
    font-size:59px
  }
  .about-copy>p:not(.eyebrow):not(.about-lead) {
    max-width:400px
  }
  .signature {
    bottom:22px;
    right:33px;
    font-size:55px
  }
  .stories-title {
    display:block;
    margin-bottom:28px
  }
  .stories-title h2 {
    font-size:49px
  }
  .stories-title p {
    margin-top:20px;
    font-size:12px
  }
  .stories-section .section-heading>.text-link {
    font-size:10px;
    gap:12px;
    white-space:nowrap
  }
  .story-grid {
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px
  }
  .story-img {
    height:245px
  }
  .story-tag {
    font-size:6px;
    padding:5px;
    left:7px;
    top:7px;
    letter-spacing:.02em
  }
  .play-icon {
    bottom:10px;
    right:10px;
    width:30px;
    height:30px;
    font-size:18px
  }
  .story-card-bottom {
    font-size:10px;
    line-height:1.5;
    padding:12px 0;
    gap:6px;
    align-items:start
  }
  .story-card-bottom>span:last-child {
    font-size:18px
  }
  .partnership-intro-grid {
    display:block;
    margin:28px 0 34px
  }
  .partnership-intro-grid h2 {
    font-size:46px
  }
  .partnership-intro-grid>div {
    margin-top:23px
  }
  .partnership-intro-grid>div p {
    max-width:400px;
    font-size:13px
  }
  .partnership-types {
    gap:0;
    display:block;
    padding-top:0
  }
  .partnership-types article {
    padding:24px 0!important;
    border-bottom:1px solid #c8cebd;
    border-left:0!important;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px 24px;
    align-items:start
  }
  .partnership-types article>span {
    grid-column:1/-1
  }
  .partnership-types h3 {
    margin:10px 0 0;
    font-size:32px
  }
  .partnership-types p {
    margin-top:10px
  }
  .enquiry-section {
    display:block
  }
  .enquiry-copy h2 {
    font-size:66px
  }
  .enquiry-copy>p:not(.eyebrow):not(.form-note) {
    font-size:14px
  }
  .enquiry-copy .eyebrow {
    margin-bottom:23px
  }
  .email-link {
    font-size:14px
  }
  .enquiry-form {
    margin-top:45px;
    padding-top:35px;
    border-top:1px solid var(--line)
  }
  .form-field label,.type-fieldset legend {
    font-size:12px
  }
  .form-field input,.form-field textarea,.form-field select {
    font-size:16px;
    min-height:49px
  }
  .form-field input::placeholder,.form-field textarea::placeholder {
    font-size:12px
  }
  .type-options {
    gap:9px
  }
  .type-options label>span {
    font-size:12px;
    padding:12px 15px
  }
  .optional {
    font-size:10px
  }
  .form-grid {
    gap:15px
  }
  .form-note {
    font-size:11px
  }
  .submit-button {
    font-size:13px;
    min-height:55px
  }
  .site-footer {
    padding:40px 6% 23px;
    gap:28px
  }
  .site-footer .wordmark {
    font-size:39px
  }
  .footer-socials {
    gap:15px;
    flex-wrap:wrap;
    justify-content:flex-end;
    font-size:10px
  }
  .footer-bottom {
    font-size:8px;
    gap:10px
  }
  .footer-bottom>span:nth-child(2) {
    font-size:12px
  }
  .privacy-dialog {
    padding:35px 25px
  }
  .privacy-dialog h2 {
    font-size:38px
  }
  .dialog-caption {
    padding:23px
  }
  .dialog-caption h2 {
    font-size:30px
  }
}
@media(max-width:420px) {
  .header-cta {
    font-size:9px;
    gap:9px
  }
  .header-cta>span {
    font-size:17px
  }
  .wordmark {
    font-size:32px
  }
  .site-header {
    gap:10px
  }
  .menu-toggle {
    width:35px;
    padding:7px
  }
  .hero-content {
    padding-top:68px
  }
  .hero {
    min-height:650px
  }
  .hero h1 {
    font-size:82px
  }
  .collection-intro h2 {
    font-size:43px
  }
  .collection-photo {
    height:360px
  }
  .collection-story {
    padding:30px 24px;
    gap:10px 20px
  }
  .collection-story h3 {
    font-size:29px
  }
  .collection-count {
    font-size:76px
  }
  .story-grid {
    gap:9px
  }
  .story-img {
    height:210px
  }
  .story-tag {
    font-size:5px
  }
  .stories-title h2 {
    font-size:43px
  }
  .partnership-intro-grid h2 {
    font-size:40px
  }
  .form-grid {
    grid-template-columns:1fr;
    gap:0
  }
  .section-heading .small-note {
    max-width:90px;
    text-align:right
  }
  .footer-bottom>span:nth-child(2) {
    display:none
  }
  .site-footer {
    grid-template-columns:1fr
  }
  .footer-socials {
    justify-content:flex-start;
    font-size:12px;
    gap:25px
  }
  .enquiry-copy h2 {
    font-size:60px
  }
}
@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto
  }
  *,*:before,*:after {
    animation:none!important;
    transition:none!important
  }
  .button:hover {
    transform:none
  }
}

/* Real creator media and the on-demand video player. */
.hero-image { left: auto; width: 58%; }
.hero-image img { object-fit: contain; object-position: right center; opacity: 1; }
.hero-vignette {
  z-index: 0;
  pointer-events: none;
  background: linear-gradient(90deg, #141714 0%, #141714 39%, #14171455 46%, transparent 54%);
}
.hero-content { position: relative; z-index: 1; }
.hero-caption { display: none; }
.hero-index { right: auto; left: 35%; }
.story-card {
  appearance: none;
  border: 0;
  background: transparent;
  padding: 0;
  width: 100%;
  color: inherit;
  text-align: left;
}
.story-img { display: block; }
.collection-video { width: 100%; border: 0; padding: 0; text-align: left; color: var(--paper); }
.collection-video > img { object-position: center 20%; filter: saturate(.65); }
.collection-video-shade {
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg, #101811ed 0%, #1018116b 40%, #10181100 75%);
}
.collection-video-caption {
  position: absolute;
  left: 8%;
  bottom: 13%;
  right: 8%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
}
.collection-video-caption strong {
  font-family: var(--serif);
  font-size: clamp(36px, 4.5vw, 65px);
  font-weight: 400;
  line-height: 1;
  letter-spacing: -.03em;
}
.video-action { display: inline-flex; align-items: center; gap: 15px; font-size: 27px; }
.video-action > span { font-size: 12px; }
.video-dialog {
  width: 440px;
  max-width: 94vw;
  background: #161c17;
  color: var(--paper);
  overflow-y: auto;
}
#video-frame-container { aspect-ratio: 9 / 16; max-height: 67svh; width: 100%; background: #0f1510; }
#video-frame-container iframe { width: 100%; height: 100%; border: 0; display: block; }
.video-dialog-footer { padding: 21px 25px 24px; }
.video-dialog-footer h2 { font-size: 26px; letter-spacing: -.02em; margin-bottom: 10px; }
.video-dialog-footer a { font-size: 12px; text-decoration: underline; text-underline-offset: 4px; }
.video-dialog-footer p { font-size: 12px; margin-top: 12px; }
.collection-intro p, .about-copy > p:not(.eyebrow):not(.about-lead),
.partnership-intro-grid > div p, .enquiry-copy > p:not(.eyebrow):not(.form-note) { font-size: 15px; }
.collection-story > p:not(.count-label), .partnership-types p { font-size: 14px; }
.desktop-nav, .header-cta { font-size: 13px; }
.form-field label, .type-fieldset legend { font-size: 12px; }
.form-field input, .form-field textarea, .form-field select { font-size: 14px; }
.form-note { font-size: 12px; }
@media (max-width: 760px) {
  .hero { height: auto; min-height: 0; max-height: none; }
  .hero-content { padding: 52px 0 42px; }
  .hero-image { position: relative; inset: auto; width: 100%; z-index: 0; }
  .hero-image img { height: auto; aspect-ratio: 1104 / 1456; object-position: center; }
  .hero-vignette { display: none; }
  .scroll-cue { position: static; padding: 22px 6%; }
  .hero-index { left: auto; right: 6%; bottom: 28px; }
  .collection-video-caption strong { font-size: 45px; }
  .collection-video-caption { gap: 16px; }
  .collection-story > p:not(.count-label) { font-size: 12px; }
  .header-cta { font-size: 10px; }
  .form-field input, .form-field textarea, .form-field select { font-size: 16px; }
}
