/** Shopify CDN: Minification failed

Line 2193:1 Expected "}" to go with "{"

**/
/* CJP – Ad hoc font declarations */

@font-face {
  font-family: 'Sequel 100 Wide 85';
  src: url('/assets/Sequel 100 Wide 45.woff2') format('woff2');
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'PF Regal Text Pro';
  src: url('/assets/PFRegalTextPro-RegularB.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}



/* ===========================
   CJP Home Hero
   =========================== */

.cjp-home-hero {
  position: relative;
  overflow: hidden;
  color: #fffdf0;
  background-color: #050505;
}

/* Full-bleed background */

.cjp-home-hero__background {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.cjp-home-hero__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.cjp-home-hero__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* mobile BG by default, desktop BG from 768px */

.cjp-home-hero__bg--desktop {
  display: none;
}

.cjp-home-hero__bg--mobile {
  display: block;
}

@media (min-width: 768px) {
  .cjp-home-hero__bg--desktop {
    display: block;
  }
  .cjp-home-hero__bg--mobile {
    display: none;
  }
}

.cjp-home-hero__bg-overlay {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 30% 25%, rgba(0,0,0,0.1), rgba(0,0,0,0.6)),
    linear-gradient(to bottom, rgba(0,0,0,0.3), rgba(0,0,0,0.7));
}

/* Foreground layout */

.cjp-home-hero__inner {
  position: relative;
  z-index: 1;

  /* we don’t force 100vh, so card isn’t cropped by content height */
  padding-top: 72px;
  padding-bottom: 72px;
  display: flex;
  justify-content: center;
}

.cjp-home-hero__card {
  position: relative;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
}

/* Make the hero card respect the hero image aspect
   This creates the tall cinematic band instead of a squashed strip */
.cjp-home-hero__card::before {
  content: "";
  display: block;
  padding-top: 56.25%; /* 16:9 */
}

.cjp-home-hero__card-bg {
  position: absolute;
  inset: 0;
}

.cjp-home-hero__card-bg picture,
.cjp-home-hero__card-bg img {
  width: 100%;
  height: 100%;
}

.cjp-home-hero__card-bg img {
  object-fit: cover;
}

/* Content on top of hero card */

.cjp-home-hero__card-inner {
  position: absolute;
  inset: 0;
  padding: 48px 96px 48px;
  display: flex;
  flex-direction: column;
  justify-content: space-between; /* copy up, actions down */
  align-items: flex-start;
  text-align: left;
}

/* Copy block (top-left in card) */

.cjp-home-hero__copy {
  max-width: 460px;
  padding-left:20px;
}

/* Force brand yellow like the comp */
.cjp-home-hero__heading {
  margin: 0 0 20px;
  color: #f6a800;
}

.cjp-home-hero__subheading {
  margin: 0;
  color: #f6a800;
}

/* Mobile hero figure (only used <768px) */

.cjp-home-hero__media {
  margin-top: 32px;
  margin-bottom: 32px;
}

.cjp-home-hero__hero-image {
  display: block;
}

.cjp-home-hero__hero-image img {
  display: block;
  width: auto;
  max-width: 260px;
  height: auto;
  margin: 0 auto;
}

/* Actions: buttons bottom-left, socials bottom-right */

.cjp-home-hero__actions {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.cjp-home-hero__buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

/* Button: 1px yellow outline, 5px radius, 20px LR padding */

.cjp-home-hero__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 20px;
  border-radius: 5px;
  border: 0px solid #f6a800;
  font-size: 14px;
  letter-spacing: 0.12em;
  text-decoration: none;
  background-color: transparent;
  color: #f6a800;
}

.cjp-home-hero__btn--secondary {
  opacity: 0.9;
}

/* Social icons */

.cjp-home-hero__social {
  display: flex;
  gap: 12px;
  margin-top: 4px;
  justify-content: flex-start; /* on mobile they just sit under buttons */
}

.cjp-home-hero__social-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  border: 1px solid #f6a800;
}

.cjp-home-hero__social-dot {
  width: 12px;
  height: 12px;
  border-radius: 999px;
  background-color: #f6a800;
}

/* ===========================
   Tablet / Desktop
   =========================== */

@media (min-width: 768px) {
  .cjp-home-hero__inner {
    padding-top: 128px;
    padding-bottom: 48px;
  }

  /* On desktop we don’t show the separate mobile hero image –
     the woman + bottle live in the card background */
  .cjp-home-hero__media {
    display: none;
  }

  .cjp-home-hero__actions {
    flex-direction: row;
    align-items: flex-end;
    justify-content: space-between; /* buttons left, socials right */
  }

  .cjp-home-hero__buttons {
    justify-content: flex-start;
  }

  .cjp-home-hero__social {
    justify-content: flex-end;
  }
}

/* Small mobile tweaks */

@media (max-width: 767px) {
  .cjp-home-hero__inner {
    padding-top: 56px;
    padding-bottom: 80px;
    justify-content: center;
  }

.cjp-home-hero__btn--secondary {
    display: none;
}
  /* Big vertical hero "card", background barely visible on the sides */
  .cjp-home-hero__card {
    max-width: 420px;   /* tweak 380–440px to taste */
    width: 80%;
    margin: 20px auto;
    position: relative;
  }

  /* Make the card tall, so the image + text + CTA all live inside it */
  .cjp-home-hero__card::before {
    content: "";
    display: block;
    padding-top: 185%;  /* adjust 175–200% to match your PSD */
  }

  /* Overlay content INSIDE the hero image */
  .cjp-home-hero__card-inner {
    position: absolute;
    inset: 0;
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-between; /* text towards top, CTA towards bottom */
    align-items: center;
    text-align: center;
  }

  .cjp-home-hero__copy {
    max-width: none;
  }

      .cjp-home-hero__heading {
        right: 20px;
        margin: 0 0 16px;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        writing-mode: vertical-rl;
        letter-spacing: 9px;
    }

  .cjp-home-hero__subheading {
    margin: 0;
  }

  /* We don’t use the separate foreground hero image on mobile –
     the woman + bottle are in the card background. */
  .cjp-home-hero__media {
    display: none;
  }

  .cjp-home-hero__actions {
    width: 100%;
    align-items: center;
  }

  .cjp-home-hero__buttons {
    justify-content: center;
  }

  .cjp-home-hero__social {
    justify-content: center;
  }
}


/* === Custom fonts === */

@font-face {
  font-family: "PF Regal Text Pro";
  src: url("{{ 'PFRegalTextPro-RegularB.woff2' | asset_url }}") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Sequel 100 Wide";
  src: url("{{ 'Sequel100Wide-85.woff2' | asset_url }}") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}


/* ================================
   CJP – Home intro (flex heading)
   ================================ */

.cjp-home-intro {
  padding-block: 4rem;
}

.cjp-home-intro--full-height {
  min-height: 100vh;
  display: flex;
  align-items: center;
}

/* PAGE WIDTH: let this section breathe up to 1440px */
.cjp-home-intro__inner {
  width: 100%;
  max-width: 1440px;
  margin-inline: auto;
}

/* Visually hidden heading for SEO / SRs */
.cjp-visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  border: 0;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
}

