@font-face {
    font-family: 'Inter';
    src: url('/static/fonts/InterV.woff2') format('woff2');
    font-weight: 100 900;
    font-display: swap;
}

@font-face {
    font-family: 'Playfair Display';
    src: url('/static/fonts/PlayfairDisplay-Regular.woff2') format('woff2');
    font-weight: 400;
    font-display: swap;
}

@font-face {
    font-family: 'Playfair Display';
    src: url('/static/fonts/PlayfairDisplay-Bold.woff2') format('woff2');
    font-weight: 700;
    font-display: swap;
}

@font-face {
    font-family: 'Playfair Display';
    src: url('/static/fonts/PlayfairDisplay-Italic.woff2') format('woff2');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}

:root {
    --gold: #C6A43F;
    --gold-light: #D4B65C;
    --gold-dark: #A8882E;
    --dark: #0A0A0A;
    --cream: #F5F0E8;
    --white: #FFFFFF;
    --gray-50: #F9FAFB;
    --gray-100: #F3F4F6;
    --gray-200: #E5E7EB;
    --gray-300: #D1D5DB;
    --gray-400: #9CA3AF;
    --gray-500: #6B7280;
    --gray-600: #4B5563;
    --gray-700: #374151;
    --gray-800: #1F2937;
    --gray-900: #111827;
    --red-500: #EF4444;
    --green-500: #10B981;
    --green-600: #059669;
    --orange-500: #F97316;
    --blue-500: #3B82F6;
    --pink-500: #EC4899;
    --yellow-300: #FDE047;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

.hidden {
    display: none !important;
}

body {
    padding: 0; margin:0;
    font-family: 'Inter', sans-serif;
    background-color: var(--cream);
    color: var(--dark);
    overflow-x: hidden;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.font-playfair {
    font-family: 'Playfair Display', serif;
}

.bg-gold { background-color: var(--gold); }
.bg-gold-light { background-color: var(--gold-light); }
.bg-gold-dark { background-color: var(--gold-dark); }
.bg-dark { background-color: var(--dark); }
.bg-cream { background-color: var(--cream); }
.bg-white { background-color: var(--white); }
.bg-gray-50 { background-color: var(--gray-50); }
.bg-gray-100 { background-color: var(--gray-100); }
.bg-gray-200 { background-color: var(--gray-200); }
.bg-red-500 { background-color: var(--red-500); }
.bg-green-500 { background-color: var(--green-500); }
.bg-green-600 { background-color: var(--green-600); }
.bg-orange-500 { background-color: var(--orange-500); }
.bg-blue-500 { background-color: var(--blue-500); }
.bg-pink-500 { background-color: var(--pink-500); }
.bg-yellow-50 { background-color: #FEFCE8; }
.bg-red-50 { background-color: #FEF2F2; }
.bg-green-100 { background-color: #D1FAE5; }
.bg-blue-100 { background-color: #DBEAFE; }
.bg-white\/10 { background-color: rgba(255, 255, 255, 0.1); }
.bg-white\/20 { background-color: rgba(255, 255, 255, 0.2); }
.bg-white\/30 { background-color: rgba(255, 255, 255, 0.3); }
.bg-white\/50 { background-color: rgba(255, 255, 255, 0.5); }
.bg-white\/90 { background-color: rgba(255, 255, 255, 0.9); }
.bg-black\/50 { background-color: rgba(0, 0, 0, 0.5); }
.bg-black\/60 { background-color: rgba(0, 0, 0, 0.6); }
.bg-black\/70 { background-color: rgba(0, 0, 0, 0.7); }
.bg-black\/75 { background-color: rgba(0, 0, 0, 0.75); }
.bg-black\/95 { background-color: rgba(0, 0, 0, 0.95); }
.bg-dark\/5 { background-color: rgba(10, 10, 10, 0.05); }
.bg-dark\/20 { background-color: rgba(10, 10, 10, 0.2); }
.bg-dark\/30 { background-color: rgba(10, 10, 10, 0.3); }
.bg-gold\/5 { background-color: rgba(198, 164, 63, 0.05); }
.bg-gold\/10 { background-color: rgba(198, 164, 63, 0.1); }
.bg-gold\/20 { background-color: rgba(198, 164, 63, 0.2); }
.bg-gold\/90 { background-color: rgba(198, 164, 63, 0.9); }

.text-gold { color: var(--gold); }
.text-gold-light { color: var(--gold-light); }
.text-gold-dark { color: #8B6914; }
.text-dark { color: var(--dark); }
.text-white { color: var(--white); }
.text-white\/40 { color: rgba(255, 255, 255, 0.4); }
.text-white\/50 { color: rgba(255, 255, 255, 0.5); }
.text-white\/60 { color: rgba(255, 255, 255, 0.6); }
.text-white\/70 { color: rgba(255, 255, 255, 0.7); }
.text-white\/80 { color: rgba(255, 255, 255, 0.8); }
.text-dark\/50 { color: rgba(10, 10, 10, 0.5); }
.text-dark\/60 { color: rgba(10, 10, 10, 0.6); }
.text-dark\/70 { color: rgba(10, 10, 10, 0.7); }
.text-dark\/80 { color: rgba(10, 10, 10, 0.8); }
.text-gray-300 { color: var(--gray-300); }
.text-gray-400 { color: var(--gray-400); }
.text-gray-500 { color: var(--gray-500); }
.text-gray-600 { color: var(--gray-600); }
.text-gray-700 { color: var(--gray-700); }
.text-gray-800 { color: var(--gray-800); }
.text-red-500 { color: var(--red-500); }
.text-red-600 { color: #DC2626; }
.text-green-500 { color: var(--green-500); }
.text-green-600 { color: #15803D; }
.text-orange-500 { color: var(--orange-500); }
.text-blue-500 { color: var(--blue-500); }
.text-pink-500 { color: var(--pink-500); }
.text-yellow-300 { color: var(--yellow-300); }
.text-yellow-700 { color: #A16207; }

.border-gold { border-color: var(--gold); }
.border-gold-light { border-color: var(--gold-light); }
.border-gold-dark { border-color: var(--gold-dark); }
.border-gray-100 { border-color: var(--gray-100); }
.border-gray-200 { border-color: var(--gray-200); }
.border-gray-300 { border-color: var(--gray-300); }
.border-white\/10 { border-color: rgba(255, 255, 255, 0.1); }
.border-white\/20 { border-color: rgba(255, 255, 255, 0.2); }
.border-white\/30 { border-color: rgba(255, 255, 255, 0.3); }
.border-gold\/20 { border-color: rgba(198, 164, 63, 0.2); }
.border-red-500 { border-color: var(--red-500); }
.border-red-200 { border-color: #FECACA; }
.border-gray-800 { border-color: var(--gray-800); }

.hover\:bg-gold:hover { background-color: var(--gold); }
.hover\:bg-gold-light:hover { background-color: var(--gold-light); }
.hover\:bg-gold\/10:hover { background-color: rgba(198, 164, 63, 0.1); }
.hover\:bg-white\/10:hover { background-color: rgba(255, 255, 255, 0.1); }
.hover\:bg-gray-50:hover { background-color: var(--gray-50); }
.hover\:bg-gray-100:hover { background-color: var(--gray-100); }
.hover\:bg-red-500:hover { background-color: var(--red-500); }
.hover\:bg-red-600:hover { background-color: #DC2626; }
.hover\:bg-green-500:hover { background-color: var(--green-500); }
.hover\:bg-green-600:hover { background-color: var(--green-600); }
.hover\:bg-orange-600:hover { background-color: #EA580C; }
.hover\:bg-dark\/10:hover { background-color: rgba(10, 10, 10, 0.1); }
.hover\:bg-dark\/80:hover { background-color: rgba(10, 10, 10, 0.8); }

.hover\:text-gold:hover { color: var(--gold); }
.hover\:text-gold-light:hover { color: var(--gold-light); }
.hover\:text-dark:hover { color: var(--dark); }
.hover\:text-white:hover { color: var(--white); }
.hover\:text-green-400:hover { color: #34D399; }
.hover\:text-red-500:hover { color: var(--red-500); }

.hover\:border-gold:hover { border-color: var(--gold); }
.hover\:border-gold-light:hover { border-color: var(--gold-light); }

.hover\:shadow-lg:hover { box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05); }
.hover\:shadow-xl:hover { box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04); }
.hover\:shadow-2xl:hover { box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25); }
.hover\:shadow-md:hover { box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06); }

.hover\:scale-105:hover { transform: scale(1.05); }
.hover\:scale-110:hover { transform: scale(1.1); }
.hover\:-translate-y-1:hover { transform: translateY(-4px); }
.hover\:-translate-y-2:hover { transform: translateY(-8px); }
.hover\:gap-2:hover { gap: 0.5rem; }
.hover\:gap-3:hover { gap: 0.75rem; }

.transition { transition-property: all; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
.transition-all { transition-property: all; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 300ms; }
.transition-transform { transition-property: transform; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 300ms; }
.duration-200 { transition-duration: 200ms; }
.duration-300 { transition-duration: 300ms; }
.duration-500 { transition-duration: 500ms; }
.duration-1000 { transition-duration: 1000ms; }

.backdrop-blur-md { backdrop-filter: blur(12px); }
.backdrop-blur-sm { backdrop-filter: blur(8px); }
.backdrop-blur-xl { backdrop-filter: blur(24px); }

.shadow-sm { box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05); }
.shadow-md { box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06); }
.shadow-lg { box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05); }
.shadow-xl { box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04); }
.shadow-2xl { box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25); }

.rounded-lg { border-radius: 0.5rem; }
.rounded-xl { border-radius: 0.75rem; }
.rounded-2xl { border-radius: 1rem; }
.rounded-full { border-radius: 9999px; }
.rounded-md { border-radius: 0.375rem; }

.border-l-3 { border-left-width: 3px; }
.border-t { border-top-width: 1px; }
.border-b { border-bottom-width: 1px; }
.border-l-4 { border-left-width: 4px; }

.back-to-top {
    opacity: 0;
    visibility: hidden;
    transform: translateY(20px);
    transition: all 0.3s ease;
}

.back-to-top.visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.btn-shine {
    position: relative;
    overflow: hidden;
}

.btn-shine::after {
    content: '';
    position: absolute;
    top: -50%;
    left: -60%;
    width: 200%;
    height: 200%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
    transform: rotate(30deg);
    transition: all 0.6s ease;
}

.btn-shine:hover::after {
    left: 100%;
}

.magnetic-btn {
    transition: transform 0.2s ease;
}

.scroll-progress {
    position: fixed;
    top: 0;
    left: 0;
    width: 0%;
    height: 3px;
    background: linear-gradient(90deg, var(--gold), var(--gold-light));
    z-index: 10000;
    transition: width 0.1s ease;
}

.reveal-text {
    opacity: 0;
    transform: translateY(20px);
    animation: revealText 0.8s ease forwards;
}

@keyframes revealText {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.fade-on-scroll {
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.6s ease;
}

.fade-on-scroll.visible {
    opacity: 1;
    transform: translateY(0);
}

.zoom-on-scroll {
    opacity: 0;
    transform: scale(0.95);
    transition: all 0.6s ease;
}

.zoom-on-scroll.visible {
    opacity: 1;
    transform: scale(1);
}

.floating {
    animation: floating 3s ease-in-out infinite;
}

@keyframes floating {
    0% { transform: translateY(0px); }
    50% { transform: translateY(-15px); }
    100% { transform: translateY(0px); }
}

.heart-beat {
    animation: heartBeat 0.3s ease-in-out;
}

@keyframes heartBeat {
    0% { transform: scale(1); }
    50% { transform: scale(1.3); }
    100% { transform: scale(1); }
}

.in-wishlist {
    background-color: var(--red-500);
    border-color: var(--red-500);
    color: white;
}

.stat-card {
    transition: all 0.3s ease;
}

.stat-card:hover {
    transform: translateY(-5px);
}

.contact-card {
    transition: all 0.3s ease;
}

.contact-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
}

.char-counter {
    font-size: 9px;
    text-align: right;
    margin-top: 2px;
    color: var(--gray-400);
}

.char-counter.warning {
    color: #f59e0b;
}

.char-counter.danger {
    color: var(--red-500);
}

.faq-cat-btn.active {
    background-color: var(--gold);
    color: var(--dark);
    border-color: var(--gold);
}

.faq-cat-btn {
    transition: all 0.3s ease;
}

.faq-question {
    cursor: pointer;
}

.faq-answer {
    transition: all 0.3s ease;
}

.rotate-180 {
    transform: rotate(180deg);
}

.gallery-slider {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}

.gallery-slider::-webkit-scrollbar {
    display: none;
}

.gallery-slide {
    flex: 0 0 100%;
    scroll-snap-align: start;
    position: relative;
}

.zoom-container {
    position: relative;
    overflow: hidden;
    cursor: zoom-in;
}

.zoom-container.zoomed {
    cursor: zoom-out;
}

.zoom-image {
    width: 100%;
    height: auto;
    transition: transform 0.3s ease;
    transform-origin: 0 0;
}

.dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.5);
    transition: all 0.2s;
}

.dot.active {
    width: 20px;
    border-radius: 3px;
    background: white;
}

.thumbnail-item.active {
    border-color: var(--gold);
}

.thumbnail-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.prose {
    color: #333;
}

.prose h2 {
    font-size: 1.8rem;
    margin-top: 2rem;
    margin-bottom: 1rem;
}

.prose h3 {
    font-size: 1.4rem;
    margin-top: 1.5rem;
    margin-bottom: 0.75rem;
}

.prose p {
    margin-bottom: 1rem;
}

.prose img {
    border-radius: 0.5rem;
    margin: 1.5rem 0;
}

.prose blockquote {
    border-left: 4px solid var(--gold);
    background: #f8f9fa;
    padding: 1rem 1.5rem;
    font-style: italic;
}

.prose ul, .prose ol {
    margin: 1rem 0 1rem 1.5rem;
}

.prose li {
    margin-bottom: 0.5rem;
}

.bg-cream .text-gold-dark,
.bg-cream .text-gold-dark\:text {
    color: #6B4F0A;
}

span.text-gold-dark.text-\[10px\] {
    color: #6B4F0A;
    font-weight: 600;
}

.text-gold-dark.font-semibold {
    color: #8B6914;
    font-weight: 700;
}

.text-green-600 {
    color: #15803D;
    font-weight: 500;
}

button:focus-visible,
a:focus-visible {
    outline: 2px solid #C6A43F;
    outline-offset: 2px;
}

.skip-to-content {
    position: absolute;
    top: -40px;
    left: 0;
    background: #C6A43F;
    color: #0A0A0A;
    padding: 8px 16px;
    z-index: 10001;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
}

.skip-to-content:focus {
    top: 0;
}

.loading-spinner {
    transition: opacity 0.3s ease;
}

.loading-spinner.hide {
    opacity: 0;
    visibility: hidden;
}

.gtranslate_float_trigger {
    z-index: 9999 !important;
}

.gtranslate_float_modal {
    position: fixed;
    bottom: 20px;
    left: 65px;
    z-index: 10000;
    box-shadow: 0 4px 16px rgba(0,0,0,0.15);
    opacity: 0;
    visibility: hidden;
    transform: translateX(-10px) scale(0.96);
    transition: all 0.2s ease;
    transform-origin: bottom left;
}

.gtranslate_float_modal.opacity-100,
.gtranslate_float_modal.visible,
.gtranslate_float_modal.translate-y-0,
.gtranslate_float_modal.scale-100 {
    opacity: 1;
    visibility: visible;
    transform: translateX(0) scale(1);
}

.svg-icon {
    display: inline-block;
    width: 1em;
    height: 1em;
    stroke-width: 0;
    stroke: currentColor;
    fill: currentColor;
}

.icon-inherit,
.icon-current {
    stroke: currentColor;
    fill: currentColor;
}

.text-gold svg,
.text-gold-light svg,
.text-gold-dark svg,
.text-gold .svg-icon,
.text-gold-light .svg-icon,
.text-gold-dark .svg-icon {
    fill: currentColor;
    stroke: none;
}

.text-dark svg,
.text-dark\/50 svg,
.text-dark\/60 svg,
.text-dark\/70 svg,
.text-dark\/80 svg {
    fill: currentColor;
    stroke: none;
}

.text-white svg,
.text-white\/40 svg,
.text-white\/50 svg,
.text-white\/60 svg,
.text-white\/70 svg,
.text-white\/80 svg {
    fill: currentColor;
    stroke: none;
}

.text-gray-300 svg,
.text-gray-400 svg,
.text-gray-500 svg,
.text-gray-600 svg,
.text-gray-700 svg,
.text-gray-800 svg {
    fill: currentColor;
    stroke: none;
}

.text-red-500 svg,
.text-red-600 svg {
    fill: currentColor;
}

.text-green-500 svg,
.text-green-600 svg {
    fill: currentColor;
}

.text-yellow-300 svg,
.text-yellow-700 svg {
    fill: currentColor;
}

.text-blue-500 svg {
    fill: currentColor;
}

.text-pink-500 svg {
    fill: currentColor;
}

.text-orange-500 svg {
    fill: currentColor;
}

button svg,
a svg,
.btn svg {
    pointer-events: none;
    flex-shrink: 0;
}

button svg + span,
a svg + span,
.btn svg + span,
button span + svg,
a span + svg,
.btn span + svg {
    margin-left: 0.25rem;
}

* svg {
    color: inherit;
}

svg:not([fill]) {
    fill: currentColor;
}

svg:not([stroke]) {
    stroke: currentColor;
}

header {
    position: relative;
}

header::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 100%;
    height: 3px;
    background: linear-gradient(90deg,
        transparent 0%,
        #C6A43F 15%,
        #D4B65C 30%,
        #C6A43F 45%,
        #D4B65C 60%,
        #C6A43F 75%,
        #D4B65C 85%,
        transparent 100%);
    background-size: 200% 100%;
    animation: waveMove 4s ease-in-out infinite;
    opacity: 0.6;
}

@keyframes waveMove {
    0% {
        background-position: 0% 0%;
    }
    50% {
        background-position: 100% 0%;
    }
    100% {
        background-position: 0% 0%;
    }
}

.menu-item {
    position: relative;
    overflow: hidden;
}

.menu-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(198, 164, 63, 0.2), transparent);
    transition: left 0.5s ease;
}

.menu-item:hover::before {
    left: 100%;
}

.floating-buttons-left {
    position: fixed;
    bottom: 20px;
    left: 16px;
    z-index: 9999;
    display: flex;
    flex-direction: column-reverse;
    gap: 12px;
    pointer-events: none;
}

.floating-buttons-left .floating-btn-left {
    pointer-events: auto;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 10px rgba(0,0,0,0.15);
    transition: all 0.3s ease;
    cursor: pointer;
    border: none;
}

.floating-buttons-left .translate-btn {
    background: linear-gradient(135deg, #C6A43F, #A8882E);
}

.floating-buttons-left .translate-btn svg {
    width: 18px;
    height: 18px;
    color: white;
}

.floating-buttons-left .translate-btn:hover {
    transform: scale(1.05);
    box-shadow: 0 4px 14px rgba(0,0,0,0.2);
}

.floating-buttons-right {
    position: fixed;
    bottom: 20px;
    right: 16px;
    z-index: 9999;
    display: flex;
    flex-direction: column-reverse;
    gap: 12px;
    pointer-events: none;
}

.floating-buttons-right .floating-btn-right {
    pointer-events: auto;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 10px rgba(0,0,0,0.15);
    transition: all 0.3s ease;
    cursor: pointer;
    border: none;
}

.floating-buttons-right .back-to-top-btn {
    background-color: #C6A43F;
    color: #0A0A0A;
    opacity: 0;
    visibility: hidden;
    transform: translateY(20px);
}

.floating-buttons-right .back-to-top-btn.visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.floating-buttons-right .back-to-top-btn:hover {
    background-color: #D4B65C;
    transform: scale(1.05);
}

.floating-buttons-right .whatsapp-btn {
    background-color: #25D366;
    color: white;
}

.floating-buttons-right .whatsapp-btn:hover {
    background-color: #128C7E;
    transform: scale(1.05);
}

.floating-buttons-right .floating-btn-right svg {
    width: 18px;
    height: 18px;
}

.global-help-btn {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: #C6A43F;
    box-shadow: 0 2px 10px rgba(0,0,0,0.15);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    border: none;
    position: relative;
    padding: 0;
}

.global-help-btn svg {
    width: 18px;
    height: 18px;
    margin: 0 !important;
    display: block;
    flex-shrink: 0;
    color: white;
}

.global-help-btn svg use {
    pointer-events: none;
}

.global-help-btn .help-tooltip {
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    margin-bottom: 8px;
    padding: 4px 8px;
    background-color: #0A0A0A;
    color: white;
    font-size: 10px;
    border-radius: 6px;
    white-space: nowrap;
    opacity: 0;
    visibility: hidden;
    transition: all 0.2s ease;
    pointer-events: none;
}

.global-help-btn:hover {
    transform: scale(1.05);
    background-color: #D4B65C;
    box-shadow: 0 4px 14px rgba(0,0,0,0.2);
}

.global-help-btn:hover .help-tooltip {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(-2px);
}

.floating-buttons-left .global-help-btn {
    pointer-events: auto;
}

@media (max-width: 640px) {
    .floating-buttons-left {
        bottom: 16px;
        left: 12px;
        gap: 10px;
    }
    .floating-buttons-left .floating-btn-left {
        width: 36px;
        height: 36px;
    }
    .floating-buttons-left .floating-btn-left svg {
        width: 16px;
        height: 16px;
    }
    .floating-buttons-right {
        bottom: 16px;
        right: 12px;
        gap: 10px;
    }
    .floating-buttons-right .floating-btn-right {
        width: 36px;
        height: 36px;
    }
    .floating-buttons-right .floating-btn-right svg {
        width: 16px;
        height: 16px;
    }
    .global-help-btn {
        width: 36px;
        height: 36px;
    }
    .global-help-btn svg {
        width: 16px;
        height: 16px;
    }
    .gtranslate_float_modal {
        bottom: 16px;
        left: 55px;
    }
}

.gtranslate_wrapper .gt_switcher {
    border-radius: 10px !important;
    overflow: hidden !important;
    background: #2a2a2a !important;
}

.gtranslate_wrapper .gt_switcher .gt_selected a {
    background: #2a2a2a !important;
    color: #e2d8b3 !important;
    padding: 8px 12px !important;
    font-weight: 500 !important;
    font-size: 12px !important;
    border: none !important;
}

.gtranslate_wrapper .gt_switcher .gt_selected a:hover {
    background: #3a3a3a !important;
}

.gtranslate_wrapper .gt_switcher .gt_options {
    background: #2a2a2a !important;
    border-radius: 0 0 10px 10px !important;
}

.gtranslate_wrapper .gt_switcher .gt_options a {
    background: #2a2a2a !important;
    color: #e2d8b3 !important;
    padding: 6px 12px !important;
    font-size: 11px !important;
    border-bottom: 1px solid #3a3a3a !important;
}

.gtranslate_wrapper .gt_switcher .gt_options a:hover {
    background: #C6A43F !important;
    color: #0A0A0A !important;
}

.gallery-item { cursor: pointer; }
.thumbnail-item { transition: all 0.2s ease; width: 60px; height: 80px; }
.thumbnail-item.active { border-color: #C6A43F; transform: scale(1.05); box-shadow: 0 0 10px rgba(198,164,63,0.5); }
.thumbnail-item:hover { transform: scale(1.02); border-color: #C6A43F; }
.scrollbar-thin::-webkit-scrollbar { height: 4px; }
.scrollbar-thin::-webkit-scrollbar-track { background: rgba(255,255,255,0.1); border-radius: 4px; }
.scrollbar-thin::-webkit-scrollbar-thumb { background: #C6A43F; border-radius: 4px; }
.fade-in { animation: fadeIn 0.3s ease forwards; }
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
.shake { animation: shake 0.5s ease; }
@keyframes shake { 0%,100%{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)} }

.fade-on-scroll {
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.6s ease;
}

.fade-on-scroll.visible {
    opacity: 1;
    transform: translateY(0);
}

.zoom-on-scroll {
    opacity: 0;
    transform: scale(0.95);
    transition: all 0.6s ease;
}

.zoom-on-scroll.visible {
    opacity: 1;
    transform: scale(1);
}

.reveal-text {
    opacity: 0;
    transform: translateY(20px);
    animation: revealText 0.8s ease forwards;
}

@keyframes revealText {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.hero-title, .hero-description, .hero-buttons, .hero-stats, .hero-image-wrapper {
    opacity: 0;
    transform: translateY(30px);
}

.hero-title { animation: fadeUp 0.8s ease 0.1s forwards; }
.hero-description { animation: fadeUp 0.8s ease 0.3s forwards; }
.hero-buttons { animation: fadeUp 0.8s ease 0.6s forwards; }
.hero-stats { animation: fadeUp 0.8s ease 0.9s forwards; }
.hero-image-wrapper { animation: fadeRight 1s ease 0.2s forwards; }

@keyframes fadeUp {
    to { opacity: 1; transform: translateY(0); }
}

@keyframes fadeRight {
    to { opacity: 1; transform: translateX(0); }
}

.floating {
    animation: floating 3s ease-in-out infinite;
}

@keyframes floating {
    0% { transform: translateY(0px); }
    50% { transform: translateY(-15px); }
    100% { transform: translateY(0px); }
}

.scroll-progress {
    position: fixed;
    top: 0;
    left: 0;
    width: 0%;
    height: 3px;
    background: linear-gradient(90deg, var(--gold), var(--gold-light));
    z-index: 10000;
    transition: width 0.1s ease;
}

.hero-badge, .stat-card, .product-card, .contact-card, .faq-item {
    transition: all 0.3s ease;
}

.hero-badge:hover, .stat-card:hover, .product-card:hover, .contact-card:hover, .faq-item:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 25px -5px rgba(0,0,0,0.1);
}

.stat-card {
    transition: all 0.3s ease;
}

.stat-card:hover {
    transform: translateY(-5px);
}

.parallax {
    transition: transform 0.1s ease;
}

.custom-checkbox {
    transition: all 0.2s ease;
}

.custom-checkbox.checked {
    background-color: #C6A43F;
    border-color: #C6A43F;
}

.custom-checkbox.checked svg {
    display: block !important;
    color: white;
}

.wishlist-item {
    transition: opacity 0.3s ease, transform 0.3s ease;
}