.section-sm2 {
  padding: 1.5rem 0;
}


.bundle-contents {
  margin: 2rem 0;
  padding: 1rem;
  border: 1px solid #eee;
  border-radius: 4px;
  
  h3 {
    margin-bottom: 1rem;
    font-size: 1.2rem;
  }
}

.bundle-items {
  display: grid;
  gap: 1rem;
}

.bundle-item {
  display: flex;
  gap: 1rem;
  padding: 1rem;
  background: #f9f9f9;
  border-radius: 4px;

  
  .bundle-item-image {
    flex: 0 0 100px;
    
    img {
      width: 100%;
      height: auto;
      object-fit: cover;
    }
  }
  
  .bundle-item-details {
    flex: 1;
    
    h4 {
      margin: 0 0 0.5rem;
      font-size: 1.1rem;
    }
    
    .quantity {
      color: #666;
      font-size: 0.9rem;
    }
    
    .description {
      margin-top: 0.5rem;
      font-size: 0.9rem;
    }
  }
}


/* ---------- FAQ accordion (append to style.css) ---------- */

.faq-intro {
  text-align: center;
  margin-bottom: 2.5rem;
}

.faq-row + .faq-row {
  margin-top: 2.5rem;
}

.faq-group {
  margin-bottom: 2.5rem;
}

.faq-group-head {
  margin-bottom: 1rem;
  padding: 0 .25rem;
}

.faq-group-title {
  font-family: 'Stitch Craft Display', 'Cormorant Garamond', Georgia, serif;
  font-size: 1.9rem;
  line-height: 1.15;
  margin: 0 0 .15rem;
  color: var(--ink);
}

.faq-group-sub {
  margin: 0;
  color: var(--ink-soft);
  font-size: .95rem;
}

.faq-list {
  display: grid;
  gap: .7rem;
}

/* each question is one card; it picks up a coral edge when open */
.faq-item {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 16px;
  transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}

.faq-item:hover {
  border-color: var(--blush);
}

.faq-item[open] {
  background: var(--paper);
  border-color: var(--coral);
  box-shadow: var(--shadow);
}

.faq-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.25rem;
  padding: 1.1rem 1.35rem;
  cursor: pointer;
  list-style: none;
  border-radius: 16px;
}

/* hide the browser's default disclosure triangle */
.faq-summary::-webkit-details-marker {
  display: none;
}

.faq-summary::marker {
  content: '';
}

.faq-summary:focus-visible {
  outline: 2px solid var(--coral-dark);
  outline-offset: 3px;
}

.faq-summary-text {
  font-family: 'Stitch Craft Display', 'Cormorant Garamond', Georgia, serif;
  font-size: 1.3rem;
  line-height: 1.3;
  color: var(--ink);
}

/* plus that turns into a minus */
.faq-icon {
  position: relative;
  flex: 0 0 auto;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background: var(--cream);
  transition: background-color .2s ease;
}

.faq-icon::before,
.faq-icon::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: .85rem;
  height: 2px;
  background: var(--ink);
  border-radius: 2px;
  transform: translate(-50%, -50%);
  transition: transform .25s ease, background-color .2s ease;
}

.faq-icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.faq-item[open] .faq-icon {
  background: var(--coral);
}

.faq-item[open] .faq-icon::before,
.faq-item[open] .faq-icon::after {
  background: #fff;
}

.faq-item[open] .faq-icon::after {
  transform: translate(-50%, -50%) rotate(0deg);
}

.faq-answer {
  padding: 0 1.35rem 1.35rem;
  max-width: 68ch;
  color: var(--ink-soft);
  font-size: 1.02rem;
}

.faq-answer > :first-child { margin-top: 0; }
.faq-answer > :last-child  { margin-bottom: 0; }