/* Kicker */

.cjp-home-intro__kicker {
  text-align: center;
  margin-bottom: 1.75rem;
  letter-spacing: 0.2em;
}

/* ================================
   CJP – Home intro (flex heading)
   FINAL MERGED CSS
   ================================ */

.cjp-home-intro {
  padding-block: 4rem;
}

.cjp-home-intro--full-height {
  min-height: 100vh;
  display: flex;
  align-items: center;
}

/* Full 1440px breathing room */
.cjp-home-intro__inner {
  width: 100%;
  max-width: 1440px;
  margin-inline: auto;
}

/* Visually hidden heading for SEO scanners */
.cjp-visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  border: 0;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
}

/* Kicker */
.cjp-home-intro__kicker {
  max-width: 80rem;        /* same as .cjp-home-intro__headline */
  margin: 0 auto -40px;  /* center the column, but not the text */
  text-align: left;        /* align text to the left edge of that column */
  letter-spacing: 0.2em;
}

/* -------------------------------
   Headline Wrapper
   ------------------------------- */

.cjp-home-intro__headline-wrapper {
  display: flex;
  justify-content: center;
}

.cjp-home-intro__headline {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  row-gap: 0.5em;
  column-gap: 0.55em;
  max-width: 80rem;
  text-align: left;
}

/* OVERSIZED display type */
.cjp-home-intro__headline-chunk {
  position: relative;
  z-index: 2;
  font-size: clamp(3.8rem, 4.8vw, 5rem);
  line-height: 1.14;
  display: inline-flex;
}

/* -------------------------------
   Medallions (your universal -2rem rule)
   ------------------------------- */

.cjp-home-intro__medallion {
  position: relative;
  z-index: 1;
  display: inline-flex;
  justify-content: center;
  margin: -2rem; /* your preferred overlap value */
}

.cjp-home-intro__medallion img {
  display: block;
}

/* Portrait pill (top medallion) */
.cjp-home-intro__medallion--portrait img {
  width: 9rem;
  height: 14rem;
  object-fit: cover;
  border-radius: 999px;
}

/* Circle medallion */
.cjp-home-intro__medallion--circle img {
  width: 9.5rem;
  height: 9.5rem;
  object-fit: cover;
  border-radius: 9999px;
}

/* -------------------------------
   Desktop/tablet baseline control
   (Makes the tall pill sit on same baseline as text)
   ------------------------------- */

@media (min-width: 768px) {
  .cjp-home-intro__headline {
    align-items: baseline;
  }

  .cjp-home-intro__headline-chunk {
    align-self: baseline;
  }

  .cjp-home-intro__medallion--portrait {
    align-self: baseline; /* the important bit */
  }
}

/* -------------------------------
   Body copy
   ------------------------------- */

.cjp-home-intro__body {
  margin-top: 6rem;
  max-width: 60rem;
  margin-left: auto;
  margin-right: 10%;
  padding-left:40px;
  text-align: left;
  line-height: 1.9;
}

/* ================================
   Tablet
   ================================ */

@media (max-width: 1023px) {
  .cjp-home-intro {
    padding-block: 10rem;
  }

  .cjp-home-intro__inner {
    max-width: 92vw;
  }

  .cjp-home-intro__headline {
    max-width: 100%;
  }
}

/* ================================
   Mobile (≤ 767px) – INLINE WRAP, BASELINE + 30% SMALLER MEDALLIONS
   ================================ */

@media (max-width: 767px) {
  .cjp-home-intro--full-height {
    min-height: 0; /* let content dictate height on small screens */
  }

  .cjp-home-intro__kicker {
    margin-bottom: 1.25rem;
  }

  .cjp-home-intro__headline-wrapper {
    justify-content: center;
  }

  /* Keep row + wrap on mobile, align items by baseline */
  .cjp-home-intro__headline {
    flex-wrap: wrap;
    align-items: baseline;         /* important: pill shares baseline with text */
    max-width: 90vw;
    margin-inline: auto;
    padding-inline: 0;
    text-align: center;
    row-gap: 0.5em;
    column-gap: 0.4em;
  }

  .cjp-home-intro__headline-chunk {
    font-size: clamp(2.6rem, 6.5vw, 3.2rem);
    line-height: 1.25;
    align-self: baseline;          /* text baseline-aligned too */
  }

  /* Medallions: lighter overlap on mobile */
  .cjp-home-intro__medallion {
    margin: -1.4rem;
  }

  /* Pill: ~30% smaller vs desktop mobile values, baseline aligned */
  .cjp-home-intro__medallion--portrait {
    align-self: baseline;
  }

  .cjp-home-intro__medallion--portrait img {
    width: 5.46rem;   /* 7.8 * 0.7 */
    height: 8.4rem;   /* 12 * 0.7 */
  }

  /* Circle: ~30% smaller and vertically centered in the row */
  .cjp-home-intro__medallion--circle {
    align-self: center;
  }

  .cjp-home-intro__medallion--circle img {
    width: 5.04rem;   /* 7.2 * 0.7 */
    height: 5.04rem;
  }

  /* Body copy: classic readable block under the hero */
    .cjp-home-intro__body {
        margin-top: 7rem;
        padding-inline: 1rem;
        max-width: 36rem;
        /* margin-inline: auto; */
        margin-left: auto; 
        margin-right: auto;
        text-align: left;
        line-height: 1.5;
    }

}
@media (min-width: 768px) {
  /* Circle medallion should sit vertically centered in the row */
  .cjp-home-intro__medallion--circle {
    align-self: center;
  }
}
/* ============================================================
   CJP STORY PANEL – UNIVERSAL MODULE
   Structure:
   <section class="cjp-story-panel ...">
     .cjp-story-panel__wrapper
       .cjp-story-panel__overlay
       .cjp-container > .cjp-story-panel__inner
         .cjp-story-panel__grid
           .cjp-story-panel__vert-block
           .cjp-story-panel__main
           .cjp-story-panel__image-secondary
   ============================================================ */


