/* Static pages and contact form styles moved from inline templates for CSP safety */
/* line 2, app/assets/stylesheets/static_pages.scss */
.static-page {
  max-width: 48rem;
  margin: 0 auto;
  padding: 2rem 1.5rem 4rem;
}

/* line 8, app/assets/stylesheets/static_pages.scss */
.static-page__header {
  margin-bottom: 2.5rem;
  text-align: center;
}

/* line 13, app/assets/stylesheets/static_pages.scss */
.static-page__title {
  font-size: clamp(1.75rem, 5vw, 2.5rem);
  font-weight: 700;
  color: #222222;
  line-height: 1.2;
  margin: 0;
}

/* line 21, app/assets/stylesheets/static_pages.scss */
.static-page__subtitle {
  font-size: 1rem;
  color: #e91e63;
  font-weight: 500;
  margin-top: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

/* line 30, app/assets/stylesheets/static_pages.scss */
.static-page__content {
  font-size: 1rem;
  color: #444444;
  line-height: 1.7;
}

/* line 36, app/assets/stylesheets/static_pages.scss */
.static-page__content h2 {
  font-size: 1.5rem;
  font-weight: 600;
  color: #222222;
  margin: 2.5rem 0 1rem;
  padding-bottom: 0.5rem;
  border-bottom: 2px solid #e5e5e5;
}

/* line 45, app/assets/stylesheets/static_pages.scss */
.static-page__content h3 {
  font-size: 1.125rem;
  font-weight: 600;
  color: #222222;
  margin: 1.75rem 0 0.75rem;
}

/* line 52, app/assets/stylesheets/static_pages.scss */
.static-page__content p {
  margin: 0 0 1rem;
}

/* line 56, app/assets/stylesheets/static_pages.scss */
.static-page__content ul,
.static-page__content ol {
  margin: 0 0 1.25rem;
  padding-left: 1.5rem;
}

/* line 62, app/assets/stylesheets/static_pages.scss */
.static-page__content li {
  margin-bottom: 0.5rem;
}

/* line 66, app/assets/stylesheets/static_pages.scss */
.static-page__content a {
  color: #e91e63;
  text-decoration: none;
}

/* line 71, app/assets/stylesheets/static_pages.scss */
.static-page__content a:hover {
  text-decoration: underline;
}

/* line 75, app/assets/stylesheets/static_pages.scss */
.static-page__content strong {
  font-weight: 600;
  color: #222222;
}

/* line 80, app/assets/stylesheets/static_pages.scss */
.static-page__highlight {
  background: #fafafa;
  border-left: 4px solid #e91e63;
  padding: 1.25rem 1.5rem;
  margin: 1.5rem 0;
  border-radius: 0 0.25rem 0.25rem 0;
}

/* line 88, app/assets/stylesheets/static_pages.scss */
.static-page__highlight p:last-child {
  margin-bottom: 0;
}

/* line 92, app/assets/stylesheets/static_pages.scss */
.static-page__highlight--spaced {
  margin-top: 3rem;
}

/* line 96, app/assets/stylesheets/static_pages.scss */
.static-page__cta {
  display: flex;
  gap: 1rem;
  margin-top: 2rem;
  flex-wrap: wrap;
}

/* line 103, app/assets/stylesheets/static_pages.scss */
.static-page__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.875rem 1.75rem;
  font-size: 0.8125rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  text-decoration: none;
  border-radius: 0.25rem;
  transition: all 0.15s ease;
  cursor: pointer;
}

/* line 118, app/assets/stylesheets/static_pages.scss */
.static-page__btn--primary {
  background: #222222;
  color: #ffffff;
  border: 1px solid #222222;
}

/* line 124, app/assets/stylesheets/static_pages.scss */
.static-page__btn--primary:hover {
  background: #2d2d2d;
  text-decoration: none;
}

/* line 129, app/assets/stylesheets/static_pages.scss */
.static-page__btn--secondary {
  background: transparent;
  color: #222222;
  border: 1px solid #e5e5e5;
}

/* line 135, app/assets/stylesheets/static_pages.scss */
.static-page__btn--secondary:hover {
  border-color: #222222;
  text-decoration: none;
}

