/*! 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;
    --spacing: 0.25rem;
    --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 {
  .visible {
    visibility: visible;
  }
  .relative {
    position: relative;
  }
  .start {
    inset-inline-start: var(--spacing);
  }
  .table {
    display: table;
  }
  .antialiased {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
}
.format-image {
  height: 300px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #f6f2eb !important;
}
.format-image img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  padding: 10px !important;
  transform: none !important;
}
.format-card:hover .format-image img {
  transform: scale(1.01) !important;
}
@media (max-width: 520px) {
  .format-image {
    height: 280px !important;
  }
}
.hero-real {
  background: #041526;
}
.hero-overlay>p {
  color: #63c8bf;
}
.hero-overlay h1 {
  color: #fff;
}
.hero-overlay h1 em {
  color: #a9ddd1;
}
.hero-overlay>span {
  color: #d6e6e3;
}
.hero-real .button.dark {
  background: #62d2c7;
  color: #062b2a;
}
.hero-real .under-link {
  color: #fff;
  border-color: #9bd6cf;
}
.hero-real .under-link:hover {
  color: #a9ddd1;
  border-color: #a9ddd1;
}
:root {
  --ink: #10273c;
  --ink-2: #1b3852;
  --cream: #fbf8f1;
  --paper: #fffdfa;
  --sand: #efe6d8;
  --muted: #637080;
  --line: #d9d8d2;
  --accent: #ef8d4e;
  --accent-deep: #d96f38;
  --gold: #e6b55c;
}
body {
  background: var(--cream);
  color: var(--ink);
}
.topline {
  height: 34px;
  padding: 0 6vw;
  background: var(--ink);
  color: #e9eef3;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .15em;
}
.site-header {
  height: 82px;
  padding: 0 6vw;
  background: var(--paper);
  border-color: var(--line);
}
.wordmark b {
  color: var(--ink);
  letter-spacing: .16em;
}
.wordmark span {
  color: var(--muted);
}
.site-header nav {
  gap: 30px;
  font-size: 11px;
}
.site-header nav a:hover,.site-footer a:hover {
  color: var(--accent);
}
.nav-cta {
  background: var(--accent);
  border: 0;
  color: #fff;
  padding: 15px 18px;
}
.nav-cta span {
  color: #fff;
}
.kicker,.eyebrow {
  font-size: 10px;
  letter-spacing: .17em;
  font-weight: 800;
  color: var(--accent-deep);
  margin-bottom: 18px;
}
.new-hero {
  min-height: 630px;
  display: grid;
  grid-template-columns: 48% 52%;
  background: var(--cream);
}
.new-hero-copy {
  padding: 105px 5vw 74px 8vw;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.new-hero .eyebrow {
  color: var(--accent-deep);
}
.new-hero h1 {
  font-size: clamp(50px,5.35vw,78px);
  letter-spacing: -.072em;
  line-height: .93;
  margin: 0 0 25px;
}
.new-hero h1 em,.brand-intro h2 em,.section-heading h2 em,.manufacturing-copy h2 em,.new-process h2 em,.new-contact h2 em {
  font: 400 1em Georgia,serif;
  color: var(--accent-deep);
}
.hero-lead {
  max-width: 540px;
  color: var(--muted);
  font-size: 16px;
  line-height: 1.68;
  margin-bottom: 30px;
}
.hero-actions {
  display: flex;
  align-items: center;
  gap: 25px;
}
.button {
  border: 0;
}
.button-accent {
  background: var(--accent);
  color: #fff;
}
.button-accent:hover {
  background: var(--accent-deep);
}
.hero-text-link,.text-link {
  font-size: 11px;
  font-weight: 800;
  border-bottom: 1px solid var(--ink);
  padding-bottom: 7px;
}
.hero-text-link span,.text-link span {
  color: var(--accent);
  font-size: 16px;
  margin-left: 7px;
}
.hero-checks {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  color: var(--ink-2);
  font-size: 10px;
  font-weight: 700;
  margin-top: 31px;
}
.new-hero-media {
  min-height: 630px;
  overflow: hidden;
  background: var(--ink);
}
.new-hero-media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
}
.capability-bar {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  background: var(--paper);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  padding: 0 6vw;
}
.capability-bar span {
  padding: 27px 20px;
  border-right: 1px solid var(--line);
  color: var(--muted);
  font-size: 11px;
}
.capability-bar span:last-child {
  border: 0;
}
.capability-bar b {
  display: block;
  color: var(--ink);
  font: 400 24px Georgia,serif;
  margin-bottom: 3px;
}
.brand-intro {
  max-width: 1180px;
  margin: auto;
  padding: 120px 7vw;
  display: grid;
  grid-template-columns: 1.05fr .75fr;
  gap: 110px;
  align-items: end;
}
.brand-intro h2,.section-heading h2,.manufacturing-copy h2,.new-process h2,.new-contact h2 {
  font-size: clamp(42px,4.6vw,65px);
  letter-spacing: -.068em;
  line-height: .96;
}
.brand-intro>div>p:not(.eyebrow) {
  font-size: 16px;
  color: var(--muted);
  line-height: 1.75;
  margin-bottom: 28px;
}
.new-formats {
  padding: 100px 6vw;
  background: var(--sand);
}
.section-heading {
  display: grid;
  grid-template-columns: 1fr .7fr;
  gap: 80px;
  align-items: end;
  margin: 0 auto 48px;
  max-width: 1310px;
}
.section-heading>p {
  font-size: 14px;
  line-height: 1.7;
  color: var(--muted);
  margin-bottom: 7px;
}
.new-format-grid {
  max-width: 1310px;
  margin: auto;
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 18px;
}
.new-format-card {
  display: flex;
  flex-direction: column;
  background: var(--paper);
  border: 1px solid #e1dcd2;
  min-height: 390px;
  transition: transform .25s,box-shadow .25s;
}
.new-format-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 14px 24px rgba(24,39,52,.11);
}
.card-image {
  height: 222px;
  overflow: hidden;
  background: #f3eee6;
}
.card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .35s;
}
.new-format-card:hover img {
  transform: scale(1.04);
}
.card-body {
  padding: 18px 20px 22px;
}
.card-body small {
  color: var(--accent-deep);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .1em;
}
.card-body h3 {
  font-size: 22px;
  letter-spacing: -.045em;
  margin: 9px 0 7px;
}
.card-body p {
  font-size: 11px;
  line-height: 1.45;
  color: var(--muted);
  min-height: 31px;
  margin-bottom: 18px;
}
.card-body b {
  font-size: 10px;
}
.card-body b span {
  color: var(--accent);
  margin-left: 7px;
}
.manufacturing-band {
  display: grid;
  grid-template-columns: 1.12fr .88fr;
  background: var(--ink);
  color: #fff;
}
.manufacturing-media {
  min-height: 540px;
}
.manufacturing-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.manufacturing-copy {
  padding: 92px 6vw;
  display: flex;
  justify-content: center;
  flex-direction: column;
}
.manufacturing-copy .eyebrow,.detail-quote .kicker {
  color: var(--gold);
}
.manufacturing-copy h2 em,.detail-quote h2 em {
  color: #f0c86d;
}
.manufacturing-copy>p:not(.eyebrow) {
  font-size: 15px;
  line-height: 1.7;
  color: #cfdae3;
  margin: 24px 0 29px;
}
.button-light {
  background: #fff;
  color: var(--ink);
  align-self: flex-start;
}
.new-process {
  padding: 112px 6vw 105px;
  background: var(--paper);
}
.new-process>h2 {
  max-width: 660px;
}
.new-process-grid {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 27px;
  margin-top: 53px;
}
.new-process-grid article {
  border-top: 1px solid #94a5b5;
  padding-top: 16px;
}
.new-process-grid span {
  font-size: 10px;
  color: var(--accent-deep);
  font-weight: 800;
}
.new-process-grid h3 {
  font-size: 17px;
  margin: 38px 0 9px;
}
.new-process-grid p {
  font-size: 12px;
  line-height: 1.6;
  color: var(--muted);
}
.new-contact {
  display: grid;
  grid-template-columns: .92fr 1.08fr;
  gap: 82px;
  padding: 95px 12vw;
  background: #dce6ef;
}
.new-contact>div>p:not(.eyebrow) {
  font-size: 15px;
  line-height: 1.7;
  color: #4f6274;
}
.contact-whatsapp {
  display: inline-block;
  border-bottom: 1px solid var(--ink);
  padding-bottom: 8px;
  font-size: 12px;
  font-weight: 800;
}
.contact-whatsapp b {
  color: var(--accent);
  font-size: 17px;
  margin-left: 8px;
}
.inquiry-form {
  background: var(--paper);
  box-shadow: 0 15px 35px rgba(20,43,64,.10);
}
.inquiry-form .button-primary {
  background: var(--accent);
  color: #fff;
}
.site-footer {
  background: #0b1e30;
  color: #d9e2eb;
}
.site-footer .wordmark b {
  color: #fff;
}
.site-footer>div>b {
  color: #f4bc67;
}
.site-footer p,.site-footer a {
  color: #c0cfdb;
}
.site-footer small {
  border-color: #294052;
  color: #94a6b5;
}
.legal,.page-title,.product-hero,.format-intro,.customization,.faq {
  background: var(--cream);
}
.page-title {
  padding-top: 120px;
  background: var(--sand);
}
.page-title h1 em,.product-hero h1 em,.format-intro h2 em,.customization h2 em,.detail-process h2 em {
  color: var(--accent-deep);
}
.factory-photo {
  background: var(--sand);
}
.facility-grid article {
  background: #e5edf2;
}
.factory-cta,.detail-process {
  background: #dce6ef;
}
.format-summary {
  background: var(--accent);
  color: #fff;
}
.function-ingredients {
  background: #edf0ee;
}
.ingredients-panel {
  background: var(--ink);
}
.ingredients-panel .kicker {
  color: var(--gold);
}
.ingredients-panel>div b {
  color: var(--gold);
}
.detail-quote {
  background: var(--ink);
}
.product-hero {
  background: var(--sand);
}
.button.dark {
  background: var(--ink);
}
@media (max-width:850px) {
  .topline {
    padding: 0 5vw;
  }
  .new-hero,.manufacturing-band,.new-contact,.brand-intro,.section-heading {
    grid-template-columns: 1fr;
    gap: 38px;
  }
  .new-hero-copy {
    padding: 74px 8vw;
  }
  .new-hero-media {
    min-height: 420px;
  }
  .capability-bar {
    grid-template-columns: repeat(2,1fr);
    padding: 0;
  }
  .capability-bar span:nth-child(2) {
    border-right: 0;
  }
  .capability-bar span {
    padding: 22px 8vw;
  }
  .new-format-grid {
    grid-template-columns: repeat(2,1fr);
  }
  .new-process-grid {
    grid-template-columns: repeat(2,1fr);
  }
  .brand-intro {
    padding: 90px 8vw;
  }
  .manufacturing-copy {
    padding: 75px 8vw;
  }
  .new-contact {
    padding: 75px 8vw;
  }
}
@media (max-width:520px) {
  .topline {
    font-size: 7px;
  }
  .topline span:last-child {
    display: none;
  }
  .site-header {
    padding: 0 5vw;
  }
  .new-hero-copy {
    padding: 66px 7vw;
  }
  .new-hero h1 {
    font-size: 49px;
  }
  .hero-actions {
    align-items: flex-start;
    flex-direction: column;
    gap: 18px;
  }
  .new-hero-media {
    min-height: 300px;
  }
  .capability-bar {
    grid-template-columns: 1fr;
  }
  .capability-bar span {
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }
  .new-format-grid,.new-process-grid {
    grid-template-columns: 1fr;
  }
  .new-formats,.new-process {
    padding: 70px 6vw;
  }
  .section-heading {
    gap: 18px;
  }
  .brand-intro {
    padding: 75px 7vw;
  }
  .manufacturing-media {
    min-height: 335px;
  }
  .manufacturing-copy {
    padding: 65px 7vw;
  }
  .new-contact {
    padding: 65px 7vw;
  }
  .card-image {
    height: 240px;
  }
}
:root {
  --ink: #202a33;
  --ink-2: #384651;
  --cream: #f6f5f1;
  --paper: #fcfbf8;
  --sand: #ebe9e2;
  --muted: #65717b;
  --line: #dadbd6;
  --accent: #3166e8;
  --accent-deep: #254fbe;
  --gold: #3166e8;
}
body {
  background: var(--cream);
  letter-spacing: -.01em;
}
.topline {
  background: #202a33;
  color: #dce2e6;
}
.site-header {
  background: #fcfbf8;
}
.site-header nav {
  font-weight: 700;
}
.nav-cta {
  background: var(--ink);
  color: #fff;
  padding: 14px 19px;
}
.nav-cta:hover {
  background: var(--accent);
}
.nav-cta span {
  color: #fff;
}
.eyebrow,.kicker {
  color: var(--accent);
  letter-spacing: .16em;
}
.new-hero {
  min-height: 640px;
  background: #f6f5f1;
  grid-template-columns: 50% 50%;
  border-bottom: 1px solid var(--line);
}
.new-hero-copy {
  padding: 92px 7vw 80px 8vw;
}
.new-hero h1 {
  max-width: 640px;
  font-size: clamp(48px,5vw,74px);
  line-height: .95;
  letter-spacing: -.076em;
}
.new-hero h1 em,.brand-intro h2 em,.section-heading h2 em,.manufacturing-copy h2 em,.new-process h2 em,.new-contact h2 em {
  color: var(--accent-deep);
}
.hero-lead {
  max-width: 470px;
  font-size: 14px;
  color: #52606b;
}
.button-accent,.inquiry-form .button-primary {
  background: var(--ink);
  color: #fff;
}
.button-accent:hover,.inquiry-form .button-primary:hover {
  background: var(--accent);
}
.hero-text-link,.text-link {
  font-size: 10px;
}
.hero-checks {
  color: #485762;
  gap: 16px;
}
.new-hero-media {
  min-height: 640px;
  position: relative;
  background: #121c24;
}
.new-hero-media img {
  object-position: center;
  filter: saturate(.84) contrast(1.04);
}
.new-hero-media:after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(9,18,26,.10);
  pointer-events: none;
}
.capability-bar {
  background: #fcfbf8;
}
.capability-bar span {
  color: #6a747c;
  padding: 25px 24px;
}
.capability-bar b {
  font-family: Arial,Helvetica,sans-serif;
  font-size: 18px;
  font-weight: 800;
  letter-spacing: -.05em;
  color: var(--ink);
}
.brand-intro {
  padding-top: 105px;
  padding-bottom: 105px;
}
.brand-intro>div>p:not(.eyebrow) {
  font-size: 15px;
}
.new-formats {
  background: #ebe9e2;
  padding-top: 88px;
  padding-bottom: 88px;
}
.new-format-card {
  border-color: #dfdfda;
  min-height: 380px;
  box-shadow: none;
}
.new-format-card:hover {
  box-shadow: 0 10px 24px rgba(32,42,51,.08);
}
.card-body small,.card-body b span {
  color: var(--accent);
}
.manufacturing-band {
  background: #202a33;
}
.manufacturing-copy .eyebrow,.detail-quote .kicker {
  color: #90adff;
}
.manufacturing-copy h2 em,.detail-quote h2 em {
  color: #b9c8ff;
}
.button-light {
  background: #f6f5f1;
}
.new-process {
  background: #fcfbf8;
}
.new-process-grid article {
  border-color: #aeb5b8;
}
.new-process-grid span {
  color: var(--accent);
}
.new-contact {
  background: #e8eaeb;
}
.contact-whatsapp b {
  color: var(--accent);
}
.site-footer {
  background: #202a33;
}
.site-footer>div>b {
  color: #91b0ff;
}
.site-footer a:hover {
  color: #a6beff;
}
.page-title,.product-hero {
  background: #ebe9e2;
}
.page-title h1 em,.product-hero h1 em,.format-intro h2 em,.customization h2 em,.detail-process h2 em {
  color: var(--accent-deep);
}
.format-summary {
  background: #202a33;
  color: #fff;
}
.format-summary article {
  border-color: #61717d;
}
.facility-grid article {
  background: #e7eaeb;
}
.factory-cta,.detail-process {
  background: #e8eaeb;
}
.function-ingredients {
  background: #eff0ed;
}
.ingredients-panel {
  background: #202a33;
}
.ingredients-panel .kicker {
  color: #90adff;
}
.ingredients-panel>div b {
  color: #a8beff;
}
.detail-quote {
  background: #202a33;
}
.button.dark {
  background: #202a33;
}
.button.dark:hover {
  background: var(--accent);
}
@media (max-width:850px) {
  .new-hero {
    grid-template-columns: 1fr;
  }
  .new-hero-copy {
    padding: 74px 9vw;
  }
  .new-hero-media {
    min-height: 430px;
  }
  .new-hero-media img {
    object-position: center;
  }
  .capability-bar span {
    padding: 21px 8vw;
  }
}
@media (max-width:520px) {
  .new-hero {
    min-height: auto;
  }
  .new-hero-copy {
    padding: 62px 7vw;
  }
  .new-hero h1 {
    font-size: 46px;
  }
  .new-hero-media {
    min-height: 310px;
  }
  .new-hero-media img {
    object-position: 58% center;
  }
}
.benchmark-home {
  background: #fbfaf6;
  color: #28312b;
  font-family: Arial,Helvetica,sans-serif;
}
.ref-topline {
  height: 34px;
  background: #273725;
  color: #ecf0e9;
  padding: 0 6vw;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .15em;
}
.ref-header {
  height: 80px;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 6vw;
  border-bottom: 1px solid #e5e6df;
  gap: 24px;
}
.ref-brand {
  display: flex;
  flex-direction: column;
  line-height: 1;
}
.ref-brand b {
  font-size: 22px;
  color: #1c62b7;
  letter-spacing: .06em;
}
.ref-brand small {
  font-size: 7px;
  color: #49544a;
  letter-spacing: .12em;
  margin-top: 4px;
}
.ref-header nav {
  display: flex;
  gap: 29px;
  font-size: 11px;
  font-weight: 700;
}
.ref-header nav a:hover {
  color: #738845;
}
.header-quote,.footer-button {
  background: #788b48;
  color: #fff;
  padding: 16px 20px;
  font-size: 11px;
  font-weight: 800;
}
.header-quote b,.footer-button b {
  font-size: 15px;
  margin-left: 8px;
}
.benchmark-hero {
  height: 514px;
  background-position: center;
  background-size: cover;
  position: relative;
  color: #fff;
}
.benchmark-hero-copy {
  padding: 66px 7vw;
  max-width: 630px;
}
.ref-kicker {
  font-size: 9px;
  letter-spacing: .16em;
  font-weight: 800;
  color: #808d56;
  margin: 0 0 20px;
}
.benchmark-hero .ref-kicker {
  color: #c7b778;
}
.benchmark-hero h1 {
  font: 400 clamp(47px,5vw,69px)/.95 Georgia,serif;
  letter-spacing: -.055em;
  margin: 0 0 20px;
}
.benchmark-hero h1 em,.ref-heading h2 em,.partner-copy h2 em,.workflow-section h2 em,.seo-band h2 em,.inquiry-zone h2 em {
  color: #d5b75e;
}
.hero-lead {
  max-width: 490px;
  color: #e0e5df;
  font-size: 14px;
  line-height: 1.55;
  margin-bottom: 24px;
}
.ref-actions {
  display: flex;
  gap: 10px;
}
.ref-button {
  padding: 15px 18px;
  font-size: 11px;
  font-weight: 800;
}
.whatsapp-button {
  background: #19a85d;
  color: #fff;
}
.primary-button {
  background: #778a46;
  color: #fff;
}
.primary-button b {
  font-size: 16px;
  margin-left: 10px;
}
.hero-explore {
  display: block;
  margin-top: 14px;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.hero-explore b {
  margin-left: 8px;
}
.hero-checks {
  display: flex;
  gap: 14px;
  margin-top: 18px;
  font-size: 9px;
  font-weight: 700;
  color: #dce7da;
}
.proof-strip {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  background: #fff;
  border-bottom: 1px solid #e5e5df;
}
.proof-strip>div {
  min-height: 74px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  border-right: 1px solid #e5e5df;
}
.proof-strip>div:last-child {
  border: 0;
}
.proof-strip strong {
  font: 400 22px Georgia,serif;
  color: #717f50;
}
.proof-strip span {
  font-size: 10px;
  color: #70776e;
}
.ref-section {
  padding: 112px 6vw;
}
.ref-heading {
  max-width: 1180px;
  margin: 0 auto 42px;
}
.ref-heading.centered {
  text-align: center;
  max-width: 610px;
}
.ref-heading.split {
  display: grid;
  grid-template-columns: 1fr .75fr;
  gap: 110px;
  align-items: end;
  max-width: 1240px;
}
.ref-heading h2,.partner-copy h2,.workflow-section h2,.seo-band h2,.inquiry-zone h2 {
  font: 400 clamp(42px,4.3vw,60px)/.96 Georgia,serif;
  letter-spacing: -.055em;
  margin: 0;
}
.ref-heading>p {
  font-size: 13px;
  line-height: 1.65;
  color: #778077;
  margin: 0;
}
.ref-heading.centered>p:last-child {
  margin-top: 18px;
}
.reference-dosage-grid {
  max-width: 1240px;
  margin: auto;
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 14px;
}
.reference-dosage-grid article,.ingredient-grid article {
  border: 1px solid #e1e2dc;
  background: #fff;
}
.reference-card-image {
  display: block;
  height: 200px;
  background: #edf1f2;
  overflow: hidden;
}
.reference-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.reference-dosage-grid article>div {
  padding: 19px 16px 15px;
}
.reference-dosage-grid span {
  font: 10px Georgia,serif;
  color: #a5a78e;
}
.reference-dosage-grid h3,.ingredient-grid h3 {
  font: 400 21px Georgia,serif;
  margin: 13px 0 8px;
}
.reference-dosage-grid p,.ingredient-grid p {
  font-size: 10px;
  line-height: 1.52;
  color: #737b74;
  min-height: 60px;
  margin: 0;
}
.card-actions {
  margin-top: 16px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.card-actions a {
  font-size: 9px;
  font-weight: 800;
  text-transform: uppercase;
  color: #727a4b;
}
.card-actions a:last-child {
  color: #394238;
}
.card-actions b {
  font-size: 15px;
  margin-left: 6px;
}
.section-more {
  text-align: center;
  margin-top: 32px;
}
.secondary-button {
  display: inline-block;
  border: 1px solid #cdd1c9;
  color: #263126;
  padding: 14px 18px;
  font-size: 10px;
  font-weight: 800;
}
.secondary-button b {
  font-size: 15px;
  margin-left: 10px;
}
.solutions-section {
  background: #fff;
}
.solution-grid {
  max-width: 1240px;
  margin: auto;
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 14px;
}
.solution-grid article {
  height: 305px;
  position: relative;
  overflow: hidden;
  background: #324;
}
.solution-grid img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.solution-grid article:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg,rgba(13,29,23,.84),rgba(13,29,23,.05) 68%);
}
.solution-grid article>div {
  position: absolute;
  z-index: 1;
  left: 17px;
  right: 17px;
  bottom: 17px;
  color: #fff;
}
.solution-grid span {
  font-size: 8px;
  letter-spacing: .12em;
  color: #d8dfba;
}
.solution-grid h3 {
  font: 400 25px Georgia,serif;
  margin: 7px 0;
}
.solution-grid p {
  display: none;
}
.solution-grid a {
  font-size: 9px;
  font-weight: 800;
  color: #fff;
}
.partner-split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  background: #fff;
}
.partner-visual {
  min-height: 560px;
  position: relative;
  overflow: hidden;
}
.partner-visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.partner-visual>div {
  position: absolute;
  right: 0;
  bottom: 0;
  background: #788a49;
  color: #fff;
  padding: 22px 27px;
  display: flex;
  flex-direction: column;
}
.partner-visual b {
  font: 400 21px Georgia,serif;
}
.partner-visual span {
  font-size: 8px;
  letter-spacing: .12em;
  margin-top: 7px;
}
.partner-copy {
  padding: 95px 10vw 80px 5.5vw;
}
.partner-copy>p:not(.ref-kicker) {
  font-size: 13px;
  line-height: 1.65;
  color: #788078;
  margin: 24px 0;
}
.feature-list {
  border-top: 1px solid #e1e2db;
}
.feature-list article {
  display: grid;
  grid-template-columns: 48px 1fr;
  border-bottom: 1px solid #e1e2db;
  padding: 15px 0;
}
.feature-list span {
  font: 400 13px Georgia,serif;
  color: #afad7e;
}
.feature-list h3 {
  font: 400 17px Georgia,serif;
  margin: 0 0 5px;
}
.feature-list p {
  font-size: 9px;
  line-height: 1.45;
  color: #798079;
  margin: 0;
}
.text-link {
  display: inline-block;
  margin-top: 22px;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  color: #6b7945;
}
.text-link b {
  font-size: 15px;
  margin-left: 8px;
}
.workflow-section {
  padding: 104px 6vw;
  background: #283724;
  color: #fff;
}
.workflow-section .ref-heading p {
  color: #c9cfae;
}
.workflow-section .ref-heading.split>p {
  color: #d2d8cf;
}
.workflow-layout {
  max-width: 1240px;
  margin: auto;
  display: grid;
  grid-template-columns: 1.13fr .87fr;
  gap: 48px;
  align-items: center;
}
.workflow-tree {
  border: 1px solid rgba(233,239,223,.22);
  padding: 25px;
}
.workflow-root {
  width: 250px;
  margin: 0 auto 22px;
  border: 1px solid #a4a768;
  background: #58633c;
  text-align: center;
  padding: 14px;
  display: flex;
  flex-direction: column;
}
.workflow-root span {
  font-size: 9px;
}
.workflow-root b {
  font: 400 23px Georgia,serif;
  margin: 4px 0;
}
.workflow-root small {
  font-size: 8px;
  letter-spacing: .1em;
}
.workflow-node-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 9px;
}
.workflow-node-grid article {
  display: flex;
  gap: 10px;
  border: 1px solid rgba(233,239,223,.17);
  padding: 7px;
  min-height: 72px;
}
.workflow-node-grid img {
  width: 48px;
  object-fit: cover;
}
.workflow-node-grid span {
  display: block;
  font-size: 8px;
  color: #d6c675;
}
.workflow-node-grid b {
  display: block;
  font: 400 16px Georgia,serif;
}
.workflow-node-grid small {
  display: block;
  font-size: 7px;
  line-height: 1.3;
  color: #c4cec0;
  margin-top: 3px;
}
.workflow-detail {
  background: #fff;
  color: #293127;
}
.workflow-detail>img {
  display: block;
  width: 100%;
  height: 185px;
  object-fit: cover;
}
.workflow-detail>div {
  padding: 28px;
}
.workflow-detail p,.workflow-detail small {
  font-size: 8px;
  letter-spacing: .1em;
  color: #68745e;
}
.workflow-detail h3 {
  font: 400 34px Georgia,serif;
  margin: 8px 0 14px;
}
.workflow-detail>div>span {
  display: block;
  font-size: 11px;
  line-height: 1.55;
  color: #758078;
}
.workflow-detail>div>div {
  margin: 20px 0;
  background: #f2f0e6;
  border-left: 2px solid #d0bc67;
  padding: 12px;
}
.workflow-detail>div>div small,.workflow-detail>div>div b {
  display: block;
}
.workflow-detail>div>div b {
  font: 400 17px Georgia,serif;
  margin-top: 4px;
}
.workflow-detail a {
  font-size: 9px;
  font-weight: 800;
  text-transform: uppercase;
  color: #6e7a4c;
}
.ingredients-section {
  background: #fff;
}
.ingredient-grid {
  max-width: 1240px;
  margin: auto;
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 14px;
}
.ingredient-grid>article>div {
  height: 186px;
  position: relative;
}
.ingredient-grid img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ingredient-grid>article>div span {
  position: absolute;
  top: 12px;
  left: 12px;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background: #2f699e;
  color: #fff;
  font-size: 9px;
  display: grid;
  place-items: center;
}
.ingredient-grid section {
  padding: 17px;
}
.ingredient-grid p {
  min-height: 57px;
}
.seo-band {
  padding: 72px 13vw;
  background: #eeebd9;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 90px;
}
.seo-band>div>p:not(.ref-kicker) {
  font-size: 12px;
  line-height: 1.65;
  color: #6e766b;
}
.seo-band a {
  font-size: 9px;
  font-weight: 800;
  text-transform: uppercase;
  color: #727c4c;
}
.seo-band b {
  font-size: 14px;
  margin-left: 8px;
}
.quote-band {
  padding: 70px 7vw;
  background: linear-gradient(105deg,#687946,#2f422c);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.quote-band .ref-kicker {
  color: #e0d395;
}
.quote-band h2 {
  font: 400 43px/1 Georgia,serif;
  margin: 0;
}
.quote-band a {
  font-size: 11px;
  font-weight: 800;
  color: #fff;
}
.quote-band b {
  font-size: 15px;
  margin-left: 8px;
}
.inquiry-zone {
  background: radial-gradient(circle at 10% 80%,#415532,#17291f 50%,#1e2d24);
  color: #fff;
  padding: 90px 12vw;
  display: grid;
  grid-template-columns: .88fr 1.12fr;
  gap: 85px;
}
.inquiry-zone .ref-kicker {
  color: #dfcd7c;
}
.inquiry-zone>div>p:not(.ref-kicker) {
  font-size: 13px;
  line-height: 1.7;
  color: #d4dbd2;
  margin: 25px 0;
}
.inquiry-zone ul {
  padding: 18px 0 0;
  margin: 0;
  border-top: 1px solid rgba(255,255,255,.2);
  list-style: none;
}
.inquiry-zone li {
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
  margin: 12px 0;
  color: #e2e9d8;
}
.inquiry-zone .inquiry-form {
  box-shadow: none;
  background: #fff;
}
.ref-footer {
  padding: 60px 6vw 20px;
  background: #1e3023;
  color: #d2ddd0;
  display: grid;
  grid-template-columns: 1.4fr .75fr .75fr 1.25fr;
  gap: 48px;
}
.ref-footer .ref-brand b {
  color: #fff;
}
.ref-footer .ref-brand small {
  color: #bbc5b9;
}
.ref-footer p,.ref-footer a {
  font-size: 10px;
  line-height: 1.6;
  color: #c7d0c5;
}
.ref-footer>div {
  display: flex;
  flex-direction: column;
  gap: 7px;
}
.ref-footer>div>b {
  font-size: 9px;
  letter-spacing: .12em;
  color: #d2c46e;
  margin-bottom: 7px;
}
.ref-footer .footer-button {
  align-self: flex-start;
  margin-top: 11px;
}
.ref-footer small {
  grid-column: 1/-1;
  border-top: 1px solid rgba(255,255,255,.15);
  padding-top: 17px;
  font-size: 8px;
  color: #8f9c8e;
}
.ref-footer small a {
  margin-left: 12px;
}
@media (max-width:900px) {
  .ref-header nav {
    display: none;
  }
  .benchmark-hero {
    height: auto;
    min-height: 520px;
  }
  .reference-dosage-grid,.solution-grid {
    grid-template-columns: repeat(2,1fr);
  }
  .ref-heading.split,.partner-split,.workflow-layout,.seo-band,.inquiry-zone {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .partner-copy {
    padding: 75px 10vw;
  }
  .ref-footer {
    grid-template-columns: 1fr 1fr;
  }
  .workflow-detail {
    max-width: 520px;
  }
  .quote-band {
    display: block;
  }
  .quote-band a {
    display: inline-block;
    margin-top: 22px;
  }
}
@media (max-width:520px) {
  .ref-topline span:last-child {
    display: none;
  }
  .ref-topline,.ref-header {
    padding: 0 5vw;
  }
  .header-quote {
    font-size: 9px;
    padding: 12px;
  }
  .benchmark-hero-copy {
    padding: 60px 7vw;
  }
  .benchmark-hero h1 {
    font-size: 47px;
  }
  .hero-checks {
    flex-wrap: wrap;
  }
  .proof-strip {
    grid-template-columns: 1fr 1fr;
  }
  .proof-strip>div {
    min-height: 63px;
  }
  .ref-section {
    padding: 75px 6vw;
  }
  .reference-dosage-grid,.solution-grid,.ingredient-grid {
    grid-template-columns: 1fr;
  }
  .workflow-section {
    padding: 75px 6vw;
  }
  .workflow-node-grid {
    grid-template-columns: 1fr;
  }
  .seo-band,.inquiry-zone {
    padding: 65px 7vw;
  }
  .quote-band {
    padding: 60px 7vw;
  }
  .quote-band h2 {
    font-size: 37px;
  }
  .ref-footer {
    grid-template-columns: 1fr;
    padding: 50px 7vw 20px;
  }
  .partner-visual {
    min-height: 370px;
  }
}
.benchmark-hero-wide {
  height: 620px;
  background-position: center;
  background-size: cover;
}
.benchmark-hero-wide .benchmark-hero-copy {
  padding-top: 110px;
}
.premium-form {
  padding: 34px;
  background: #fff;
  box-shadow: 0 18px 48px rgba(0,0,0,.16);
}
.premium-form .form-top {
  position: relative;
  border-bottom: 1px solid #e4e4dd;
  padding-bottom: 18px;
  margin-bottom: 20px;
}
.premium-form .form-top p {
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .14em;
  color: #7a8653;
  margin: 0 0 8px;
}
.premium-form .form-top h3 {
  font: 400 36px/.9 Georgia,serif;
  color: #293127;
  margin: 0;
}
.premium-form .form-top>span {
  position: absolute;
  right: 0;
  bottom: 20px;
  font-size: 9px;
  color: #929a90;
}
.premium-form .form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 15px 22px;
}
.premium-form label {
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .08em;
  color: #596059;
}
.premium-form input,.premium-form select,.premium-form textarea {
  width: 100%;
  padding: 10px 0;
  border: 0;
  border-bottom: 1px solid #d9ddd6;
  background: transparent;
  color: #263026;
  font: 12px Arial;
  margin-top: 5px;
  outline: none;
}
.premium-form textarea {
  height: 74px;
  resize: vertical;
}
.premium-form .full-field {
  display: block;
  margin-top: 15px;
}
.premium-form .form-bottom {
  margin-top: 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}
.premium-form .form-bottom span {
  font-size: 8px;
  line-height: 1.45;
  color: #8b9189;
  max-width: 255px;
}
.premium-form button {
  background: #748846;
  color: #fff;
  border: 0;
  padding: 15px 17px;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .07em;
}
.premium-form button b {
  font-size: 15px;
  margin-left: 8px;
}
.ready-stock-home {
  padding: 90px 8vw;
  display: grid;
  grid-template-columns: .85fr 1.15fr;
  gap: 75px;
  align-items: center;
  background: #fff;
}
.ready-stock-home h2,.stock-intro h2,.stock-product-copy h2 {
  font: 400 clamp(42px,4.2vw,58px)/.96 Georgia,serif;
  letter-spacing: -.055em;
  margin: 0;
}
.ready-stock-home h2 em,.stock-intro h2 em,.stock-product-copy h2 em {
  color: #7a8c4a;
}
.ready-stock-home p:not(.ref-kicker) {
  font-size: 13px;
  line-height: 1.65;
  color: #717970;
}
.ready-stock-home a {
  display: inline-block;
  margin-top: 16px;
  font-size: 10px;
  font-weight: 800;
  color: #6e7a4d;
}
.ready-stock-home-products {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 12px;
}
.ready-stock-home-products img {
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
  background: #fff;
  border: 1px solid #efefec;
}
.function-page,.stock-page,.stock-detail,.function-detail {
  background: #fbfaf6;
}
.listing-hero,.stock-hero {
  padding: 105px 12vw 90px;
  background: #ecebdf;
}
.listing-hero h1,.stock-hero h1 {
  font: 400 clamp(48px,5.5vw,76px)/.94 Georgia,serif;
  letter-spacing: -.065em;
  margin: 0;
}
.listing-hero h1 em,.stock-hero h1 em {
  color: #788b49;
}
.listing-hero>p:not(.ref-kicker) {
  max-width: 610px;
  margin: 24px 0 0;
  font-size: 15px;
  line-height: 1.65;
  color: #6f786e;
}
.function-listing-grid {
  padding: 80px 6vw 110px;
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 16px;
}
.function-listing-grid>a {
  height: 360px;
  position: relative;
  overflow: hidden;
  background: #243;
}
.function-listing-grid img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.function-listing-grid>a:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg,rgba(14,25,18,.88),rgba(14,25,18,.04) 70%);
}
.function-listing-grid a>div {
  position: absolute;
  z-index: 1;
  left: 20px;
  right: 20px;
  bottom: 20px;
  color: #fff;
}
.function-listing-grid span {
  font-size: 8px;
  letter-spacing: .11em;
  color: #e3d889;
}
.function-listing-grid h2 {
  font: 400 29px Georgia,serif;
  margin: 8px 0;
}
.function-listing-grid p {
  font-size: 10px;
  line-height: 1.5;
  color: #e3eae1;
}
.function-listing-grid b {
  font-size: 9px;
  text-transform: uppercase;
}
.function-detail-hero {
  min-height: 530px;
  background: #203025;
  color: #fff;
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.function-detail-hero>img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.function-detail-hero>div {
  padding: 80px 8vw 60px 5vw;
}
.function-detail-hero>div>a {
  font-size: 10px;
  font-weight: 700;
}
.function-detail-hero .ref-kicker {
  color: #d8cb7d;
  margin-top: 48px;
}
.function-detail-hero h1 {
  font: 400 clamp(46px,5vw,68px)/.95 Georgia,serif;
  letter-spacing: -.06em;
  margin: 0;
}
.function-detail-hero h1 em {
  color: #d7b964;
}
.function-detail-hero>div>p:not(.ref-kicker) {
  font-size: 14px;
  line-height: 1.7;
  color: #d3dcd0;
  margin-top: 23px;
}
.solution-overview {
  padding: 105px 12vw;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 90px;
}
.solution-overview h2 {
  font: 400 clamp(40px,4.5vw,60px)/.96 Georgia,serif;
  margin: 0;
}
.solution-overview h2 em {
  color: #788b49;
}
.solution-overview>div>p:not(.ref-kicker) {
  font-size: 15px;
  line-height: 1.75;
  color: #6d766d;
}
.solution-overview a {
  font-size: 10px;
  font-weight: 800;
  color: #6e7a48;
}
.solution-specs {
  padding: 0 8vw 100px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}
.solution-specs article {
  background: #edf0e9;
  padding: 28px;
}
.solution-specs p {
  font-size: 9px;
  letter-spacing: .13em;
  font-weight: 800;
  color: #737f54;
}
.solution-specs span {
  display: inline-block;
  border: 1px solid #cfd6c8;
  padding: 9px 11px;
  margin: 5px 4px 0 0;
  font-size: 11px;
}
.function-quote {
  padding: 90px 12vw;
  background: #283724;
  color: #fff;
  display: grid;
  grid-template-columns: .75fr 1.25fr;
  gap: 75px;
}
.function-quote .ref-kicker {
  color: #d8cd87;
}
.function-quote h2 {
  font: 400 53px/.95 Georgia,serif;
  margin: 0;
}
.function-quote h2 em {
  color: #d8b962;
}
.stock-hero {
  padding: 80px 12vw;
  display: grid;
  grid-template-columns: 1fr .8fr;
  gap: 65px;
  align-items: center;
}
.stock-hero>div>p:not(.ref-kicker) {
  font-size: 14px;
  line-height: 1.65;
  color: #687169;
  margin-top: 22px;
}
.stock-hero a {
  display: inline-block;
  margin-top: 18px;
  background: #788b48;
  color: #fff;
  padding: 14px 18px;
  font-size: 10px;
  font-weight: 800;
}
.stock-hero img {
  width: 100%;
  max-height: 380px;
  object-fit: contain;
  background: #fff;
}
.stock-intro {
  padding: 80px 10vw 45px;
  text-align: center;
}
.stock-intro>p {
  font-size: 9px;
  letter-spacing: .13em;
  font-weight: 800;
  color: #778a48;
}
.stock-intro>span {
  display: block;
  max-width: 580px;
  margin: 20px auto;
  color: #747a73;
  font-size: 13px;
  line-height: 1.6;
}
.stock-grid {
  padding: 45px 8vw 100px;
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 16px;
}
.stock-grid>a {
  border: 1px solid #e0e2dd;
  background: #fff;
}
.stock-grid img {
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
}
.stock-grid> a>div {
  padding: 19px;
}
.stock-grid span {
  font-size: 9px;
  text-transform: uppercase;
  color: #76844d;
}
.stock-grid h2 {
  font: 400 25px/1 Georgia,serif;
  margin: 10px 0;
}
.stock-grid p {
  font-size: 11px;
  line-height: 1.55;
  color: #757d74;
  min-height: 67px;
}
.stock-grid b {
  font-size: 9px;
  text-transform: uppercase;
  color: #6e7d49;
}
.stock-product-hero {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  padding: 70px 10vw;
  background: #f0efe8;
  align-items: center;
}
.stock-product-hero>div>a:first-child {
  font-size: 10px;
  font-weight: 700;
}
.stock-product-hero .ref-kicker {
  margin-top: 45px;
}
.stock-product-hero h1 {
  font: 400 clamp(47px,5.2vw,70px)/.94 Georgia,serif;
  margin: 0;
}
.stock-product-hero h1 em {
  color: #798c4b;
}
.stock-product-hero p:not(.ref-kicker) {
  font-size: 14px;
  line-height: 1.7;
  color: #687169;
  margin: 23px 0;
}
.stock-product-hero>div>a:last-child {
  font-size: 10px;
  font-weight: 800;
  color: #6d7b49;
}
.stock-product-hero>img {
  width: 100%;
  max-height: 510px;
  object-fit: contain;
  background: #fff;
}
.stock-features {
  padding: 28px 10vw;
  background: #788b49;
  color: #fff;
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 15px;
}
.stock-features article {
  border-left: 1px solid rgba(255,255,255,.4);
  padding-left: 16px;
}
.stock-features span {
  font-size: 9px;
  color: #e8dd9e;
}
.stock-features h3 {
  font: 400 18px Georgia,serif;
  margin: 5px 0;
}
.stock-gallery {
  padding: 85px 13vw;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 26px;
}
.stock-gallery img {
  width: 100%;
  background: #fff;
  border: 1px solid #ecece7;
}
.stock-product-copy {
  padding: 95px 12vw;
  background: #fff;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 85px;
}
.stock-product-copy>div>p:not(.ref-kicker) {
  font-size: 14px;
  line-height: 1.7;
  color: #6d756c;
}
.stock-product-copy ul {
  padding: 10px 0 0;
  margin: 0;
  list-style: none;
  border-top: 1px solid #dfdfd8;
}
.stock-product-copy li {
  font-size: 11px;
  padding: 12px 0;
  border-bottom: 1px solid #dfdfd8;
  color: #596258;
}
.stock-inquiry {
  padding: 80px 19vw;
  background: #263624;
}
.factory-hero-new {
  height: 550px;
  position: relative;
  overflow: hidden;
  color: #fff;
}
.factory-hero-new>img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.factory-hero-new:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg,rgba(11,18,26,.9),rgba(11,18,26,.2));
}
.factory-hero-new>div {
  position: absolute;
  z-index: 1;
  top: 112px;
  left: 10vw;
  max-width: 560px;
}
.factory-hero-new .ref-kicker {
  color: #d7c878;
}
.factory-hero-new h1 {
  font: 400 clamp(48px,5vw,70px)/.95 Georgia,serif;
  margin: 0;
}
.factory-hero-new h1 em {
  color: #d8bb66;
}
.factory-hero-new p:not(.ref-kicker) {
  font-size: 15px;
  line-height: 1.7;
  color: #e0e8df;
  margin: 20px 0;
}
.factory-hero-new a,.factory-inquiry-cta a {
  font-size: 10px;
  font-weight: 800;
  color: #fff;
}
.factory-intro-new {
  padding: 95px 14vw 60px;
  text-align: center;
}
.factory-intro-new h2 {
  font: 400 clamp(42px,4.5vw,60px)/.96 Georgia,serif;
  margin: 0;
}
.factory-intro-new h2 em,.factory-inquiry-cta h2 em {
  color: #788b4b;
}
.factory-intro-new>p:not(.ref-kicker) {
  font-size: 14px;
  line-height: 1.7;
  color: #6c756b;
  max-width: 660px;
  margin: 23px auto;
}
.factory-tree-section {
  padding: 60px 8vw 105px;
  background: #eff1ea;
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 50px;
  align-items: center;
}
.factory-tree {
  position: relative;
  border: 1px solid #d6dbce;
  padding: 36px 30px;
}
.tree-title {
  width: 260px;
  margin: auto;
  background: #788c4b;
  color: #fff;
  text-align: center;
  padding: 15px;
  display: flex;
  flex-direction: column;
}
.tree-title span,.tree-title small {
  font-size: 8px;
  letter-spacing: .12em;
}
.tree-title b {
  font: 400 24px Georgia,serif;
  margin: 5px 0;
}
.tree-line {
  height: 25px;
  border-left: 1px solid #a2ae92;
  margin-left: 50%;
}
.tree-card {
  position: relative;
  width: 46%;
  background: #fff;
  border: 1px solid #dbe0d4;
  margin-bottom: 14px;
  padding: 15px;
}
.tree-card:nth-of-type(odd) {
  margin-left: auto;
}
.tree-card:before {
  content: "";
  position: absolute;
  top: 50%;
  width: 11%;
  border-top: 1px solid #a5af99;
}
.tree-card:nth-of-type(even):before {
  right: 100%;
}
.tree-card:nth-of-type(odd):before {
  left: 100%;
}
.tree-card span {
  font-size: 9px;
  color: #7d8d52;
}
.tree-card h3 {
  font: 400 18px Georgia,serif;
  margin: 6px 0;
}
.tree-card p {
  font-size: 9px;
  line-height: 1.45;
  color: #737b72;
  margin: 0;
}
.factory-tree-section aside {
  background: #fff;
  padding-bottom: 30px;
}
.factory-tree-section aside img {
  width: 100%;
  height: 205px;
  object-fit: cover;
}
.factory-tree-section aside>p,.factory-tree-section aside>h2,.factory-tree-section aside>span,.factory-tree-section aside>a {
  display: block;
  margin-left: 30px;
  margin-right: 30px;
}
.factory-tree-section aside>p {
  font-size: 8px;
  letter-spacing: .12em;
  color: #7b8852;
  margin-top: 27px;
}
.factory-tree-section aside h2 {
  font: 400 37px/.95 Georgia,serif;
  margin-top: 7px;
  margin-bottom: 15px;
}
.factory-tree-section aside>span {
  font-size: 11px;
  line-height: 1.55;
  color: #717970;
}
.factory-tree-section aside>a {
  margin-top: 22px;
  font-size: 9px;
  font-weight: 800;
  color: #6e7c49;
}
.factory-controls {
  padding: 105px 10vw;
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 60px;
  background: #fff;
}
.factory-controls h2 {
  font: 400 clamp(43px,4.3vw,58px)/.95 Georgia,serif;
  margin: 0;
}
.factory-controls h2 em {
  color: #788a4c;
}
.factory-control-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1px;
  background: #dfe3dc;
}
.factory-control-grid article {
  background: #f7f7f3;
  padding: 24px;
}
.factory-control-grid b {
  font-size: 10px;
  color: #7b8b4e;
}
.factory-control-grid h3 {
  font: 400 19px Georgia,serif;
  margin: 35px 0 7px;
}
.factory-control-grid p {
  font-size: 11px;
  line-height: 1.55;
  color: #737a72;
}
.factory-inquiry-cta {
  padding: 90px 15vw;
  text-align: center;
  background: #e9eadf;
}
.factory-inquiry-cta h2 {
  font: 400 clamp(42px,4.5vw,61px)/.95 Georgia,serif;
  margin: 0 0 24px;
}
.factory-inquiry-cta a {
  color: #687a45;
}
.stock-format {
  display: block;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  color: #778a49;
  margin: 13px 0 0;
  text-transform: uppercase;
}
.stock-selling {
  padding: 92px 12vw;
  background: #fff;
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 85px;
}
.stock-selling h2,.stock-ingredients h2 {
  font: 400 clamp(40px,4.3vw,58px)/.96 Georgia,serif;
  margin: 0;
}
.stock-selling h2 em,.stock-ingredients h2 em {
  color: #788b49;
}
.stock-selling>div:last-child {
  border-top: 1px solid #dfe2dc;
}
.stock-selling article {
  display: grid;
  grid-template-columns: 46px 1fr;
  column-gap: 12px;
  padding: 21px 0;
  border-bottom: 1px solid #dfe2dc;
}
.stock-selling article span {
  grid-row: 1/3;
  font: 400 14px Georgia,serif;
  color: #a3a780;
}
.stock-selling h3 {
  font: 400 21px Georgia,serif;
  margin: 0;
}
.stock-selling p {
  font-size: 12px;
  line-height: 1.55;
  color: #707971;
  margin: 7px 0 0;
}
.stock-ingredients {
  padding: 90px 12vw;
  background: #edf0e9;
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 85px;
}
.stock-ingredients>div>p:not(.ref-kicker) {
  font-size: 13px;
  line-height: 1.65;
  color: #6c756c;
  margin-top: 22px;
}
.stock-ingredient-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.stock-ingredient-list article {
  padding: 22px;
  background: #fff;
  border: 1px solid #e1e4dc;
}
.stock-ingredient-list h3 {
  font: 400 21px Georgia,serif;
  margin: 0 0 9px;
}
.stock-ingredient-list p {
  font-size: 11px;
  line-height: 1.55;
  color: #737b72;
  margin: 0;
}
@media (max-width:900px) {
  .stock-selling,.stock-ingredients {
    grid-template-columns: 1fr;
    gap: 38px;
  }
}
@media (max-width:520px) {
  .stock-selling,.stock-ingredients {
    padding: 65px 7vw;
  }
  .stock-ingredient-list {
    grid-template-columns: 1fr;
  }
}
.stock-format-intro {
  padding: 82px 10vw 40px;
  text-align: center;
  background: #fff;
}
.stock-format-intro h2 {
  font: 400 clamp(42px,4.6vw,62px)/.96 Georgia,serif;
  margin: 0;
}
.stock-format-intro h2 em {
  color: #788b49;
}
.stock-format-intro>p:not(.ref-kicker) {
  max-width: 590px;
  margin: 19px auto 0;
  color: #717a70;
  font-size: 13px;
  line-height: 1.6;
}
.stock-format-grid {
  padding: 45px 7vw 100px;
  background: #fff;
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 16px;
}
.stock-format-grid>a {
  background: #fbfaf6;
  border: 1px solid #e1e3dd;
  transition: transform .2s,box-shadow .2s;
}
.stock-format-grid>a:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 26px rgba(30,43,31,.1);
}
.stock-format-grid img {
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
  display: block;
  background: #fff;
}
.stock-format-grid> a>div {
  padding: 19px;
}
.stock-format-grid span {
  font-size: 8px;
  color: #788a4c;
  letter-spacing: .1em;
}
.stock-format-grid h2 {
  font: 400 22px/1.02 Georgia,serif;
  margin: 11px 0 9px;
}
.stock-format-grid p {
  font-size: 11px;
  line-height: 1.5;
  min-height: 32px;
  color: #747b73;
  margin: 0 0 18px;
}
.stock-format-grid b {
  font-size: 9px;
  text-transform: uppercase;
  color: #6f7e49;
}
@media (max-width:900px) {
  .stock-format-grid {
    grid-template-columns: repeat(2,1fr);
    padding-left: 8vw;
    padding-right: 8vw;
  }
}
@media (max-width:520px) {
  .stock-format-intro {
    padding: 65px 7vw 30px;
  }
  .stock-format-grid {
    grid-template-columns: 1fr;
    padding: 36px 7vw 70px;
  }
}
.stock-ingredients-copy img {
  width: 100%;
  margin-top: 26px;
  background: #fff;
  border: 1px solid #dfe3dc;
}
.stock-ingredient-list article {
  position: relative;
}
.stock-ingredient-list article>span {
  display: block;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .12em;
  color: #81915a;
  margin-bottom: 14px;
}
.stock-ingredient-list small {
  display: block;
  font-size: 9px;
  line-height: 1.45;
  color: #899087;
  margin-top: 13px;
  border-top: 1px solid #e6e9e3;
  padding-top: 11px;
}
.stock-ordering {
  padding: 80px 12vw;
  background: #fff;
  text-align: center;
}
.stock-ordering h2 {
  font: 400 clamp(38px,4vw,55px)/.97 Georgia,serif;
  margin: 0;
}
.stock-ordering h2 em {
  color: #788b49;
}
.stock-ordering>div {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  max-width: 980px;
  margin: 38px auto 0;
  border-top: 1px solid #dce1d8;
  border-left: 1px solid #dce1d8;
  text-align: left;
}
.stock-ordering article {
  min-height: 126px;
  padding: 21px;
  border-right: 1px solid #dce1d8;
  border-bottom: 1px solid #dce1d8;
}
.stock-ordering b {
  display: block;
  font: 400 15px Georgia,serif;
  color: #9aa477;
}
.stock-ordering span {
  display: block;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .11em;
  color: #7c885b;
  margin: 19px 0 7px;
}
.stock-ordering strong {
  display: block;
  font: 400 20px/1.15 Georgia,serif;
  color: #2e392e;
}
@media (max-width:900px) {
  .stock-ordering>div {
    grid-template-columns: 1fr;
  }
  .stock-ordering {
    padding-left: 7vw;
    padding-right: 7vw;
  }
}
@media (max-width:520px) {
  .stock-ordering {
    padding-top: 64px;
    padding-bottom: 64px;
  }
}
.stock-ingredients-copy img {
  display: none;
}
.stock-ingredient-list article {
  padding: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.stock-ingredient-list article>img {
  width: 100%;
  aspect-ratio: 1.45;
  object-fit: cover;
  display: block;
  background: #f8f6ef;
}
.stock-ingredient-list article>div {
  padding: 19px 21px 21px;
}
.stock-ingredient-list article>div>span {
  display: block;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .12em;
  color: #81915a;
  margin-bottom: 11px;
}
.stock-ingredient-list article h3 {
  font-size: 20px;
}
.stock-ingredient-list article p {
  min-height: 35px;
}
.ingredient-story-panel {
  margin-top: 28px;
  background: #fff;
  border: 1px solid #dfe3dc;
}
.ingredient-story-panel>img {
  display: block !important;
  width: 100% !important;
  height: 255px;
  object-fit: contain;
  background: #faf9f4;
  margin: 0 !important;
  border: 0 !important;
}
.ingredient-story-panel>div {
  padding: 19px 22px 7px;
}
.ingredient-story-panel>div span {
  display: block;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .12em;
  color: #7a8b4f;
}
.ingredient-story-panel h3 {
  font: 400 27px/1 Georgia,serif;
  margin: 9px 0;
}
.ingredient-story-panel p {
  font-size: 11px !important;
  line-height: 1.5 !important;
  color: #737b72 !important;
  margin: 0 !important;
}
.ingredient-story-panel ul {
  list-style: none;
  padding: 13px 22px 18px;
  margin: 13px 0 0;
  border-top: 1px solid #e1e4dd;
}
.ingredient-story-panel li {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 8px 0;
  border-bottom: 1px solid #edf0ea;
}
.ingredient-story-panel li:last-child {
  border-bottom: 0;
}
.ingredient-story-panel li b {
  font-size: 8px;
  letter-spacing: .1em;
  color: #7a8758;
}
.ingredient-story-panel li span {
  font-size: 10px;
  color: #394238;
  text-align: right;
}
@media (max-width:900px) {
  .ingredient-story-panel>img {
    height: 300px;
  }
}
@media (max-width:520px) {
  .ingredient-story-panel>img {
    height: 240px;
  }
  .ingredient-story-panel h3 {
    font-size: 24px;
  }
}
.stock-ingredients-full {
  display: block;
  padding-top: 80px;
}
.stock-ingredients-full .stock-ingredients-copy {
  max-width: 680px;
  margin: 0 auto 35px;
  text-align: center;
}
.stock-ingredients-full .stock-ingredient-list {
  grid-template-columns: repeat(3,1fr);
  max-width: 1240px;
  margin: auto;
}
.stock-ingredients-full .stock-ingredient-list article>img {
  aspect-ratio: 1.32;
}
.stock-ingredients-full .stock-ingredient-list article p {
  min-height: 48px;
}
@media (max-width:900px) {
  .stock-ingredients-full .stock-ingredient-list {
    grid-template-columns: repeat(2,1fr);
  }
}
@media (max-width:520px) {
  .stock-ingredients-full {
    padding: 64px 7vw;
  }
  .stock-ingredients-full .stock-ingredient-list {
    grid-template-columns: 1fr;
  }
}
.stock-product-listing {
  padding: 90px 12vw;
  background: #fff;
  display: grid;
  grid-template-columns: .82fr 1.18fr;
  gap: 75px;
}
.stock-product-listing h2,.stock-product-explainer h2 {
  font: 400 clamp(39px,4.1vw,56px)/.96 Georgia,serif;
  margin: 0;
  letter-spacing: -.045em;
}
.stock-product-listing h2 em,.stock-product-explainer h2 em {
  color: #788b49;
}
.stock-product-listing p:not(.ref-kicker),.stock-product-explainer p:not(.ref-kicker) {
  font-size: 13px;
  line-height: 1.7;
  color: #6b746b;
}
.stock-product-listing dl {
  margin: 0;
  border-top: 1px solid #dfe3dc;
}
.stock-product-listing dl>div {
  display: grid;
  grid-template-columns: 190px 1fr;
  gap: 22px;
  padding: 18px 0;
  border-bottom: 1px solid #dfe3dc;
}
.stock-product-listing dt {
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #7d8a55;
}
.stock-product-listing dd {
  margin: 0;
  font-size: 13px;
  line-height: 1.55;
  color: #2b362d;
}
.stock-product-explainer {
  padding: 0 12vw 92px;
  background: #fff;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
.stock-product-explainer article {
  background: #eff1ea;
  border-left: 2px solid #c9a63b;
  padding: 34px;
}
.stock-product-explainer ul {
  list-style: none;
  margin: 20px 0 0;
  padding: 0;
  border-top: 1px solid #d7ddd2;
}
.stock-product-explainer li {
  font-size: 12px;
  line-height: 1.55;
  color: #4f5a50;
  padding: 12px 0;
  border-bottom: 1px solid #d7ddd2;
}
.stock-product-explainer li:before {
  content: "&#10003;;
  font-weight: 800;
  color: #788b49;
  margin-right: 9px;
}
.stock-ordering article:nth-child(2) {
  background: #f7f4e8;
}
.stock-ordering article:nth-child(3) {
  background: #eef2e8;
}
@media (max-width:900px) {
  .stock-product-listing,.stock-product-explainer {
    grid-template-columns: 1fr;
    gap: 34px;
    padding-left: 7vw;
    padding-right: 7vw;
  }
  .stock-product-listing dl>div {
    grid-template-columns: 1fr;
    gap: 6px;
  }
}
@media (max-width:520px) {
  .stock-product-listing {
    padding-top: 64px;
    padding-bottom: 64px;
  }
  .stock-product-explainer {
    padding-bottom: 64px;
  }
  .stock-product-explainer article {
    padding: 24px;
  }
}
.stock-related-products {
  padding: 92px 8vw 105px;
  background: #fbfaf6;
}
.stock-related-products>div:first-child {
  max-width: 760px;
  margin: 0 auto 34px;
  text-align: center;
}
.stock-related-products h2 {
  font: 400 clamp(39px,4.2vw,58px)/.96 Georgia,serif;
  margin: 0;
  letter-spacing: -.05em;
}
.stock-related-products h2 em {
  color: #788b49;
}
.stock-related-products>div:first-child>p:not(.ref-kicker) {
  font-size: 13px;
  line-height: 1.65;
  color: #6d766d;
  max-width: 610px;
  margin: 18px auto 0;
}
.stock-related-products>div:last-child {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 16px;
  max-width: 1380px;
  margin: 0 auto;
}
.stock-related-products a {
  background: #fff;
  border: 1px solid #dfe2dc;
  text-decoration: none;
  color: #223126;
  display: flex;
  flex-direction: column;
  min-width: 0;
  transition: transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.stock-related-products a:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 34px rgba(30,43,31,.12);
  border-color: #bcc6ad;
}
.stock-related-products img {
  display: block;
  width: 100%;
  aspect-ratio: 1;
  object-fit: contain;
  background: #fff;
  border-bottom: 1px solid #eaebe6;
}
.stock-related-products section {
  padding: 18px;
  display: flex;
  flex: 1;
  flex-direction: column;
}
.stock-related-products span {
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #7c8a55;
}
.stock-related-products h3 {
  font: 400 23px/1.04 Georgia,serif;
  margin: 10px 0;
}
.stock-related-products p {
  font-size: 11px;
  line-height: 1.5;
  color: #6f786f;
  margin: 0 0 18px;
  min-height: 50px;
}
.stock-related-products b {
  font-size: 9px;
  text-transform: uppercase;
  color: #6e7d49;
  margin-top: auto;
}
@media (max-width:1050px) {
  .stock-related-products>div:last-child {
    grid-template-columns: repeat(2,1fr);
  }
}
@media (max-width:520px) {
  .stock-related-products {
    padding: 64px 6vw;
  }
  .stock-related-products>div:last-child {
    grid-template-columns: 1fr;
  }
  .stock-related-products p {
    min-height: 0;
  }
}
.oral-film-stock-hero {
  min-height: 690px;
  padding: 92px 10vw;
  background: #eaf1f7;
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 60px;
  align-items: center;
}
.oral-film-stock-hero>div>a:first-child {
  font-size: 10px;
  font-weight: 700;
}
.oral-film-stock-hero .ref-kicker {
  margin-top: 42px;
  color: #397a99;
}
.oral-film-stock-hero h1 {
  font: 400 clamp(44px,5vw,70px)/.94 Georgia,serif;
  margin: 0;
}
.oral-film-stock-hero h1 em {
  color: #368ba9;
}
.oral-film-stock-hero p:not(.ref-kicker) {
  font-size: 14px;
  line-height: 1.7;
  color: #566b77;
  margin: 22px 0;
}
.oral-film-stock-hero>div>span {
  display: block;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .08em;
  color: #3e7d98;
  text-transform: uppercase;
}
.oral-film-stock-hero>img {
  width: 100%;
  max-height: none;
  object-fit: cover;
  background: #fff;
}
.oral-film-cta {
  display: inline-block !important;
  margin-top: 22px;
  background: #2689a9;
  color: #fff;
  padding: 15px 18px !important;
  font-size: 10px !important;
  font-weight: 800;
}
.oral-film-stock-intro {
  padding: 90px 10vw;
  background: #fff;
  text-align: center;
}
.oral-film-stock-intro h2 {
  font: 400 clamp(40px,4.4vw,60px)/.96 Georgia,serif;
  margin: 0;
}
.oral-film-stock-intro h2 em,.oral-film-stock-order h2 em {
  color: #2d88a9;
}
.oral-film-stock-intro>div {
  max-width: 1200px;
  margin: 42px auto 0;
  display: grid;
  grid-template-columns: repeat(4,1fr);
  border-left: 1px solid #dce6eb;
  border-top: 1px solid #dce6eb;
  text-align: left;
}
.oral-film-stock-intro article {
  padding: 25px 20px;
  border-right: 1px solid #dce6eb;
  border-bottom: 1px solid #dce6eb;
  min-height: 185px;
}
.oral-film-stock-intro article span {
  font-size: 9px;
  color: #368aa6;
}
.oral-film-stock-intro h3 {
  font: 400 22px Georgia,serif;
  margin: 27px 0 9px;
}
.oral-film-stock-intro p {
  font-size: 11px;
  line-height: 1.55;
  color: #73818a;
  margin: 0;
}
.oral-film-stock-order {
  padding: 80px 12vw;
  background: #dcecf2;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: center;
}
.oral-film-stock-order h2 {
  font: 400 clamp(38px,4vw,55px)/.96 Georgia,serif;
  margin: 0;
}
.oral-film-stock-order>div:last-child {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1px;
  background: #b8d1dc;
}
.oral-film-stock-order article {
  padding: 22px;
  background: #eef7fa;
  min-height: 104px;
}
.oral-film-stock-order b {
  display: block;
  font-size: 8px;
  letter-spacing: .12em;
  color: #3984a2;
}
.oral-film-stock-order strong {
  display: block;
  font: 400 19px/1.15 Georgia,serif;
  margin-top: 20px;
  color: #284652;
}
@media (max-width:900px) {
  .oral-film-stock-hero,.oral-film-stock-order {
    grid-template-columns: 1fr;
  }
  .oral-film-stock-hero {
    min-height: 0;
    padding: 76px 8vw;
  }
  .oral-film-stock-intro>div {
    grid-template-columns: repeat(2,1fr);
  }
}
@media (max-width:520px) {
  .oral-film-stock-hero {
    padding: 60px 7vw;
  }
  .oral-film-stock-intro {
    padding: 65px 7vw;
  }
  .oral-film-stock-intro>div,.oral-film-stock-order>div:last-child {
    grid-template-columns: 1fr;
  }
  .oral-film-stock-order {
    padding: 65px 7vw;
  }
}
.benchmark-hero-wide {
  height: min(800px,calc(100vh - 70px));
  min-height: 720px;
  background-position: center 46%;
  background-size: cover;
}
.benchmark-hero-wide .benchmark-hero-copy {
  padding-top: 158px;
  max-width: 700px;
}
.benchmark-hero-wide h1 {
  font-size: clamp(60px,5.7vw,86px);
  margin-bottom: 24px;
}
.benchmark-hero-wide .hero-lead {
  font-size: 15px;
  line-height: 1.68;
  max-width: 520px;
}
.benchmark-hero-wide .ref-actions {
  margin-top: 28px;
}
.benchmark-hero-wide .hero-checks {
  margin-top: 22px;
}
@media (max-width:900px) {
  .benchmark-hero-wide {
    height: auto;
    min-height: 650px;
    background-position: 60% center;
  }
  .benchmark-hero-wide .benchmark-hero-copy {
    padding-top: 112px;
  }
}
@media (max-width:520px) {
  .benchmark-hero-wide {
    min-height: 590px;
    background-position: 65% center;
  }
  .benchmark-hero-wide .benchmark-hero-copy {
    padding-top: 78px;
  }
  .benchmark-hero-wide h1 {
    font-size: 48px;
  }
  .benchmark-hero-wide .hero-lead {
    font-size: 13px;
  }
  .benchmark-hero-wide .ref-actions {
    margin-top: 22px;
  }
}
.oral-film-stock-intro>div {
  grid-template-columns: repeat(3,1fr);
  gap: 15px;
  border: 0;
  background: transparent;
}
.oral-film-stock-intro>div>a {
  position: relative;
  display: block;
  min-height: 292px;
  overflow: hidden;
  border: 0;
  background: #183842;
  text-align: left;
  color: #fff;
  isolation: isolate;
}
.oral-film-stock-intro>div>a>img {
  position: absolute;
  z-index: -2;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .45s ease;
}
.oral-film-stock-intro>div>a:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg,rgba(8,26,31,.93),rgba(8,26,31,.16) 75%);
  z-index: -1;
}
.oral-film-stock-intro>div>a>section {
  position: absolute;
  z-index: 1;
  left: 24px;
  right: 24px;
  bottom: 22px;
}
.oral-film-stock-intro>div>a span {
  font-size: 9px;
  color: #bee2eb;
  font-weight: 800;
  letter-spacing: .12em;
}
.oral-film-stock-intro>div>a h3 {
  font: 400 27px/1.02 Georgia,serif;
  margin: 8px 0;
}
.oral-film-stock-intro>div>a p {
  font-size: 11px;
  line-height: 1.5;
  color: #e7f0f1;
  margin: 0;
  max-width: 310px;
}
.oral-film-stock-intro>div>a b {
  display: block;
  margin-top: 16px;
  font-size: 9px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #fff;
}
.oral-film-stock-intro>div>a b em {
  color: #69c5db;
  font-style: normal;
  font-size: 14px;
  margin-left: 5px;
}
.oral-film-stock-intro>div>a:hover>img {
  transform: scale(1.07);
}
.oral-film-stock-intro>div>a:hover h3 {
  color: #bdebf3;
}
@media (max-width:900px) {
  .oral-film-stock-intro>div {
    grid-template-columns: repeat(2,1fr);
  }
  .oral-film-stock-intro>div>a {
    min-height: 278px;
  }
}
@media (max-width:520px) {
  .oral-film-stock-intro>div {
    grid-template-columns: 1fr;
  }
  .oral-film-stock-intro>div>a {
    min-height: 300px;
  }
}
.home-hero-rebuilt {
  height: 720px;
  min-height: 720px;
  display: grid;
  grid-template-columns: minmax(470px,43%) 1fr;
  background: #07111b;
  overflow: hidden;
}
.home-hero-rebuilt .benchmark-hero-copy {
  position: relative;
  z-index: 1;
  align-self: center;
  width: auto;
  max-width: none;
  padding: 0 9vw 0 7vw;
}
.home-hero-rebuilt h1 {
  font-size: clamp(58px,4.6vw,78px);
  line-height: .91;
  margin: 0 0 24px;
  letter-spacing: -.065em;
}
.home-hero-rebuilt h1 span,.home-hero-rebuilt h1 em {
  display: block;
  white-space: nowrap;
}
.home-hero-rebuilt h1 em {
  margin-top: 6px;
}
.home-hero-rebuilt .hero-lead {
  max-width: 395px;
  font-size: 14px;
  line-height: 1.72;
  margin-bottom: 25px;
}
.home-hero-rebuilt .ref-actions {
  margin-top: 0;
}
.home-hero-rebuilt .hero-explore {
  margin-top: 18px;
}
.home-hero-rebuilt .hero-checks {
  max-width: 410px;
  flex-wrap: wrap;
  row-gap: 8px;
}
.home-hero-factory {
  position: relative;
  background: url('../images/hero-supplement-factory-wide.webp') 61% center/cover no-repeat;
}
.home-hero-factory:before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg,#07111b 0%,rgba(7,17,27,.5) 14%,rgba(7,17,27,0) 35%);
}
.oral-film-stock-hero {
  min-height: 660px;
  padding: 0 7vw 0 10vw;
  gap: 70px;
  background: #e7f2f8;
}
.oral-film-stock-hero>div {
  padding: 78px 0;
  max-width: 590px;
}
.oral-film-stock-hero>div .ref-kicker {
  margin-top: 36px;
}
.oral-film-stock-hero h1 {
  font-size: clamp(48px,4.2vw,68px);
}
.oral-film-stock-hero>img {
  display: none;
}
.oral-film-hero-media {
  height: 660px;
  display: flex;
  align-items: stretch;
  padding: 0;
  background: #e7f2f8;
  overflow: hidden;
}
.dosage-showcase-grid {
  max-width: 1240px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(12,1fr);
  gap: 15px;
}
.dosage-showcase-card {
  grid-column: span 3;
  background: #fff;
  border: 1px solid #e0e0d8;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  min-width: 0;
  transition: transform .25s ease,box-shadow .25s ease;
}
.dosage-showcase-card:nth-child(n+5) {
  grid-column: span 4;
}
.dosage-showcase-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 35px rgba(52,57,36,.12);
}
.dosage-showcase-image {
  height: 220px;
  display: block;
  position: relative;
  overflow: hidden;
  background: #eee8dc;
}
.dosage-showcase-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .35s ease;
}
.dosage-showcase-card:hover .dosage-showcase-image img {
  transform: scale(1.06);
}
.dosage-showcase-image:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg,transparent 58%,rgba(24,45,31,.3));
}
.dosage-showcase-image span {
  position: absolute;
  z-index: 1;
  left: 14px;
  top: 13px;
  width: 29px;
  height: 29px;
  background: #fff;
  color: #344333;
  display: grid;
  place-items: center;
  font: 400 12px Georgia,serif;
}
.dosage-showcase-copy {
  padding: 18px 18px 16px;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.dosage-showcase-copy>p:first-child {
  font-size: 8px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: #88934f;
  font-weight: 800;
  margin: 0 0 9px;
}
.dosage-showcase-copy h3 {
  font: 400 25px/1.04 Georgia,serif;
  letter-spacing: -.035em;
  margin: 0 0 10px;
}
.dosage-showcase-summary {
  font-size: 10px;
  line-height: 1.55;
  color: #737b74;
  margin: 0;
  min-height: 47px;
}
.dosage-showcase-reveal {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition: max-height .35s ease,opacity .25s ease,margin .35s ease;
  margin: 0;
}
.dosage-showcase-card:hover .dosage-showcase-reveal,.dosage-showcase-card:focus-within .dosage-showcase-reveal {
  max-height: 115px;
  opacity: 1;
  margin: 16px 0 0;
}
.dosage-showcase-reveal>div {
  padding: 10px;
  background: #f1f2ea;
  border-left: 2px solid #c2a547;
}
.dosage-showcase-reveal b {
  font-size: 7px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: #78834e;
}
.dosage-showcase-reveal p {
  font-size: 8px;
  line-height: 1.45;
  color: #5d675d;
  margin: 6px 0 0;
}
.dosage-showcase-actions {
  border-top: 1px solid #e5e5de;
  margin-top: auto;
  padding-top: 13px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.dosage-showcase-actions a {
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: #6d7d46;
}
.dosage-showcase-actions a:last-child {
  color: #344233;
}
.dosage-showcase-actions b {
  font-size: 14px;
  margin-left: 4px;
}
.dosage-section .section-more {
  margin-top: 34px;
}
@media (max-width:1040px) {
  .dosage-showcase-grid {
    grid-template-columns: repeat(6,1fr);
  }
  .dosage-showcase-card,.dosage-showcase-card:nth-child(n+5) {
    grid-column: span 2;
  }
  .dosage-showcase-card:last-child {
    grid-column: span 3;
  }
  .dosage-showcase-image {
    height: 205px;
  }
}
@media (max-width:680px) {
  .dosage-showcase-grid {
    grid-template-columns: repeat(2,1fr);
    gap: 12px;
  }
  .dosage-showcase-card,.dosage-showcase-card:nth-child(n+5),.dosage-showcase-card:last-child {
    grid-column: span 1;
  }
  .dosage-showcase-image {
    height: 180px;
  }
  .dosage-showcase-copy {
    padding: 15px;
  }
  .dosage-showcase-copy h3 {
    font-size: 21px;
  }
  .dosage-showcase-summary {
    min-height: 61px;
  }
  .dosage-showcase-reveal {
    max-height: 115px;
    opacity: 1;
    margin: 13px 0 0;
    grid-template-columns: 1fr;
  }
  .dosage-showcase-actions a:last-child {
    display: none;
  }
}
.dosage-section {
  background: linear-gradient(180deg,#fbfaf6 0%,#f4f2ea 100%);
}
.dosage-explorer {
  max-width: 1240px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0,1.05fr) minmax(300px,.88fr);
  grid-template-rows: auto auto;
  gap: 0;
  background: #fff;
  border: 1px solid #dfe1d8;
  box-shadow: 0 18px 48px rgba(60,63,41,.07);
}
.dosage-explorer-visual {
  grid-row: span 2;
  position: relative;
  min-height: 560px;
  background: #eee7d8;
  overflow: hidden;
}
.dosage-explorer-image-wrap {
  position: absolute;
  inset: 0;
}
.dosage-explorer-image-wrap:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg,rgba(255,255,255,.04),transparent 55%),linear-gradient(0deg,rgba(35,43,31,.18),transparent 42%);
}
.dosage-explorer-image-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .55s ease;
}
.dosage-explorer:hover .dosage-explorer-image-wrap img {
  transform: scale(1.025);
}
.dosage-explorer-caption {
  position: absolute;
  left: 0;
  bottom: 0;
  background: #243626;
  color: #fff;
  min-width: 220px;
  padding: 19px 24px;
}
.dosage-explorer-caption span {
  font-size: 9px;
  letter-spacing: .15em;
  color: #d6c574;
  font-weight: 800;
}
.dosage-explorer-caption p {
  font: 400 20px/1.1 Georgia,serif;
  margin: 7px 0 0;
}
.dosage-explorer-content {
  padding: 42px 42px 30px;
  border-bottom: 1px solid #dfe1d8;
}
.dosage-explorer-content .ref-kicker {
  margin-bottom: 14px;
}
.dosage-explorer-content h3 {
  font: 400 clamp(34px,3.3vw,48px)/.96 Georgia,serif;
  letter-spacing: -.05em;
  margin: 0 0 17px;
  color: #24352d;
}
.dosage-explorer-content h3 em {
  font-weight: 400;
  color: #c39e38;
}
.dosage-explorer-description {
  font-size: 13px;
  line-height: 1.65;
  color: #667067;
  max-width: 510px;
  margin-bottom: 22px;
}
.dosage-explorer-meta {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin: 0 0 24px;
}
.dosage-explorer-meta>div {
  padding: 13px 14px;
  background: #f3f2eb;
  border-left: 2px solid #c3a548;
}
.dosage-explorer-meta b {
  display: block;
  font-size: 8px;
  letter-spacing: .13em;
  text-transform: uppercase;
  color: #78834f;
}
.dosage-explorer-meta p {
  font-size: 10px;
  line-height: 1.45;
  color: #4d594f;
  margin: 7px 0 0;
}
.dosage-explorer-actions {
  display: flex;
  align-items: center;
  gap: 25px;
}
.dosage-explorer-actions a {
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  color: #667944;
}
.dosage-explorer-actions a:first-child {
  padding: 14px 17px;
  background: #748948;
  color: #fff;
}
.dosage-explorer-actions b {
  font-size: 15px;
  margin-left: 8px;
}
.dosage-explorer-tabs {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  background: #f8f8f4;
}
.dosage-explorer-tabs button {
  appearance: none;
  border: 0;
  border-right: 1px solid #dfe1d8;
  border-bottom: 1px solid #dfe1d8;
  background: transparent;
  min-height: 86px;
  padding: 14px 17px;
  text-align: left;
  cursor: pointer;
  position: relative;
  transition: background .2s,color .2s;
  display: grid;
  grid-template-columns: 30px 1fr auto;
  grid-template-rows: auto auto;
  column-gap: 9px;
  align-content: center;
  color: #26342d;
}
.dosage-explorer-tabs button:nth-child(2n) {
  border-right: 0;
}
.dosage-explorer-tabs button:nth-last-child(-n+2) {
  border-bottom: 0;
}
.dosage-explorer-tabs button span {
  grid-row: span 2;
  font: 400 13px Georgia,serif;
  color: #a8a585;
  padding-top: 1px;
}
.dosage-explorer-tabs button b {
  font: 400 18px/1.05 Georgia,serif;
}
.dosage-explorer-tabs button i {
  grid-column: 2/3;
  font-style: normal;
  font-size: 8px;
  color: #788078;
  margin-top: 6px;
}
.dosage-explorer-tabs button em {
  grid-column: 3;
  grid-row: 1/3;
  align-self: center;
  font-size: 8px;
  font-style: normal;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #7d8a55;
  opacity: 0;
  transform: translateX(-5px);
  transition: opacity .2s,transform .2s;
}
.dosage-explorer-tabs button:hover,.dosage-explorer-tabs button:focus-visible {
  background: #eef1e6;
  outline: 0;
}
.dosage-explorer-tabs button.active {
  background: #263824;
  color: #fff;
}
.dosage-explorer-tabs button.active span {
  color: #e3cf73;
}
.dosage-explorer-tabs button.active i {
  color: #d5ddcc;
}
.dosage-explorer-tabs button.active em {
  opacity: 1;
  transform: translateX(0);
  color: #e8d58a;
}
@media (max-width:900px) {
  .dosage-explorer {
    grid-template-columns: 1fr;
  }
  .dosage-explorer-visual {
    grid-row: auto;
    min-height: 430px;
  }
  .dosage-explorer-content {
    padding: 34px;
  }
  .dosage-explorer-tabs {
    grid-template-columns: repeat(3,1fr);
  }
  .dosage-explorer-tabs button:nth-child(2n) {
    border-right: 1px solid #dfe1d8;
  }
  .dosage-explorer-tabs button:nth-child(3n) {
    border-right: 0;
  }
  .dosage-explorer-tabs button:nth-last-child(-n+2) {
    border-bottom: 1px solid #dfe1d8;
  }
  .dosage-explorer-tabs button:last-child {
    border-bottom: 0;
  }
}
@media (max-width:560px) {
  .dosage-explorer-visual {
    min-height: 350px;
  }
  .dosage-explorer-content {
    padding: 29px 23px;
  }
  .dosage-explorer-meta {
    grid-template-columns: 1fr;
  }
  .dosage-explorer-actions {
    gap: 15px;
    flex-wrap: wrap;
  }
  .dosage-explorer-tabs {
    grid-template-columns: 1fr;
  }
  .dosage-explorer-tabs button,.dosage-explorer-tabs button:nth-child(2n) {
    border-right: 0;
    border-bottom: 1px solid #dfe1d8;
    min-height: 72px;
  }
  .dosage-explorer-tabs button:last-child {
    border-bottom: 0;
  }
  .dosage-explorer-tabs button em {
    opacity: 1;
    transform: none;
  }
  .dosage-explorer-caption {
    padding: 15px 19px;
    min-width: 185px;
  }
}
.oral-film-hero-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 82% center;
  mix-blend-mode: multiply;
  filter: saturate(.94) contrast(.98);
}
@media (max-width:1050px) {
  .home-hero-rebuilt {
    grid-template-columns: 44% 56%;
  }
  .home-hero-rebuilt .benchmark-hero-copy {
    padding-left: 6vw;
    padding-right: 5vw;
  }
  .home-hero-rebuilt h1 {
    font-size: clamp(50px,5vw,68px);
  }
  .oral-film-stock-hero {
    padding-left: 7vw;
    padding-right: 5vw;
    gap: 36px;
  }
  .oral-film-hero-media {
    height: 580px;
  }
}
@media (max-width:800px) {
  .home-hero-rebuilt {
    height: auto;
    min-height: 0;
    grid-template-columns: 1fr;
  }
  .home-hero-rebuilt .benchmark-hero-copy {
    min-height: 525px;
    padding: 85px 8vw 65px;
  }
  .home-hero-rebuilt h1 span,.home-hero-rebuilt h1 em {
    white-space: normal;
  }
  .home-hero-factory {
    height: 360px;
    background-position: center;
  }
  .home-hero-factory:before {
    background: linear-gradient(0deg,#07111b,transparent 35%);
  }
  .oral-film-stock-hero {
    min-height: 0;
    grid-template-columns: 1fr;
    padding: 0;
  }
  .oral-film-stock-hero>div {
    padding: 70px 8vw 40px;
  }
  .oral-film-hero-media {
    height: 420px;
    padding: 0;
  }
  .oral-film-hero-media img {
    object-position: 75% center;
  }
}
@media (max-width:520px) {
  .home-hero-rebuilt .benchmark-hero-copy {
    min-height: 500px;
    padding: 70px 7vw 55px;
  }
  .home-hero-rebuilt h1 {
    font-size: 46px;
  }
  .oral-film-stock-hero>div {
    padding: 60px 7vw 34px;
  }
  .oral-film-hero-media {
    height: 320px;
  }
}
.oral-film-stock-intro>p:not(.ref-kicker) {
  max-width: 620px;
  margin: 20px auto 0;
  color: #6e7b83;
  font-size: 13px;
  line-height: 1.65;
}
.oral-film-stock-intro>div>a {
  display: block;
  color: inherit;
  text-decoration: none;
  transition: background .18s,transform .18s;
}
.oral-film-stock-intro>div>a:hover {
  background: #eef7fa;
  transform: translateY(-3px);
}
.oral-film-catalogue {
  padding: 92px 9vw 105px;
  background: #f8fbfc;
}
.oral-film-category {
  max-width: 1360px;
  margin: 0 auto 92px;
  scroll-margin-top: 90px;
}
.oral-film-category:last-child {
  margin-bottom: 0;
}
.oral-film-category-heading {
  display: grid;
  grid-template-columns: .88fr 1.12fr;
  gap: 60px;
  align-items: end;
  margin-bottom: 28px;
}
.oral-film-category-heading .ref-kicker {
  margin: 0 0 12px;
  color: #367f9c;
}
.oral-film-category-heading h2 {
  font: 400 clamp(39px,4.4vw,58px)/.94 Georgia,serif;
  letter-spacing: -.05em;
  margin: 0;
}
.oral-film-category-heading h2 em {
  color: #2a8cae;
}
.oral-film-category-heading>p:last-child {
  font-size: 13px;
  line-height: 1.65;
  color: #6b7880;
  max-width: 460px;
  margin: 0 0 4px;
}
.oral-film-product-grid {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 16px;
}
.oral-film-product-grid>a {
  background: #fff;
  border: 1px solid #dce7eb;
  color: #203a45;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  transition: transform .2s,box-shadow .2s;
}
.oral-film-product-grid>a:hover {
  transform: translateY(-5px);
  box-shadow: 0 16px 35px rgba(39,99,122,.13);
}
.oral-film-product-grid img {
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: contain;
  background: #fff;
  border-bottom: 1px solid #e6edf0;
}
.oral-film-product-grid> a>div {
  padding: 18px;
  display: flex;
  flex: 1;
  flex-direction: column;
}
.oral-film-product-grid span,.oral-film-related span {
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: #35809d;
}
.oral-film-product-grid h3 {
  font: 400 24px/1.03 Georgia,serif;
  margin: 10px 0;
}
.oral-film-product-grid p {
  font-size: 11px;
  line-height: 1.55;
  color: #687780;
  margin: 0 0 18px;
  min-height: 66px;
}
.oral-film-product-grid b,.oral-film-related b {
  font-size: 9px;
  font-weight: 800;
  text-transform: uppercase;
  color: #2f89a7;
  margin-top: auto;
}
.oral-film-product-hero {
  padding: 72px 10vw;
  background: #eaf2f6;
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 72px;
  align-items: center;
}
.oral-film-product-hero>div>a:first-child {
  font-size: 10px;
  font-weight: 700;
  color: #263d48;
}
.oral-film-product-hero .ref-kicker {
  margin: 42px 0 14px;
  color: #3a86a1;
}
.oral-film-product-hero h1 {
  font: 400 clamp(48px,5.3vw,75px)/.92 Georgia,serif;
  letter-spacing: -.065em;
  color: #183841;
  margin: 0;
}
.oral-film-product-hero>div>span {
  display: block;
  margin-top: 19px;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .1em;
  color: #397b94;
}
.oral-film-product-hero>div>p:not(.ref-kicker) {
  font-size: 14px;
  line-height: 1.7;
  max-width: 550px;
  color: #5e7078;
  margin: 23px 0;
}
.oral-film-product-hero>div>a:last-child {
  display: inline-block;
  background: #2786a6;
  color: #fff;
  padding: 15px 18px;
  font-size: 10px;
  font-weight: 800;
}
.oral-film-product-hero>img {
  display: block;
  width: 100%;
  max-height: 565px;
  object-fit: contain;
  background: #fff;
}
.oral-film-product-highlights {
  padding: 80px 10vw;
  background: #fff;
  text-align: center;
}
.oral-film-product-highlights h2,.oral-film-ingredient-section h2,.oral-film-order-details h2,.oral-film-related h2 {
  font: 400 clamp(39px,4.3vw,57px)/.95 Georgia,serif;
  letter-spacing: -.05em;
  margin: 0;
}
.oral-film-product-highlights h2 em,.oral-film-ingredient-section h2 em,.oral-film-order-details h2 em,.oral-film-related h2 em {
  color: #2a8eaf;
}
.oral-film-product-highlights>div {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  max-width: 1060px;
  margin: 38px auto 0;
  border-top: 1px solid #d9e7eb;
  border-left: 1px solid #d9e7eb;
  text-align: left;
}
.oral-film-product-highlights article {
  min-height: 135px;
  padding: 22px;
  border-right: 1px solid #d9e7eb;
  border-bottom: 1px solid #d9e7eb;
}
.oral-film-product-highlights article span {
  font: 400 17px Georgia,serif;
  color: #3787a3;
}
.oral-film-product-highlights article p {
  font: 400 21px/1.18 Georgia,serif;
  color: #27424b;
  margin: 24px 0 0;
}
.oral-film-ingredient-section {
  padding: 95px 10vw;
  background: #e9eff0;
  display: grid;
  grid-template-columns: .78fr 1.22fr;
  gap: 70px;
  align-items: start;
}
.oral-film-ingredient-section>div>p:not(.ref-kicker) {
  font-size: 13px;
  line-height: 1.65;
  color: #65757d;
  margin: 22px 0;
}
.oral-film-ingredient-section>div>img {
  width: 100%;
  background: #fff;
  object-fit: contain;
  border: 1px solid #d7e3e7;
}
.oral-film-ingredient-cards {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 14px;
}
.oral-film-ingredient-cards article {
  min-height: 255px;
  padding: 23px;
  background: #fff;
  border: 1px solid #d8e3e6;
  display: flex;
  flex-direction: column;
}
.oral-film-ingredient-cards span {
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .12em;
  color: #38819c;
}
.oral-film-ingredient-cards h3 {
  font: 400 25px/1 Georgia,serif;
  color: #24414a;
  margin: 31px 0 11px;
}
.oral-film-ingredient-cards p {
  font-size: 11px;
  line-height: 1.55;
  color: #6e7c82;
  margin: 0;
}
.oral-film-ingredient-cards small {
  border-top: 1px solid #e3ebed;
  margin-top: auto;
  padding-top: 12px;
  font-size: 8px;
  line-height: 1.5;
  color: #87939a;
}
.oral-film-order-details {
  padding: 88px 12vw;
  background: #fff;
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: 75px;
  align-items: center;
}
.oral-film-order-details>div:last-child {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border-top: 1px solid #d6e4e8;
  border-left: 1px solid #d6e4e8;
}
.oral-film-order-details article {
  padding: 22px;
  min-height: 120px;
  border-right: 1px solid #d6e4e8;
  border-bottom: 1px solid #d6e4e8;
}
.oral-film-order-details b {
  display: block;
  font-size: 8px;
  letter-spacing: .12em;
  color: #3885a0;
}
.oral-film-order-details strong {
  display: block;
  font: 400 20px/1.18 Georgia,serif;
  color: #2a4650;
  margin-top: 25px;
}
.oral-film-related {
  padding: 88px 10vw;
  background: #f4f8f9;
  text-align: center;
}
.oral-film-related>div {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 16px;
  max-width: 1100px;
  margin: 38px auto 0;
  text-align: left;
}
.oral-film-related a {
  background: #fff;
  border: 1px solid #dce7ea;
  padding-bottom: 17px;
  text-decoration: none;
  color: #25414a;
  display: flex;
  flex-direction: column;
}
.oral-film-related img {
  width: 100%;
  aspect-ratio: 1.2;
  object-fit: contain;
  background: #fff;
  border-bottom: 1px solid #e3edef;
}
.oral-film-related span,.oral-film-related h3,.oral-film-related b {
  margin-left: 18px;
  margin-right: 18px;
}
.oral-film-related span {
  margin-top: 17px;
}
.oral-film-related h3 {
  font: 400 25px/1.05 Georgia,serif;
  margin-top: 10px;
  margin-bottom: 17px;
}
.oral-film-related b {
  margin-top: auto;
}
@media (max-width:1050px) {
  .oral-film-product-grid {
    grid-template-columns: repeat(3,1fr);
  }
  .oral-film-category-heading {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .oral-film-ingredient-section {
    grid-template-columns: 1fr;
  }
  .oral-film-ingredient-section>div>img {
    max-height: 420px;
  }
  .oral-film-ingredient-cards {
    grid-template-columns: repeat(3,1fr);
  }
}
@media (max-width:900px) {
  .oral-film-product-hero,.oral-film-order-details {
    grid-template-columns: 1fr;
  }
  .oral-film-product-grid {
    grid-template-columns: repeat(2,1fr);
  }
  .oral-film-product-highlights>div {
    grid-template-columns: 1fr;
  }
  .oral-film-ingredient-cards {
    grid-template-columns: 1fr;
  }
  .oral-film-ingredient-cards article {
    min-height: 0;
  }
  .oral-film-related>div {
    grid-template-columns: 1fr;
  }
  .oral-film-order-details {
    gap: 40px;
  }
}
@media (max-width:520px) {
  .oral-film-catalogue {
    padding: 62px 7vw;
  }
  .oral-film-category {
    margin-bottom: 68px;
  }
  .oral-film-product-grid {
    grid-template-columns: 1fr;
  }
  .oral-film-product-hero {
    padding: 60px 7vw;
    gap: 36px;
  }
  .oral-film-product-highlights,.oral-film-ingredient-section,.oral-film-order-details,.oral-film-related {
    padding: 64px 7vw;
  }
  .oral-film-order-details>div:last-child {
    grid-template-columns: 1fr;
  }
  .oral-film-product-highlights h2,.oral-film-ingredient-section h2,.oral-film-order-details h2,.oral-film-related h2 {
    font-size: 40px;
  }
}
.ingredient-library-page {
  background: #f8faf8;
  color: #123b37;
}
.ingredient-library-hero {
  min-height: 650px;
  background: #e8f1ed;
  display: grid;
  grid-template-columns: minmax(330px,.9fr) minmax(500px,1.1fr);
  gap: 70px;
  align-items: center;
  padding: 70px 10vw;
}
.ingredient-library-hero>div:first-child>a:first-child {
  display: inline-block;
  color: #164a67;
  font-size: 12px;
  margin-bottom: 52px;
}
.ingredient-library-hero h1 {
  font-family: Georgia,serif;
  font-size: clamp(52px,5.2vw,82px);
  line-height: .95;
  letter-spacing: -.06em;
  margin: 14px 0 24px;
}
.ingredient-library-hero h1 em,.ingredient-library-intro h2 em,.ingredient-cta h2 em {
  color: #2f8bb0;
  font-weight: 400;
}
.ingredient-library-hero p:not(.ref-kicker) {
  max-width: 520px;
  font-size: 15px;
  line-height: 1.8;
  color: #315761;
  margin-bottom: 27px;
}
.ingredient-hero-stack {
  height: 500px;
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  grid-template-rows: 1fr 1fr;
  gap: 15px;
}
.ingredient-hero-stack img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  background: #fff;
}
.ingredient-hero-stack img:first-child {
  grid-row: 1/3;
}
.ingredient-library-intro {
  max-width: 1320px;
  margin: auto;
  padding: 115px 7vw 70px;
  display: grid;
  grid-template-columns: 1fr .75fr;
  gap: 100px;
  align-items: end;
}
.ingredient-library-intro h2,.ingredient-group-heading h2,.ingredient-cta h2 {
  font-family: Georgia,serif;
  letter-spacing: -.055em;
  font-size: clamp(40px,4vw,62px);
  line-height: .98;
  margin: 14px 0 0;
}
.ingredient-library-intro>p {
  font-size: 15px;
  line-height: 1.8;
  color: #41616a;
  max-width: 450px;
}
.ingredient-group-nav {
  max-width: 1320px;
  margin: 0 auto 95px;
  padding: 0 7vw;
  display: grid;
  grid-template-columns: repeat(4,1fr);
  border-top: 1px solid #cbdad5;
  border-bottom: 1px solid #cbdad5;
}
.ingredient-group-nav a {
  padding: 20px 16px;
  color: #123b37;
  border-right: 1px solid #cbdad5;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .07em;
  display: flex;
  gap: 10px;
  align-items: center;
}
.ingredient-group-nav a:first-child {
  border-left: 1px solid #cbdad5;
}
.ingredient-group-nav span,.ingredient-library-grid span {
  color: #2f8bb0;
  font-size: 10px;
}
.ingredient-groups {
  max-width: 1320px;
  margin: auto;
  padding: 0 7vw;
}
.ingredient-group {
  padding: 0 0 105px;
  margin-bottom: 95px;
  border-bottom: 1px solid #cedbd8;
}
.ingredient-group-heading {
  display: grid;
  grid-template-columns: 1fr 1.25fr;
  gap: 80px;
  align-items: end;
  margin-bottom: 40px;
}
.ingredient-group-heading p:last-child {
  font-size: 14px;
  line-height: 1.75;
  color: #41616a;
  max-width: 490px;
  justify-self: end;
}
.ingredient-library-grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 18px;
}
.ingredient-library-grid article {
  background: #fff;
  border: 1px solid #d5e0dd;
  overflow: hidden;
  transition: transform .25s ease,box-shadow .25s ease;
}
.ingredient-library-grid article:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 30px #123b3718;
}
.ingredient-library-grid article>img {
  display: block;
  width: 100%;
  height: 205px;
  object-fit: cover;
  background: #eef2ef;
}
.ingredient-library-grid article>div {
  padding: 21px 22px 24px;
}
.ingredient-library-grid h3 {
  font-family: Georgia,serif;
  font-size: 25px;
  line-height: 1.04;
  margin: 11px 0 10px;
  letter-spacing: -.035em;
}
.ingredient-library-grid p {
  font-size: 12px;
  line-height: 1.65;
  color: #507079;
  min-height: 59px;
}
.ingredient-library-grid small {
  display: block;
  margin: 17px 0 8px;
  text-transform: uppercase;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .1em;
  color: #799087;
}
.ingredient-library-grid ul {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 0;
  margin: 0 0 20px;
  list-style: none;
}
.ingredient-library-grid li {
  padding: 5px 8px;
  background: #eaf2ef;
  color: #174940;
  font-size: 10px;
}
.ingredient-library-grid a {
  font-size: 11px;
  font-weight: 700;
  color: #197da1;
  text-decoration: none;
}
.ingredient-cta {
  background: #163d37;
  color: #fff;
  max-width: 1320px;
  margin: 0 auto;
  padding: 75px 7vw;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 60px;
}
.ingredient-cta .ref-kicker {
  color: #dbba55;
}
.ingredient-cta h2 {
  font-size: 52px;
}
.ingredient-cta p:not(.ref-kicker) {
  max-width: 530px;
  line-height: 1.7;
  color: #d0e1dc;
  font-size: 14px;
}
.ingredient-cta>div:last-child {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
.ingredient-cta .primary-button {
  background: #d9b64f;
  color: #123b37;
}
.ingredient-library-page .ref-footer {
  margin-top: 0;
}
@media (max-width:900px) {
  .ingredient-library-hero {
    grid-template-columns: 1fr;
    padding: 60px 8vw;
    gap: 40px;
  }
  .ingredient-library-hero>div:first-child>a:first-child {
    margin-bottom: 25px;
  }
  .ingredient-hero-stack {
    height: 430px;
  }
  .ingredient-library-intro,.ingredient-group-heading {
    grid-template-columns: 1fr;
    gap: 25px;
  }
  .ingredient-group-heading p:last-child {
    justify-self: start;
  }
  .ingredient-group-nav {
    grid-template-columns: repeat(2,1fr);
    margin-bottom: 65px;
  }
  .ingredient-library-grid {
    grid-template-columns: repeat(2,1fr);
  }
  .ingredient-cta {
    margin: 0;
    flex-direction: column;
    align-items: flex-start;
  }
  .ingredient-groups {
    padding: 0 6vw;
  }
}
@media (max-width:560px) {
  .ingredient-library-hero {
    min-height: 0;
    padding: 45px 7vw;
  }
  .ingredient-library-hero h1 {
    font-size: 52px;
  }
  .ingredient-hero-stack {
    height: 300px;
    gap: 8px;
  }
  .ingredient-library-intro {
    padding: 75px 7vw 45px;
  }
  .ingredient-group-nav {
    margin: 0 7vw 55px;
    padding: 0;
    grid-template-columns: 1fr;
  }
  .ingredient-group-nav a,.ingredient-group-nav a:first-child {
    border-left: 1px solid #cbdad5;
  }
  .ingredient-library-grid {
    grid-template-columns: 1fr;
  }
  .ingredient-library-grid article>img {
    height: 215px;
  }
  .ingredient-group {
    padding-bottom: 65px;
    margin-bottom: 65px;
  }
  .ingredient-cta {
    padding: 60px 7vw;
  }
  .ingredient-cta h2 {
    font-size: 42px;
  }
}
.oral-film-stock-page,.oral-film-stock-page .oral-film-stock-hero,.oral-film-stock-page .oral-film-hero-media,.oral-film-stock-page .oral-film-catalogue,.oral-film-stock-page .oral-film-stock-order,.oral-film-stock-page .stock-inquiry {
  background: #fff;
}
.oral-film-stock-page .oral-film-hero-media img {
  mix-blend-mode: normal;
  filter: none;
}
.oral-film-stock-page .oral-film-stock-order>div:last-child {
  background: #dbe6e8;
}
.oral-film-stock-page .oral-film-stock-order article {
  background: #fff;
}
.oral-film-stock-page .oral-film-category {
  border-top: 1px solid #edf1f2;
  padding-top: 42px;
}
.oral-film-stock-page .oral-film-category:first-child {
  border-top: 0;
  padding-top: 0;
}
.oral-film-stock-page .oral-film-product-grid>a {
  box-shadow: none;
}
.ingredient-detail-page {
  background: #fff;
  color: #123b37;
}
.ingredient-detail-hero {
  padding: 78px 10vw;
  background: #edf5f2;
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 75px;
  align-items: center;
}
.ingredient-detail-hero>div>a:first-child {
  font-size: 11px;
  color: #164a67;
}
.ingredient-detail-hero .ref-kicker {
  margin: 42px 0 15px;
}
.ingredient-detail-hero h1 {
  font: 400 clamp(49px,5.1vw,76px)/.93 Georgia,serif;
  letter-spacing: -.065em;
  margin: 0;
}
.ingredient-detail-hero h1 em,.ingredient-detail-overview h2 em,.ingredient-detail-format h2 em,.ingredient-detail-note h2 em,.ingredient-detail-inquiry h2 em {
  color: #2e8cad;
}
.ingredient-detail-hero p:not(.ref-kicker) {
  max-width: 540px;
  color: #49656a;
  line-height: 1.75;
  font-size: 15px;
  margin: 23px 0 28px;
}
.ingredient-detail-hero>img {
  width: 100%;
  height: 490px;
  object-fit: cover;
  background: #fff;
}
.ingredient-detail-overview {
  max-width: 1300px;
  margin: auto;
  padding: 100px 7vw;
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 80px;
}
.ingredient-detail-overview h2,.ingredient-detail-format h2,.ingredient-detail-note h2,.ingredient-detail-inquiry h2 {
  font: 400 clamp(40px,4vw,60px)/.97 Georgia,serif;
  letter-spacing: -.055em;
  margin: 15px 0;
}
.ingredient-detail-overview>div:last-child {
  border-top: 1px solid #d8e4e0;
}
.ingredient-detail-overview article {
  display: grid;
  grid-template-columns: 52px 1fr;
  gap: 15px;
  padding: 23px 0;
  border-bottom: 1px solid #d8e4e0;
}
.ingredient-detail-overview span {
  color: #2d8aac;
  font-size: 10px;
  font-weight: 800;
}
.ingredient-detail-overview h3 {
  font: 400 25px/1.12 Georgia,serif;
  margin: 0;
}
.ingredient-detail-format {
  background: #f7faf8;
  padding: 94px 10vw;
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 75px;
  align-items: center;
}
.ingredient-detail-format img {
  width: 100%;
  height: 440px;
  object-fit: cover;
  background: #fff;
}
.ingredient-detail-format>div>p:not(.ref-kicker) {
  font-size: 14px;
  line-height: 1.75;
  color: #52686d;
  max-width: 600px;
}
.ingredient-detail-format h3 {
  font: 400 24px Georgia,serif;
  margin: 27px 0 12px;
}
.ingredient-format-tags {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.ingredient-format-tags span {
  padding: 9px 12px;
  background: #dfeee9;
  color: #174d43;
  font-size: 11px;
}
.ingredient-detail-format small {
  display: block;
  margin-top: 24px;
  max-width: 550px;
  color: #6c7f7d;
  font-size: 11px;
  line-height: 1.55;
}
.ingredient-detail-note {
  max-width: 1050px;
  margin: auto;
  padding: 100px 7vw;
  text-align: center;
}
.ingredient-detail-note p:not(.ref-kicker) {
  max-width: 650px;
  margin: 24px auto 0;
  font-size: 14px;
  line-height: 1.75;
  color: #52686d;
}
.ingredient-detail-inquiry {
  padding: 86px 10vw;
  background: #163d37;
  color: #fff;
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: 80px;
}
.ingredient-detail-inquiry .ref-kicker {
  color: #dfba55;
}
.ingredient-detail-inquiry>div>p:not(.ref-kicker) {
  color: #d0e1dc;
  line-height: 1.75;
  font-size: 14px;
  max-width: 490px;
}
.ingredient-library-grid h3 a {
  color: inherit;
  text-decoration: none;
}
.ingredient-card-link {
  display: block;
}
.ingredient-card-link img {
  display: block;
  width: 100%;
  height: 205px;
  object-fit: cover;
  background: #eef2ef;
}
@media (max-width:850px) {
  .ingredient-detail-hero,.ingredient-detail-overview,.ingredient-detail-format,.ingredient-detail-inquiry {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .ingredient-detail-hero {
    padding: 65px 8vw;
  }
  .ingredient-detail-hero>img {
    height: 380px;
  }
  .ingredient-detail-overview,.ingredient-detail-format,.ingredient-detail-note {
    padding: 70px 8vw;
  }
  .ingredient-detail-inquiry {
    padding: 70px 8vw;
  }
}
@media (max-width:520px) {
  .ingredient-detail-hero {
    padding: 55px 7vw;
  }
  .ingredient-detail-hero h1 {
    font-size: 48px;
  }
  .ingredient-detail-hero>img {
    height: 300px;
  }
  .ingredient-detail-overview,.ingredient-detail-format,.ingredient-detail-note,.ingredient-detail-inquiry {
    padding: 62px 7vw;
  }
  .ingredient-detail-overview h3 {
    font-size: 22px;
  }
}
.workflow-hover-section {
  background: #203821;
  padding: 110px 7vw 100px;
}
.workflow-hover-section .ref-heading {
  max-width: 1320px;
  margin: 0 auto 46px;
}
.workflow-hover-section .ref-heading h2 {
  color: #fff;
}
.workflow-hover-section .ref-heading h2 em {
  color: #d6b752;
}
.workflow-hover-section .ref-heading>p {
  color: #d5e0d4;
}
.workflow-hover-grid {
  max-width: 1500px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 12px;
}
.workflow-hover-grid article {
  height: 245px;
  position: relative;
  overflow: hidden;
  border: 1px solid #61705e;
  background: #29442a;
  color: #fff;
  isolation: isolate;
  transition: flex .3s ease,transform .3s ease,border-color .3s ease;
}
.workflow-hover-grid article:before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg,rgba(11,28,16,.95),rgba(11,28,16,.1) 72%);
  z-index: -1;
  transition: background .3s ease;
}
.workflow-hover-grid img {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: .58;
  transition: transform .45s ease,opacity .3s ease;
}
.workflow-hover-grid article>div {
  position: absolute;
  inset: auto 20px 19px;
}
.workflow-hover-grid span {
  font-size: 10px;
  letter-spacing: .12em;
  color: #dcc268;
  font-weight: 800;
}
.workflow-hover-grid h3 {
  font: 400 29px/1 Georgia,serif;
  margin: 9px 0 0;
}
.workflow-hover-grid p {
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  margin: 0;
  color: #eff4ed;
  font-size: 12px;
  line-height: 1.55;
  transition: max-height .3s ease,opacity .25s ease,margin .3s ease;
}
.workflow-hover-grid b {
  display: block;
  margin-top: 11px;
  font-size: 9px;
  letter-spacing: .08em;
  text-transform: uppercase;
  opacity: 0;
  transition: opacity .25s ease;
}
.workflow-hover-grid em {
  color: #dcc268;
  font-style: normal;
  font-size: 13px;
}
.workflow-hover-grid article:hover {
  transform: translateY(-5px);
  border-color: #d7be62;
}
.workflow-hover-grid article:hover img {
  transform: scale(1.09);
  opacity: .8;
}
.workflow-hover-grid article:hover:before {
  background: linear-gradient(0deg,rgba(11,28,16,.98),rgba(11,28,16,.22) 85%);
}
.workflow-hover-grid article:hover p {
  max-height: 60px;
  opacity: 1;
  margin-top: 11px;
}
.workflow-hover-grid article:hover b {
  opacity: 1;
}
.workflow-inquiry-link {
  display: block;
  max-width: 1500px;
  margin: 26px auto 0;
  color: #fff;
  text-align: right;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
}
.workflow-inquiry-link b {
  color: #dcc268;
  font-size: 16px;
  margin-left: 5px;
}
@media (max-width:900px) {
  .workflow-hover-grid {
    grid-template-columns: repeat(2,1fr);
  }
  .workflow-hover-section {
    padding: 80px 7vw;
  }
  .workflow-hover-grid article {
    height: 275px;
  }
  .workflow-hover-grid p {
    max-height: 60px;
    opacity: 1;
    margin-top: 11px;
  }
  .workflow-hover-grid b {
    opacity: 1;
  }
}
@media (max-width:520px) {
  .workflow-hover-grid {
    grid-template-columns: 1fr;
  }
  .workflow-hover-grid article {
    height: 245px;
  }
  .workflow-inquiry-link {
    text-align: left;
  }
}
.workflow-click-section {
  background: #203821;
  padding: 105px 7vw;
}
.workflow-click-section .ref-heading {
  max-width: 1320px;
  margin: 0 auto 44px;
}
.workflow-click-section .ref-heading h2 {
  color: #fff;
}
.workflow-click-section .ref-heading h2 em {
  color: #d6b752;
}
.workflow-click-section .ref-heading>p {
  color: #d5e0d4;
}
.workflow-click-wrap {
  max-width: 1320px;
  margin: auto;
}
.workflow-click-grid {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  border-left: 1px solid #60735e;
  border-top: 1px solid #60735e;
}
.workflow-click-grid button {
  min-height: 112px;
  padding: 18px;
  text-align: left;
  border: 0;
  border-right: 1px solid #60735e;
  border-bottom: 1px solid #60735e;
  background: #29452b;
  color: #fff;
  cursor: pointer;
  transition: background .2s,color .2s;
}
.workflow-click-grid button:hover,.workflow-click-grid button.is-active {
  background: #d4b75b;
  color: #17371d;
}
.workflow-click-grid span {
  display: block;
  color: #d9c66d;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .12em;
  margin-bottom: 16px;
}
.workflow-click-grid button.is-active span {
  color: #24452a;
}
.workflow-click-grid b {
  display: block;
  font: 400 22px/1.05 Georgia,serif;
}
.workflow-click-grid em {
  display: block;
  margin-top: 9px;
  font-size: 9px;
  font-style: normal;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  opacity: .72;
}
.workflow-click-detail {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  background: #fff;
  margin-top: 18px;
  min-height: 390px;
}
.workflow-click-detail>img {
  width: 100%;
  height: 100%;
  min-height: 390px;
  object-fit: cover;
  display: block;
}
.workflow-click-detail>div {
  padding: 54px 54px 42px;
  color: #1e3d32;
}
.workflow-click-detail .ref-kicker {
  color: #7e8f44;
}
.workflow-click-detail h3 {
  font: 400 clamp(38px,3.8vw,55px)/.98 Georgia,serif;
  letter-spacing: -.05em;
  margin: 16px 0;
}
.workflow-click-detail>div>p:not(.ref-kicker) {
  font-size: 14px;
  line-height: 1.75;
  color: #49665a;
}
.workflow-click-detail>div>div {
  margin-top: 32px;
  padding: 16px 18px;
  border-left: 3px solid #d4b75b;
  background: #f4f1e4;
}
.workflow-click-detail small {
  display: block;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .1em;
  color: #718254;
}
.workflow-click-detail strong {
  display: block;
  font: 400 20px/1.2 Georgia,serif;
  margin-top: 9px;
}
.workflow-click-detail a {
  display: inline-block;
  margin-top: 28px;
  color: #1d7e9d;
  font-size: 11px;
  font-weight: 800;
  text-decoration: none;
}
.workflow-click-detail a b {
  font-size: 15px;
  margin-left: 4px;
}
@media (max-width:900px) {
  .workflow-click-section {
    padding: 78px 7vw;
  }
  .workflow-click-grid {
    grid-template-columns: repeat(2,1fr);
  }
  .workflow-click-detail {
    grid-template-columns: 1fr;
  }
  .workflow-click-detail>img {
    height: 330px;
    min-height: 0;
  }
  .workflow-click-detail>div {
    padding: 42px;
  }
}
@media (max-width:520px) {
  .workflow-click-grid {
    grid-template-columns: 1fr;
  }
  .workflow-click-grid button {
    min-height: 88px;
  }
  .workflow-click-detail>img {
    height: 260px;
  }
  .workflow-click-detail>div {
    padding: 36px 25px;
  }
  .workflow-click-detail h3 {
    font-size: 40px;
  }
}
.format-packaging-showcase {
  padding: 100px 8vw;
  background: #f7f5ef;
  display: grid;
  grid-template-columns: .82fr 1.18fr;
  gap: 76px;
  align-items: center;
}
.format-packaging-showcase h2 {
  font: 400 clamp(39px,4.4vw,60px)/.96 Georgia,serif;
  letter-spacing: -.06em;
  margin: 14px 0 21px;
  color: #20372c;
}
.format-packaging-showcase h2 em {
  font-weight: 400;
  color: #c29d3a;
}
.format-packaging-showcase>div>p:not(.kicker) {
  font-size: 14px;
  line-height: 1.75;
  color: #5b6d61;
  max-width: 500px;
}
.format-packaging-showcase figure {
  margin: 0;
  background: #fff;
  border: 1px solid #e0ded5;
}
.format-packaging-showcase figure img {
  display: block;
  width: 100%;
  min-height: 420px;
  max-height: 540px;
  object-fit: cover;
}
.format-packaging-showcase figcaption {
  padding: 14px 17px;
  color: #667465;
  font-size: 9px;
  letter-spacing: .05em;
  text-transform: uppercase;
}
.packaging-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 27px 0 24px;
}
.packaging-tags span {
  padding: 10px 12px;
  background: #e8e7dc;
  color: #49584b;
  font-size: 10px;
  font-weight: 700;
}
.format-packaging-showcase>div>a {
  font-size: 11px;
  font-weight: 800;
  color: #6e8249;
  text-transform: uppercase;
}
@media (max-width:900px) {
  .format-packaging-showcase {
    grid-template-columns: 1fr;
    gap: 38px;
    padding: 76px 8vw;
  }
  .format-packaging-showcase figure img {
    min-height: 0;
    height: 420px;
  }
}
@media (max-width:520px) {
  .format-packaging-showcase {
    padding: 64px 7vw;
  }
  .format-packaging-showcase figure img {
    height: 270px;
  }
  .packaging-tags span {
    font-size: 9px;
  }
}
.format-hero-actions {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}
.format-hero-actions .text-cta,.format-intro a,.ingredients-panel>a,.format-inline-quote {
  font-size: 12px;
  font-weight: 800;
  color: #217c9a;
  text-decoration: none;
}
.format-project-brief {
  padding: 95px 10vw;
  background: #eaf2ee;
  display: grid;
  grid-template-columns: .78fr 1.22fr;
  gap: 80px;
  align-items: start;
}
.format-project-brief h2 {
  font: 400 clamp(42px,4vw,60px)/.97 Georgia,serif;
  letter-spacing: -.055em;
  margin: 14px 0;
}
.format-project-brief h2 em {
  color: #2987a7;
}
.format-project-brief>div>p:not(.kicker) {
  font-size: 14px;
  line-height: 1.75;
  color: #4c6761;
  max-width: 500px;
}
.format-project-brief ul {
  padding: 0;
  margin: 28px 0 24px;
  list-style: none;
  border-top: 1px solid #bfd4ca;
}
.format-project-brief li {
  padding: 13px 0;
  border-bottom: 1px solid #bfd4ca;
  font: 400 18px/1.25 Georgia,serif;
  color: #23473d;
}
.format-project-brief>div>a {
  font-size: 11px;
  font-weight: 800;
  color: #1d7e9d;
  text-decoration: none;
}
.format-project-brief form {
  background: #fff;
  padding: 29px;
  border: 1px solid #cfdfd8;
}
.long-detail .ingredients-panel>a {
  display: inline-block;
  margin-top: 18px;
}
.format-inline-quote {
  display: inline-block;
  margin-top: 23px;
}
@media (max-width:900px) {
  .format-project-brief {
    grid-template-columns: 1fr;
    gap: 40px;
    padding: 72px 8vw;
  }
}
@media (max-width:520px) {
  .format-hero-actions {
    align-items: flex-start;
    flex-direction: column;
    gap: 14px;
  }
  .format-project-brief {
    padding: 62px 7vw;
  }
  .format-project-brief form {
    padding: 19px;
  }
}
.format-packaging-showcase {
  grid-template-columns: .68fr 1.32fr;
  gap: 64px;
  background: #f8f6f1;
}
.format-packaging-copy {
  align-self: start;
  padding-top: 16px;
}
.format-packaging-copy>a {
  display: inline-block;
  margin-top: 30px;
  padding: 14px 17px;
  background: #708345;
  color: #fff;
  font-size: 10px;
  font-weight: 800;
  text-decoration: none;
}
.packaging-interaction {
  min-width: 0;
}
.packaging-tile-grid {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 10px;
}
.packaging-tile-grid button {
  position: relative;
  min-width: 0;
  padding: 0 0 15px;
  border: 1px solid #deded7;
  background: #fff;
  color: #20372c;
  text-align: left;
  cursor: pointer;
  overflow: hidden;
  transition: transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}
.packaging-tile-grid button:hover,.packaging-tile-grid button.is-active {
  border-color: #73864b;
  box-shadow: 0 12px 24px rgba(38,54,37,.12);
  transform: translateY(-4px);
}
.packaging-tile-photo {
  display: block;
  aspect-ratio: 1.2;
  background-size: 200% 200%;
  background-repeat: no-repeat;
  background-color: #f4ede2;
}
.packaging-tile-number {
  display: block;
  padding: 12px 13px 5px;
  font-size: 9px;
  letter-spacing: .12em;
  color: #7b8e4b;
  font-weight: 800;
}
.packaging-tile-grid strong {
  display: block;
  padding: 0 13px;
  font: 400 18px/1 Georgia,serif;
}
.packaging-tile-grid small {
  display: block;
  padding: 9px 13px 0;
  font-size: 8px;
  text-transform: uppercase;
  letter-spacing: .09em;
  color: #788375;
  font-weight: 800;
}
.packaging-tile-grid button.is-active small {
  color: #1a7a99;
}
.packaging-selected {
  display: grid;
  grid-template-columns: 1fr .9fr;
  margin-top: 18px;
  background: #fff;
  border: 1px solid #deded7;
  min-height: 255px;
}
.packaging-selected-image {
  min-height: 255px;
  background-size: 200% 200%;
  background-repeat: no-repeat;
  background-color: #f4ede2;
}
.packaging-selected>div:last-child {
  padding: 34px 34px 28px;
}
.packaging-selected .kicker {
  margin: 0 0 13px;
}
.packaging-selected h3 {
  font: 400 clamp(31px,2.7vw,44px)/.95 Georgia,serif;
  letter-spacing: -.05em;
  margin: 0;
  color: #21392d;
}
.packaging-selected>div>p:not(.kicker) {
  font-size: 12px;
  line-height: 1.65;
  color: #617165;
  max-width: 380px;
}
.packaging-selected a {
  display: inline-block;
  margin-top: 12px;
  color: #1c7c9a;
  font-size: 10px;
  font-weight: 800;
  text-decoration: none;
  text-transform: uppercase;
}
.packaging-selected a b {
  font-size: 15px;
  margin-left: 4px;
}
@media (max-width:1050px) {
  .format-packaging-showcase {
    grid-template-columns: 1fr;
    gap: 42px;
  }
  .packaging-tile-grid {
    grid-template-columns: repeat(4,1fr);
  }
}
@media (max-width:700px) {
  .packaging-tile-grid {
    grid-template-columns: repeat(2,1fr);
  }
  .packaging-selected {
    grid-template-columns: 1fr;
  }
  .packaging-selected-image {
    min-height: 250px;
  }
  .packaging-selected>div:last-child {
    padding: 27px;
  }
  .format-packaging-copy>a {
    margin-top: 10px;
  }
}
@media (max-width:420px) {
  .packaging-tile-grid strong {
    font-size: 16px;
  }
  .packaging-tile-number,.packaging-tile-grid strong,.packaging-tile-grid small {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.format-packaging-copy>a {
  min-width: 246px;
  text-align: center;
  letter-spacing: .04em;
}
.format-packaging-copy>a b {
  font-size: 16px;
  margin-left: 8px;
}
.packaging-selected {
  grid-template-columns: 1.08fr .92fr;
  min-height: 390px;
  margin-top: 22px;
}
.packaging-selected-image {
  min-height: 390px;
  background-size: 200% 200%;
}
.packaging-selected>div:last-child {
  padding: 48px 46px 42px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.packaging-selected h3 {
  font-size: clamp(38px,3.2vw,54px);
}
.packaging-selected>div>p:not(.kicker) {
  font-size: 13px;
  line-height: 1.7;
  margin: 15px 0 0;
}
.packaging-selected-meta {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  width: 100%;
  margin: 28px 0 0;
}
.packaging-selected-meta span {
  min-height: 69px;
  padding: 13px 14px;
  background: #f5f2e8;
  border-left: 2px solid #d0a937;
  color: #54665b;
  font-size: 10px;
  line-height: 1.45;
}
.packaging-selected-meta b {
  display: block;
  margin-bottom: 5px;
  color: #74884c;
  font-size: 8px;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.packaging-selected a {
  margin-top: 26px;
  padding-bottom: 3px;
  border-bottom: 1px solid #1c7c9a;
}
@media (max-width:700px) {
  .packaging-selected {
    min-height: 0;
  }
  .packaging-selected-image {
    min-height: 320px;
  }
  .packaging-selected>div:last-child {
    padding: 34px 27px;
  }
  .packaging-selected-meta {
    grid-template-columns: 1fr;
  }
  .format-packaging-copy>a {
    width: 100%;
    max-width: 320px;
  }
}
.format-packaging-copy>a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 282px !important;
  min-height: 52px !important;
  padding: 0 22px !important;
  background: #718649 !important;
  color: transparent !important;
  font-size: 0 !important;
  line-height: 1 !important;
}
.format-packaging-copy>a::before {
  content: "START PACKAGING INQUIRY";
  display: block !important;
  color: #fff !important;
  font: 800 11px/1 Arial,sans-serif !important;
  letter-spacing: .08em !important;
}
.format-packaging-copy>a::after {
  content: "&rarr;;
  display: block !important;
  margin-left: 12px !important;
  color: #fff !important;
  font: 700 18px/1 Arial,sans-serif !important;
}
.format-packaging-copy>a b {
  display: none !important;
}
.packaging-selected {
  grid-template-columns: 1.16fr .84fr !important;
  min-height: 480px !important;
}
.packaging-selected-image {
  min-height: 480px !important;
}
.packaging-selected>div:last-child {
  min-height: 480px !important;
  padding: 58px 52px 48px !important;
}
.packaging-selected h3 {
  font-size: clamp(42px,3.5vw,62px) !important;
}
.packaging-selected>div>p:not(.kicker) {
  font-size: 14px !important;
  max-width: 430px !important;
}
.packaging-selected-meta {
  margin-top: 34px !important;
}
.packaging-selected a {
  font-size: 11px !important;
}
@media (max-width:700px) {
  .format-packaging-copy>a {
    width: 100% !important;
    max-width: 340px !important;
  }
  .packaging-selected {
    grid-template-columns: 1fr !important;
    min-height: 0 !important;
  }
  .packaging-selected-image {
    min-height: 360px !important;
  }
  .packaging-selected>div:last-child {
    min-height: 0 !important;
  }
}
.home-hero-oem {
  min-height: clamp(620px,42.95vw,822px) !important;
  padding: 0 !important;
  background: #f7fafc url('../images/home-hero-user-light.webp') center/cover no-repeat !important;
  color: #10233b !important;
}
.home-hero-oem:before {
  display: none !important;
}
.home-hero-oem-copy {
  z-index: 2 !important;
  width: 42% !important;
  padding: 0 0 8% 4.8% !important;
  opacity: 0 !important;
}
.home-hero-oem-stats {
  z-index: 2 !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 3vw !important;
  height: 18% !important;
}
.home-hero-oem-stats>div {
  opacity: 0 !important;
  border: 0 !important;
}
.home-hero-oem + .proof-strip {
  display: none !important;
}
@media (max-width:900px) {
  .home-hero-oem {
    min-height: 510px !important;
    background-position: 58% center !important;
  }
  .home-hero-oem-copy {
    width: 54% !important;
    padding-left: 5vw !important;
  }
  .home-hero-oem-stats {
    height: 16% !important;
  }
}
@media (max-width:560px) {
  .home-hero-oem {
    min-height: 420px !important;
    background-position: 60% center !important;
  }
  .home-hero-oem-copy {
    width: 70% !important;
  }
  .home-hero-oem-stats {
    height: 13% !important;
  }
}
.home-hero-oem {
  position: relative;
  min-height: 650px;
  padding: 80px 9vw 0;
  background: #07111b url('../images/hero-supplement-factory-wide.webp') center/cover no-repeat;
  color: #fff;
  overflow: hidden;
  display: flex;
  align-items: center;
}
.home-hero-oem:before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg,#06101d 0%,rgba(6,16,29,.95) 36%,rgba(6,16,29,.45) 56%,rgba(6,16,29,.04) 78%);
}
.home-hero-oem-copy {
  position: relative;
  z-index: 1;
  width: min(560px,48%);
  padding-bottom: 65px;
}
.home-hero-oem .ref-kicker {
  color: #d9d2e9;
  margin: 0 0 12px;
}
.home-hero-oem h1 {
  font: 400 clamp(54px,5.3vw,82px)/.87 Georgia,serif;
  letter-spacing: -.065em;
  margin: 0;
}
.home-hero-oem h1 em {
  color: #8a69d6;
  font-style: normal;
}
.home-hero-oem .hero-lead {
  max-width: 475px;
  margin: 20px 0 18px;
  color: #e6eaf2;
  font-size: 14px;
  line-height: 1.7;
}
.hero-benefit-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px 18px;
  margin: 0 0 24px;
  color: #e4e9f2;
  font-size: 11px;
}
.hero-benefit-list span::first-letter {
  color: #a486ec;
}
.home-hero-oem .ref-actions {
  margin: 0;
}
.home-hero-oem .ref-button {
  padding: 14px 19px;
}
.home-hero-oem .whatsapp-button {
  background: #8060cc;
}
.home-hero-oem .hero-outline-button {
  background: transparent;
  border: 1px solid #a9b6cc;
  color: #fff;
}
.home-hero-oem-stats {
  position: absolute;
  z-index: 1;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 19px 9vw;
  background: linear-gradient(90deg,rgba(3,10,20,.94),rgba(5,14,25,.61));
  border-top: 1px solid rgba(210,220,238,.23);
  display: grid;
  grid-template-columns: repeat(4,1fr);
}
.home-hero-oem-stats>div {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 22px;
  border-right: 1px solid rgba(210,220,238,.24);
}
.home-hero-oem-stats>div:first-child {
  padding-left: 0;
}
.home-hero-oem-stats>div:last-child {
  border: 0;
}
.home-hero-oem-stats b {
  font: 400 19px Georgia,serif;
  color: #fff;
  white-space: nowrap;
}
.home-hero-oem-stats span {
  font-size: 9px;
  color: #d6ddea;
  line-height: 1.25;
  text-transform: uppercase;
  letter-spacing: .06em;
}
@media (max-width:900px) {
  .home-hero-oem {
    min-height: 670px;
    padding: 75px 8vw 100px;
    background-position: 66% center;
  }
  .home-hero-oem:before {
    background: linear-gradient(90deg,rgba(6,16,29,.97),rgba(6,16,29,.75) 58%,rgba(6,16,29,.25));
  }
  .home-hero-oem-copy {
    width: 75%;
  }
  .home-hero-oem-stats {
    padding: 16px 8vw;
  }
  .home-hero-oem-stats>div {
    padding: 0 12px;
  }
  .home-hero-oem-stats b {
    font-size: 16px;
  }
}
@media (max-width:560px) {
  .home-hero-oem {
    min-height: 690px;
    padding: 70px 7vw 175px;
    background-position: 63% center;
  }
  .home-hero-oem-copy {
    width: 100%;
  }
  .home-hero-oem h1 {
    font-size: 54px;
  }
  .hero-benefit-list {
    grid-template-columns: 1fr;
  }
  .home-hero-oem-stats {
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    padding: 16px 7vw;
  }
  .home-hero-oem-stats>div {
    padding: 0;
    border: 0;
  }
  .home-hero-oem-stats span {
    font-size: 8px;
  }
}
.oral-film-ingredient-cards article {
  min-height: 342px;
  padding: 0 23px 23px;
  overflow: hidden;
}
.ingredient-card-visual {
  height: 118px;
  margin: 0 -23px 19px;
  position: relative;
  overflow: hidden;
  background: #dcecf0;
}
.ingredient-card-visual:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg,rgba(232,244,246,.04),rgba(231,245,247,.14));
}
.ingredient-card-visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  opacity: 1;
  mix-blend-mode: normal;
}
.ingredient-card-visual span {
  position: absolute;
  z-index: 1;
  left: 18px;
  top: 15px;
  padding: 6px 8px;
  background: #fff;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .12em;
  color: #38819c;
}
.oral-film-ingredient-cards h3 {
  font: 400 24px/1.02 Georgia,serif;
  color: #24414a;
  margin: 0 0 11px;
}
@media (max-width:900px) {
  .oral-film-ingredient-cards article {
    min-height: 302px;
  }
}
.stock-hero>img {
  height: 380px;
  max-height: none;
  object-fit: cover;
  object-position: center;
  background: transparent;
}
.oral-film-stock-hero>img {
  height: 600px;
  max-height: none;
  object-fit: cover;
  object-position: center;
  background: transparent;
}
@media (max-width:900px) {
  .stock-hero>img {
    height: 330px;
  }
  .oral-film-stock-hero>img {
    height: 480px;
  }
}
@media (max-width:520px) {
  .stock-hero>img {
    height: 270px;
  }
  .oral-film-stock-hero>img {
    height: 360px;
  }
}
.home-hero-oem {
  min-height: clamp(630px,43vw,822px) !important;
  padding: 80px 9vw 108px !important;
  background: #f6f9fc url('../images/home-hero-supplement-formats.webp') center/cover no-repeat !important;
  color: #10233b !important;
}
.home-hero-oem:before {
  display: block !important;
  z-index: 0 !important;
  background: linear-gradient(90deg,#f9fcff 0%,rgba(249,252,255,.985) 31%,rgba(249,252,255,.76) 39%,rgba(249,252,255,.20) 47%,rgba(249,252,255,0) 57%) !important;
}
.home-hero-oem-copy {
  z-index: 2 !important;
  width: min(560px,42%) !important;
  padding: 0 0 34px !important;
  opacity: 1 !important;
}
.home-hero-oem .ref-kicker {
  color: #5a42a0 !important;
  margin: 0 0 13px !important;
}
.home-hero-oem h1 {
  color: #0d233e !important;
}
.home-hero-oem h1 em {
  color: #5938a6 !important;
}
.home-hero-oem .hero-lead {
  color: #4b607a !important;
  font-size: 15px !important;
  line-height: 1.62 !important;
}
.hero-benefit-list {
  color: #1d2e43 !important;
  font-size: 11px !important;
}
.hero-benefit-list span::first-letter {
  color: #6747ae !important;
}
.home-hero-oem .whatsapp-button {
  background: #5c3fa5 !important;
  color: #fff !important;
}
.home-hero-oem .hero-outline-button {
  border-color: #5c3fa5 !important;
  color: #5c3fa5 !important;
  background: rgba(255,255,255,.54) !important;
}
.home-hero-oem .hero-quote-button {
  background: #173a67 !important;
  color: #fff !important;
  border: 1px solid #173a67 !important;
}
.home-hero-oem .ref-actions {
  flex-wrap: wrap !important;
}
.home-hero-oem-stats {
  z-index: 2 !important;
  left: 3.2vw !important;
  right: 3.2vw !important;
  bottom: 28px !important;
  min-height: 100px !important;
  height: auto !important;
  padding: 16px 28px !important;
  background: rgba(255,255,255,.88) !important;
  border: 1px solid rgba(223,229,240,.86) !important;
  border-radius: 54px !important;
  box-shadow: 0 13px 32px rgba(40,74,110,.11) !important;
}
.home-hero-oem-stats>div {
  opacity: 1 !important;
  border-color: #d8ddea !important;
}
.home-hero-oem-stats b {
  color: #162d50 !important;
  font-size: 20px !important;
}
.home-hero-oem-stats span {
  color: #48617d !important;
}
.home-hero-oem + .proof-strip {
  display: none !important;
}
@media (max-width:900px) {
  .home-hero-oem {
    min-height: 620px !important;
    padding: 70px 8vw 130px !important;
    background-position: 58% center !important;
  }
  .home-hero-oem-copy {
    width: 62% !important;
  }
  .home-hero-oem-stats {
    left: 5vw !important;
    right: 5vw !important;
    bottom: 18px !important;
    border-radius: 26px !important;
  }
}
@media (max-width:560px) {
  .home-hero-oem {
    min-height: 620px !important;
    padding: 56px 7vw 160px !important;
    background-position: 61% center !important;
  }
  .home-hero-oem:before {
    background: linear-gradient(90deg,rgba(249,252,255,.98),rgba(249,252,255,.82) 68%,rgba(249,252,255,.2)) !important;
  }
  .home-hero-oem-copy {
    width: 100% !important;
  }
  .home-hero-oem-stats {
    left: 4vw !important;
    right: 4vw !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
    padding: 13px 17px !important;
  }
  .home-hero-oem-stats b {
    font-size: 16px !important;
  }
}
.solution-grid>a.solution-card-link {
  height: 305px;
  position: relative;
  overflow: hidden;
  display: block;
  background: #243;
  text-decoration: none;
  isolation: isolate;
}
.solution-grid>a.solution-card-link img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .45s ease;
}
.solution-grid>a.solution-card-link:after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  background: linear-gradient(0deg,rgba(13,29,23,.9),rgba(13,29,23,.07) 70%);
  transition: background .3s ease;
}
.solution-grid>a.solution-card-link>div {
  position: absolute;
  z-index: 2;
  left: 17px;
  right: 17px;
  bottom: 17px;
  color: #fff;
}
.solution-grid>a.solution-card-link span {
  font-size: 8px;
  letter-spacing: .12em;
  color: #d8dfba;
}
.solution-grid>a.solution-card-link h3 {
  font: 400 25px Georgia,serif;
  margin: 7px 0;
}
.solution-grid>a.solution-card-link p {
  display: none;
}
.solution-grid>a.solution-card-link b {
  font-size: 9px;
  font-family: Arial,sans-serif;
  font-weight: 800;
  text-transform: none;
}
.solution-grid>a.solution-card-link b i {
  font-size: 15px;
  font-style: normal;
  margin-left: 5px;
}
.solution-grid>a.solution-card-link:hover img,.solution-grid>a.solution-card-link:focus-visible img {
  transform: scale(1.055);
}
.solution-grid>a.solution-card-link:hover:after,.solution-grid>a.solution-card-link:focus-visible:after {
  background: linear-gradient(0deg,rgba(13,29,23,.92),rgba(13,29,23,.24) 72%);
}
.solution-grid>a.solution-card-link:focus-visible {
  outline: 3px solid #d4b75b;
  outline-offset: 3px;
}
.ingredient-image-link {
  display: block;
  position: relative;
  height: 186px;
  overflow: hidden;
  background: #edf1f2;
}
.ingredient-image-link img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .35s ease;
}
.ingredient-image-link span {
  position: absolute;
  z-index: 1;
  top: 12px;
  left: 12px;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background: #2f699e;
  color: #fff;
  font-size: 9px;
  display: grid;
  place-items: center;
}
.ingredient-image-link b {
  position: absolute;
  z-index: 1;
  left: 13px;
  bottom: 13px;
  opacity: 0;
  padding: 8px 10px;
  background: #1e7190;
  color: #fff;
  font-size: 9px;
  text-transform: uppercase;
  letter-spacing: .07em;
  transform: translateY(8px);
  transition: opacity .25s ease,transform .25s ease;
}
.ingredient-image-link:hover img,.ingredient-image-link:focus-visible img {
  transform: scale(1.045);
}
.ingredient-image-link:hover b,.ingredient-image-link:focus-visible b {
  opacity: 1;
  transform: translateY(0);
}
.ingredient-image-link:focus-visible {
  outline: 3px solid #1e7190;
  outline-offset: -3px;
}
.ingredient-grid h3 a {
  color: inherit;
}
.ready-stock-home-products>a {
  position: relative;
  display: block;
  overflow: hidden;
  border: 1px solid #e8e9e4;
  background: #fff;
}
.ready-stock-home-products>a img {
  display: block;
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
  transition: transform .35s ease;
}
.ready-stock-home-products>a span {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 13px 12px;
  background: linear-gradient(0deg,rgba(28,43,31,.92),rgba(28,43,31,.12));
  color: #fff;
  font: 400 16px Georgia,serif;
  opacity: 0;
  transform: translateY(14px);
  transition: opacity .25s ease,transform .25s ease;
}
.ready-stock-home-products>a span b {
  font-family: Arial,sans-serif;
  font-size: 14px;
  margin-left: 5px;
}
.ready-stock-home-products>a:hover img,.ready-stock-home-products>a:focus-visible img {
  transform: scale(1.05);
}
.ready-stock-home-products>a:hover span,.ready-stock-home-products>a:focus-visible span {
  opacity: 1;
  transform: translateY(0);
}
.ready-stock-home-products>a:focus-visible {
  outline: 3px solid #748846;
  outline-offset: 3px;
}
@media (max-width:520px) {
  .solution-grid>a.solution-card-link {
    height: 290px;
  }
  .ingredient-image-link {
    height: 215px;
  }
  .ready-stock-home-products>a span {
    opacity: 1;
    transform: none;
  }
}
.dosage-index-page {
  background: #fbfaf6;
  color: #17362e;
  min-height: 100vh;
}
.dosage-index-hero {
  max-width: 940px;
  margin: 0 auto;
  padding: 86px 6vw 48px;
  text-align: center;
}
.dosage-index-hero .ref-kicker {
  margin-bottom: 16px;
}
.dosage-index-hero h1 {
  font: 400 clamp(45px,5.2vw,73px)/.94 Georgia,serif;
  letter-spacing: -.06em;
  margin: 0;
}
.dosage-index-hero h1 em {
  color: #caa441;
  font-style: italic;
}
.dosage-index-hero>p:last-child {
  max-width: 610px;
  margin: 23px auto 0;
  font-size: 13px;
  line-height: 1.65;
  color: #65716a;
}
.dosage-index-actions {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin-top: 27px;
}
.dosage-index-actions a {
  padding: 14px 17px;
  background: #748849;
  color: #fff;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .05em;
}
.dosage-index-actions a:last-child {
  background: transparent;
  color: #304236;
  border: 1px solid #aeb6a5;
}
.dosage-index-actions b,.dosage-index-guidance-actions b {
  font-size: 15px;
  margin-left: 7px;
}
.dosage-index-grid {
  max-width: 1220px;
  margin: 0 auto 100px;
  padding: 0 6vw;
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 16px;
}
.dosage-index-card {
  display: block;
  background: #fff;
  border: 1px solid #e0e2da;
  text-decoration: none;
  color: inherit;
  overflow: hidden;
  box-shadow: 0 8px 25px rgba(31,47,36,.04);
  transition: transform .28s ease,box-shadow .28s ease,border-color .28s ease;
}
.dosage-index-card img {
  display: block;
  width: 100%;
  aspect-ratio: 1.45;
  object-fit: cover;
  transition: transform .4s ease;
}
.dosage-index-card>div {
  padding: 18px 18px 19px;
}
.dosage-index-card span {
  display: block;
  font-size: 8px;
  letter-spacing: .12em;
  color: #899456;
  font-weight: 800;
}
.dosage-index-card h2 {
  font: 400 24px/1.04 Georgia,serif;
  margin: 9px 0 7px;
}
.dosage-index-card p {
  font-size: 10px;
  color: #68736b;
  margin: 0;
}
.dosage-index-card .dosage-index-tagline {
  margin-bottom: 11px;
  color: #849161;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.dosage-index-description {
  min-height: 47px;
  line-height: 1.45;
}
.dosage-index-detail {
  padding: 13px 0 14px;
  margin: 14px 0;
  border-top: 1px solid #e7e8e1;
  border-bottom: 1px solid #e7e8e1;
}
.dosage-index-detail small {
  display: block;
  font-size: 7px;
  font-weight: 800;
  letter-spacing: .11em;
  color: #79884c;
  margin: 0 0 4px;
}
.dosage-index-detail p {
  font-size: 9px;
  line-height: 1.45;
  margin: 0 0 11px;
}
.dosage-index-detail p:last-child {
  margin: 0;
}
.dosage-index-card b {
  font: 800 9px Arial,sans-serif;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: #6f7f42;
}
.dosage-index-card i {
  font-size: 15px;
  font-style: normal;
  margin-left: 5px;
}
.dosage-index-card:hover,.dosage-index-card:focus-visible {
  transform: translateY(-6px);
  border-color: #a6ad75;
  box-shadow: 0 18px 38px rgba(31,47,36,.13);
  outline: none;
}
.dosage-index-card:hover img,.dosage-index-card:focus-visible img {
  transform: scale(1.055);
}
.dosage-index-guidance {
  padding: 85px 6vw;
  display: grid;
  grid-template-columns: .88fr 1.12fr;
  gap: 10vw;
  background: #233b29;
  color: #fff;
}
.dosage-index-guidance>div {
  max-width: 560px;
}
.dosage-index-guidance .ref-kicker {
  color: #d9c776;
}
.dosage-index-guidance h2 {
  font: 400 clamp(40px,4.4vw,61px)/.95 Georgia,serif;
  letter-spacing: -.055em;
  margin: 0;
}
.dosage-index-guidance h2 em {
  color: #d7b958;
  font-style: italic;
}
.dosage-index-guidance-copy>p {
  font-size: 13px;
  line-height: 1.7;
  color: #d9e0d5;
  margin: 4px 0 25px;
}
.dosage-index-guidance ul {
  padding: 0;
  margin: 0;
  border-top: 1px solid rgba(255,255,255,.2);
  list-style: none;
}
.dosage-index-guidance li {
  display: flex;
  gap: 13px;
  padding: 13px 0;
  border-bottom: 1px solid rgba(255,255,255,.2);
  font-size: 11px;
  color: #ebf0e8;
}
.dosage-index-guidance li b {
  color: #d7bc60;
  font: 400 16px Georgia,serif;
}
.dosage-index-guidance-actions {
  display: flex;
  gap: 22px;
  flex-wrap: wrap;
  margin-top: 25px;
}
.dosage-index-guidance-actions a {
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  color: #fff;
}
.dosage-index-guidance-actions a:first-child {
  color: #e2c868;
}
@media (max-width:950px) {
  .dosage-index-grid {
    grid-template-columns: repeat(2,1fr);
  }
  .dosage-index-guidance {
    grid-template-columns: 1fr;
    gap: 34px;
  }
  .ref-header nav {
    gap: 18px;
  }
}
@media (max-width:560px) {
  .dosage-index-hero {
    padding: 65px 7vw 38px;
  }
  .dosage-index-actions {
    align-items: stretch;
    flex-direction: column;
  }
  .dosage-index-actions a {
    text-align: center;
  }
  .dosage-index-grid {
    grid-template-columns: 1fr;
    padding: 0 7vw;
    margin-bottom: 70px;
  }
  .dosage-index-card img {
    aspect-ratio: 1.6;
  }
  .dosage-index-guidance {
    padding: 65px 7vw;
  }
  .dosage-index-guidance-actions {
    display: grid;
    gap: 16px;
  }
}
.global-whatsapp {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 50;
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 13px 17px;
  border-radius: 999px;
  background: #18a957;
  color: #fff !important;
  font: 800 12px/1 Arial,Helvetica,sans-serif;
  box-shadow: 0 12px 28px rgba(12,75,39,.28);
  transition: transform .2s ease,box-shadow .2s ease;
}
.global-whatsapp span {
  display: grid;
  place-items: center;
  width: 18px;
  height: 18px;
  border: 2px solid currentColor;
  border-radius: 50%;
  font-size: 0;
}
.global-whatsapp span:after {
  content: "";
  width: 5px;
  height: 5px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: translate(6px,6px) rotate(20deg);
}
.global-whatsapp:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 32px rgba(12,75,39,.35);
}
.global-whatsapp:focus-visible {
  outline: 3px solid #153d2e;
  outline-offset: 3px;
}
@media (max-width:600px) {
  .global-whatsapp {
    right: 16px;
    bottom: 16px;
    padding: 13px 15px;
  }
  .global-whatsapp strong {
    font-size: 11px;
  }
}
.factory-hero-actions,.factory-inquiry-cta>div {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}
.factory-hero-actions a {
  border: 1px solid rgba(255,255,255,.55);
  padding: 13px 16px;
}
.factory-hero-actions a:first-child {
  background: #19a85d;
  border-color: #19a85d;
}
.factory-scale {
  padding: 100px 10vw;
  background: #fff;
  display: grid;
  grid-template-columns: .85fr 1.15fr;
  gap: 70px;
}
.factory-scale h2,.factory-format-band h2,.factory-quality h2 {
  font: 400 clamp(41px,4.2vw,59px)/.95 Georgia,serif;
  margin: 0;
}
.factory-scale h2 em,.factory-format-band h2 em,.factory-quality h2 em {
  color: #788b4b;
}
.factory-scale>div:nth-child(2) p {
  font-size: 14px;
  line-height: 1.75;
  color: #667067;
}
.factory-scale-stats {
  grid-column: 1/-1;
  display: grid;
  grid-template-columns: repeat(4,1fr);
  border-top: 1px solid #dfe3dc;
  border-bottom: 1px solid #dfe3dc;
}
.factory-scale-stats article {
  padding: 22px 18px;
  border-right: 1px solid #dfe3dc;
  display: flex;
  align-items: baseline;
  gap: 9px;
}
.factory-scale-stats article:last-child {
  border-right: 0;
}
.factory-scale-stats b {
  font: 400 25px Georgia,serif;
}
.factory-scale-stats span {
  font-size: 10px;
  color: #697269;
}
.factory-format-band {
  padding: 95px 10vw;
  background: #213624;
  color: #fff;
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: 80px;
}
.factory-format-band .ref-kicker {
  color: #d9cc85;
}
.factory-format-band h2 em {
  color: #e4c15e;
}
.factory-format-band>div>p:not(.ref-kicker) {
  font-size: 13px;
  line-height: 1.7;
  color: #cfdbcf;
}
.factory-format-band>div>a {
  display: inline-block;
  margin-top: 12px;
  font-size: 10px;
  font-weight: 800;
  color: #fff;
}
.factory-format-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border-top: 1px solid rgba(255,255,255,.22);
  border-left: 1px solid rgba(255,255,255,.22);
}
.factory-format-list a {
  min-height: 78px;
  padding: 15px;
  border-right: 1px solid rgba(255,255,255,.22);
  border-bottom: 1px solid rgba(255,255,255,.22);
  display: grid;
  grid-template-columns: 32px 1fr auto;
  align-items: center;
  gap: 8px;
  transition: background .2s;
}
.factory-format-list a:hover {
  background: #708148;
}
.factory-format-list span {
  font-size: 9px;
  color: #d9cc85;
}
.factory-format-list b {
  font: 400 18px Georgia,serif;
}
.factory-format-list i {
  font-style: normal;
}
.factory-quality {
  padding: 100px 10vw;
  background: #f0f2ec;
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: 80px;
}
.factory-quality>div:last-child {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1px;
  background: #dce1d9;
}
.factory-quality article {
  background: #f8f9f5;
  padding: 24px;
}
.factory-quality article span {
  font-size: 9px;
  font-weight: 800;
  color: #788b4b;
}
.factory-quality article h3 {
  font: 400 20px Georgia,serif;
  margin: 30px 0 9px;
}
.factory-quality article p {
  font-size: 11px;
  line-height: 1.62;
  color: #6e766e;
}
.factory-inquiry-cta>p:not(.ref-kicker) {
  max-width: 630px;
  margin: 0 auto 24px;
  font-size: 13px;
  line-height: 1.7;
  color: #687169;
}
.factory-inquiry-cta>div {
  justify-content: center;
}
.factory-inquiry-cta>div a {
  padding: 14px 17px;
  border: 1px solid #89956c;
  font-size: 10px;
  font-weight: 800;
}
.factory-inquiry-cta>div a:first-child {
  background: #788b49;
  color: #fff;
  border-color: #788b49;
}
@media (max-width:800px) {
  .factory-scale,.factory-format-band,.factory-quality {
    grid-template-columns: 1fr;
    gap: 40px;
    padding: 75px 8vw;
  }
  .factory-scale-stats {
    grid-template-columns: 1fr 1fr;
  }
  .factory-scale-stats article:nth-child(2) {
    border-right: 0;
  }
  .factory-format-list {
    grid-template-columns: 1fr;
  }
  .factory-quality>div:last-child {
    grid-template-columns: 1fr;
  }
}
@media (max-width:520px) {
  .factory-scale-stats {
    grid-template-columns: 1fr;
  }
  .factory-scale-stats article {
    border-right: 0;
  }
  .factory-hero-actions {
    gap: 8px;
  }
  .factory-hero-actions a {
    padding: 12px;
  }
  .factory-format-band,.factory-scale,.factory-quality {
    padding: 65px 7vw;
  }
}
.factory-hero-new {
  height: 700px;
  min-height: 700px;
}
.factory-hero-new:after {
  background: linear-gradient(90deg,rgba(7,15,23,.93) 0%,rgba(7,15,23,.78) 35%,rgba(7,15,23,.16) 76%,rgba(7,15,23,.08) 100%);
}
.factory-hero-copy {
  top: 96px !important;
  left: 10vw;
  max-width: 600px;
}
.factory-hero-new h1 {
  font-size: clamp(54px,5.4vw,78px);
}
.factory-hero-new p:not(.ref-kicker) {
  max-width: 560px;
  margin: 22px 0 25px;
}
.factory-hero-proof {
  display: flex;
  gap: 0;
  margin-top: 34px;
  border-top: 1px solid rgba(255,255,255,.28);
  border-bottom: 1px solid rgba(255,255,255,.28);
  max-width: 560px;
}
.factory-hero-proof span {
  padding: 14px 18px 14px 0;
  margin-right: 18px;
  border-right: 1px solid rgba(255,255,255,.24);
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-size: 9px;
  letter-spacing: .06em;
  color: #d6dfd5;
  text-transform: uppercase;
  white-space: nowrap;
}
.factory-hero-proof span:last-child {
  border-right: 0;
  margin: 0;
}
.factory-hero-proof b {
  font: 400 19px Georgia,serif;
  color: #e5c663;
  text-transform: none;
  letter-spacing: 0;
}
.factory-hero-panel {
  position: absolute;
  z-index: 2;
  right: 10vw;
  bottom: 54px;
  width: min(330px,24vw);
  background: rgba(251,250,245,.96);
  color: #1d312b;
  padding: 25px 26px 23px;
  border-left: 3px solid #d9ba60;
  box-shadow: 0 20px 42px rgba(0,0,0,.22);
}
.factory-hero-panel p {
  font-size: 8px !important;
  letter-spacing: .14em !important;
  font-weight: 800;
  margin: 0 0 16px !important;
  color: #77864c !important;
}
.factory-hero-panel>b {
  display: block;
  font: 400 28px/1.02 Georgia,serif;
  letter-spacing: -.04em;
}
.factory-hero-panel>span {
  display: block;
  margin: 17px 0 19px;
  font-size: 10px;
  line-height: 1.55;
  color: #677168;
}
.factory-hero-panel>a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 13px;
  border-top: 1px solid #d8ddd5;
  color: #60753d !important;
  font-size: 9px !important;
  letter-spacing: .06em;
}
.factory-hero-panel i {
  font-style: normal;
  font-size: 17px;
}
@media (max-width:980px) {
  .factory-hero-new {
    height: 730px;
    min-height: 730px;
  }
  .factory-hero-panel {
    right: 7vw;
    width: 280px;
  }
  .factory-hero-copy {
    left: 7vw;
    max-width: 510px;
  }
  .factory-hero-proof {
    max-width: 500px;
  }
}
@media (max-width:760px) {
  .factory-hero-new {
    height: auto;
    min-height: 760px;
  }
  .factory-hero-copy {
    top: 72px !important;
    left: 7vw;
    right: 7vw;
    max-width: none;
  }
  .factory-hero-panel {
    left: 7vw;
    right: 7vw;
    bottom: 38px;
    width: auto;
  }
  .factory-hero-proof {
    max-width: none;
  }
  .factory-hero-proof span {
    white-space: normal;
    flex: 1;
    margin-right: 10px;
    padding-right: 10px;
  }
}
@media (max-width:520px) {
  .factory-hero-new {
    min-height: 820px;
  }
  .factory-hero-new h1 {
    font-size: 48px;
  }
  .factory-hero-proof {
    gap: 0;
  }
  .factory-hero-proof span {
    font-size: 7px;
  }
  .factory-hero-proof b {
    font-size: 16px;
  }
  .factory-hero-panel>b {
    font-size: 25px;
  }
  .factory-hero-panel {
    padding: 20px;
  }
  .factory-hero-actions a {
    font-size: 9px;
  }
  .factory-hero-new p:not(.ref-kicker) {
    font-size: 13px;
  }
}
.factory-workflow-interactive {
  padding: 105px 9vw;
  background: #203824;
  color: #fff;
}
.workflow-interactive-heading {
  max-width: 1240px;
  margin: 0 auto 36px;
  display: grid;
  grid-template-columns: 1fr .72fr;
  gap: 90px;
  align-items: end;
}
.workflow-interactive-heading .ref-kicker {
  color: #dcc875;
}
.workflow-interactive-heading h2 {
  font: 400 clamp(42px,4.5vw,61px)/.93 Georgia,serif;
  margin: 0;
}
.workflow-interactive-heading h2 em {
  color: #dfbc57;
}
.workflow-interactive-heading>p {
  font-size: 12px;
  line-height: 1.7;
  color: #d2dfcf;
  margin: 0;
}
.workflow-interactive-tabs {
  max-width: 1240px;
  margin: auto;
  display: grid;
  grid-template-columns: repeat(4,1fr);
  border-top: 1px solid rgba(255,255,255,.23);
  border-left: 1px solid rgba(255,255,255,.23);
}
.workflow-interactive-tabs button {
  min-height: 110px;
  background: transparent;
  border: 0;
  border-right: 1px solid rgba(255,255,255,.23);
  border-bottom: 1px solid rgba(255,255,255,.23);
  padding: 17px;
  text-align: left;
  color: #fff;
  cursor: pointer;
  transition: background .2s;
}
.workflow-interactive-tabs button:hover,.workflow-interactive-tabs button.active {
  background: #d6b957;
  color: #18352e;
}
.workflow-interactive-tabs span,.workflow-interactive-tabs small {
  display: block;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .1em;
}
.workflow-interactive-tabs span {
  color: #e2cf79;
}
.workflow-interactive-tabs button.active span {
  color: #46522d;
}
.workflow-interactive-tabs b {
  display: block;
  font: 400 21px Georgia,serif;
  margin: 11px 0 5px;
}
.workflow-interactive-tabs small {
  text-transform: uppercase;
}
.workflow-interactive-detail {
  max-width: 1240px;
  margin: 14px auto 0;
  display: grid;
  grid-template-columns: 1fr .92fr;
  background: #fff;
  color: #18352e;
}
.workflow-interactive-detail>img {
  display: block;
  width: 100%;
  height: 360px;
  object-fit: cover;
}
.workflow-interactive-detail>div {
  padding: 47px;
}
.workflow-interactive-detail .ref-kicker {
  font-size: 9px;
  color: #788b4b;
  margin-bottom: 14px;
}
.workflow-interactive-detail h3 {
  font: 400 clamp(37px,4vw,55px)/.94 Georgia,serif;
  margin: 0 0 18px;
}
.workflow-interactive-detail>div>p:not(.ref-kicker) {
  font-size: 13px;
  line-height: 1.7;
  color: #687169;
}
.workflow-next {
  margin: 27px 0;
  background: #f1efe4;
  border-left: 2px solid #d0b459;
  padding: 14px;
}
.workflow-next small,.workflow-next b {
  display: block;
}
.workflow-next small {
  font-size: 8px;
  letter-spacing: .12em;
  color: #718052;
}
.workflow-next b {
  font: 400 18px Georgia,serif;
  margin-top: 5px;
}
.workflow-interactive-detail a {
  font-size: 10px;
  font-weight: 800;
  color: #6d7c49;
}
@media (max-width:850px) {
  .workflow-interactive-heading,.workflow-interactive-detail {
    grid-template-columns: 1fr;
    gap: 30px;
  }
  .workflow-interactive-tabs {
    grid-template-columns: 1fr 1fr;
  }
  .workflow-interactive-detail>img {
    height: 290px;
  }
  .workflow-interactive-detail>div {
    padding: 34px;
  }
}
@media (max-width:520px) {
  .factory-workflow-interactive {
    padding: 75px 7vw;
  }
  .workflow-interactive-tabs {
    grid-template-columns: 1fr;
  }
  .workflow-interactive-tabs button {
    min-height: 88px;
  }
  .workflow-interactive-detail>div {
    padding: 28px;
  }
  .workflow-interactive-detail h3 {
    font-size: 38px;
  }
}
.ref-header nav {
  align-items: center;
}
.nav-dosage {
  position: relative;
  display: flex;
  align-items: center;
  height: 80px;
}
.nav-dosage>a span {
  font-size: 13px;
  margin-left: 4px;
}
.nav-dosage-menu {
  position: absolute;
  z-index: 60;
  left: -16px;
  top: 66px;
  width: 264px;
  padding: 9px;
  background: #fff;
  border: 1px solid #dfe3da;
  box-shadow: 0 16px 34px rgba(24,53,46,.14);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-7px);
  pointer-events: none;
  transition: opacity .18s ease,transform .18s ease;
}
.nav-dosage:hover .nav-dosage-menu,.nav-dosage:focus-within .nav-dosage-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
}
.nav-dosage-menu a {
  display: grid;
  grid-template-columns: 31px 1fr 15px;
  align-items: center;
  gap: 7px;
  padding: 11px 10px;
  font-size: 11px;
  font-weight: 700;
  color: #203b31;
}
.nav-dosage-menu a:hover {
  background: #eef2e8;
  color: #667a3e;
}
.nav-dosage-menu small {
  font-size: 8px;
  letter-spacing: .07em;
  color: #8b9a64;
}
.nav-dosage-menu b {
  font-size: 13px;
  color: #798c4b;
}
@media (max-width:900px) {
  .nav-dosage {
    height: auto;
  }
  .nav-dosage-menu {
    position: static;
    display: none;
  }
}
.format-formula-directions {
  padding: 108px 8vw;
  background: #fff;
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: 76px;
  align-items: start;
}
.formula-direction-heading h2 {
  font: 400 clamp(40px,4.5vw,60px)/.96 Georgia,serif;
  letter-spacing: -.06em;
  margin: 0 0 23px;
}
.formula-direction-heading h2 em {
  color: #2987a7;
}
.formula-direction-heading>p:not(.kicker) {
  font-size: 14px;
  line-height: 1.72;
  color: #61706a;
  max-width: 470px;
}
.formula-direction-heading>a {
  display: inline-block;
  margin-top: 21px;
  font-size: 11px;
  font-weight: 800;
  color: #217c9a;
}
.formula-direction-grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 12px;
}
.formula-direction-grid article {
  min-height: 270px;
  display: flex;
  flex-direction: column;
  background: #f4f6f1;
  border: 1px solid #dfe5da;
  padding: 24px;
  transition: transform .2s,background .2s,border-color .2s;
}
.formula-direction-grid article:hover {
  transform: translateY(-5px);
  background: #eef2e8;
  border-color: #819359;
}
.formula-direction-grid span {
  font-size: 9px;
  font-weight: 800;
  color: #7b8b4e;
  letter-spacing: .1em;
}
.formula-direction-grid h3 {
  font: 400 25px/1 Georgia,serif;
  margin: 34px 0 11px;
}
.formula-direction-grid b {
  display: block;
  font-size: 11px;
  line-height: 1.45;
  color: #1f4d48;
}
.formula-direction-grid p {
  font-size: 11px;
  line-height: 1.6;
  color: #6d766d;
  margin: 14px 0 22px;
}
.formula-direction-grid a {
  margin-top: auto;
  font-size: 9px;
  font-weight: 800;
  text-transform: uppercase;
  color: #207d9b;
}
.formula-direction-grid i {
  font-style: normal;
  font-size: 15px;
  margin-left: 5px;
}
@media (max-width:980px) {
  .format-formula-directions {
    grid-template-columns: 1fr;
    gap: 38px;
    padding: 80px 8vw;
  }
}
@media (max-width:720px) {
  .format-formula-directions {
    padding: 66px 7vw;
  }
  .formula-direction-grid {
    grid-template-columns: 1fr;
  }
  .formula-direction-grid article {
    min-height: auto;
  }
}
.certificates-section {
  padding: 100px 8vw;
  background: #f2f3ee;
}
.certificates-heading {
  max-width: 1500px;
  margin: 0 auto 38px;
  display: grid;
  grid-template-columns: 1fr .72fr;
  gap: 90px;
  align-items: end;
}
.certificates-heading h2 {
  font: 400 clamp(42px,4.5vw,62px)/.96 Georgia,serif;
  letter-spacing: -.055em;
  margin: 0;
}
.certificates-heading h2 em {
  color: #788b49;
}
.certificates-heading>p {
  font-size: 13px;
  line-height: 1.7;
  color: #697269;
  margin: 0;
}
.certificate-grid {
  max-width: 1500px;
  margin: auto;
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: 14px;
}
.certificate-card {
  position: relative;
  padding: 0;
  border: 1px solid #dce0d7;
  background: #fff;
  text-align: left;
  cursor: pointer;
  overflow: hidden;
  transition: transform .22s,box-shadow .22s;
}
.certificate-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 28px rgba(28,45,31,.12);
}
.certificate-card>img {
  display: block;
  width: 100%;
  height: 190px;
  object-fit: contain;
  padding: 13px;
  background: #fff;
}
.certificate-card>span {
  position: absolute;
  top: 10px;
  left: 10px;
  background: #293d2c;
  color: #fff;
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  font-size: 8px;
  font-weight: 800;
}
.certificate-card>div {
  padding: 14px 15px 16px;
  border-top: 1px solid #e4e6df;
  display: grid;
  gap: 5px;
}
.certificate-card b {
  font: 400 18px/1.05 Georgia,serif;
  color: #263328;
}
.certificate-card small {
  font-size: 8px;
  letter-spacing: .07em;
  text-transform: uppercase;
  color: #79846a;
  line-height: 1.35;
}
.certificate-card em {
  font-size: 9px;
  font-style: normal;
  font-weight: 800;
  color: #677c43;
  margin-top: 5px;
}
.certificate-modal {
  position: fixed;
  inset: 0;
  z-index: 1000;
  background: rgba(12,23,17,.76);
  display: grid;
  place-items: center;
  padding: 30px;
}
.certificate-modal-panel {
  position: relative;
  max-width: min(920px,92vw);
  max-height: 90vh;
  background: #fff;
  padding: 18px;
}
.certificate-modal-panel img {
  display: block;
  max-width: 100%;
  max-height: 78vh;
  object-fit: contain;
}
.certificate-modal-panel p {
  font: 400 18px Georgia,serif;
  margin: 15px 4px 3px;
  color: #253126;
}
.certificate-close {
  position: absolute;
  right: -14px;
  top: -14px;
  width: 34px;
  height: 34px;
  border: 0;
  border-radius: 50%;
  background: #788b49;
  color: #fff;
  font-size: 25px;
  line-height: 1;
  cursor: pointer;
}
.certificates-compact {
  padding-top: 82px;
  padding-bottom: 82px;
}
.certificates-compact .certificate-grid {
  grid-template-columns: repeat(5,minmax(0,1fr));
}
@media (max-width:1100px) {
  .certificate-grid,.certificates-compact .certificate-grid {
    grid-template-columns: repeat(3,1fr);
  }
  .certificate-card>img {
    height: 210px;
  }
}
@media (max-width:900px) {
  .certificates-section {
    padding: 75px 7vw;
  }
  .certificates-heading {
    grid-template-columns: 1fr;
    gap: 22px;
  }
  .certificate-grid,.certificates-compact .certificate-grid {
    grid-template-columns: repeat(2,1fr);
  }
  .certificate-card>img {
    height: 210px;
  }
}
@media (max-width:520px) {
  .certificates-section {
    padding: 65px 6vw;
  }
  .certificate-grid,.certificates-compact .certificate-grid {
    grid-template-columns: 1fr;
  }
  .certificate-card>img {
    height: 245px;
  }
  .certificate-modal {
    padding: 16px;
  }
  .certificate-modal-panel {
    padding: 12px;
  }
  .certificate-modal-panel img {
    max-height: 80vh;
  }
}
html,body {
  overflow-x: hidden;
}
img {
  max-width: 100%;
}
.mobile-nav {
  display: none;
}
.stock-grid img,.stock-format-grid img,.oral-film-product-grid img,.oral-film-stock-intro img,.stock-ingredient-list article>img {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.stock-grid>a,.stock-format-grid>a,.oral-film-product-grid>a {
  min-width: 0;
}
.stock-grid img,.stock-format-grid img {
  height: auto;
}
@media (max-width:900px) {
  .ref-header {
    height: 112px;
    padding: 0 6vw;
    position: relative;
    align-items: flex-start;
    padding-top: 17px;
  }
  .ref-header nav,.ref-header>.header-quote {
    display: none;
  }
  .mobile-nav {
    display: block;
  }
  .mobile-nav-toggle {
    display: flex;
    align-items: center;
    gap: 5px;
    border: 1px solid #d8ded5;
    background: #fff;
    color: #263126;
    padding: 10px 11px;
    cursor: pointer;
  }
  .mobile-nav-toggle span {
    width: 15px;
    height: 1px;
    background: #263126;
    display: block;
  }
  .mobile-nav-toggle b {
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: .08em;
    margin-left: 5px;
  }
  .mobile-quick-links {
    position: absolute;
    top: 73px;
    left: 0;
    right: 0;
    height: 39px;
    display: flex !important;
    align-items: center;
    overflow-x: auto;
    white-space: nowrap;
    background: #fff;
    border-top: 1px solid #edf0e9;
    border-bottom: 1px solid #d8ded5;
    padding: 0 6vw;
    gap: 20px;
  }
  .mobile-quick-links a {
    font-size: 9px !important;
    font-weight: 800 !important;
    letter-spacing: .04em;
    color: #273128;
    padding: 13px 0;
  }
  .mobile-site-menu {
    position: absolute;
    z-index: 90;
    top: calc(100% + 1px);
    left: 0;
    right: 0;
    max-height: 70vh;
    overflow: auto;
    background: #fff;
    border-top: 1px solid #e2e5dd;
    border-bottom: 1px solid #d8ded5;
    box-shadow: 0 18px 34px rgba(27,43,30,.14);
    padding: 10px 6vw 18px;
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    column-gap: 20px;
  }
  .mobile-site-menu a {
    padding: 12px 0;
    border-bottom: 1px solid #edf0e9;
    font-size: 11px;
    font-weight: 700;
  }
  .stock-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
    padding: 42px 7vw 76px;
  }
  .ready-stock-home {
    grid-template-columns: 1fr;
    gap: 35px;
    padding: 70px 7vw;
  }
  .ready-stock-home-products {
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 9px;
  }
  .stock-hero,.stock-product-hero {
    grid-template-columns: 1fr;
    gap: 34px;
    padding: 65px 7vw;
  }
  .stock-hero img,.stock-product-hero>img {
    width: 100%;
    max-height: none;
    min-height: 260px;
    object-fit: contain;
  }
  .stock-gallery {
    grid-template-columns: 1fr;
    padding: 60px 7vw;
  }
  .oral-film-stock-hero {
    grid-template-columns: 1fr;
    padding: 65px 7vw;
    gap: 35px;
  }
  .oral-film-hero-media {
    height: auto !important;
  }
  .oral-film-hero-media img {
    width: 100%;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
  }
  .oral-film-stock-intro>div {
    grid-template-columns: repeat(2,1fr);
  }
  .oral-film-product-grid {
    grid-template-columns: repeat(2,1fr);
  }
  .stock-inquiry {
    padding: 70px 7vw;
  }
  .premium-form .form-grid {
    grid-template-columns: 1fr;
  }
  .premium-form .form-bottom {
    align-items: flex-start;
    flex-direction: column;
  }
  .premium-form .form-top>span {
    position: static;
    display: block;
    margin-top: 10px;
  }
  .universal-page-inquiry {
    grid-template-columns: 1fr;
  }
}
@media (max-width:520px) {
  .ref-topline {
    padding: 0 5vw;
  }
  .ref-topline span:last-child {
    display: none;
  }
  .ref-header {
    padding: 17px 5vw 0;
  }
  .ref-brand b {
    font-size: 19px;
  }
  .ref-brand small {
    font-size: 6px;
  }
  .mobile-quick-links {
    padding-left: 6vw;
    padding-right: 6vw;
    gap: 18px;
  }
  .mobile-site-menu {
    grid-template-columns: 1fr;
    padding-left: 7vw;
    padding-right: 7vw;
  }
  .stock-grid,.stock-format-grid,.oral-film-product-grid {
    grid-template-columns: 1fr;
    padding-left: 6vw;
    padding-right: 6vw;
  }
  .stock-grid img,.stock-format-grid img {
    aspect-ratio: 1;
    object-fit: contain;
    background: #fff;
  }
  .ready-stock-home-products {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .ready-stock-home-products>a {
    display: block;
    min-height: 220px;
  }
  .ready-stock-home-products img {
    display: block;
    width: 100%;
    height: 220px;
    aspect-ratio: auto;
    object-fit: cover;
    object-position: center;
  }
  .ready-stock-home-products span {
    font-size: 19px;
    padding: 17px 16px;
    background: linear-gradient(0deg,rgba(20,42,29,.96),rgba(20,42,29,.1));
  }
  .stock-hero,.stock-product-hero,.oral-film-stock-hero {
    padding-left: 6vw;
    padding-right: 6vw;
  }
  .stock-features {
    grid-template-columns: 1fr;
    padding-left: 7vw;
    padding-right: 7vw;
  }
  .oral-film-stock-intro>div {
    grid-template-columns: 1fr;
  }
  .premium-form {
    padding: 22px;
  }
  .premium-form .form-top h3 {
    font-size: 30px;
  }
  .stock-inquiry {
    padding: 62px 6vw;
  }
}
@media (max-width:900px) {
  .factory-intro-new {
    padding: 70px 7vw 45px;
  }
  .factory-tree-section,.factory-controls {
    grid-template-columns: 1fr;
    gap: 38px;
    padding: 65px 7vw;
  }
  .factory-tree-section aside {
    max-width: 620px;
    width: 100%;
    justify-self: center;
  }
  .factory-controls {
    overflow: hidden;
  }
  .factory-control-grid {
    width: 100%;
    min-width: 0;
  }
  .factory-control-grid article {
    min-width: 0;
  }
  .factory-inquiry-cta {
    padding: 70px 7vw;
  }
}
@media (max-width:520px) {
  .factory-hero-new {
    height: 510px;
  }
  .factory-hero-new>div {
    top: 72px;
    left: 7vw;
    right: 7vw;
    max-width: none;
  }
  .factory-hero-new h1 {
    font-size: 47px;
  }
  .factory-hero-new p:not(.ref-kicker) {
    font-size: 13px;
  }
  .factory-tree {
    padding: 25px 16px;
  }
  .tree-title {
    width: min(100%,260px);
  }
  .tree-card {
    width: 100%;
  }
  .tree-card:nth-of-type(odd) {
    margin-left: 0;
  }
  .tree-card:before {
    display: none;
  }
  .factory-control-grid {
    grid-template-columns: 1fr;
  }
  .factory-control-grid article {
    padding: 22px;
  }
  .factory-controls h2 {
    font-size: 42px;
  }
  .factory-tree-section aside>p,.factory-tree-section aside>h2,.factory-tree-section aside>span,.factory-tree-section aside>a {
    margin-left: 22px;
    margin-right: 22px;
  }
}
.stock-detail .stock-product-hero>img {
  display: block;
  width: 100%;
  height: clamp(500px,42vw,640px);
  max-height: none;
  object-fit: cover;
  object-position: center;
  background: #fff;
}
.stock-detail .stock-format-grid img,
.stock-page .stock-grid img,
.stock-related-products img {
  object-fit: cover;
  object-position: center;
}
.stock-related-products img {
  aspect-ratio: 1.08;
}
.oral-film-product-hero>img {
  display: block;
  width: 100%;
  height: clamp(500px,42vw,640px);
  max-height: none;
  object-fit: cover;
  object-position: center;
  background: #fff;
}
.oral-film-product-grid img,
.oral-film-related img {
  object-fit: cover;
  object-position: center;
}
@media (max-width:900px) {
  .stock-detail .stock-product-hero>img {
    height: clamp(380px,82vw,560px) !important;
    min-height: 0 !important;
    object-fit: cover !important;
  }
  .oral-film-product-hero>img {
    height: clamp(380px,82vw,560px) !important;
    object-fit: cover !important;
  }
}
@media (max-width:520px) {
  .stock-detail .stock-product-hero>img {
    height: 360px !important;
  }
  .oral-film-product-hero>img {
    height: 360px !important;
  }
  .stock-detail .stock-format-grid img,
  .stock-page .stock-grid img,
  .stock-related-products img,
  .oral-film-product-grid img,
  .oral-film-related img {
    object-fit: cover !important;
  }
}
:root {
  --ink: #18352e;
  --cream: #faf9f5;
  --sage: #e6ede2;
  --muted: #607168;
  --line: #d8ded5;
  --lime: #c8e76d;
  --orange: #e87551;
}
* {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
}
body {
  margin: 0;
  background: var(--cream);
  color: var(--ink);
  font-family: Arial,Helvetica,sans-serif;
}
a {
  text-decoration: none;
  color: inherit;
}
h1,h2,h3,p {
  margin-top: 0;
}
.site-header {
  height: 78px;
  padding: 0 6.5vw;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 25px;
  border-bottom: 1px solid var(--line);
  background: #fff;
}
.wordmark {
  display: flex;
  flex-direction: column;
  line-height: 1;
}
.wordmark b {
  font-size: 17px;
  letter-spacing: .12em;
}
.wordmark span {
  font-size: 7px;
  letter-spacing: .14em;
  color: var(--muted);
  margin-top: 5px;
}
.site-header nav {
  display: flex;
  gap: 24px;
  font-size: 11px;
  font-weight: 700;
}
.nav-cta,.under-link {
  font-size: 11px;
  font-weight: 800;
  border-bottom: 1px solid var(--ink);
  padding-bottom: 7px;
}
.nav-cta span,.under-link span {
  color: var(--orange);
  font-size: 17px;
  margin-left: 7px;
}
.button {
  display: inline-flex;
  align-items: center;
  gap: 20px;
  padding: 16px 20px;
  font-size: 11px;
  font-weight: 800;
}
.button b {
  font-size: 17px;
}
.button.dark {
  background: var(--ink);
  color: #fff;
}
.button.light {
  background: #fff;
  color: var(--ink);
}
.kicker {
  font-size: 10px;
  letter-spacing: .17em;
  font-weight: 800;
  color: #66806c;
  margin-bottom: 20px;
}
.hero-real {
  height: 650px;
  position: relative;
  overflow: hidden;
}
.hero-real>img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hero-overlay {
  position: absolute;
  left: 8%;
  top: 135px;
  width: 44%;
  z-index: 1;
}
.hero-overlay>p {
  font-size: 10px;
  letter-spacing: .15em;
  font-weight: 800;
  color: #60776a;
}
.hero-overlay h1,.page-title h1 {
  font-size: clamp(48px,5.5vw,78px);
  letter-spacing: -.07em;
  line-height: .92;
  margin: 22px 0;
}
.hero-overlay h1 em,.page-title h1 em,h2 em {
  font-family: Georgia,serif;
  font-weight: 400;
  color: #52735e;
}
.hero-overlay>span {
  font-size: 14px;
  color: #52625a;
  display: block;
  margin-bottom: 30px;
}
.hero-overlay>div {
  display: flex;
  align-items: center;
  gap: 28px;
}
.trust-strip {
  padding: 18px 6.5vw;
  background: var(--ink);
  color: #fff;
  display: flex;
  justify-content: space-between;
  font-size: 9px;
  letter-spacing: .12em;
  font-weight: 800;
}
.intro {
  padding: 120px 12vw;
  max-width: 1050px;
}
.intro h2,.split-heading h2,.factory-feature h2,.process h2,.contact h2,.factory-copy h2,.factory-cta h2 {
  font-size: clamp(40px,4.5vw,62px);
  letter-spacing: -.065em;
  line-height: .96;
}
.intro>p:not(.kicker) {
  font-size: 16px;
  line-height: 1.7;
  color: var(--muted);
  max-width: 670px;
  margin: 25px 0;
}
.formats {
  padding: 100px 6.5vw;
  background: #f0f2ec;
}
.split-heading {
  display: grid;
  grid-template-columns: 1fr .7fr;
  gap: 80px;
  align-items: end;
  margin-bottom: 52px;
}
.split-heading>p {
  color: var(--muted);
  font-size: 14px;
  line-height: 1.65;
}
.format-grid {
  display: grid;
  grid-template-columns: repeat(6,minmax(0,1fr));
  gap: 18px;
}
.format-card {
  grid-column: span 2;
  background: #fff;
  border: 1px solid #e1e6df;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.format-card.format-3,.format-card.format-4,.format-card.format-5,.format-card.format-6 {
  grid-column: span 3;
}
.format-image {
  height: 250px;
  background: #f6f2eb;
  overflow: hidden;
}
.format-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .35s;
}
.format-card:hover img {
  transform: scale(1.035);
}
.format-copy {
  padding: 20px 22px 24px;
}
.format-copy small {
  font-size: 9px;
  color: var(--orange);
  font-weight: 800;
}
.format-copy h3 {
  font-size: 23px;
  letter-spacing: -.04em;
  margin: 9px 0 7px;
}
.format-copy p {
  font-size: 12px;
  color: var(--muted);
  margin-bottom: 18px;
}
.format-copy b {
  font-size: 10px;
}
.format-copy b span {
  color: var(--orange);
  margin-left: 7px;
}
.factory-feature {
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  background: var(--ink);
  color: #fff;
}
.factory-feature>img {
  width: 100%;
  height: 550px;
  object-fit: cover;
}
.factory-feature>div {
  padding: 105px 7vw;
}
.factory-feature .kicker,.detail-quote .kicker {
  color: var(--lime);
}
.factory-feature h2 em {
  color: var(--lime);
}
.factory-feature p:not(.kicker) {
  font-size: 15px;
  line-height: 1.65;
  color: #cbd8ce;
  margin: 24px 0 30px;
}
.process {
  padding: 110px 6.5vw;
}
.process-grid,.detail-process>div {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 20px;
  margin-top: 52px;
}
.process-grid article,.detail-process article {
  border-top: 1px solid #a8b5aa;
  padding-top: 15px;
}
.process-grid span,.detail-process span {
  font-size: 10px;
  color: var(--orange);
  font-weight: 800;
}
.process-grid h3,.detail-process h3 {
  font-size: 16px;
  margin: 40px 0 10px;
}
.process-grid p,.detail-process p {
  font-size: 12px;
  color: var(--muted);
  line-height: 1.55;
}
.contact {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 85px;
  padding: 95px 12vw;
  background: #dfe9d9;
}
.contact>div>p:not(.kicker) {
  font-size: 15px;
  color: #53665b;
  line-height: 1.65;
}
.whatsapp {
  font-size: 12px;
  font-weight: 800;
  border-bottom: 1px solid var(--ink);
  padding-bottom: 8px;
}
.inquiry-form {
  background: #fff;
  padding: 28px;
  display: grid;
  gap: 16px;
}
.inquiry-form label {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .06em;
}
.inquiry-form input,.inquiry-form select,.inquiry-form textarea {
  display: block;
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--line);
  padding: 10px 0;
  width: 100%;
  font: 12px Arial;
  margin-top: 5px;
}
.inquiry-form textarea {
  height: 60px;
}
.form-note {
  font-size: 10px;
  text-align: center;
  color: var(--muted);
  margin: 0;
}
.site-footer {
  background: #102b25;
  color: #dae8dc;
  display: grid;
  grid-template-columns: 1.2fr .65fr 1fr;
  gap: 40px;
  padding: 55px 6.5vw 25px;
}
.site-footer .wordmark b {
  color: #fff;
}
.site-footer p,.site-footer a {
  font-size: 11px;
  color: #c1d1c4;
  line-height: 1.65;
}
.site-footer>div {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.site-footer>div>b {
  font-size: 9px;
  letter-spacing: .13em;
  color: var(--lime);
  margin-bottom: 7px;
}
.site-footer small {
  grid-column: 1/-1;
  border-top: 1px solid #3a554c;
  padding-top: 18px;
  font-size: 9px;
  color: #91a79b;
}
.site-footer small a {
  margin-left: 10px;
}
.page-title {
  padding: 120px 12vw 90px;
  background: #e7eee4;
}
.page-title>p:not(.kicker) {
  max-width: 590px;
  color: var(--muted);
  font-size: 16px;
  line-height: 1.7;
}
.factory-photo {
  padding: 0 6.5vw;
  background: #e7eee4;
}
.factory-photo img {
  width: 100%;
  height: 570px;
  object-fit: cover;
}
.factory-copy {
  padding: 110px 12vw;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 100px;
}
.factory-copy>div>p:not(.kicker) {
  font-size: 15px;
  line-height: 1.7;
  color: var(--muted);
}
.facility-grid {
  padding: 0 6.5vw 100px;
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 14px;
}
.facility-grid article {
  background: #edf1e9;
  padding: 28px;
}
.facility-grid b {
  font-size: 10px;
  color: var(--orange);
}
.facility-grid h3 {
  font-size: 17px;
  margin: 36px 0 8px;
}
.facility-grid p {
  font-size: 12px;
  line-height: 1.5;
  color: var(--muted);
}
.factory-cta {
  text-align: center;
  background: #dce8d7;
  padding: 95px 20px;
}
.legal {
  max-width: 820px;
  margin: auto;
  padding: 105px 30px;
}
.legal h1 {
  font-size: 62px;
  letter-spacing: -.07em;
}
.legal h1 em {
  font-family: Georgia,serif;
  font-weight: 400;
}
.legal h2 {
  font-size: 22px;
  margin-top: 35px;
}
.legal p {
  font-size: 14px;
  color: var(--muted);
  line-height: 1.75;
}
.legal a {
  color: var(--orange);
}
.product-hero {
  padding: 76px 8vw 82px;
  display: grid;
  grid-template-columns: .92fr 1.08fr;
  gap: 70px;
  align-items: center;
  background: #eef2ea;
}
.product-hero .back {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  margin-bottom: 52px;
}
.product-hero h1 {
  font-size: clamp(45px,5.4vw,76px);
  letter-spacing: -.075em;
  line-height: .94;
  margin: 0 0 22px;
}
.product-hero h1 em {
  font: 400 1em Georgia,serif;
  color: #52745e;
}
.product-hero>div>p:not(.kicker) {
  font-size: 15px;
  line-height: 1.7;
  color: var(--muted);
  margin-bottom: 29px;
}
.product-hero>img {
  width: 100%;
  height: 470px;
  object-fit: cover;
}
.format-summary {
  padding: 28px 8vw;
  background: var(--lime);
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 26px;
}
.format-summary article {
  border-left: 1px solid #789260;
  padding-left: 18px;
}
.format-summary b {
  font-size: 13px;
}
.format-summary p {
  font-size: 12px;
  line-height: 1.55;
  margin: 8px 0 0;
}
.format-intro {
  padding: 110px 12vw;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 90px;
}
.format-intro h2,.function-ingredients h2,.customization h2,.detail-process h2,.faq h2,.detail-quote h2 {
  font-size: clamp(38px,4.5vw,60px);
  letter-spacing: -.065em;
  line-height: .97;
}
.format-intro h2 em,.customization h2 em,.detail-process h2 em,.detail-quote h2 em {
  font: 400 1em Georgia,serif;
  color: #567560;
}
.format-intro>div>p:not(.kicker) {
  font-size: 15px;
  line-height: 1.75;
  color: var(--muted);
}
.function-ingredients {
  padding: 95px 8vw;
  background: #f1f3ee;
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 70px;
}
.function-list {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 10px;
  margin-top: 35px;
}
.function-list span {
  padding: 15px;
  background: #fff;
  font-size: 13px;
  font-weight: 700;
}
.function-list b {
  color: var(--orange);
  font-size: 9px;
  margin-right: 10px;
}
.ingredients-panel {
  background: var(--ink);
  color: #fff;
  padding: 32px;
}
.ingredients-panel .kicker {
  color: var(--lime);
}
.ingredients-panel h3 {
  font-size: 23px;
  line-height: 1.15;
  margin-bottom: 22px;
}
.ingredients-panel>div {
  border-top: 1px solid #4c675c;
  padding: 13px 0;
  display: flex;
  justify-content: space-between;
  font-size: 12px;
}
.ingredients-panel>div b {
  color: var(--lime);
}
.ingredients-panel small {
  display: block;
  color: #bdcbbf;
  font-size: 10px;
  line-height: 1.55;
  margin-top: 20px;
}
.customization {
  padding: 110px 8vw;
  display: grid;
  grid-template-columns: .95fr 1.05fr;
  gap: 75px;
  align-items: center;
}
.custom-image img {
  width: 100%;
  height: 480px;
  object-fit: cover;
}
.custom-grid {
  margin-top: 30px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.custom-grid article {
  padding: 18px;
  background: #edf1e9;
}
.custom-grid b {
  font-size: 13px;
}
.custom-grid p {
  font-size: 11px;
  line-height: 1.55;
  color: var(--muted);
  margin: 8px 0 0;
}
.detail-process {
  padding: 100px 8vw;
  background: #e2ebdc;
}
.faq {
  padding: 105px 12vw;
}
.faq>h2 {
  margin-bottom: 40px;
}
.faq article {
  padding: 22px 0;
  border-top: 1px solid var(--line);
}
.faq article:last-child {
  border-bottom: 1px solid var(--line);
}
.faq h3 {
  font-size: 17px;
  margin: 0 0 8px;
}
.faq article p {
  font-size: 13px;
  line-height: 1.65;
  color: var(--muted);
  margin: 0;
}
.detail-quote {
  padding: 100px 20px;
  text-align: center;
  background: var(--ink);
  color: #fff;
}
.detail-quote h2 em {
  color: var(--lime);
}
.detail-quote p:not(.kicker) {
  font-size: 14px;
  color: #d2ddd3;
  margin: 20px auto 28px;
}
.detail-quote .button {
  color: var(--ink);
}
@media (max-width:850px) {
  .site-header nav {
    display: none;
  }
  .trust-strip {
    flex-wrap: wrap;
    justify-content: center;
  }
  .split-heading,.factory-feature,.contact,.factory-copy,.product-hero,.format-intro,.function-ingredients,.customization {
    grid-template-columns: 1fr;
    gap: 38px;
  }
  .format-grid {
    grid-template-columns: repeat(2,1fr);
  }
  .format-card,.format-card.format-3,.format-card.format-4,.format-card.format-5,.format-card.format-6 {
    grid-column: span 1;
  }
  .site-footer {
    grid-template-columns: 1fr 1fr;
  }
  .process-grid,.detail-process>div,.facility-grid {
    grid-template-columns: repeat(2,1fr);
  }
  .hero-overlay {
    width: 65%;
    top: 100px;
  }
  .product-hero {
    padding: 65px 8vw;
  }
  .format-intro,.function-ingredients,.customization {
    padding: 75px 8vw;
  }
  .faq {
    padding: 78px 8vw;
  }
}
@media (max-width:520px) {
  .site-header {
    padding: 0 5vw;
  }
  .nav-cta {
    font-size: 10px;
  }
  .hero-real {
    height: 520px;
  }
  .hero-real>img {
    object-position: 68% center;
  }
  .hero-overlay {
    left: 7%;
    top: 74px;
    width: 80%;
  }
  .hero-overlay h1,.page-title h1 {
    font-size: 47px;
  }
  .hero-overlay>div {
    flex-direction: column;
    align-items: flex-start;
    gap: 17px;
  }
  .format-grid,.function-list,.custom-grid,.process-grid,.detail-process>div,.facility-grid {
    grid-template-columns: 1fr;
  }
  .format-card,.format-card.format-3,.format-card.format-4,.format-card.format-5,.format-card.format-6 {
    grid-column: span 1;
  }
  .formats {
    padding: 70px 5vw;
  }
  .format-image {
    height: 235px;
  }
  .split-heading {
    gap: 18px;
  }
  .contact {
    padding: 68px 6vw;
  }
  .site-footer {
    grid-template-columns: 1fr;
    padding: 45px 7vw 22px;
  }
  .factory-feature>img {
    height: 350px;
  }
  .factory-feature>div {
    padding: 68px 8vw;
  }
  .product-hero {
    padding: 55px 6vw;
  }
  .product-hero>img {
    height: 320px;
  }
  .format-summary {
    grid-template-columns: 1fr;
  }
  .format-intro,.function-ingredients,.customization {
    padding: 65px 6vw;
  }
  .custom-image img {
    height: 330px;
  }
  .faq {
    padding: 70px 6vw;
  }
  .factory-photo {
    padding: 0;
  }
  .factory-photo img {
    height: 360px;
  }
  .factory-copy {
    padding: 70px 8vw;
  }
}
.home-hero-carousel {
  position: relative;
  min-height: min(760px, calc(100vh - 72px));
  overflow: hidden;
  background: #eef3f7;
  isolation: isolate;
}

.home-hero-carousel:before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg, rgba(245, 248, 251, .97) 0%, rgba(245, 248, 251, .9) 38%, rgba(245, 248, 251, .42) 68%, rgba(245, 248, 251, .18) 100%);
}

.home-hero-slides {
  position: absolute;
  inset: 0;
  z-index: -2;
}

.home-hero-slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  transform: scale(1.025);
  transition: opacity .75s ease, transform 1.4s ease;
}

.home-hero-slide.is-active {
  opacity: 1;
  transform: scale(1);
}

.home-hero-slide img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
}

.home-hero-slide-caption {
  position: absolute;
  right: clamp(28px, 6vw, 110px);
  bottom: clamp(92px, 10vw, 150px);
  display: grid;
  gap: 8px;
  min-width: 230px;
  padding: 20px 22px;
  border: 1px solid rgba(255,255,255,.42);
  background: rgba(13, 35, 27, .72);
  color: #fff;
  backdrop-filter: blur(10px);
}

.home-hero-slide-caption span {
  color: var(--lime);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .14em;
}

.home-hero-slide-caption b {
  font-family: var(--serif);
  font-size: 24px;
  line-height: 1;
}

.home-hero-carousel .home-hero-oem-copy {
  position: relative;
  z-index: 2;
}

.home-hero-carousel-controls {
  display: flex;
  gap: 10px;
  margin-top: 28px;
}

.home-hero-carousel-controls button {
  width: 42px;
  height: 4px;
  padding: 0;
  border: 0;
  background: rgba(26, 48, 40, .22);
  cursor: pointer;
}

.home-hero-carousel-controls button.is-active {
  background: var(--purple);
}

.youtube-video-section {
  display: grid;
  grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr);
  gap: clamp(28px, 5vw, 70px);
  align-items: center;
  width: min(1480px, calc(100% - 64px));
  margin: 0 auto;
  padding: clamp(72px, 8vw, 118px) 0;
}

.youtube-video-section h2 {
  margin: 0;
  color: var(--ink);
  font-family: var(--serif);
  font-size: clamp(42px, 5vw, 82px);
  line-height: .96;
  letter-spacing: 0;
}

.youtube-video-section h2 em {
  display: block;
  color: var(--gold);
  font-style: italic;
}

.youtube-video-section p:not(.ref-kicker) {
  max-width: 540px;
  margin: 22px 0 0;
  color: var(--muted);
  font-size: 16px;
  line-height: 1.75;
}

.youtube-video-frame {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--line);
  background: #0f231b;
  box-shadow: 0 28px 70px rgba(13, 35, 27, .12);
  aspect-ratio: 16 / 9;
}

.youtube-video-frame iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

@media (max-width: 900px) {
  .home-hero-carousel {
    min-height: auto;
    padding-top: 420px;
  }

  .home-hero-carousel:before {
    background: linear-gradient(180deg, rgba(245, 248, 251, .16) 0%, rgba(245, 248, 251, .94) 48%, rgba(245, 248, 251, .99) 100%);
  }

  .home-hero-slides {
    height: 430px;
    bottom: auto;
  }

  .home-hero-slide-caption {
    right: 16px;
    bottom: 16px;
    min-width: 0;
    padding: 14px 16px;
  }

  .home-hero-slide-caption b {
    font-size: 18px;
  }

  .youtube-video-section {
    grid-template-columns: 1fr;
    width: min(100% - 28px, 760px);
    padding: 54px 0;
  }
}

@media (max-width: 520px) {
  .home-hero-carousel {
    padding-top: 330px;
  }

  .home-hero-slides {
    height: 340px;
  }

  .home-hero-slide img {
    object-position: center;
  }

  .home-hero-carousel-controls button {
    width: 32px;
  }

  .youtube-video-section h2 {
    font-size: clamp(36px, 12vw, 56px);
  }
}