/* ------------------------------------------------------------
   BASE SECTION BEHAVIOUR
------------------------------------------------------------ */

.cjp-story-panel {
  position: relative;
  padding: 20px;
  background: transparent;
  overflow: visible;
}

/* .cjp-story-panel--full-vh {
  min-height: 100vh;
  min-height: 100svh;
} */


/* ------------------------------------------------------------
   WRAPPER (emerald / light) + overlay
------------------------------------------------------------ */

.cjp-story-panel__wrapper {
  position: relative;
  background-color: var(--cjp-story-bg, #153e35);
  border-radius: 5px;
  width: 100%;
  height: 100%;
  padding: 48px 48px;
  overflow: hidden;
}

.cjp-story-panel--theme-light .cjp-story-panel__wrapper {
  --cjp-story-bg: #fffdf0;
  color: #153e35;
}

.cjp-story-panel--theme-dark .cjp-story-panel__wrapper {
  --cjp-story-bg: #153e35;
  color: #fffdf0;
}

/* overlay inside the wrapper */
.cjp-story-panel__overlay {
  position: absolute;
  inset: 0;
  opacity: 0.2;
  pointer-events: none;
}

.cjp-story-panel__overlay img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}


/* ------------------------------------------------------------
   INNER GRID (2 columns + vertical label column)
------------------------------------------------------------ */

.cjp-story-panel__inner {
  position: relative;
  z-index: 3;
}

.cjp-story-panel__grid {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 48px;
  align-items: center;
  position: relative;
}


/* ------------------------------------------------------------
   VERTICAL LABEL / TAGLINE COLUMN
------------------------------------------------------------ */

.cjp-story-panel__vert-block {
  writing-mode: vertical-rl;        /* 縦書き */
  text-orientation: mixed;          /* 日本語＋英数字を自然に */
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px;
  white-space: normal;              /* allow natural wrapping / line breaks */
}

.cjp-story-panel--vertical-left .cjp-story-panel__grid {
  grid-template-columns: auto 1fr;
}

.cjp-story-panel--vertical-right .cjp-story-panel__grid {
  grid-template-columns: 1fr auto;
}

.cjp-story-panel__label {
  display: flex;
  flex-direction: column;
  align-self: flex-start;
  gap: 4px;
  text-align: center;
}
.cjp-story-panel--layout-image-center.cjp-story-panel--variant-experience .cjp-story-panel__label {
  align-self: center;
}

.cjp-story-panel__label-jp {
  font-size: 35px;
  line-height: 1.2;
}

.cjp-story-panel__label-en {
  font-size: 18px;
  opacity: 1;
  text-transform: uppercase;
  letter-spacing: 0.7rem;
}

.cjp-story-panel__tagline {
  writing-mode: vertical-rl;
  text-orientation: mixed;
  font-size: 20px;
  line-height: 1.6;
  letter-spacing: 0.1em;
  max-height: 50%;
}


/* ------------------------------------------------------------
   MAIN BLOCK (copy + body + images)
------------------------------------------------------------ */

