.td-section-heading .td-small-title {
  display: inline-block;
  font-weight: 600;
  margin-bottom: 10px; }
.td-section-heading .td-large-title {
  margin-top: 0;
  margin-bottom: 0;
  letter-spacing: -0.96px; }
.td-section-heading .td-subtitle {
  font-weight: 600;
  margin-top: 10px; }

.td-section-desc {
  margin-top: 20px; }
  .td-section-desc p:last-child {
    margin-bottom: 0; }
  .td-section-desc h4,
  .td-section-desc h3 {
    margin-top: 10px;
    margin-bottom: 10px; }
  .td-section-desc * + address,
  .td-section-desc * + dl,
  .td-section-desc * + fieldset,
  .td-section-desc * + figure,
  .td-section-desc * + ol,
  .td-section-desc * + p,
  .td-section-desc * + pre,
  .td-section-desc * + ul {
    margin-top: 10px; }

.td-slider-buttons,
.uk-section-button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .td-slider-buttons .uk-button,
  .uk-section-button .uk-button {
    white-space: nowrap;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }

.uk-section-button .uk-button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  gap: 8px; }

.tewido-product-loop-block .td-section-buttons {
  margin-top: 10px !important; }

.tewido-product-loop-block .section-grid-heading .uk-width-auto {
  display: block !important; }

/* Contact form error styling */
.uk-form-danger {
  border-color: #f0506e !important; }

.error-message {
  display: block;
  margin-top: 5px;
  font-size: 0.875rem;
  color: #f0506e; }

/* Add some animation for the error messages */
@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(-5px);
            transform: translateY(-5px); }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0); } }
@keyframes fadeIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(-5px);
            transform: translateY(-5px); }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0); } }
.error-message {
  -webkit-animation: fadeIn 0.2s ease-in-out;
          animation: fadeIn 0.2s ease-in-out; }

/* Improve styling for form fields with errors */
.uk-form-controls {
  position: relative; }

/* Ensure proper spacing between form elements */
.uk-margin {
  margin-bottom: 25px;
  /* Increased to accommodate error messages */ }

.contact-success-modal {
  border-radius: 16px;
  background-color: #f3fcf9;
  color: #32d296; }

.contact-error-modal {
  border-radius: 16px;
  background-color: #fef5f7;
  color: #f0506e; }

/* Autofill styling that preserves uk-form-success state */
input.uk-form-success:-webkit-autofill,
input.uk-form-success:-webkit-autofill:hover,
input.uk-form-success:-webkit-autofill:focus,
input.uk-form-success:-webkit-autofill:active {
  -webkit-text-fill-color: inherit !important;
  -webkit-box-shadow: 0 0 0 1000px #f0f8f0 inset !important;
  /* Light green background for success state */
  -webkit-transition: background-color 5000s ease-in-out 0s;
  transition: background-color 5000s ease-in-out 0s; }

/* Ensure text color is maintained in autofill state */
input.uk-form-success:autofill {
  background-color: #f0f8f0 !important;
  /* Light green background */
  color: #32d296 !important;
  -webkit-transition: background-color 5000s ease-in-out 0s;
  transition: background-color 5000s ease-in-out 0s; }

.filter-buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .filter-buttons button {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex; }
  @media (max-width: 640px) {
    .filter-buttons {
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: start; } }

.filter-categories {
  white-space: nowrap;
  overflow: hidden;
  width: auto;
  padding: 15px 10px; }

.filter-meta {
  margin-bottom: 10px; }

.tewido-button-icon {
  margin-top: -0.2em !important;
  vertical-align: middle; }

/* Base divider styling */
.td-section-divider {
  position: absolute;
  width: 100%;
  left: 0;
  z-index: 1;
  line-height: 0;
  overflow: hidden;
  pointer-events: none;
  /* Allow clicking through dividers */ }

.td-section-divider svg {
  display: block;
  width: 100%;
  height: 100%; }

/* Position top divider */
.td-section-divider-top {
  bottom: -1px; }

/* Position bottom divider */
.td-section-divider-bottom {
  top: -1px; }

/* Flipped dividers (vertical) */
.td-divider-inverted.td-section-divider-top {
  -webkit-transform: scaleY(-1);
          transform: scaleY(-1); }

.td-divider-inverted.td-section-divider-bottom {
  -webkit-transform: scaleY(-1);
          transform: scaleY(-1); }

@media (max-width: 639px) {
  .td-section-divider {
    /* Further reduce size on small screens */
    height: 50px !important; }

  /* Reduce filter effects on mobile for performance */
  .td-section-divider svg {
    -webkit-filter: none !important;
            filter: none !important; } }
/* Gallery image wrapper */
.tewido-video-wrapper {
  position: relative;
  overflow: hidden;
  border-radius: 16px;
  -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  -webkit-transition: -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
  transition: -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  transition: transform 0.3s ease, box-shadow 0.3s ease, -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease; }

/* Hover effect for gallery images */
.tewido-video-wrapper:hover {
  -webkit-transform: translateY(-5px);
          transform: translateY(-5px);
  -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
          box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15); }

.ratio-3-1 {
  max-width: 100%;
  height: auto;
  aspect-ratio: 3 / 2; }

/* Gallery image wrapper */
.tewido-video-wrapper {
  position: relative;
  overflow: hidden;
  border-radius: 16px;
  -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  -webkit-transition: -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
  transition: -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  transition: transform 0.3s ease, box-shadow 0.3s ease, -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease; }

/* Hover effect for gallery images */
.tewido-video-wrapper:hover {
  -webkit-transform: translateY(-5px);
          transform: translateY(-5px);
  -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
          box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15); }

.ratio-3-1 {
  max-width: 100%;
  height: auto;
  aspect-ratio: 3 / 2; }
