/* Readable sales copy, complete occasion links and larger exploration cards. */
#occasions .occasions-heading > p:not(.eyebrow),
#merch .merch-heading > p:not(.eyebrow),
.review-polished .journey-section .center-heading > p:not(.eyebrow) {
  font-size: 22px;
  line-height: 1.65;
  color: #103c40;
  max-width: 920px;
  margin-inline: auto;
}
#occasions .occasion-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 28px 24px;
}
#occasions .occasion-card h3 { font-size: 30px; line-height: 1.18; }
#occasions .occasion-card p { font-size: 20px; line-height: 1.6; color: #103c40; }
#occasions .occasion-number { font-size: 15px; line-height: 1.5; }
#occasions .occasion-card .seo-occasion-link {
  margin-top: auto;
  padding-top: 22px;
  min-height: 44px;
  font-size: 18px;
  line-height: 1.5;
  color: #103c40;
}
#certificate .certificate-copy .lede { font-size: 24px; line-height: 1.55; }
#certificate .certificate-copy li {
  font-size: 22px;
  line-height: 1.55;
  padding-block: 18px;
  color: #103c40;
}
#certificate .certificate-copy li::before { font-size: 13px; margin-top: 7px; }
#certificate .certificate-copy .fineprint { font-size: 20px; line-height: 1.6; color: #103c40; }
#certificate .certificate-visual > span { font-size: 16px; line-height: 1.5; }
#choose .choose-heading > p:not(.eyebrow) {
  font-size: 24px;
  line-height: 1.6;
  color: #fffaf0;
}
#choose .prepaid-benefits { gap: 14px; margin-top: 30px; }
#choose .prepaid-benefits span {
  padding: 11px 17px;
  border: 1px solid #d8b45b80;
  font-size: 20px;
  line-height: 1.5;
  font-weight: 600;
}
#choose .arrival-preview-label { font-size: 20px; }
#choose .arrival-preview-condition, #choose .arrival-preview-later { font-size: 20px; }
#choose .arrival-preview small { font-size: 18px; }
#merch .product-card h3 { font-size: 30px; line-height: 1.2; }
#merch .product-card p { font-size: 20px; line-height: 1.6; color: #103c40; }
#merch .collection-note { font-size: 20px; line-height: 1.6; color: #103c40; }
#companies .company-selector {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  overflow: visible;
  padding: 0;
  margin-top: 26px;
}
#companies .company-selector-card {
  grid-template-columns: 88px minmax(0, 1fr);
  gap: 20px;
  min-height: 200px;
  padding: 22px 18px;
  min-width: 0;
}
#companies .company-selector-card img { width: 88px; height: 154px; }
#companies .company-selector-card span { font-size: 24px; line-height: 1.2; }
#companies .company-selector-card small { font-size: 15px; line-height: 1.4; margin-bottom: 9px; letter-spacing: .035em; }
.review-polished .journey-section .journey {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}
.review-polished .journey-section .journey > div { padding: 34px; min-height: 0; }
.review-polished .journey-section .journey > div > b { font-size: 42px; margin-bottom: 24px; }
.review-polished .journey-section .journey strong { font-size: 32px; line-height: 1.2; margin-bottom: 18px; }
.review-polished .journey-section .journey span { font-size: 22px; line-height: 1.6; color: #103c40; }
.review-polished .journey-section .journey-note { font-size: 20px; line-height: 1.65; color: #103c40; }
.occasion-guide-details { grid-template-columns: minmax(0, 1fr); }
.occasion-guide-details article { scroll-margin-top: 30px; }
.occasion-guide-details h2 { font-size: 34px; line-height: 1.2; }
.occasion-guide-details p { font-size: 21px; line-height: 1.65; }
@media (max-width: 1050px) and (min-width: 701px) {
  #companies .company-selector-card { grid-template-columns: 68px minmax(0,1fr); padding: 20px 14px; gap: 14px; }
  #companies .company-selector-card img { width: 68px; height: 130px; }
  #companies .company-selector-card span { font-size: 22px; }
  #companies .company-selector-card small { font-size: 14px; }
}
@media (max-width: 800px) {
  #occasions .occasions-heading > p:not(.eyebrow),
  #merch .merch-heading > p:not(.eyebrow),
  .review-polished .journey-section .center-heading > p:not(.eyebrow) { font-size: 20px; line-height: 1.6; }
  #certificate .certificate-copy .lede { font-size: 22px; }
  #certificate .certificate-copy li { font-size: 20px; }
  #certificate .certificate-copy .fineprint, #merch .collection-note { font-size: 19px; }
  #choose .choose-heading > p:not(.eyebrow) { font-size: 22px; }
  #choose .prepaid-benefits span { font-size: 19px; }
  #choose .arrival-preview-condition, #choose .arrival-preview-later { font-size: 19px; }
  .review-polished .journey-section .journey > div { padding: 26px; }
  .review-polished .journey-section .journey strong { font-size: 29px; }
  .review-polished .journey-section .journey span { font-size: 20px; }
  .review-polished .journey-section .journey-note { font-size: 19px; }
  .occasion-guide-details p { font-size: 20px; }
}
@media (max-width: 700px) {
  #companies .company-selector { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  #companies .company-selector-card { grid-template-columns: 74px minmax(0,1fr); gap: 22px; min-height: 164px; padding: 18px 22px; }
  #companies .company-selector-card img { width: 74px; height: 126px; }
  #companies .company-selector-card span { font-size: 24px; }
  #companies .company-selector-card small { font-size: 15px; }
  .review-polished .journey-section .journey { grid-template-columns: minmax(0,1fr); }
}