.cjp-story-panel__main {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.cjp-story-panel__heading {
  margin: 0 0 16px 0;
}

.cjp-story-panel__body {
  margin-bottom: 16px;
}

.cjp-story-panel__body-en {
  opacity: 0.8;
  font-size: 14px;
  line-height: 1.5;
}


/* ------------------------------------------------------------
   MAIN IMAGE
------------------------------------------------------------ */

.cjp-story-panel__image-main {
  position: relative;
  max-width: 690px;
  margin-left: auto;
  margin-right: auto;
}

.cjp-story-panel__image-main img {
  width: 100%;
  height: auto;
  object-fit: contain;
}


/* ------------------------------------------------------------
   SECONDARY IMAGE (corner thumbnail)
------------------------------------------------------------ */

.cjp-story-panel__image-secondary {
  position: absolute;
  z-index: 5;
  width: 290px;
  height: auto;
}

.cjp-story-panel__image-secondary img {
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 5px;
}

/* corner logic */
.cjp-story-panel--thumb-bottom-right .cjp-story-panel__image-secondary {
  bottom: 0;
}

.cjp-story-panel--thumb-bottom-left .cjp-story-panel__image-secondary {
  bottom: 0;
  left: 0;
}

.cjp-story-panel--thumb-top-right .cjp-story-panel__image-secondary {
  right: 0;
  top: 0;
}

.cjp-story-panel--thumb-top-left .cjp-story-panel__image-secondary {
  left: 0;
  top: 0;
}


/* ------------------------------------------------------------
   LAYOUT MODES (DESKTOP)
------------------------------------------------------------ */

@media (min-width: 768px) {

  /* IMAGE CENTERED – base three-column layout */
  .cjp-story-panel--layout-image-center .cjp-story-panel__inner {
    /* ensure section feels like a big emerald panel */
    /* min-height: 80vh; */
    display: flex;
    align-items: stretch;
  }

  .cjp-story-panel--layout-image-center .cjp-story-panel__grid {
    display: grid;
    grid-template-columns: 0.5fr 1.5fr 1fr;
    column-gap: var(--cjp-space-7, 3rem);
    width: 100%;
    align-items: stretch;
    justify-items: stretch;
    align-content: stretch;
  }

  .cjp-story-panel--layout-image-center .cjp-story-panel__col {
    display: flex;
    flex-direction: column;
  }

  /* LEFT COLUMN: label + tagline */
  .cjp-story-panel--layout-image-center .cjp-story-panel__col--left {
    justify-content: space-between;
    align-items: center;
  }

  /* CENTER COLUMN: hero image */
  .cjp-story-panel--layout-image-center .cjp-story-panel__col--center {
    justify-content: center;
    align-items: center;
  }

  .cjp-story-panel--layout-image-center .cjp-story-panel__image-main img {
    display: block;
    max-width: 100%;
    height: auto;
    border-radius: 5px;
  }

  /* RIGHT COLUMN: vertical body + thumb */
  .cjp-story-panel--layout-image-center .cjp-story-panel__col--right {
    align-items: center;
    justify-content: space-between;
    gap: var(--cjp-space-4, 1.5rem);
    position: relative;
    display: flex;
  }

  .cjp-story-panel--layout-image-center .cjp-story-panel__body--vert {
    /*writing-mode: vertical-rl;
    text-orientation: mixed;*/
    max-height: 60%;
    line-height: 4rem;
  }

  .cjp-story-panel--layout-image-center .cjp-story-panel__image-secondary {
    margin-top: auto; /* push to bottom of the column */
  }

  /* --------------------------------------------------------
     COLUMN VARIANTS (desktop only, image-center layout)
     Roles:
       - Left role  = label + vertical tagline
       - Center role= hero image
       - Right role = body copy + thumb
  -------------------------------------------------------- */
  .cjp-story-panel--layout-image-center .cjp-story-panel__col--left,
.cjp-story-panel--layout-image-center .cjp-story-panel__col--center,
.cjp-story-panel--layout-image-center .cjp-story-panel__col--right {
  grid-row: 1;
}

  /* Origin / PDP (L C R) – current default behaviour */
  .cjp-story-panel--layout-image-center.cjp-story-panel--variant-origin .cjp-story-panel__grid {
    grid-template-columns: 0.5fr 1.5fr 1fr;
  }

  .cjp-story-panel--layout-image-center.cjp-story-panel--variant-origin .cjp-story-panel__col--left {
    grid-column: 1;
  }

  .cjp-story-panel--layout-image-center.cjp-story-panel--variant-origin .cjp-story-panel__col--center {
    grid-column: 2;
  }

  .cjp-story-panel--layout-image-center.cjp-story-panel--variant-origin .cjp-story-panel__col--right {
    grid-column: 3;
  }

  /* Craft (L R C) – hero on right, body+thumb center */
  .cjp-story-panel--layout-image-center.cjp-story-panel--variant-craft .cjp-story-panel__grid {
    grid-template-columns: 0.5fr 1fr 1.5fr;
  }

  .cjp-story-panel--layout-image-center.cjp-story-panel--variant-craft .cjp-story-panel__col--left {
    grid-column: 1;
  }

  .cjp-story-panel--layout-image-center.cjp-story-panel--variant-craft .cjp-story-panel__col--right {
    grid-column: 2;
  }

  .cjp-story-panel--layout-image-center.cjp-story-panel--variant-craft .cjp-story-panel__col--center {
    grid-column: 3;
  }

  /* Experience (C L R) – hero on left, label middle */
  .cjp-story-panel--layout-image-center.cjp-story-panel--variant-experience .cjp-story-panel__grid {
    grid-template-columns: 1.5fr 0.5fr 1fr;
  }

  .cjp-story-panel--layout-image-center.cjp-story-panel--variant-experience .cjp-story-panel__col--center {
    grid-column: 1;
  }

  .cjp-story-panel--layout-image-center.cjp-story-panel--variant-experience .cjp-story-panel__col--left {
    grid-column: 2;
  }

  .cjp-story-panel--layout-image-center.cjp-story-panel--variant-experience .cjp-story-panel__col--right {
    grid-column: 3;
  }

}


/* ------------------------------------------------------------
   MOBILE BEHAVIOUR
------------------------------------------------------------ */

@media (max-width: 767px) {

  .cjp-story-panel {
    padding: 10px;

}

  .cjp-story-panel__wrapper {
    padding: 40px 24px;
  }


  /* Default 1-col grid */
  .cjp-story-panel__grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  /* ============================================================
     IMAGE-CENTER MOBILE (all variants)
     Stack: label/tagline → hero → body → thumb
  ============================================================ */

  .cjp-story-panel--layout-image-center .cjp-story-panel__grid {
    display: flex;
    flex-direction: column;
    gap: 24px;
  }

  .cjp-story-panel--layout-image-center .cjp-story-panel__col--left,
  .cjp-story-panel--layout-image-center .cjp-story-panel__col--center,
  .cjp-story-panel--layout-image-center .cjp-story-panel__col--right {
    width: 100%;
    align-items: flex-start;
  }

  /* Label + tagline: horizontal, left aligned */
  .cjp-story-panel--layout-image-center .cjp-story-panel__vert-block,
  .cjp-story-panel--layout-image-center .cjp-story-panel__label,
  .cjp-story-panel--layout-image-center .cjp-story-panel__tagline {
    writing-mode: horizontal-tb;
    text-orientation: initial;
    text-align: center;
  }
  .cjp-story-panel--layout-image-center .cjp-story-panel__tagline {
  padding-top:20px;
  }

  .cjp-story-panel--layout-image-center .cjp-story-panel__label {
    align-self: flex-start;
    gap: 4px;
  }

  /* Experience variant keeps the centered label override from desktop? */
  .cjp-story-panel--layout-image-center.cjp-story-panel--variant-experience .cjp-story-panel__label {
    align-self: center;
  }

  /* Hero image: centered, with top/bottom breathing room */
  .cjp-story-panel--layout-image-center .cjp-story-panel__image-main {
    margin: 16px auto;
    max-width: 100%;
  }

  /* Body text: revert vertical writing to normal horizontal */
  .cjp-story-panel--layout-image-center .cjp-story-panel__body--vert {
    writing-mode: horizontal-tb;
    text-orientation: initial;
    max-height: none;
    line-height: 1.7;
  }

  /* Secondary thumbnail: inline block below body, not floating in a corner */
  .cjp-story-panel__image-secondary {
    position: relative;
    width: 100%;
    max-width: none;
    margin-top: 16px;
  }

  .cjp-story-panel--layout-image-center .cjp-story-panel__image-secondary img {
    display: block;
  }

  /* ============================================================
     NON–IMAGE-CENTER MOBILE (legacy layouts)
     Keep your previous behaviour
  ============================================================ */

  /* vertical text collapses to horizontal */
  .cjp-story-panel__vert-block {
    writing-mode: horizontal-tb;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    gap: 12px;
    white-space: normal;
  }

  .cjp-story-panel--vertical-right .cjp-story-panel__vert-block {
    justify-content: flex-end;
  }

  /* copy + image stacking order for legacy .__main layout */
  .cjp-story-panel--mobile-stack .cjp-story-panel__main {
    order: 2;
  }

  .cjp-story-panel--mobile-stack .cjp-story-panel__image-main {
    order: 3;
  }

  .cjp-story-panel--mobile-stack-reverse .cjp-story-panel__image-main {
    order: 2;
  }

  .cjp-story-panel--mobile-stack-reverse .cjp-story-panel__main {
    order: 3;
  }

}

/* ------------------------------------------------------------
   TABLET TWEAKS
------------------------------------------------------------ */

@media (min-width: 768px) and (max-width: 1024px) {
  .cjp-story-panel__wrapper {
    padding: 56px 40px;
  }
  .cjp-story-panel__grid {
    gap: 40px;
  }
  .cjp-story-panel__image-secondary {
    width: 160px;
  }
}


/* CJP – Spine between sections */

.cjp-spine-between {
  position: relative;
  display: block !important;  /* nuke any accidental display:none */
  height: 0;
  z-index: 50;
}

/* Actual yellow line */
.cjp-spine-between::before {
  content: '';
  position: absolute;
  left: 50%;
  top: -50px;              /* 25px into previous section */
  width: 1px;
  height: 100px;
  transform: translateX(-50%);
  background-color: #f6a800; /* Coracho yellow */
  pointer-events: none;
}


/* =========================================
   CJP – Featured Collection (homepage)
   Vertical JP label + right-aligned cards
   ========================================= */

.cjp-featured-collection__layout {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  column-gap: 4rem;
  align-items: flex-start;
  margin-top: 3rem;
}

/* Vertical Japanese label on the left */
.cjp-featured-collection__vert-label {
  writing-mode: vertical-rl;
  text-orientation: mixed;
  letter-spacing: 0.2em;
  font-size: 44px;
  line-height: 1.6;
  color: #153e35;
}

/* Right column that contains the Dawn slider */
.cjp-featured-collection__slider-col {
  width: 100%;
}

/* Pull the cards into a narrower band and visually to the right */
.cjp-featured-collection__slider-col .slider-mobile-gutter {
  max-width: 1040px;
  margin-left: auto;
}

/* Slightly smaller cards on desktop, to match the editorial PNG */
@media (min-width: 750px) {
  .cjp-featured-collection .product-grid {
    column-gap: 3rem;
  }

  .cjp-featured-collection .card--product {
    max-width: 320px;
    margin-inline: auto;
  }
}

/* Mobile – keep vertical label, slider uses remaining width */
@media (max-width: 749px) {
  .cjp-featured-collection__layout {
    column-gap: 1.5rem;
    align-items: stretch;
  }

  .cjp-featured-collection__vert-label {
    font-size: 18px;
  }

  .cjp-featured-collection__slider-col .slider-mobile-gutter {
    max-width: none;
    margin: 0;
  }

  /* Help the slider feel like a “card strip” */
  .cjp-featured-collection .slider__slide {
    scroll-snap-align: start;
  }
}

/* Tablet tweaks */
@media (min-width: 750px) and (max-width: 1023px) {
  .cjp-featured-collection__layout {
    column-gap: 3rem;
  }

  .cjp-featured-collection .card--product {
    max-width: 280px;
  }
}
@media screen and (min-width: 990px) {
  .cjp-featured-collection .grid--3-col-desktop .grid__item {
    width: calc(30% - (var(--grid-desktop-horizontal-spacing) * 2 / 3));
  }
}

.cjp-featured-collection .grid--3-col-desktop .grid__item {
    width: calc(30% - (var(--grid-desktop-horizontal-spacing) * 2 / 3));
  }



  /* =============================================== */
/* ============= CARD TEXT ALIGN ================= */
/* =============================================== */


/* CJP – Center-align product card text */
.product-card-wrapper .card__information,
.product-card-wrapper .card-information {
  text-align: center;
}

/* Optional: center the rating block as well */
.product-card-wrapper .rating,
.product-card-wrapper .rating-text,
.product-card-wrapper .rating-count {
  text-align: center;
  justify-content: center;
}

/* Optional: center the JP title we added */
.product-card-wrapper .cjp-card-title-jp {
  text-align: center;
}


/* ==========================================
   CJP – Trust Strip
   Module id: trust-strip
   ========================================== */

.cjp-trust-strip {
  background: transparent;
}

.cjp-trust-strip__inner {
  max-width: 1440px;
  margin-inline: auto;
  padding-inline: 24px;
}

.cjp-trust-strip__list {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  column-gap: 40px;
  row-gap: 0;
  align-items: center;
  list-style: none;
  padding: 0;
  margin: 0;
}

.cjp-trust-strip__item {
  text-align: center;
}

/* icon */

.cjp-trust-strip__icon-img {
  display: block;
  margin: 0 auto 8px;
  max-width: 64px;
  height: auto;
}

/* label */

.cjp-trust-strip__label {
  margin: 0;
  line-height: 1.7;
  letter-spacing: 0.12em;
  text-transform: none;
}

/* Optional vertical dividers on desktop */

@media (min-width: 768px) {
  .cjp-trust-strip__item {
    position: relative;
    padding-inline: 16px;
  }

  .cjp-trust-strip__item:not(:first-child)::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
    height: 40px;
    background-color: rgba(0, 0, 0, 0.08);
  }
}

