/* V33 — client-requested visual refinements */

/* 01 + 05: let the imagery read more clearly beneath the light editorial treatment */
body:not(.vault-page):not(.admin-page) .page-hero>img{
  opacity:.62!important;
  filter:saturate(.86) contrast(.98) brightness(1.04)!important;
}
body:not(.vault-page):not(.admin-page) .page-hero:after{
  background:
    linear-gradient(0deg,rgba(255,255,255,.92) 0%,rgba(255,255,255,.30) 66%,rgba(255,255,255,.06) 100%),
    linear-gradient(90deg,rgba(255,255,255,.76) 0%,rgba(255,255,255,.20) 60%,rgba(255,255,255,.04) 100%)!important;
}
body:not(.vault-page):not(.admin-page) .vault-home>img{
  opacity:.40!important;
  filter:grayscale(.08) saturate(.82) brightness(1.08)!important;
}
body:not(.vault-page):not(.admin-page) .vault-home:after{
  background:linear-gradient(90deg,rgba(255,255,255,.86),rgba(255,255,255,.46),rgba(255,255,255,.82))!important;
}

/* 02: black Vault CTA on the light homepage feature */
.home-page .vault-home .pill-button.gold{
  background:#111!important;
  border-color:#111!important;
  color:#fff!important;
}
.home-page .vault-home .pill-button.gold:hover{
  background:#2a2825!important;
  border-color:#2a2825!important;
}

/* 04: more controlled Journal introduction typography and side reveals */
.editorial-page .editorial-intro h2{
  max-width:720px;
  font-size:clamp(42px,5.1vw,72px)!important;
  line-height:.94!important;
}
.editorial-page .editorial-intro .lead{
  max-width:470px;
  font-size:clamp(15px,1.35vw,20px)!important;
  line-height:1.55!important;
  text-align:left;
}
body.motion-ready .editorial-intro>div:first-child{
  animation:journalSlideLeft 1.05s cubic-bezier(.2,.72,.2,1) both;
}
body.motion-ready .editorial-intro>div:last-child{
  animation:journalSlideRight 1.05s .12s cubic-bezier(.2,.72,.2,1) both;
}
@keyframes journalSlideLeft{from{opacity:0;transform:translateX(-44px)}to{opacity:1;transform:none}}
@keyframes journalSlideRight{from{opacity:0;transform:translateX(44px)}to{opacity:1;transform:none}}

/* 06: smaller, better-spaced Journal CTA heading */
.editorial-page .editorial-cta h2{
  max-width:820px!important;
  margin:24px auto 48px!important;
  font-size:clamp(46px,6.2vw,86px)!important;
  line-height:.96!important;
  letter-spacing:-.035em!important;
}

/* 07: Vault heading uses the same elegant serif voice as the main hero */
.vault-page .vault-entry-copy h1,
.vault-page .vault-entry-copy h1 span,
.vault-page .vault-entry-copy h1 em{
  font-family:var(--serif)!important;
  font-weight:400!important;
  font-style:normal!important;
  text-transform:none!important;
}

/* 08: understated placeholder copy */
.private-form input::placeholder,
.private-form textarea::placeholder,
.checkout-form input::placeholder,
.checkout-form textarea::placeholder{
  font-family:var(--sans)!important;
  font-size:11px!important;
  letter-spacing:.01em!important;
  color:#9a958d!important;
  opacity:1;
}

/* 09: full map in place of the old address card */
.location-map{
  position:relative;
  min-height:470px;
  overflow:hidden;
  background:#ddd6ca;
  border:1px solid rgba(19,17,15,.10);
}
.location-map iframe{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
  filter:grayscale(1) contrast(.92) brightness(1.03);
}
.location-map:after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.28);
}

