@font-face{font-family:'Open Sans';font-style:normal;font-weight:300 700;font-stretch:100%;font-display:swap;src:url('../fonts/open-sans-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'Playfair Display';font-style:normal;font-weight:400 700;font-display:swap;src:url('../fonts/playfair-display-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'Playfair Display';font-style:italic;font-weight:400 500;font-display:swap;src:url('../fonts/playfair-display-italic-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--clr-primary:#1B3A4B;--clr-primary-light:#2A5468;--clr-accent:#C8963E;--clr-accent-hover:#B5832F;--clr-accent-light:#D4A854;--clr-dark:#2D2D2D;--clr-dark-section:#1E1E1E;--clr-light:#F5F5F0;--clr-white:#FFFFFF;--clr-grey:#666666;--clr-grey-light:#999999;--clr-light-grey:#EEEEEE;--clr-overlay:rgba(29,29,29,0.7);--clr-overlay-gold:rgba(200,150,62,0.15);--font-heading:'Playfair Display',Georgia,'Times New Roman',serif;--font-body:'Open Sans','Segoe UI',Arial,sans-serif;--section-py:100px;--section-py-sm:60px;--transition-fast:all 0.2s ease;--transition:all 0.3s ease;--transition-slow:all 0.5s ease;--shadow-sm:0 2px 8px rgba(0,0,0,0.08);--shadow-md:0 4px 16px rgba(0,0,0,0.12);--shadow-lg:0 8px 32px rgba(0,0,0,0.18);--shadow-card:0 2px 12px rgba(0,0,0,0.08);--radius-sm:4px;--radius-md:8px}.skip-link{position:absolute;top:-100px;left:10px;z-index:10000;padding:12px 24px;background:var(--clr-accent);color:var(--clr-white);font-weight:600;text-decoration:none;border-radius:0 0 var(--radius-md) var(--radius-md);transition:top 0.2s ease}.skip-link:focus{top:0}:focus-visible{outline:3px solid var(--clr-accent);outline-offset:2px}:focus:not(:focus-visible){outline:none}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);font-size:16px;line-height:1.7;color:var(--clr-dark);background-color:var(--clr-white);overflow-x:hidden}h1,h2,h3{font-family:var(--font-heading);font-weight:600;line-height:1.3}h1{font-size:52px}h2{font-size:36px}h3{font-size:24px}p{margin-bottom:1rem;color:var(--clr-grey)}a{color:var(--clr-accent);transition:var(--transition-fast)}a:hover{color:var(--clr-accent-hover)}.section-header{text-align:center;margin-bottom:50px}.section-header h2{color:var(--clr-dark);margin-bottom:5px;font-weight:700;text-transform:uppercase;letter-spacing:1px}.section-header .subtitle{font-family:var(--font-body);font-size:16px;font-weight:600;color:var(--clr-accent);text-transform:uppercase;letter-spacing:3px;margin-bottom:20px}.section-header .divider{width:60px;height:2px;background:var(--clr-accent);margin:20px auto 0}.section-header .divider.divider-left{margin-left:0;margin-right:auto}.section-header-light h2{color:var(--clr-white)}.section-header-light .subtitle{color:var(--clr-accent-light)}.btn-accent{display:inline-block;padding:14px 36px;background-color:var(--clr-accent);color:var(--clr-white);font-family:var(--font-body);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:2px;text-decoration:none;border:2px solid var(--clr-accent);transition:var(--transition);cursor:pointer}.btn-accent:hover{background-color:var(--clr-accent-hover);border-color:var(--clr-accent-hover);color:var(--clr-white);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-outline-light{display:inline-block;padding:14px 36px;background-color:transparent;color:var(--clr-white);font-family:var(--font-body);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:2px;text-decoration:none;border:2px solid var(--clr-white);transition:var(--transition)}.btn-outline-light:hover{background-color:var(--clr-white);color:var(--clr-dark)}.btn-outline-accent{display:inline-block;padding:12px 30px;background-color:transparent;color:var(--clr-accent);font-family:var(--font-body);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:2px;text-decoration:none;border:2px solid var(--clr-accent);transition:var(--transition)}.btn-outline-accent:hover{background-color:var(--clr-accent);color:var(--clr-white)}.btn-primary-custom{display:inline-block;padding:14px 36px;background-color:var(--clr-accent);color:var(--clr-white);font-family:var(--font-body);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:2px;text-decoration:none;border:2px solid var(--clr-accent);transition:var(--transition);cursor:pointer}.btn-primary-custom:hover{background-color:var(--clr-accent-hover);border-color:var(--clr-accent-hover);color:var(--clr-white);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-outline-dark{display:inline-block;padding:14px 36px;background-color:transparent;color:var(--clr-dark);font-family:var(--font-body);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:2px;text-decoration:none;border:2px solid var(--clr-dark);transition:var(--transition)}.btn-outline-dark:hover{background-color:var(--clr-dark);color:var(--clr-white)}.site-nav{position:fixed;top:0;left:0;width:100%;z-index:1000;padding:20px 0;transition:var(--transition);background:transparent}.site-nav.scrolled{background:var(--clr-primary);padding:12px 0;box-shadow:var(--shadow-md)}.site-nav .nav-brand{font-family:var(--font-heading);font-size:24px;font-weight:700;color:var(--clr-accent);text-decoration:none;letter-spacing:1px}.site-nav .nav-links{list-style:none;display:flex;gap:30px;margin:0;padding:0;align-items:center}.site-nav .nav-links a{color:var(--clr-white);text-decoration:none;font-size:14px;font-weight:500;text-transform:uppercase;letter-spacing:1.5px;position:relative;padding-bottom:4px;transition:var(--transition-fast)}.site-nav .nav-links a::after{content:'';position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--clr-accent);transition:var(--transition)}.site-nav .nav-links a:hover::after,.site-nav .nav-links a.active::after{width:100%}.site-nav .nav-links a:hover{color:var(--clr-accent)}.nav-btn-reserve{padding:10px 24px !important;font-size:12px !important}.nav-btn-reserve::after{display:none !important}.nav-toggle{display:none;background:none;border:none;color:var(--clr-white);font-size:28px;cursor:pointer}.hero-section{position:relative;height:100vh;min-height:600px;overflow:hidden}.hero-slide{position:relative;height:100vh;min-height:600px;background-size:cover;background-position:center}.hero-slide::before{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,0.4) 0%,rgba(0,0,0,0.2) 40%,rgba(0,0,0,0.5) 100%);z-index:1}.hero-content{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;z-index:2;padding:0 20px}.hero-icon{color:var(--clr-accent);font-size:48px;margin-bottom:20px}.hero-content h1{color:var(--clr-white);font-size:56px;font-weight:700;text-transform:uppercase;letter-spacing:4px;margin-bottom:10px;text-shadow:2px 2px 8px rgba(0,0,0,0.4)}.hero-content .hero-subtitle{color:var(--clr-white);font-family:var(--font-body);font-size:18px;font-weight:300;letter-spacing:6px;text-transform:uppercase;margin-bottom:35px}.hero-content .btn-outline-light{border-width:2px}.hero-section .swiper-button-next,.hero-section .swiper-button-prev{color:var(--clr-white);opacity:0.7;transition:var(--transition)}.hero-section .swiper-button-next:hover,.hero-section .swiper-button-prev:hover{opacity:1;color:var(--clr-accent)}.welcome-section{padding:var(--section-py) 0;background-color:var(--clr-light)}.welcome-section .intro-text{max-width:750px;margin:0 auto 50px;text-align:center;font-size:16px;line-height:1.8;color:var(--clr-grey)}.welcome-card{text-align:center;padding:30px 20px;transition:var(--transition)}.welcome-card:hover{transform:translateY(-5px)}.welcome-card img{width:100%;height:220px;object-fit:cover;margin-bottom:25px;box-shadow:var(--shadow-sm)}.welcome-card h3{font-family:var(--font-heading);font-size:20px;font-weight:600;color:var(--clr-dark);margin-bottom:12px;text-transform:uppercase;letter-spacing:1px}.welcome-card p{font-size:14px;line-height:1.7;color:var(--clr-grey)}.offers-section{padding:var(--section-py) 0;background-color:var(--clr-dark-section);position:relative}.offers-section::before{content:'';position:absolute;inset:0;background:var(--clr-overlay-gold);pointer-events:none}.offer-card{background:rgba(255,255,255,0.05);border:1px solid rgba(200,150,62,0.2);text-align:center;transition:var(--transition);position:relative;overflow:hidden;height:100%;display:flex;flex-direction:column}.offer-card:not(.has-image){padding:35px 30px}.offer-card.has-image .offer-body{padding:25px 30px 35px}.offer-image{width:100%;height:200px;overflow:hidden}.offer-image img{width:100%;height:100%;object-fit:cover;transition:transform 0.4s ease}.offer-card:hover .offer-image img{transform:scale(1.05)}.offer-card::before{content:'';position:absolute;top:0;left:0;width:100%;height:3px;background:var(--clr-accent);transform:scaleX(0);transition:var(--transition);z-index:1}.offer-card:hover::before{transform:scaleX(1)}.offer-card:hover{background:rgba(255,255,255,0.08);transform:translateY(-5px);box-shadow:0 8px 24px rgba(0,0,0,0.3)}.offer-card .offer-weekday{display:inline-block;padding:4px 16px;background:var(--clr-accent);color:var(--clr-white);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:2px;margin-bottom:20px}.offer-card h3{color:var(--clr-white);font-size:22px;margin-bottom:12px}.offer-card p{color:var(--clr-grey-light);font-size:15px;line-height:1.6;margin-bottom:20px}.offer-card .offer-price{font-family:var(--font-heading);font-size:28px;font-weight:700;color:var(--clr-accent)}.offer-card .offer-price small{font-size:14px;font-weight:400;color:var(--clr-grey-light)}.parallax-divider{height:400px;background-attachment:fixed;background-size:cover;background-position:center;position:relative;display:flex;align-items:center;justify-content:center}.parallax-divider::before{content:'';position:absolute;inset:0;background:var(--clr-overlay)}.parallax-divider .parallax-content{position:relative;z-index:2;text-align:center;color:var(--clr-white)}.parallax-divider .parallax-content h2{font-size:42px;font-weight:700;color:var(--clr-white);text-transform:uppercase;letter-spacing:3px;font-style:italic}.parallax-divider .parallax-content p{color:var(--clr-accent-light);font-size:14px;letter-spacing:4px;text-transform:uppercase;margin-top:10px}.rooms-section{padding:var(--section-py) 0;background:var(--clr-white)}.room-card{text-align:center;margin-bottom:30px;transition:var(--transition)}.room-card:hover{transform:translateY(-5px)}.room-card .room-icon{width:90px;height:90px;border-radius:50%;border:2px solid var(--clr-primary);display:flex;align-items:center;justify-content:center;margin:0 auto 20px;font-size:32px;color:var(--clr-primary);transition:var(--transition)}.room-card:hover .room-icon{background:var(--clr-primary);color:var(--clr-white)}.room-card h3{font-size:18px;font-weight:600;color:var(--clr-dark);text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}.room-card .room-capacity{font-size:14px;color:var(--clr-accent);font-weight:600;margin-bottom:12px}.room-card p{font-size:14px;color:var(--clr-grey);line-height:1.6}.counter-section{padding:80px 0;background:var(--clr-primary);position:relative}.counter-item{text-align:center;padding:20px}.counter-item .counter-icon{font-size:40px;color:var(--clr-accent);margin-bottom:15px}.counter-item .counter-number{font-family:var(--font-heading);font-size:52px;font-weight:700;color:var(--clr-white);line-height:1;margin-bottom:10px}.counter-item .counter-number span{font-size:32px}.counter-item .counter-label{font-size:13px;font-weight:600;color:rgba(255,255,255,0.7);text-transform:uppercase;letter-spacing:2px}.gallery-section{padding:var(--section-py) 0;background:var(--clr-light)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.gallery-grid .gallery-item{position:relative;overflow:hidden;aspect-ratio:4/3;cursor:pointer}.gallery-grid .gallery-item img{width:100%;height:100%;object-fit:cover;transition:var(--transition-slow)}.gallery-grid .gallery-item::after{content:'';position:absolute;inset:0;background:rgba(200,150,62,0.0);transition:var(--transition)}.gallery-grid .gallery-item:hover img{transform:scale(1.08)}.gallery-grid .gallery-item:hover::after{background:rgba(200,150,62,0.3)}.gallery-grid .gallery-item.wide{grid-column:span 2}.gallery-more{text-align:center;margin-top:40px}.testimonial-section{padding:var(--section-py) 0;background-attachment:fixed;background-size:cover;background-position:center;position:relative}.testimonial-section::before{content:'';position:absolute;inset:0;background:rgba(29,29,29,0.85)}.testimonial-section .container{position:relative;z-index:2}.testimonial-card{text-align:center;max-width:700px;margin:0 auto;padding:40px 20px}.testimonial-card .quote-icon{font-size:48px;color:var(--clr-accent);margin-bottom:25px}.testimonial-card blockquote{font-family:var(--font-body);font-size:17px;font-style:italic;line-height:1.9;color:rgba(255,255,255,0.9);margin-bottom:25px;border:none;padding:0}.testimonial-card .author{font-family:var(--font-heading);font-size:18px;font-weight:600;color:var(--clr-accent);letter-spacing:1px}.testimonial-section .swiper-button-next,.testimonial-section .swiper-button-prev{color:var(--clr-white);opacity:0.6;transition:var(--transition)}.testimonial-section .swiper-button-next:hover,.testimonial-section .swiper-button-prev:hover{opacity:1;color:var(--clr-accent)}.cta-section{padding:60px 0;background:var(--clr-accent);text-align:center}.cta-section h2{color:var(--clr-white);font-size:32px;font-weight:700;text-transform:uppercase;letter-spacing:2px;margin-bottom:8px}.cta-section p{color:rgba(255,255,255,0.9);font-size:16px;margin-bottom:25px}.cta-section .btn-outline-light{border-color:var(--clr-white);color:var(--clr-white)}.cta-section .btn-outline-light:hover{background:var(--clr-white);color:var(--clr-accent)}.site-footer{padding:60px 0 0;background:var(--clr-dark-section);color:rgba(255,255,255,0.7)}.site-footer h4{font-family:var(--font-heading);font-size:18px;font-weight:600;color:var(--clr-white);margin-bottom:20px;text-transform:uppercase;letter-spacing:1px}.site-footer .footer-brand{font-family:var(--font-heading);font-size:28px;font-weight:700;color:var(--clr-accent);text-decoration:none;display:block;margin-bottom:15px}.site-footer p{font-size:14px;line-height:1.8;color:rgba(255,255,255,0.6)}.site-footer .footer-links{list-style:none;padding:0}.site-footer .footer-links li{margin-bottom:8px}.site-footer .footer-links a{color:rgba(255,255,255,0.6);text-decoration:none;font-size:14px;transition:var(--transition-fast)}.site-footer .footer-links a:hover{color:var(--clr-accent);padding-left:5px}.site-footer .footer-contact-item{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px;font-size:14px}.site-footer .footer-contact-item i{color:var(--clr-accent);font-size:16px;margin-top:3px}.site-footer .footer-contact-item a{color:rgba(255,255,255,0.6);text-decoration:none;transition:var(--transition-fast)}.site-footer .footer-contact-item a:hover{color:var(--clr-accent)}.site-footer .opening-hours{list-style:none;padding:0;font-size:14px}.site-footer .opening-hours li{display:flex;justify-content:space-between;padding:4px 0;border-bottom:1px solid rgba(255,255,255,0.08)}.site-footer .opening-hours .day{color:rgba(255,255,255,0.5)}.site-footer .opening-hours .time{color:rgba(255,255,255,0.8)}.site-footer .opening-hours .closed{color:var(--clr-accent)}.footer-social{display:flex;gap:12px;margin-top:15px}.footer-social a{width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,0.2);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,0.6);text-decoration:none;font-size:16px;transition:var(--transition)}.footer-social a:hover{background:var(--clr-accent);border-color:var(--clr-accent);color:var(--clr-white)}.footer-bottom{margin-top:40px;padding:20px 0;border-top:1px solid rgba(255,255,255,0.08);text-align:center}.footer-bottom p{font-size:13px;color:rgba(255,255,255,0.4);margin:0}.footer-bottom a{color:rgba(255,255,255,0.5);text-decoration:none;transition:var(--transition-fast)}.footer-bottom a:hover{color:var(--clr-accent)}.scroll-top{position:fixed;bottom:30px;right:30px;width:46px;height:46px;background:var(--clr-accent);color:var(--clr-white);border:none;border-radius:50%;font-size:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;visibility:hidden;transition:var(--transition);z-index:999;box-shadow:var(--shadow-md)}.scroll-top.visible{opacity:1;visibility:visible}.scroll-top:hover{background:var(--clr-accent-hover);transform:translateY(-3px)}.flash-container{position:fixed;top:90px;left:50%;transform:translateX(-50%);z-index:1050;width:90%;max-width:600px}.page-header{height:350px;background-size:cover;background-position:center;position:relative;display:flex;align-items:center;justify-content:center;text-align:center;margin-top:0}.page-header::before{content:'';position:absolute;inset:0;background:rgba(27,58,75,0.75)}.page-header .page-header-content{position:relative;z-index:2}.page-header h1{font-family:var(--font-heading);font-size:42px;font-weight:700;color:var(--clr-white);text-transform:uppercase;letter-spacing:3px;margin-bottom:10px}.page-header .breadcrumb{justify-content:center}.page-header .breadcrumb-item,.page-header .breadcrumb-item a{font-size:14px;color:rgba(255,255,255,0.7);text-decoration:none}.page-header .breadcrumb-item a:hover{color:var(--clr-accent)}.page-header .breadcrumb-item.active{color:var(--clr-accent)}.page-header .breadcrumb-item+.breadcrumb-item::before{color:rgba(255,255,255,0.4)}.content-section{padding:var(--section-py) 0;background:var(--clr-white)}.content-section.bg-light{background:var(--clr-light)}.event-card{background:var(--clr-white);box-shadow:var(--shadow-card);transition:var(--transition);overflow:hidden;height:100%}.event-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}.event-card .event-image{height:220px;background-size:cover;background-position:center;position:relative}.event-card .event-date-badge{position:absolute;top:15px;right:15px;background:var(--clr-accent);color:var(--clr-white);padding:8px 14px;text-align:center;font-weight:600}.event-card .event-date-badge .day{font-size:24px;font-family:var(--font-heading);display:block;line-height:1}.event-card .event-date-badge .month{font-size:11px;text-transform:uppercase;letter-spacing:1px}.event-card .event-body{padding:25px}.event-card h3{font-size:20px;font-weight:600;color:var(--clr-dark);margin-bottom:10px}.event-card h3 a{color:var(--clr-dark);text-decoration:none;transition:var(--transition-fast)}.event-card h3 a:hover{color:var(--clr-accent)}.event-card .event-meta{display:flex;flex-wrap:wrap;gap:15px;margin-bottom:12px;font-size:13px;color:var(--clr-grey)}.event-card .event-meta i{color:var(--clr-accent);margin-right:4px}.event-card p{font-size:14px;line-height:1.6;color:var(--clr-grey)}.news-card{background:var(--clr-white);box-shadow:var(--shadow-card);transition:var(--transition);overflow:hidden;height:100%}.news-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}.news-card .news-image{height:200px;object-fit:cover;width:100%}.news-card .news-body{padding:25px}.news-card .news-date{font-size:12px;color:var(--clr-accent);font-weight:600;text-transform:uppercase;letter-spacing:1px;margin-bottom:10px}.news-card h3{font-size:20px;font-weight:600;color:var(--clr-dark);margin-bottom:10px}.news-card h3 a{color:var(--clr-dark);text-decoration:none;transition:var(--transition-fast)}.news-card h3 a:hover{color:var(--clr-accent)}.news-card p{font-size:14px;line-height:1.6;color:var(--clr-grey)}.news-card .read-more{font-size:13px;font-weight:600;color:var(--clr-accent);text-decoration:none;text-transform:uppercase;letter-spacing:1px;transition:var(--transition-fast)}.news-card .read-more:hover{color:var(--clr-accent-hover)}.menu-category{margin-bottom:50px}.menu-category h3{font-family:var(--font-heading);font-size:28px;font-weight:600;color:var(--clr-dark);text-align:center;margin-bottom:30px;text-transform:uppercase;letter-spacing:1px}.menu-item{display:flex;justify-content:space-between;align-items:flex-start;padding:18px 0;border-bottom:1px dashed var(--clr-light-grey)}.menu-item:last-child{border-bottom:none}.menu-item-info{flex:1;padding-right:20px}.menu-item-name{font-family:var(--font-heading);font-size:18px;font-weight:600;color:var(--clr-dark);margin-bottom:4px}.menu-item-name .badge-veg{display:inline-block;font-size:10px;font-family:var(--font-body);font-weight:600;padding:2px 8px;border-radius:3px;text-transform:uppercase;letter-spacing:0.5px;vertical-align:middle;margin-left:6px}.badge-vegetarian{background:#4CAF50;color:white}.badge-vegan{background:#2E7D32;color:white}.menu-item-description{font-size:14px;color:var(--clr-grey);margin-bottom:4px;line-height:1.5}.menu-item-allergens{font-size:12px;color:var(--clr-grey-light)}.menu-item-price{font-family:var(--font-heading);font-size:20px;font-weight:700;color:var(--clr-accent);white-space:nowrap}.contact-form .form-label{font-weight:600;color:var(--clr-dark);font-size:14px}.contact-form .form-control{border:1px solid var(--clr-light-grey);border-radius:var(--radius-sm);padding:12px 16px;font-size:15px;transition:var(--transition-fast)}.contact-form .form-control:focus{border-color:var(--clr-accent);box-shadow:0 0 0 3px rgba(200,150,62,0.15)}.reservation-form .form-label{font-weight:600;color:var(--clr-dark);font-size:14px}.reservation-form .form-control,.reservation-form .form-select{border:1px solid var(--clr-light-grey);border-radius:var(--radius-sm);padding:12px 16px;font-size:15px;transition:var(--transition-fast)}.reservation-form .form-control:focus,.reservation-form .form-select:focus{border-color:var(--clr-accent);box-shadow:0 0 0 3px rgba(200,150,62,0.15)}.gallery-filter{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-bottom:40px}.gallery-filter .filter-btn{padding:8px 20px;background:transparent;border:1px solid var(--clr-light-grey);color:var(--clr-grey);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:var(--transition-fast)}.gallery-filter .filter-btn:hover,.gallery-filter .filter-btn.active{background:var(--clr-accent);border-color:var(--clr-accent);color:var(--clr-white)}.pagination .page-link{color:var(--clr-dark);border-color:var(--clr-light-grey);font-size:14px;padding:10px 16px;transition:var(--transition-fast)}.pagination .page-link:hover{background:var(--clr-accent);border-color:var(--clr-accent);color:var(--clr-white)}.pagination .page-item.active .page-link{background:var(--clr-accent);border-color:var(--clr-accent);color:var(--clr-white)}.pagination .page-item.disabled .page-link{color:var(--clr-grey-light)}.error-section{padding:150px 0 100px;text-align:center;min-height:60vh;display:flex;align-items:center}.error-section .error-code{font-family:var(--font-heading);font-size:120px;font-weight:700;color:var(--clr-accent);line-height:1;margin-bottom:10px}.error-section h2{font-size:28px;color:var(--clr-dark);margin-bottom:15px}.error-section p{font-size:16px;color:var(--clr-grey);margin-bottom:30px}[data-reveal]{opacity:0;transition:opacity 0.8s ease,transform 0.8s ease;will-change:opacity,transform}[data-reveal="fade-up"]{transform:translateY(40px)}[data-reveal="fade-down"]{transform:translateY(-40px)}[data-reveal="fade-left"]{transform:translateX(-40px)}[data-reveal="fade-right"]{transform:translateX(40px)}[data-reveal="fade-in"]{transform:scale(0.95)}[data-reveal="zoom-in"]{transform:scale(0.85)}[data-reveal].revealed{opacity:1;transform:translateY(0) translateX(0) scale(1)}[data-reveal-delay="100"]{transition-delay:0.1s}[data-reveal-delay="200"]{transition-delay:0.2s}[data-reveal-delay="300"]{transition-delay:0.3s}[data-reveal-delay="400"]{transition-delay:0.4s}[data-reveal-delay="500"]{transition-delay:0.5s}[data-reveal-delay="600"]{transition-delay:0.6s}@media (prefers-reduced-motion:reduce){[data-reveal]{opacity:1;transform:none;transition:none}}.visually-hidden-json{display:none}.cookie-consent{position:fixed;bottom:0;left:0;right:0;z-index:9999;background:var(--clr-primary);box-shadow:0 -4px 20px rgba(0,0,0,0.3);padding:20px 0}.cookie-consent-inner{max-width:1140px;margin:0 auto;padding:0 20px;display:flex;align-items:center;gap:30px}.cookie-consent-text{flex:1}.cookie-consent-text p{color:rgba(255,255,255,0.85);font-size:14px;line-height:1.6;margin:0}.cookie-consent-text a{color:var(--clr-accent);text-decoration:underline}.cookie-consent-text a:hover{color:var(--clr-accent-light)}.cookie-consent-actions .btn-accent{padding:10px 28px;font-size:12px;white-space:nowrap}.announcement-bar{padding:18px 50px;text-align:center;font-size:19px;font-weight:600;position:fixed;top:0;left:0;right:0;z-index:1002}.announcement-bar p{margin:0;color:inherit;display:inline}.announcement-bar .announcement-close{position:absolute;right:15px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:20px;cursor:pointer;opacity:0.7;transition:var(--transition-fast);padding:4px 8px;line-height:1}.announcement-bar .announcement-close:hover{opacity:1}.announcement-bar.announcement-info{background:var(--clr-primary);color:var(--clr-white)}.announcement-bar.announcement-info .announcement-close{color:var(--clr-white)}.announcement-bar.announcement-warning{background:var(--clr-accent);color:var(--clr-white)}.announcement-bar.announcement-warning .announcement-close{color:var(--clr-white)}.announcement-bar.announcement-urgent{background:#C0392B;color:var(--clr-white)}.announcement-bar.announcement-urgent .announcement-close{color:var(--clr-white)}.announcement-bar-contained{position:static;top:auto;left:auto;right:auto;z-index:auto;padding:16px 24px;font-size:17px;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);margin-bottom:25px}@media (max-width:575.98px){.announcement-bar-contained{padding:14px 18px;font-size:15px}}.announcement-bar-inline{padding:20px 30px;font-size:20px;position:relative;top:auto;z-index:auto}.pdf-download-card{display:flex;align-items:stretch;background:var(--clr-light);border:1px solid var(--clr-light-grey);border-radius:var(--radius-md);overflow:hidden;text-decoration:none;color:var(--clr-dark);transition:var(--transition)}.pdf-download-card:hover{border-color:var(--clr-accent);box-shadow:var(--shadow-md);transform:translateY(-2px);color:var(--clr-dark)}.pdf-preview{flex-shrink:0;width:160px;background:#fff;border-right:1px solid var(--clr-light-grey);display:flex;align-items:center;justify-content:center;overflow:hidden}.pdf-preview img{width:100%;height:100%;object-fit:cover}.pdf-preview-fallback{padding:30px}.pdf-preview-fallback i{font-size:56px;color:#dc3545}.pdf-info{display:flex;flex-direction:column;justify-content:center;padding:20px 25px;gap:8px}.pdf-filename{font-size:14px;color:var(--clr-grey);word-break:break-all}.pdf-action{font-size:15px;font-weight:600;color:var(--clr-accent);transition:var(--transition)}.pdf-download-card:hover .pdf-action{color:var(--clr-accent-hover)}@media (max-width:991px){:root{--section-py:70px}h1{font-size:38px}h2{font-size:30px}.hero-content h1{font-size:38px;letter-spacing:2px}.hero-content .hero-subtitle{font-size:15px;letter-spacing:4px}.nav-toggle{display:block}.site-nav .nav-links{display:none;position:absolute;top:100%;left:0;width:100%;background:var(--clr-primary);flex-direction:column;padding:20px;gap:15px;box-shadow:var(--shadow-lg)}.site-nav .nav-links.open{display:flex}.parallax-divider{height:300px;background-attachment:scroll}.counter-item .counter-number{font-size:40px}.gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid .gallery-item.wide{grid-column:span 1}.page-header{height:280px}.page-header h1{font-size:32px}.testimonial-section .swiper-button-next,.testimonial-section .swiper-button-prev{display:none}.cookie-consent-inner{flex-direction:column;text-align:center;gap:15px}}@media (max-width:575px){:root{--section-py:50px}h1{font-size:30px}h2{font-size:26px}.hero-content h1{font-size:30px}.hero-content .hero-subtitle{font-size:13px;letter-spacing:3px}.gallery-grid{grid-template-columns:1fr}.counter-section .row>div{margin-bottom:20px}.offer-card{margin-bottom:20px}.parallax-divider .parallax-content h2{font-size:28px}.page-header{height:220px}.page-header h1{font-size:26px;letter-spacing:1px}.menu-item{flex-direction:column}.menu-item-price{margin-top:8px}.menu-item-info{padding-right:0}}