/* Mobile: 1 / 2 / 2 layout, logo solo row */

@media (max-width: 767px) {
  .cjp-trust-strip__inner {
    padding-inline: 16px;
  }

  .cjp-trust-strip__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 24px;
    row-gap: 24px;
  }

  .cjp-trust-strip__item {
    padding-inline: 8px;
  }

  .cjp-trust-strip__item::before {
    display: none;
  }

  .cjp-trust-strip__item--center {
    grid-column: 1 / -1;
    order: -1; /* first row */
  }

  .cjp-trust-strip__item--center .cjp-trust-strip__icon-img {
    max-width: 72px; /* similar visual weight to others */
  }
}
/* ===========================
   CJP – Trust Strip spacing + logo size overrides
   =========================== */

/* Desktop / tablet: 56px top/bottom */
@media (min-width: 768px) {
  .cjp-trust-strip {
    padding-top: 56px;
    padding-bottom: 56px;
  }

  /* Bigger center logo on desktop/tablet */
  .cjp-trust-strip__item--center .cjp-trust-strip__icon-img {
    max-width: 96px!important; /* bigger than the other icons */
  }
}

/* Mobile: softer vertical padding + bigger logo */
@media (max-width: 767px) {
  .cjp-trust-strip {
    padding-top: 40px;
    padding-bottom: 40px;
  }

  .cjp-trust-strip__item--center .cjp-trust-strip__icon-img {
    max-width: 88px!important; /* larger than the other mobile icons */
  }
}