@media(max-width:780px){
  body:not(.vault-page):not(.admin-page) .page-hero>img{opacity:.76!important}
  body:not(.vault-page):not(.admin-page) .page-hero:after{
    background:linear-gradient(0deg,rgba(255,255,255,.91) 0%,rgba(255,255,255,.30) 53%,rgba(255,255,255,.04) 88%)!important;
  }
  .editorial-page .editorial-intro h2{font-size:42px!important}
  .editorial-page .editorial-intro .lead{font-size:14px!important;line-height:1.6!important}
  .editorial-page .editorial-cta h2{font-size:47px!important;line-height:.98!important}
  .location-map{min-height:390px;border-radius:18px}
}

@media(prefers-reduced-motion:reduce){
  body.motion-ready .editorial-intro>div:first-child,
  body.motion-ready .editorial-intro>div:last-child{animation:none!important}
}

/* V34 — prominent desktop Vault CTA in the main navigation */
.header-vault-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:0 22px;
  background:#080808;
  color:#fff!important;
  border:1px solid #080808;
  font-family:var(--sans);
  font-size:7px;
  font-weight:600;
  line-height:1;
  letter-spacing:.17em;
  text-transform:uppercase;
  white-space:nowrap;
  opacity:1!important;
  transition:background .25s,color .25s,border-color .25s,transform .25s!important;
}
.header-vault-button:hover{
  background:#b8872f;
  border-color:#b8872f;
  color:#fff!important;
  transform:translateY(-1px);
  opacity:1!important;
}
.vault-page .header-vault-button{
  background:#fff;
  border-color:#fff;
  color:#080808!important;
}
.vault-page .header-vault-button:hover{
  background:var(--gold-2);
  border-color:var(--gold-2);
  color:#080808!important;
}
@media(max-width:1180px){
  .header-vault-button{padding:0 15px;font-size:6.4px;letter-spacing:.13em}
}
@media(max-width:900px){
  .header-vault-button{display:none!important}
}

/* V36 — requested stronger hero imagery + refined Journal split typography */

/* Make every major first-view image significantly more visible while preserving readable copy. */
.home-page .hero-slide img{
  opacity:1!important;
  filter:saturate(1.02) contrast(1.04) brightness(.99)!important;
}
.home-page .hero-shade,
.home-page .hero-slide:nth-child(2) .hero-shade,
.home-page .hero-slide:nth-child(3) .hero-shade{
  background:
    linear-gradient(90deg,rgba(255,255,255,.42) 0%,rgba(255,255,255,.22) 34%,rgba(255,255,255,.05) 68%,rgba(255,255,255,0) 100%),
    linear-gradient(0deg,rgba(255,255,255,.10),rgba(255,255,255,0) 48%)!important;
}
.home-page .hero-slide:nth-child(2) .hero-shade{
  background:linear-gradient(0deg,rgba(255,255,255,.20),rgba(255,255,255,.04) 52%,rgba(255,255,255,0))!important;
}
.home-page .hero-slide:nth-child(3) .hero-shade{
  background:
    linear-gradient(270deg,rgba(255,255,255,.42) 0%,rgba(255,255,255,.20) 35%,rgba(255,255,255,.04) 68%,rgba(255,255,255,0) 100%),
    linear-gradient(0deg,rgba(255,255,255,.10),rgba(255,255,255,0) 50%)!important;
}

body:not(.vault-page):not(.admin-page) .page-hero>img{
  opacity:.92!important;
  filter:saturate(1.02) contrast(1.05) brightness(1)!important;
}
body:not(.vault-page):not(.admin-page) .page-hero:after{
  background:
    linear-gradient(0deg,rgba(255,255,255,.68) 0%,rgba(255,255,255,.16) 56%,rgba(255,255,255,.01) 100%),
    linear-gradient(90deg,rgba(255,255,255,.50) 0%,rgba(255,255,255,.12) 48%,rgba(255,255,255,0) 100%)!important;
}

/* Collection image band and enquiry imagery should read clearly too. */
.shop-image-band img,
.contact-hero figure img{
  opacity:1!important;
  filter:saturate(1.02) contrast(1.04) brightness(1)!important;
}
.shop-image-band:after{
  background:linear-gradient(0deg,rgba(255,255,255,.10),rgba(255,255,255,0) 55%)!important;
}
.contact-hero figure:after{
  background:linear-gradient(90deg,rgba(247,245,240,.30),rgba(247,245,240,.02) 46%)!important;
}

