/* Depth and framing, preserving the original cream and olive palette. */
.section-banner {
  z-index: 1;
  padding: 35px 0 38px;
  background: linear-gradient(115deg, #485532 0%, #647348 48%, #4c5935 100%);
  border-top: 1px solid #7e8a61;
  border-bottom: 1px solid #384526;
  box-shadow: inset 0 1px 0 #ffffff21, inset 0 -5px 0 #28371f18, 0 9px 17px #35412625, 0 2px 4px #35412615;
}
.section-banner::before {
  content: '';
  position: absolute;
  inset: 7px 0;
  border-top: 1px solid #d5dcb12a;
  border-bottom: 1px solid #d5dcb12a;
  pointer-events: none;
}
.section-banner::after {
  width: 16px;
  height: 16px;
  left: calc(50% - 8px);
  bottom: -8px;
  background: #5c6a40;
  border-right: 1px solid #3d4b2c66;
  border-bottom: 1px solid #3d4b2c66;
  box-shadow: 3px 3px 5px #3541261a;
}
.section-banner .container {position: relative; z-index: 1;}
.section-banner .eyebrow {color: #e1e5c8; letter-spacing: .19em; margin-bottom: 13px;}
.section-banner h2 {text-shadow: 0 2px 3px #20301845;}
.remedy-section .section-banner {padding: 30px 0 32px;}
.references .section-banner {padding: 25px 0 27px;}

.content-row {gap: 72px; padding-top: 82px; padding-bottom: 82px;}
#story + .content-row {align-items: start;}
.content-row > figure.image-frame {
  padding: 9px;
  border: 1px solid #cfc8b6;
  border-radius: 8px;
  background: #fffcf5;
  box-shadow: 0 18px 36px #3c452b1c, 0 5px 10px #3c452b12, inset 0 0 0 1px #ffffff;
}
.content-row > figure img {border-radius: 3px; filter: none;}
.content-row > figure.image-cutout img {border: 0;border-radius: 0;filter: none;box-shadow: none;}
.content-row > figure.image-page img {border-radius: 0;filter: none;box-shadow: 0 9px 24px #3c452b15;}
.remedy-section .content-row {padding-top: 68px; padding-bottom: 72px;}
.bonus-preview {gap: 55px; padding-top: 4px; padding-bottom: 72px;}
.bonus-preview > img, .offer-art > img, .final-inner > img {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  filter: none;
}
.offer-art > img, .final-inner > img {filter: none;}
.offer-layout {gap: 64px; padding-block: 80px;}
.offer-card {border-radius: 8px; box-shadow: 0 15px 35px #3c452b10;}
.hero .video-shell {
  padding: 6px;
  border: 1px solid #cfc8b6;
  border-radius: 8px;
  background: #fffcf5;
  box-shadow: 0 18px 36px #3c452b18, 0 4px 8px #3c452b10;
  margin-bottom: 42px;
  overflow: hidden;
}
.video-shell iframe {border-radius: 3px;}

.cta-group {gap: 14px;}
.button {
  width: min(100%, 600px);
  min-height: 76px;
  padding: 18px 22px 18px 28px;
  gap: 24px;
  justify-content: space-between;
  background: linear-gradient(180deg, #ffdc62 0%, #f8c53f 55%, #efb52e 100%);
  color: #302807;
  border: 1px solid #c99522;
  border-bottom: 4px solid #ac7918;
  border-radius: 8px;
  box-shadow: inset 0 1px 0 #fff6c6cc, 0 8px 0 #ba872016, 0 10px 20px #80601b25;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.45;
  letter-spacing: .01em;
  text-align: left;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.button > .button-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #79580c14;
  border: 1px solid #7f5d162e;
  box-shadow: inset 0 1px 2px #7f5d1615;
  font-size: 23px;
  line-height: 1;
}
.button:hover {
  background: linear-gradient(180deg, #ffe687 0%, #ffd154 55%, #f7c33f 100%);
  transform: translateY(-2px);
  box-shadow: inset 0 1px 0 #fff9d5, 0 10px 0 #ba872011, 0 15px 26px #80601b32;
}
.button:active {transform: translateY(2px);box-shadow: inset 0 1px 0 #fff6c6cc, 0 3px 8px #80601b25;}
.button:focus-visible {outline: 3px solid var(--olive-dark);outline-offset: 5px;}
.cta-note {font-size: 12px; line-height: 1.6;}
.hero-trust {font-size: 11px;gap: 24px;margin-top: 23px;}
.bridge .cta-group {margin-top: 28px;}
.offer-card .button {min-height: 76px;padding: 17px 17px 17px 20px;font-size: 13px;gap: 16px;}
.offer-card .button > .button-arrow {flex-basis: 32px;width: 32px;height: 32px;font-size: 21px;}
.card-guarantee {font-size: 10px;line-height: 1.8;}
.text-link {font-size: 13px;padding-bottom: 8px;margin-top: 27px;}
.text-link:hover {color: #748548;border-bottom-width: 2px;}
.final-inner > img {margin-top: 35px;margin-bottom: 38px;}
.final-inner .cta-group {margin-top: 10px;}

@media (max-width: 900px) {
  .content-row {gap: 40px;padding-block: 62px;}
  .offer-layout {gap: 30px;padding-block: 62px;}
  .button {font-size: 14px;}
  .offer-card .button {font-size: 12px;padding-inline: 15px;}
  .bonus-preview {gap: 35px;}
}
@media (max-width: 639px) {
  .section-banner {padding: 29px 0 32px;}
  .section-banner .container {width: calc(100% - 44px);}
  .section-banner .eyebrow {font-size: 8px;letter-spacing: .15em;margin-bottom: 12px;}
  .section-banner h2, .remedy-section .section-banner h2 {font-size: 22px;line-height: 1.4;}
  .remedy-section .section-banner {padding: 26px 0 29px;}
  .content-row, .remedy-section .content-row {grid-template-columns: 1fr;gap: 36px;padding-top: 46px;padding-bottom: 54px;}
  .content-row > figure.image-frame {padding: 7px;border-radius: 7px;}
  .bonus-preview {gap: 29px;padding-bottom: 50px;}
  .offer-layout {grid-template-columns: 1fr;gap: 38px;padding-block: 48px;}
  .hero .video-shell {width: calc(100% - 38px);padding: 5px;margin-bottom: 35px;}
  .button {min-height: 76px;padding: 17px 15px 17px 18px;gap: 13px;font-size: 13px;}
  .button > .button-arrow {flex-basis: 30px;width: 30px;height: 30px;font-size: 21px;}
  .offer-card .button {font-size: 12px;min-height: 76px;padding: 16px 13px 16px 16px;gap: 12px;}
  .offer-card .button > .button-arrow {flex-basis: 29px;width: 29px;height: 29px;}
  .cta-note {font-size: 11px;}
  .hero-trust {font-size: 9px;gap: 14px;}
  .card-guarantee {font-size: 9px;}
}
@media (prefers-reduced-motion: reduce) {.button {transition: none;}.button:hover, .button:active {transform: none;}}

/* A fine image edge, without the thick cream mat. */
.content-row > figure.image-frame {
  padding: 0;
  border: 0;
  border-radius: 3px;
  background: transparent;
  box-shadow: none;
}
.content-row > figure.image-frame img {
  display: block;
  width: 100%;
  height: auto;
  max-width: min(100%, var(--photo-max-width));
  max-height: none;
  margin-inline: auto;
  object-fit: initial;
  border: 3px solid #fff;
  border-radius: 0;
  box-shadow: 0 15px 30px #0000001c, 0 5px 15px #00000014;
}
.hero .video-shell {padding: 0;border-radius: 3px;}
.video-shell iframe {border-radius: 2px;}

/* Keep page shadows tight to the actual page, rather than its grid column. */
.content-row > figure.image-page {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.content-row > figure.image-page img {
  display: block;
  width: 100%;
  height: auto;
  max-width: min(100%, var(--page-max-width));
  max-height: none;
  margin-inline: auto;
  object-fit: initial;
  border: 0;
  border-radius: 0;
  box-shadow: 0 15px 30px #0000001c, 0 5px 15px #00000014;
  filter: none;
}
.inside-book-row > figure.image-cutout img {
  width: auto;
  height: auto;
  max-width: 80%;
  max-height: 380px;
  margin-inline: auto;
}
#hero-purchase[hidden] {display: none !important;}
@media (max-width: 639px) {
  .inside-book-row > figure.image-cutout img {max-height: 285px;max-width: 75%;}
  .content-row > figure.image-frame img {max-width: min(100%, var(--photo-mobile-max-width));}
  .content-row > figure.image-page img {max-width: min(100%, var(--page-mobile-max-width));}
  .hero .video-shell {padding: 0;}
}

/* Final hero and purchase-label alignment. */
.hero-inner {padding-top: 76px;}
.hero h1 {font-family: var(--sans);font-weight: 700;}
.hero .video-shell {
  border: 3px solid #fff;
  box-shadow: 0 15px 30px #0000001c, 0 5px 15px #00000014;
}
.button > .button-label {flex: 1;}
@media (max-width: 639px) {
  .hero-inner {padding-top: 54px;}
  .button, .offer-card .button {
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr) 28px;
    gap: 8px;
    padding-left: 14px;
    padding-right: 14px;
    text-align: center;
  }
  .button > .button-label {grid-column: 2;grid-row: 1;text-align: center;}
  .button > .button-arrow, .offer-card .button > .button-arrow {
    grid-column: 3;
    grid-row: 1;
    width: 28px;
    height: 28px;
    justify-self: center;
  }
}

.footer-top > div{flex-wrap:wrap;justify-content:flex-end;max-width:660px;gap:14px 22px;}
@media(max-width:639px){.footer-top > div{justify-content:flex-start;gap:16px 22px;}}