/* ============================================================
   CJP – Product details (PDP hero)
   ============================================================ */

.cjp-product-details {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}

.cjp-product-details__intro {
  margin: 0 0 1.75rem;
  line-height: 1.8;
}

.cjp-product-details__specs {
  margin-bottom: 1.75rem;
}

.cjp-product-details__specs-inner {
  display: flex;
  gap: 3rem;
  padding: 1.25rem 0;
  border-top: 1px solid rgba(21, 62, 53, 0.2);  /* emerald @ 0.2 */
  border-bottom: 1px solid rgba(21, 62, 53, 0.2);
}

.cjp-product-details__specs-col {
  flex: 1 1 0;
}

.cjp-product-details__spec-row {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.75rem;
 padding-bottom: 20px;
  font-size: 1.4rem;
  line-height: 1.6;
    text-align: center;
}

.cjp-product-details__spec-row + .cjp-product-details__spec-row {
  margin-top: 0.25rem;
}

.cjp-product-details__spec-label {
  font-weight: 600;
  font-size: 1.6rem;
  line-height: 1.3;
  white-space: nowrap;
}

.cjp-product-details__specs-col--right {
  position: relative;
}

.cjp-product-details__specs-col--right::before {
  content: "";
  position: absolute;
  left: -1.5rem;
  top: 0.25rem;
  bottom: 0.25rem;
  width: 1px;
  background-color: rgba(21, 62, 53, 0.2);  /* vertical divider */
}

.cjp-product-details__tasting {
  margin-top: 1.25rem;
}

.cjp-product-details__tasting-row {
  margin: 0;
  font-size: 1.4rem;
  line-height: 1.7;
}

.cjp-product-details__tasting-row + .cjp-product-details__tasting-row {
  margin-top: 0.25rem;
}

.cjp-product-details__tasting-label {
  font-weight: 600;
}

@media (max-width: 767px) {
  .cjp-product-details__specs-inner {
    flex-direction: row;
    gap: 0.75rem;
  }

  .cjp-product-details__specs-col--right::before {
    content: none;
  }

  .cjp-product-details__spec-row {
    justify-content: flex-start;
  }

  .cjp-product-details__spec-label {
    min-width: 5em;
  }
}

/* ============================================================
   CJP – Product divider (PDP info column)
   ============================================================ */

.cjp-product-divider {
  width: 100%;
  border-top: 1px solid rgba(21, 62, 53, 0.2); /* emerald @ 0.2 */
  margin: 1.5rem 0;
  display:block!important;
}

/* CJP – PDP-only product title size override */
.template-product .product__title {
  font-size: 3.5rem !important;
  line-height: 1.15;
}


/* =========================================
   CJP FOOTER – 2 COL LAYOUT
   ========================================= */

.cjp-footer {
  background-color: #fffdf0;
  color: #153e35;
  padding: 72px 20px;
  border-top: 1px solid rgba(21, 62, 53, 0.1);
  max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
}

.cjp-footer__inner {
  padding-bottom: 32px;
}

.cjp-footer__cols {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 72px;
  align-items: flex-start;
}

/* LEFT: nav */

.cjp-footer__nav-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.cjp-footer__nav-item {
  display: flex;
  align-items: baseline;
  gap: 40px;
  margin-bottom: 28px;
}

.cjp-footer__nav-index {
  font-size: 13px;
  letter-spacing: 0.15em;
}

.cjp-footer__nav-link {
  font-size: 22px;
  line-height: 1.8;
  text-decoration: none;
  color: inherit;
}

.cjp-footer__nav-link:hover {
  opacity: 0.8;
}

/* RIGHT: content */

.cjp-footer__content-top {
  margin-bottom: 40px;
}

.cjp-footer__tagline-main {
  margin: 0 0 16px 0;
  font-size: 5.6rem;
}

.cjp-footer__tagline-sub {
  margin: 0;
  letter-spacing: 0.15em;
}

.cjp-footer__tagline-mark {
  font-family: "Sequel 100 Wide", var(--font-body-family, sans-serif);
  letter-spacing: 0.3em;
}

/* wrapper bottom = 2 cols */

.cjp-footer__content-bottom {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 40px;
  row-gap: 24px;
}

.cjp-footer__meta-group {
  margin-bottom: 35px;
}

.cjp-footer__meta-label {
  margin: 0 0 4px 0;
  letter-spacing: 0.12em;
}

.cjp-footer__meta-label span {
  font-size: 11px;
  opacity: 0.7;
  margin-left: 4px;
}

.cjp-footer__meta-value {
  margin: 0;
  font-size: 14px;
  line-height: 1.8;
  text-decoration: none;
  color: inherit;
}

.cjp-footer__meta-value:hover {
  opacity: 0.8;
}