/* Light feature panels using imagery. */
body:not(.vault-page):not(.admin-page) .vault-home>img{
  opacity:.72!important;
  filter:saturate(.96) contrast(1.03) brightness(1.01)!important;
}
body:not(.vault-page):not(.admin-page) .vault-home:after{
  background:linear-gradient(90deg,rgba(255,255,255,.64),rgba(255,255,255,.20),rgba(255,255,255,.50))!important;
}

/* Dark Vault: retain atmosphere but reveal the image more strongly. */
.vault-page .vault-entry-image img{
  opacity:1!important;
  filter:saturate(1.02) contrast(1.05) brightness(.94)!important;
}
.vault-page .vault-entry-shade{
  background:
    linear-gradient(90deg,rgba(0,0,0,.60) 0%,rgba(0,0,0,.18) 54%,rgba(0,0,0,.06) 100%),
    linear-gradient(0deg,rgba(0,0,0,.28),rgba(0,0,0,.02) 60%)!important;
}

/* Journal split: smaller left headline, very small aligned right copy. */
.editorial-page[data-page="journal"] .editorial-intro{
  align-items:center!important;
  grid-template-columns:minmax(0,1.12fr) minmax(260px,.58fr)!important;
  gap:9vw!important;
}
.editorial-page[data-page="journal"] .editorial-intro h2{
  max-width:650px!important;
  font-size:clamp(36px,4.2vw,60px)!important;
  line-height:.98!important;
  letter-spacing:-.035em!important;
}
.editorial-page[data-page="journal"] .editorial-intro .lead{
  max-width:360px!important;
  margin:0!important;
  font-family:var(--serif)!important;
  font-size:clamp(12px,.9vw,14px)!important;
  line-height:1.55!important;
  text-align:left!important;
}

/* Side-entry animation with a calmer luxury pace. */
body.motion-ready .editorial-page[data-page="journal"] .editorial-intro>div:first-child,
body.motion-ready.editorial-page[data-page="journal"] .editorial-intro>div:first-child{
  animation:journalSlideLeftV36 1.15s cubic-bezier(.16,.78,.22,1) both!important;
}
body.motion-ready .editorial-page[data-page="journal"] .editorial-intro>div:last-child,
body.motion-ready.editorial-page[data-page="journal"] .editorial-intro>div:last-child{
  animation:journalSlideRightV36 1.15s .12s cubic-bezier(.16,.78,.22,1) both!important;
}
@keyframes journalSlideLeftV36{from{opacity:0;transform:translate3d(-70px,0,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes journalSlideRightV36{from{opacity:0;transform:translate3d(70px,0,0)}to{opacity:1;transform:translate3d(0,0,0)}}

@media(max-width:780px){
  .home-page .hero-slide .hero-shade,
  .home-page .hero-slide:nth-child(2) .hero-shade,
  .home-page .hero-slide:nth-child(3) .hero-shade{
    background:linear-gradient(0deg,rgba(255,255,255,.60) 0%,rgba(255,255,255,.10) 48%,rgba(255,255,255,0) 82%)!important;
  }
  body:not(.vault-page):not(.admin-page) .page-hero>img{opacity:.94!important}
  body:not(.vault-page):not(.admin-page) .page-hero:after{
    background:linear-gradient(0deg,rgba(255,255,255,.68) 0%,rgba(255,255,255,.12) 54%,rgba(255,255,255,0) 88%)!important;
  }
  .editorial-page[data-page="journal"] .editorial-intro{
    grid-template-columns:1fr!important;
    gap:34px!important;
    align-items:start!important;
  }
  .editorial-page[data-page="journal"] .editorial-intro h2{
    font-size:clamp(34px,10vw,44px)!important;
    max-width:92%!important;
  }
  .editorial-page[data-page="journal"] .editorial-intro .lead{
    font-size:12px!important;
    max-width:88%!important;
  }
}
