:root {--primary: #8b0000;--primary-light: #a51d1d;--secondary: #c5a059;--accent: #f8f1e6;--dark: #121212;--text: #1a1a1a;--text-muted: #666;--white: #ffffff;--transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);--shadow: 0 10px 30px rgba(0, 0, 0, 0.1);}@keyframes pulse {0% {transform: scale(1);box-shadow: 0 0 0 0 rgba(139, 0, 0, 0.7);}70% {transform: scale(1.05);box-shadow: 0 0 0 10px rgba(139, 0, 0, 0);}100% {transform: scale(1);box-shadow: 0 0 0 0 rgba(139, 0, 0, 0);}}* {margin: 0;padding: 0;box-sizing: border-box;}html {scroll-behavior: smooth;}body {font-family: 'Inter', sans-serif;color: var(--text);background-color: var(--accent);line-height: 1.6;overflow-x: hidden;}h1,h2,h3,h4 {font-family: 'Playfair Display', serif;}a {text-decoration: none;color: inherit;transition: var(--transition);}ul {list-style: none;}img,video {max-width: 100%;}.container {width: 100%;max-width: 1200px;margin: 0 auto;padding: 0 2rem;}.btn {display: inline-block;padding: 1rem 2rem;border-radius: 50px;font-weight: 600;text-transform: uppercase;letter-spacing: 1px;font-size: 0.875rem;cursor: pointer;border: none;transition: var(--transition);}.btn-primary {background-color: var(--primary);color: var(--white);}.btn-primary:hover {background-color: var(--primary-light);transform: translateY(-3px) scale(1.02);box-shadow: 0 10px 20px rgba(139, 0, 0, 0.4);}.nav-cta .btn-primary {animation: pulse 2s infinite;}.btn-outline {background: transparent;border: 2px solid var(--primary);color: var(--primary);}.btn-outline:hover {background: var(--primary);color: var(--white);}.slider-section {position: relative;height: 100vh;width: 100%;overflow: hidden;}.slider-container {position: relative;height: 100%;width: 100%;}.hero-slide {position: absolute;top: 0;left: 0;width: 100%;height: 100%;opacity: 0;transition: opacity 1s ease-in-out;visibility: hidden;}.hero-slide.active {opacity: 1;visibility: visible;}.hero-slide img,.hero-slide video {position: absolute;top: 0;left: 0;width: 100%;height: 100%;object-fit: cover;z-index: 0;}.hero-overlay {position: absolute;top: 0;left: 0;width: 100%;height: 100%;background: linear-gradient(to bottom, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.6) 100%);z-index: 1;}.hero-content {position: absolute !important;top: 50% !important;left: 50% !important;transform: translate(-50%, -50%) !important;z-index: 10 !important;text-align: center;color: var(--white);width: 90%;max-width: 800px;display: block !important;visibility: visible !important;opacity: 1 !important;}.hero-content h1 {font-size: clamp(2.5rem, 8vw, 5.5rem);margin-bottom: 2rem;line-height: 1.1;font-weight: 700;text-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);}.text-accent {color: #c5a059;}.hero-content p {font-size: 1.35rem;margin-bottom: 3rem;max-width: 700px;margin-left: auto;margin-right: auto;opacity: 0.95;text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);font-weight: 400;}.hero-btns {display: flex;gap: 1.5rem;justify-content: center;}.hero-btns .btn-primary {background: #8b0000;border-color: #8b0000;}.hero-btns .btn-outline {border: 2px solid white !important;background: rgba(255, 255, 255, 0.1);backdrop-filter: blur(5px);}header {position: fixed;top: 0;left: 0;width: 100%;z-index: 1000;padding: 1.5rem 0;transition: var(--transition);}header.scrolled {background: rgba(0, 0, 0, 0.95);backdrop-filter: blur(15px);padding: 1rem 0;box-shadow: 0 5px 25px rgba(0, 0, 0, 0.3);}header.scrolled .nav-links li a {color: var(--white);}header.scrolled .nav-links li a:hover {color: var(--secondary);}header.scrolled .mobile-menu-btn {color: var(--white);}nav {display: flex;justify-content: space-between;align-items: center;}.logo img {height: 60px;transition: var(--transition);}header.scrolled .logo img {height: 45px;}.nav-links {display: flex;gap: 2.5rem;align-items: center;}.nav-links li a {font-weight: 500;font-size: 0.9rem;text-transform: uppercase;letter-spacing: 0.5px;color: var(--white);}.nav-links li a:hover {color: var(--primary);}.nav-cta {display: flex;align-items: center;}.mobile-menu-btn {display: none;font-size: 1.5rem;cursor: pointer;}.hero {display: none;}@keyframes fadeInUp {from {opacity: 0;transform: translateY(30px);}to {opacity: 1;transform: translateY(0);}}.hero h1 {font-size: clamp(3.5rem, 10vw, 7rem);margin-bottom: 1.5rem;line-height: 1;text-shadow: 2px 2px 20px rgba(0, 0, 0, 0.8);font-weight: 700;}.hero p {font-size: 1.25rem;margin-bottom: 2.5rem;max-width: 650px;margin-left: auto;margin-right: auto;font-weight: 300;opacity: 0.95;text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.5);}.hero-btns {display: flex;justify-content: center;gap: 1.5rem;}.scroll-indicator {position: absolute;bottom: 40px;left: 50%;transform: translateX(-50%);animation: bounce 2s infinite;font-size: 1.5rem;color: var(--white);opacity: 0.8;cursor: pointer;z-index: 1;display: flex;flex-direction: column;align-items: center;gap: 0.5rem;}.scroll-indicator span {font-size: 0.75rem;text-transform: uppercase;letter-spacing: 2px;}@keyframes bounce {0%,20%,50%,80%,100% {transform: translateX(-50%) translateY(0);}40% {transform: translateX(-50%) translateY(-10px);}60% {transform: translateX(-50%) translateY(-5px);}}.about {padding: 100px 0;background: var(--white);}.about-grid {display: grid;grid-template-columns: 1fr 1fr;gap: 4rem;align-items: center;}.about-text h2 {font-size: 3rem;color: var(--primary);margin-bottom: 1.5rem;}.about-text p {margin-bottom: 1.5rem;color: var(--text-muted);}.about-img {position: relative;border-radius: 20px;overflow: hidden;box-shadow: var(--shadow);}.about-img img {display: block;width: 100%;height: 500px;object-fit: cover;}.menu-section {padding: 100px 0;background: var(--accent);}.section-title {text-align: center;margin-bottom: 4rem;}.section-title h2 {font-size: 3.5rem;color: var(--primary);}.section-title p {color: var(--text-muted);font-style: italic;}.menu-tabs {display: flex;justify-content: center;gap: 1rem;margin-bottom: 3rem;flex-wrap: wrap;}.tab-btn {padding: 0.75rem 2rem;border-radius: 30px;background: var(--white);border: 1px solid #ddd;cursor: pointer;font-weight: 600;transition: var(--transition);}.tab-btn.active {background: var(--primary);color: var(--white);border-color: var(--primary);}.menu-grid {display: grid;grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));gap: 2rem;}.menu-item {background: var(--white);border-radius: 15px;overflow: hidden;box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);transition: var(--transition);}.menu-item:hover {transform: translateY(-10px);box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);}.menu-item-img {height: 200px;overflow: hidden;cursor: pointer;}.menu-item-img img {width: 100%;height: 100%;object-fit: cover;transition: var(--transition);}.menu-item:hover .menu-item-img img {transform: scale(1.1);}.menu-item-content {padding: 1.5rem;}.menu-item-header {display: flex;justify-content: space-between;align-items: flex-start;margin-bottom: 0.5rem;}.menu-item-header h3 {font-size: 1.25rem;color: var(--primary);}.menu-item-price {font-weight: 700;color: var(--secondary);font-size: 1.1rem;}.menu-item-content p {font-size: 0.875rem;color: var(--text-muted);}.gallery {padding: 100px 0;background: var(--white);}.gallery-grid {display: grid;grid-template-columns: repeat(4, 1fr);grid-auto-rows: 250px;gap: 1rem;}.gallery-item {position: relative;overflow: hidden;border-radius: 10px;cursor: pointer;}.gallery-item img {width: 100%;height: 100%;object-fit: cover;transition: var(--transition);}.gallery-item:hover img {transform: scale(1.1);}.gallery-item:nth-child(1) {grid-column: span 2;grid-row: span 2;}.gallery-item:nth-child(5) {grid-column: span 2;grid-row: span 1;}.contact {padding: 100px 0;background: var(--dark);color: var(--white);}.contact-grid {display: grid;grid-template-columns: 1fr 1fr;gap: 4rem;}.contact-info h2 {font-size: 3rem;margin-bottom: 2rem;color: var(--secondary);}.info-item {display: flex;gap: 1.5rem;margin-bottom: 2rem;}.info-item i {font-size: 1.5rem;color: var(--secondary);}.contact-map {border-radius: 20px;overflow: hidden;height: 400px;}footer {padding: 60px 0 30px;background: #0a0a0a;color: var(--white);text-align: center;}.footer-logo img {height: 80px;margin-bottom: 2rem;}.social-links {display: flex;justify-content: center;gap: 1.5rem;margin-bottom: 2rem;}.social-links a {width: 45px;height: 45px;border-radius: 50%;border: 1px solid rgba(255, 255, 255, 0.2);display: flex;align-items: center;justify-content: center;font-size: 1.25rem;}.social-links a:hover {background: var(--primary);border-color: var(--primary);}.copyright {padding-top: 30px;border-top: 1px solid rgba(255, 255, 255, 0.1);font-size: 0.875rem;color: #888;}@media (max-width: 992px) {.nav-links {display: none;}.mobile-menu-btn {display: block;}.about-grid,.contact-grid {grid-template-columns: 1fr;gap: 2rem;}.gallery-grid {grid-template-columns: repeat(2, 1fr);}}@media (max-width: 768px) {.section-title h2 {font-size: 2.5rem;}.hero h1 {font-size: 3.5rem;}.about-text h2 {font-size: 2.2rem;}}.mobile-nav {position: fixed;top: 0;right: -100%;width: 300px;height: 100vh;background: var(--white);z-index: 1001;padding: 4rem 2rem;transition: 0.5s ease-in-out;box-shadow: -10px 0 30px rgba(0, 0, 0, 0.1);}.mobile-nav.active {right: 0;}.mobile-nav ul li {margin-bottom: 2rem;}.mobile-nav ul li a {font-size: 1.5rem;color: var(--text);font-family: 'Playfair Display', serif;}.overlay {position: fixed;top: 0;left: 0;width: 100%;height: 100vh;background: rgba(0, 0, 0, 0.5);z-index: 1000;display: none;}.overlay.active {display: block;}.instagram-section {padding: 100px 0;background: var(--white);text-align: center;}.instagram-grid {display: grid;grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));gap: 15px;margin-top: 3rem;}.instagram-item {aspect-ratio: 1/1;overflow: hidden;position: relative;border-radius: 12px;cursor: pointer;}.instagram-item img {width: 100%;height: 100%;object-fit: cover;transition: var(--transition);}.instagram-item::after {content: '\f16d';font-family: 'Font Awesome 6 Brands';position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);font-size: 2rem;color: white;opacity: 0;transition: var(--transition);z-index: 2;}.instagram-item:hover img {transform: scale(1.1);filter: brightness(0.7);}.instagram-item:hover::after {opacity: 1;}.lightbox {position: fixed;top: 0;left: 0;width: 100%;height: 100%;background: rgba(0, 0, 0, 0.92);z-index: 2000;display: none;align-items: center;justify-content: center;cursor: zoom-out;}.lightbox.active {display: flex;}.lightbox-img {max-width: 90%;max-height: 90%;object-fit: contain;border-radius: 10px;box-shadow: 0 0 30px rgba(0, 0, 0, 0.5);transform: scale(0.9);transition: transform 0.3s ease-out;}.lightbox.active .lightbox-img {transform: scale(1);}.lightbox-close {position: absolute;top: 30px;right: 30px;color: white;font-size: 2.5rem;cursor: pointer;}img {-webkit-user-drag: none;-khtml-user-drag: none;-moz-user-drag: none;-o-user-drag: none;user-select: none;}#preloader {position: fixed;top: 0;left: 0;width: 100%;height: 100%;background: var(--dark);display: flex;justify-content: center;align-items: center;z-index: 9999;transition: opacity 0.5s ease;}.loader-content {text-align: center;}.loader-logo {height: 100px;margin-bottom: 20px;animation: pulse 2s infinite;}.loader-bar {width: 200px;height: 2px;background: rgba(255, 255, 255, 0.1);position: relative;overflow: hidden;margin: 0 auto;}.loader-bar::after {content: '';position: absolute;top: 0;left: -100%;width: 100%;height: 100%;background: var(--secondary);animation: loading 1.5s infinite ease-in-out;}@keyframes loading {0% {left: -100%;}100% {left: 100%;}}.fade-out {opacity: 0;pointer-events: none;}.reviews-section {padding: 100px 0;background: #fdfdfd;}.reviews-grid {display: grid;grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));gap: 2rem;}.review-card {background: var(--white);padding: 2rem;border-radius: 15px;box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);border: 1px solid #eee;transition: var(--transition);}.review-card:hover {transform: translateY(-5px);box-shadow: 0 15px 40px rgba(0, 0, 0, 0.08);}.review-rating {color: #ffc107;margin-bottom: 1rem;font-size: 1.1rem;}.review-text {font-style: italic;color: var(--text-muted);margin-bottom: 1.5rem;line-height: 1.6;}.review-footer {display: flex;align-items: center;gap: 1rem;border-top: 1px solid #f0f0f0;padding-top: 1rem;}.review-author h4 {font-size: 1rem;color: var(--primary);margin-bottom: 2px;}.review-source {font-size: 0.75rem;color: #999;}.google-review-badge {margin-left: auto;color: #4285F4;font-size: 1.2rem;}.review-author-img {width: 45px;height: 45px;border-radius: 50%;object-fit: cover;background: #f0f0f0;}.review-author-img.default {display: flex;align-items: center;justify-content: center;color: #999;}.reservation-section {position: relative;padding: 60px 0;color: var(--white);background: url('images/_DSC2697.webp') no-repeat center top/cover fixed;overflow: hidden;}.reservation-overlay {position: absolute;top: 0;left: 0;width: 100%;height: 100%;background: rgba(10, 24, 46, 0.85);z-index: 1;}.reservation-content {position: relative;z-index: 2;display: flex;justify-content: space-between;align-items: center;gap: 2rem;flex-wrap: wrap;}.reservation-left {flex: 1;min-width: 300px;}.reservation-left p {font-size: 1.5rem;font-style: italic;font-weight: 300;opacity: 0.9;margin: 0;}.reservation-right {text-align: right;min-width: 250px;}.reservation-right h2 {font-size: 2rem;margin-bottom: 0.5rem;font-weight: 700;color: var(--white);}.reservation-phones {display: flex;flex-direction: column;gap: 0.5rem;}.res-phone {font-size: 1.8rem;font-weight: 600;color: var(--secondary);text-decoration: none;transition: var(--transition);}.res-phone:hover {color: var(--white);}@media (max-width: 768px) {.reservation-content {flex-direction: column;text-align: center;}.reservation-right {text-align: center;}}.blog-card {background: var(--accent);border-radius: 15px;overflow: hidden;box-shadow: var(--shadow);transition: var(--transition);display: flex;flex-direction: column;}.blog-card:hover {transform: translateY(-10px);}.blog-card-img {height: 220px;overflow: hidden;}.blog-card-img img {width: 100%;height: 100%;object-fit: cover;transition: var(--transition);}.blog-card:hover .blog-card-img img {transform: scale(1.1);}.blog-card-content {padding: 2rem;flex-grow: 1;display: flex;flex-direction: column;}.blog-card-tag {display: inline-block;padding: 0.25rem 0.75rem;background: var(--primary);color: white;border-radius: 20px;font-size: 0.75rem;text-transform: uppercase;margin-bottom: 1rem;align-self: flex-start;}.blog-card h3 {font-size: 1.5rem;margin-bottom: 1rem;color: var(--primary);}.blog-card p {color: var(--text-muted);font-size: 0.9rem;margin-bottom: 1.5rem;flex-grow: 1;}.blog-card-footer {display: flex;justify-content: space-between;align-items: center;border-top: 1px solid rgba(0, 0, 0, 0.05);padding-top: 1rem;font-size: 0.8rem;color: #999;}