.faq-answer a {
  color: var(--coral-dark);
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* answer fades in on open */
@media (prefers-reduced-motion: no-preference) {
  .faq-item[open] .faq-answer {
    animation: faq-open .25s ease;
  }
}

@keyframes faq-open {
  from { opacity: 0; transform: translateY(-4px); }
  to   { opacity: 1; transform: translateY(0); }
}

@media (max-width: 575px) {
  .faq-summary { padding: 1rem; }
  .faq-summary-text { font-size: 1.15rem; }
  .faq-answer { padding: 0 1rem 1.1rem; }
}

/* libre-baskerville-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Libre Baskerville';
  font-style: normal;
  font-weight: 400;
  src: url('/assets/craft/fonts/libre-baskerville-v24-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* libre-baskerville-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Libre Baskerville';
  font-style: italic;
  font-weight: 400;
  src: url('/assets/craft/fonts/libre-baskerville-v24-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* libre-baskerville-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Libre Baskerville';
  font-style: normal;
  font-weight: 700;
  src: url('/assets/craft/fonts/libre-baskerville-v24-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* libre-baskerville-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Libre Baskerville';
  font-style: italic;
  font-weight: 700;
  src: url('/assets/craft/fonts/libre-baskerville-v24-latin-700italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* newsreader-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 400;
  src: url('/assets/craft/fonts/newsreader-v26-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* newsreader-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Newsreader';
  font-style: italic;
  font-weight: 400;
  src: url('/assets/craft/fonts/newsreader-v26-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* newsreader-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 700;
  src: url('/assets/craft/fonts/newsreader-v26-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* newsreader-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Newsreader';
  font-style: italic;
  font-weight: 700;
  src: url('/assets/craft/fonts/newsreader-v26-latin-700italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* gelasio-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Gelasio';
  font-style: normal;
  font-weight: 400;
  src: url('/assets/craft/fonts/gelasio-v14-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* gelasio-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Gelasio';
  font-style: italic;
  font-weight: 400;
  src: url('/assets/craft/fonts/gelasio-v14-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* gelasio-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Gelasio';
  font-style: normal;
  font-weight: 700;
  src: url('/assets/craft/fonts/gelasio-v14-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* gelasio-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Gelasio';
  font-style: italic;
  font-weight: 700;
  src: url('/assets/craft/fonts/gelasio-v14-latin-700italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* young-serif-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Young Serif';
  font-style: normal;
  font-weight: 400;
  src: url('/assets/craft/fonts/young-serif-v2-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* parisienne-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Parisienne';
  font-style: normal;
  font-weight: 400;
  src: url('/assets/craft/fonts/parisienne-v14-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


.bundle-items {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 16px;
}

.myform-check-input {
  border-color: #6c757d; /* or any darker shade you want */
  border-width: 14px;
  margin: 5px;
}

.myform-check-label {
  border-color: #6c757d; /* or any darker shade you want */
  border-width: 2px;
}

.text-coral {
  color: var(--coral) !important;
}

.text-sage {
  color: var(--sage-dark) !important;
}

.text-coffee {
  color: var(--coffee-dark) !important;
}

.text-coffee-light {
  color: var(--coffee) !important;
}

.text-cream {
  color: var(--cream) !important;
}

.badge-coffee {
  background: var(--coffee);
  color: var(--paper);
  border-radius: 999px;
  padding: .35rem .6rem;
  font-size: .7rem;
  font-weight: 700;
}


.accordion-item {
  border-color: #d8c9bb !important;
  margin-bottom: 1rem;
  border-top: 1px solid #d8c9bb !important;
  border-radius: 0.375rem !important;
  overflow: hidden;
}

.accordion-button {
  background-color: #ffffff !important;
  color: #5f6655 !important;
}

.accordion-button:not(.collapsed) {
  background-color: #e8eadf !important;
  box-shadow: inset 0 -1px 0 #e8eadf !important;
  color: #5f6655 !important;
}

.accordion-button:focus {
  border-color: #d8c9bb !important;
  box-shadow: none !important;
}

.image-frame {
  border: 1px solid color-mix(in srgb, var(--cream) 60%, transparent);
}

.eyebrow2 {
  text-transform: uppercase;
  letter-spacing: .19em;
  font-size: .72rem;
  font-weight: 700;
  color: var(--cream);
}

.watercolor-panel2 {
  border-radius: 32px;
  padding: 3.5rem;
  background: var(--antique-ivory);
  color: var(--grey-dark);
  box-shadow: var(--shadow);
  border: 1px solid rgba(110, 100, 85, .1);
}