/* Contact page specific styles */
/* line 141, app/assets/stylesheets/static_pages.scss */
.contact-info {
  display: grid;
  gap: 1.5rem;
  margin: 2rem 0;
}

/* line 147, app/assets/stylesheets/static_pages.scss */
.contact-info__card {
  background: #fafafa;
  padding: 1.5rem;
  border-radius: 0.5rem;
  border: 1px solid #e5e5e5;
}

/* line 154, app/assets/stylesheets/static_pages.scss */
.contact-info__card h2 {
  margin: 0 0 0.75rem;
  font-size: 1rem;
  font-weight: 600;
  color: #222222;
  padding-bottom: 0;
  border-bottom: none;
}

/* line 163, app/assets/stylesheets/static_pages.scss */
.contact-info__card p {
  margin: 0;
}

/* line 167, app/assets/stylesheets/static_pages.scss */
.contact-info__email {
  font-size: 1.25rem;
  font-weight: 600;
  color: #e91e63;
  text-decoration: none;
}

/* line 174, app/assets/stylesheets/static_pages.scss */
.contact-info__email:hover {
  text-decoration: underline;
}

/* Social links for contact page */
/* line 179, app/assets/stylesheets/static_pages.scss */
.social-links {
  display: flex;
  gap: 1rem;
  margin-top: 1rem;
}

/* line 185, app/assets/stylesheets/static_pages.scss */
.social-links__item {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  background: #222222;
  color: #ffffff;
  border-radius: 50%;
  text-decoration: none;
  transition: background 0.15s ease;
}

/* line 198, app/assets/stylesheets/static_pages.scss */
.social-links__item:hover {
  background: #e91e63;
}

/* line 202, app/assets/stylesheets/static_pages.scss */
.social-links__item svg {
  width: 1.25rem;
  height: 1.25rem;
  fill: currentcolor;
}

/* FAQ accordion styles */
/* line 209, app/assets/stylesheets/static_pages.scss */
.faq-section {
  margin-bottom: 2.5rem;
}

/* line 213, app/assets/stylesheets/static_pages.scss */
.faq-section__title {
  font-size: 1.25rem;
  font-weight: 600;
  color: #222222;
  margin: 0 0 1rem;
  padding-bottom: 0.5rem;
  border-bottom: 2px solid #e91e63;
}

/* line 222, app/assets/stylesheets/static_pages.scss */
.faq-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

/* line 228, app/assets/stylesheets/static_pages.scss */
.faq-item {
  border-bottom: 1px solid #e5e5e5;
}

/* line 232, app/assets/stylesheets/static_pages.scss */
.faq-item__trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 1.25rem 0;
  background: none;
  border: none;
  text-align: left;
  cursor: pointer;
  font-size: 1rem;
  font-weight: 500;
  color: #222222;
  transition: color 0.15s ease;
}

/* line 248, app/assets/stylesheets/static_pages.scss */
.faq-item__trigger:hover {
  color: #e91e63;
}

/* line 252, app/assets/stylesheets/static_pages.scss */
.faq-item__icon {
  flex-shrink: 0;
  width: 1.25rem;
  height: 1.25rem;
  margin-left: 1rem;
  transition: transform 0.2s ease;
}

/* line 260, app/assets/stylesheets/static_pages.scss */
.faq-item[data-accordion-expanded="true"] .faq-item__icon {
  transform: rotate(180deg);
}

/* line 264, app/assets/stylesheets/static_pages.scss */
.faq-item__content {
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.3s ease;
}

/* line 270, app/assets/stylesheets/static_pages.scss */
.faq-item[data-accordion-expanded="true"] .faq-item__content {
  max-height: 1000px;
}

/* line 274, app/assets/stylesheets/static_pages.scss */
.faq-item__answer {
  padding: 0 0 1.25rem;
  color: #444444;
  line-height: 1.7;
}

/* line 280, app/assets/stylesheets/static_pages.scss */
.faq-item__answer p {
  margin: 0 0 0.75rem;
}

/* line 284, app/assets/stylesheets/static_pages.scss */
.faq-item__answer p:last-child {
  margin-bottom: 0;
}

/* line 288, app/assets/stylesheets/static_pages.scss */
.faq-item__answer a {
  color: #e91e63;
  text-decoration: none;
}