.cjp-footer__social-list {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  margin: 0;
  padding: 0;
}

/* bottom strip */

.cjp-footer__bottom {
  border-top: 1px solid rgba(21, 62, 53, 0.1);
  padding-top: 16px;
}

.cjp-footer__bottom-inner {
  display: flex;
  justify-content: flex-end;
}

.cjp-footer__bottom-copy {
  margin: 0;
  font-size: 11px;
  opacity: 0.7;
}

/* =========================================
   RESPONSIVE
========================================= */

@media (max-width: 1023px) {
  .cjp-footer {
    padding-top: 56px;
    padding-bottom: 40px;
  }

  .cjp-footer__cols {
    column-gap: 40px;
  }
}

@media (max-width: 767px) {
  .cjp-footer {
    padding-top: 40px;
    padding-bottom: 32px;
  }

  .cjp-footer__inner {
    padding-bottom: 24px;
  }

  .cjp-footer__cols {
    grid-template-columns: 1fr;
    row-gap: 40px;
  }

  .cjp-footer__content-bottom {
    grid-template-columns: 1fr;
    row-gap: 24px;
  }

  .cjp-footer__nav-link {
    font-size: 18px;
  }

  .cjp-footer__tagline-main {
    font-size: 28px;
  }

  .cjp-footer__tagline-sub {
    font-size: 13px;
  }

  .cjp-footer__bottom-inner {
    justify-content: flex-start;
  }
}

@media (max-width: 767px) {
  .cjp-footer__cols {
    /* override grid */
    display: flex;
    flex-direction: column;
    row-gap: 40px; /* keep the spacing */
  }

  .cjp-footer__col--nav {
    order: 2;
  }

  .cjp-footer__col--content {
    order: 1;
  }

  /* you can keep the rest of your mobile styles as-is */
}


/* CJP – Header layout overrides */
@media screen and (min-width: 990px) {
  /* Make navigation column flexible and icons fixed on the right */
  .header--middle-left {
    grid-template-columns: auto 1fr auto;
  }

  /* Let the inline menu use full width of its grid cell */
  .header--middle-left .header__inline-menu {
    margin-left: 0; /* kill Dawn's negative margin tugging it toward the logo */
  }

  .header--middle-left .header__inline-menu > .list-menu--inline {
    width: 100%;
    justify-content: flex-end; /* push menu items to the right edge */
  }
}

/* ===========================
   CJP – B2B Contact Form
   =========================== */

.cjp-form-section {
  padding: 96px 0;
  max-width:1440px;
  margin-left:auto;
  margin-right:auto;
}

.cjp-form-section__inner {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.1fr);
    gap: 64px;
    align-items: center;
    justify-content: center;
    justify-items: center;
}

/* LEFT: text */

.cjp-form-section__intro {
  max-width: 520px;
}

.cjp-kicker {
  font-size: 13px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  margin-bottom: 16px;
}

.cjp-type-h2-jp {
  font-size: 28px;
  line-height: 1.5;
  margin-bottom: 24px;
}

.cjp-type-body {
  font-size: 16px;
  line-height: 1.8;
  margin-bottom: 16px;
}

.cjp-type-body--small {
  font-size: 12px;
  opacity: 0.8;
}

/* RIGHT: form card */

.cjp-form-section__form {
  max-width: 840px;
}

.cjp-form {
  background-color: #fbf6e5;
  border-radius: 10px;
  border: 1px solid rgba(0, 0, 0, 0.05);
  padding: 32px 32px 36px;
  box-shadow: 0 16px 30px rgba(0, 0, 0, 0.04);
}

/* Rows & fields */

.cjp-form__row {
  margin-bottom: 20px;
}

.cjp-form__row--two {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 16px;
}

.cjp-form__field label,
.cjp-form__label {
  display: block;
  font-size: 14px;
  margin-bottom: 6px;
}

.cjp-form__required {
  font-size: 11px;
  color: #b44a2b;
  margin-left: 4px;
}

/* Inputs */

.cjp-form input[type="text"],
.cjp-form input[type="tel"],
.cjp-form input[type="email"],
.cjp-form textarea {
  width: 100%;
  font-size: 13px;
  line-height: 1.5;
  padding: 10px 12px;
  border-radius: 6px;
  border: 1px solid rgba(0, 0, 0, 0.18);
  outline: none;
  background-color: #fffdf7;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease;
}

.cjp-form input[type="text"]:focus,
.cjp-form input[type="tel"]:focus,
.cjp-form input[type="email"]:focus,
.cjp-form textarea:focus {
  border-color: #153e35;
  box-shadow: 0 0 0 1px rgba(21, 62, 53, 0.18);
  background-color: #ffffff;
}

/* Radio group */

