.trust-images img {
    max-width: 80px
}

.bg-itinerary {
    background-color: var(--color-itinerary-bg);
}

.gradient-fade-up {
    background: linear-gradient(to top, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0.8) 40%, rgba(255, 255, 255, 0) 100%);
}

.bg-sunset-gradient {
    background: linear-gradient(to left, rgba(var(--color-brand-primary-rgb), 0.69), rgba(var(--color-brand-primary-rgb), 0));
    border: 1px solid rgba(var(--color-brand-primary-rgb), 0.2);
    border-left: 0;
}

@media (max-width: 768px) {
  .sunset-mobile-gradient {
    background: linear-gradient(
      180deg,
      rgba(var(--color-brand-primary-rgb), 0) 36%,
      rgba(var(--color-brand-primary-rgb), 0.5) 100%
    );
  }
}

.shadow-gallery {
    box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.5);
}

.menu-overlay-gradient {
    background: radial-gradient(120% 80% at 50% 0%, rgba(255, 255, 255, 0.08) 0%, rgba(0, 0, 0, 0.35) 55%);
}

.badge-ribbon {
    letter-spacing: 0.01em;
    border-radius: 0 12px 12px 0;
}

/* Accordion Animations */
.grid-rows-\[0fr\] {
    grid-template-rows: 0fr;
}

.grid-rows-\[1fr\] {
    grid-template-rows: 1fr;
}

.transition-\[grid-template-rows\] {
    transition-property: grid-template-rows;
}

.hero-gradient-overlay {
    background: linear-gradient(0deg, rgba(0, 0, 0, 0) 5.7%, rgba(0, 0, 0, 0.6) 100%);
}

.hero-overlay {
    background: linear-gradient(0deg, rgba(0, 0, 0, 0) 5.7%, rgba(0, 0, 0, 0.6) 100%);
}

/* Quote Footer Checklist Styling for WYSIWYG */
.quote-footer-text ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.quote-footer-text ul li {
    position: relative;
    padding-left: 32px !important;
    margin: 0 !important;
}

.quote-footer-text ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0px;
    width: 24px;
    height: 24px;
    background-color: var(--color-brand-secondary);
    border-radius: 50%;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
}

/* From Uiverse.io by bociKond - Enhanced for Yippee Theme */
.loader {
    width: 44.8px;
    height: 44.8px;
    color: var(--color-brand-secondary);
    position: relative;
    background: radial-gradient(11.2px at center, var(--color-brand-secondary) 94%, #0000);
}

.loader:before {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background:
        radial-gradient(10.08px at bottom right, #0000 94%, var(--color-brand-secondary)) top left,
        radial-gradient(10.08px at bottom left, #0000 94%, var(--color-brand-secondary)) top right,
        radial-gradient(10.08px at top right, #0000 94%, var(--color-brand-secondary)) bottom left,
        radial-gradient(10.08px at top left, #0000 94%, var(--color-brand-secondary)) bottom right;
    background-size: 22.4px 22.4px;
    background-repeat: no-repeat;
    animation: loader-anim 1.5s infinite cubic-bezier(0.3, 1, 0, 1);
}

@keyframes loader-anim {
    33% {
        inset: -11.2px;
        transform: rotate(0deg);
    }

    66% {
        inset: -11.2px;
        transform: rotate(90deg);
    }

    100% {
        inset: 0;
        transform: rotate(90deg);
    }
}

.bg-\[\#4da8bf\] {
    background-color: var(--color-brand-accent) !important;
}


.btn-quote {
    background-color: var(--color-brand-primary) !important;
    outline: 3px solid var(--color-outline-btn) !important;
    outline-offset: 4px !important;
    width: 100% !important;
    display: block !important;
}

.btn-quote:hover {
    background-color: var(--color-brand-primary-hover) !important;
}

/* Remove CF7 p tag margin */
p:has(.btn-quote) {
    margin: 0 !important;
    padding: 0 !important;
}

.fill-\[\#fcaa3c\] {
    fill: var(--color-brand-primary) !important;
}

/* Hide reCAPTCHA badge  */
.grecaptcha-badge {
    visibility: hidden !important;
}

/* Tailwind Fallbacks for Error States */
.bg-red-50 {
    background-color: var(--color-error-bg) !important;
}

.border-red-500 {
    border-color: var(--color-error) !important;
}

.text-red-700 {
    color: var(--color-error-dark) !important;
}

.text-red-600 {
    color: var(--color-error-darker) !important;
}


[data-name="captcha-1"] {
    display: block;
    min-width: 0;
}

[data-name="captcha-1"] input {
    width: 100% !important;
    box-sizing: border-box;
}

@media (max-width: 767px) {
    .adventure-card { max-height: none !important; }
    .adventure-card ul { max-height: none !important; overflow: visible !important; }
}

.contact-form-cf7 .wpcf7-form {
    gap: 0 !important;
}


/* Field highlight effect used by auto-detection scripts */
@keyframes highlightFlash {
  0% { background-color: var(--color-highlight); } 
  100% { background-color: transparent; }
}
.field-highlight {
  animation: highlightFlash 2s ease-out;
}