/* line 293, app/assets/stylesheets/static_pages.scss */
.faq-item__answer a:hover {
  text-decoration: underline;
}

/* Two-column layout for shipping/returns */
/* line 298, app/assets/stylesheets/static_pages.scss */
.two-column {
  display: grid;
  gap: 3rem;
  margin-top: 2rem;
}

@media (min-width: 768px) {
  /* line 305, app/assets/stylesheets/static_pages.scss */
  .two-column {
    grid-template-columns: 1fr 1fr;
  }
}

/* line 310, app/assets/stylesheets/static_pages.scss */
.two-column__section h2 {
  margin-top: 0;
}

/* Table styles for cookie policy */
/* line 315, app/assets/stylesheets/static_pages.scss */
.static-page__table {
  width: 100%;
  border-collapse: collapse;
  margin: 1.5rem 0;
  font-size: 0.9375rem;
}

/* line 322, app/assets/stylesheets/static_pages.scss */
.static-page__table th,
.static-page__table td {
  padding: 0.75rem 1rem;
  text-align: left;
  border: 1px solid #e5e5e5;
}

/* line 329, app/assets/stylesheets/static_pages.scss */
.static-page__table th {
  background: #fafafa;
  font-weight: 600;
  color: #222222;
}

/* line 335, app/assets/stylesheets/static_pages.scss */
.static-page__table td {
  color: #444444;
}

/* line 339, app/assets/stylesheets/static_pages.scss */
.static-page__table tr:hover td {
  background: #fafafa;
}

@media (max-width: 640px) {
  /* line 344, app/assets/stylesheets/static_pages.scss */
  .static-page__table {
    font-size: 0.8125rem;
  }
  /* line 348, app/assets/stylesheets/static_pages.scss */
  .static-page__table th,
.static-page__table td {
    padding: 0.5rem 0.75rem;
  }
}

/* Last updated notice */
/* line 355, app/assets/stylesheets/static_pages.scss */
.static-page__updated {
  font-size: 0.875rem;
  color: #888888;
  margin-top: 3rem;
  padding-top: 1.5rem;
  border-top: 1px solid #e5e5e5;
}

@media (max-width: 640px) {
  /* line 364, app/assets/stylesheets/static_pages.scss */
  .static-page {
    padding: 1.5rem 1.25rem 3rem;
  }
  /* line 368, app/assets/stylesheets/static_pages.scss */
  .static-page__cta {
    flex-direction: column;
  }
  /* line 372, app/assets/stylesheets/static_pages.scss */
  .static-page__btn {
    width: 100%;
  }
}

/* Contact form styles moved from app/views/contact_forms/new.html.erb */
/* line 378, app/assets/stylesheets/static_pages.scss */
.contact-form__group {
  margin-bottom: 1.25rem;
}

/* line 382, app/assets/stylesheets/static_pages.scss */
.contact-form__label {
  display: block;
  font-size: 0.875rem;
  font-weight: 600;
  color: #222222;
  margin-bottom: 0.375rem;
}

/* line 390, app/assets/stylesheets/static_pages.scss */
.contact-form__label--required::after {
  content: " *";
  color: #e91e63;
}

/* line 395, app/assets/stylesheets/static_pages.scss */
.contact-form__input,
.contact-form__select,
.contact-form__textarea {
  width: 100%;
  padding: 0.75rem;
  font-size: 1rem;
  color: #222222;
  background: #ffffff;
  border: 1px solid #d4d4d4;
  border-radius: 0.375rem;
  transition: border-color 0.15s ease;
  font-family: inherit;
  box-sizing: border-box;
}

/* line 410, app/assets/stylesheets/static_pages.scss */
.contact-form__input:focus,
.contact-form__select:focus,
.contact-form__textarea:focus {
  outline: 2px solid #222222;
  outline-offset: 1px;
  border-color: #222222;
}

/* line 418, app/assets/stylesheets/static_pages.scss */
.contact-form__input--error,
.contact-form__select--error,
.contact-form__textarea--error {
  border-color: #dc2626;
}

/* line 424, app/assets/stylesheets/static_pages.scss */
.contact-form__textarea {
  resize: vertical;
  min-height: 8rem;
}