.cjp-form__radio-group {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.cjp-form__radio {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 10px;
  border-radius: 999px;
  border: 1px solid rgba(0, 0, 0, 0.12);
  background-color: #fffdf7;
  font-size: 12px;
  cursor: pointer;
  transition: background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}

.cjp-form__radio input {
  accent-color: #153e35;
}

.cjp-form__radio:hover {
  border-color: #153e35;
  background-color: #f6f0dd;
}

.cjp-form__radio input:checked + span,
.cjp-form__radio input:checked ~ span {
  font-weight: 600;
}

/* Company block */

.cjp-form__company-block {
  margin-bottom: 16px;
}

/* Errors / success */

.cjp-form__errors {
  margin-bottom: 20px;
  font-size: 12px;
  color: #b44a2b;
}

.cjp-form__success {
  margin-bottom: 20px;
  font-size: 13px;
  color: #153e35;
}

/* Submit button – assumes existing cjp-btn */

.cjp-form__submit {
  margin-top: 12px;
  padding:15px;
  width: 100%;
  justify-content: center;
  border-color: #153e35;
  border: solid 1px;
  border-radius:5px;
  color:#153e35;
  background-color:#fffdf0;
}
.cjp-form__submit:hover {
  margin-top: 12px;
  padding:15px;
  width: 100%;
  justify-content: center;
  border-color: #153e35;
  border: solid 1px;
  border-radius:5px;
  color:#fffdf0;
  background-color:#153e35;
}
/* RESPONSIVE */

@media (max-width: 1024px) {
  .cjp-form-section {
    padding: 72px 0;
  }

  .cjp-form-section__inner {
    gap: 40px;
  }

  .cjp-form {
    padding: 24px 20px 28px;
  }
}

@media (max-width: 767px) {
  .cjp-form-section {
    padding: 56px 0;
  }

  .cjp-form-section__inner {
    grid-template-columns: 1fr;
    padding: 0 20px;
  }

  .cjp-form-section__intro {
    max-width: none;
  }

  .cjp-form-section__form {
    max-width: none;
    margin-left: 0;
  }

  .cjp-form__row--two {
    grid-template-columns: 1fr;
  }

  .cjp-form {
    padding: 20px 16px 24px;
  }

  .cjp-type-h2-jp {
    font-size: 22px;
  }
}


/* ==========================================
   STORY PANEL – JP label page-specific logic
   Default: horizontal label everywhere
   Exception: vertical label on WHOLESALE page
   ========================================== */


/* JP label: vertical only on wholesale page */
.cjp-story-panel--wholesale .cjp-story-panel__label-jp {
  writing-mode: vertical-rl;    /* 縦書き */
  text-orientation: mixed;      /* 日本語＋英数字を自然に */
}

.cjp-story-panel--wholesale .cjp-story-panel__body--vert {
  writing-mode: horizontal-tb;    /* 縦書き */
  text-orientation: initial;      /* 日本語＋英数字を自然に */
}

@media (max-width: 767px) {
.cjp-story-panel--wholesale .cjp-story-panel__label-jp {
  writing-mode: horizontal-tb;    /* 縦書き */
  text-orientation: initial;      /* 日本語＋英数字を自然に */
}
}

/* ---------------------------
   CJP – Scroll fade entrance
   --------------------------- */

/* Base state: hidden + slightly offset */
[data-cjp-scroll-fade] {
  opacity: 0;
  transform: translateY(24px);
  transition:
    opacity 500ms ease-out,
    transform 500ms ease-out;
  will-change: opacity, transform;
}

/* Once it has entered the viewport */
[data-cjp-scroll-fade].cjp-in-view {
  opacity: 1;
  transform: translateY(0);
}

/* Respect reduced motion preferences */
@media (prefers-reduced-motion: reduce) {
  [data-cjp-scroll-fade] {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}



/* ======= LANG EN ============ */

html[lang="en"] .cjp-home-hero__heading {
  font-family: 'PF Regal Text Pro', serif;
  font-size: 6rem;
}

html[lang="en"] .cjp-home-hero__copy {
    max-width: 70%;

}

html[lang="en"] .cjp-home-hero__subheading {

font-family: 'PF Regal Text Pro';
font-size: 2rem;

}

/* ===========================================
   CJP – Global Typography (EN only)
   Headings → Sequel
   Body / Paragraphs / General Text → PF Regal
   =========================================== */

/* Headings (EN only) */
html[lang="en"] h1,
html[lang="en"] h2,
html[lang="en"] h3,
html[lang="en"] h4,
html[lang="en"] h5,
html[lang="en"] h6 {
  font-family: 'PF Regal Text Pro', serif;
  letter-spacing: 0.02em;
}

/* Body text (EN only) */
html[lang="en"] body,
html[lang="en"] p,
html[lang="en"] span,
html[lang="en"] li,
html[lang="en"] a,
html[lang="en"] strong,
html[lang="en"] em {
  font-family: 'PF Regal Text Pro', serif;
  font-weight: 400;
  line-height: 1.2;
  text-transform: none; /* ensure no accidental uppercase */
}

html[lang="en"] .cjp-story-panel__label-jp {
  font-family: var(--font-body-family) !important;
  font-style: var(--font-body-style) !important;
  font-weight: var(--font-body-weight) !important;

}

/* ===========================================
   CJP – Story Panel Tagline (EN = horizontal)
   =========================================== */

html[lang="en"] .cjp-story-panel__tagline {
  writing-mode: horizontal-tb;  /* kill vertical layout */
  text-orientation: mixed;
  transform: none;              /* in case JP version uses rotate() */
  white-space: normal;          /* allow normal wrapping */
}

html[lang="en"] .cjp-home-hero__btn {font-size:18px;}


@media (max-width: 767px) {
 html[lang="en"] .cjp-home-hero__copy{max-width: none;}
 html[lang="en"] .cjp-home-hero__heading {font-size: 2.5rem;
writing-mode: horizontal-tb;
transform: none;
position:static;

}
  }


  html[lang="en"] body.template-index .cjp-home-intro__medallion--portrait {
  display: none !important;
}

html[lang="en"] body.template-index .cjp-home-intro__kicker {
    max-width: 80rem;
    margin: 0 auto 10px;
    text-align: left;
    letter-spacing: .2em;
}
@media (min-width: 767px) {
html[lang="en"] .cjp-featured-collection__vert-label {
    writing-mode: horizontal-tb;
    text-orientation: mixed;
    letter-spacing: .2em;
    font-size: 31px;
}

/*

@media (min-width: 768px) {
    html[lang="en"] .cjp-story-panel--layout-image-center.cjp-story-panel .cjp-story-panel__grid {
        grid-template-columns: 1fr 1fr 1fr;
    }
} */


@media (min-width: 768px) {
   html[lang="en"] body.template-page-wholesale .cjp-story-panel--layout-image-center.cjp-story-panel .cjp-story-panel__grid
 {
        grid-template-columns: 1fr 1fr 1fr;
    }
}

html[lang="en"] body.template-page-wholesale .cjp-story-panel--wholesale .cjp-story-panel__label-jp {
    writing-mode: horizontal-tb;
    text-orientation: mixed;
}

html[lang="en"] body.template-page-wholesale .cjp-type-body--small {font-size:16px}
html[lang="en"] body.template-page-wholesale .cjp-kicker {font-size:16px; letter-spacing: 0em;}


html[lang="en"] body.template-page-wholesale .cjp-type-body {
    font-size: 16px;
    line-height: 1;
    margin-bottom: 16px;

}