/* line 429, app/assets/stylesheets/static_pages.scss */
.contact-form__error {
  font-size: 0.8125rem;
  color: #dc2626;
  margin-top: 0.25rem;
}

/* line 435, app/assets/stylesheets/static_pages.scss */
.contact-form__honeypot {
  position: absolute;
  left: -9999px;
  opacity: 0;
  height: 0;
  width: 0;
  overflow: hidden;
}

/* line 444, app/assets/stylesheets/static_pages.scss */
.contact-form__submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.875rem 2rem;
  font-size: 0.875rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #ffffff;
  background: #222222;
  border: 1px solid #222222;
  border-radius: 0.25rem;
  cursor: pointer;
  transition: background 0.15s ease;
}

/* line 461, app/assets/stylesheets/static_pages.scss */
.contact-form__submit:hover {
  background: #2d2d2d;
}

/* line 465, app/assets/stylesheets/static_pages.scss */
.contact-form__flash {
  padding: 1rem 1.25rem;
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
  border-radius: 0.375rem;
  color: #166534;
  font-size: 0.9375rem;
  margin-bottom: 1.5rem;
}

/* line 475, app/assets/stylesheets/static_pages.scss */
.contact-form__row {
  display: grid;
  gap: 1.25rem;
}

@media (min-width: 640px) {
  /* line 481, app/assets/stylesheets/static_pages.scss */
  .contact-form__row {
    grid-template-columns: 1fr 1fr;
  }
}

/* Error page styles moved from app/views/errors/_styles.html.erb */
/* line 487, app/assets/stylesheets/static_pages.scss */
.error-page {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 60vh;
  padding: 3rem 1.5rem;
}

/* line 495, app/assets/stylesheets/static_pages.scss */
.error-page__content {
  text-align: center;
  max-width: 32rem;
}

/* line 500, app/assets/stylesheets/static_pages.scss */
.error-page__code {
  font-size: clamp(6rem, 20vw, 10rem);
  font-weight: 700;
  color: #e5e5e5;
  line-height: 1;
  letter-spacing: -0.02em;
}

/* line 508, app/assets/stylesheets/static_pages.scss */
.error-page__title {
  font-size: clamp(1.5rem, 4vw, 2rem);
  font-weight: 600;
  color: #222222;
  margin-top: 0.5rem;
}

/* line 515, app/assets/stylesheets/static_pages.scss */
.error-page__subtitle {
  font-size: 0.875rem;
  color: #e91e63;
  font-weight: 500;
  margin-top: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

/* line 524, app/assets/stylesheets/static_pages.scss */
.error-page__message {
  font-size: 1rem;
  color: #57534e;
  line-height: 1.6;
  margin-top: 1.5rem;
}

/* line 531, app/assets/stylesheets/static_pages.scss */
.error-page__actions {
  display: flex;
  gap: 1rem;
  margin-top: 2rem;
  flex-wrap: wrap;
  justify-content: center;
}

/* line 539, app/assets/stylesheets/static_pages.scss */
.error-page__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.875rem 1.75rem;
  font-size: 0.8125rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  text-decoration: none;
  border-radius: 0.25rem;
  transition: all 0.15s ease;
  cursor: pointer;
}

/* line 554, app/assets/stylesheets/static_pages.scss */
.error-page__btn--primary {
  background: #222222;
  color: #ffffff;
  border: 1px solid #222222;
}

/* line 560, app/assets/stylesheets/static_pages.scss */
.error-page__btn--primary:hover {
  background: #2d2d2d;
}

/* line 564, app/assets/stylesheets/static_pages.scss */
.error-page__btn--secondary {
  background: transparent;
  color: #222222;
  border: 1px solid #e5e5e5;
}

/* line 570, app/assets/stylesheets/static_pages.scss */
.error-page__btn--secondary:hover {
  border-color: #222222;
}

@media (max-width: 640px) {
  /* line 575, app/assets/stylesheets/static_pages.scss */
  .error-page {
    padding: 2rem 1.25rem;
    min-height: 50vh;
  }
  /* line 580, app/assets/stylesheets/static_pages.scss */
  .error-page__actions {
    flex-direction: column;
    width: 100%;
  }
  /* line 585, app/assets/stylesheets/static_pages.scss */
  .error-page__btn {
    width: 100%;
  }
}
