*,*::before,*::after{box-sizing:border-box}*{margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;font-size:16px;line-height:1.6;color:#333;background-color:#f5f5f0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body.menu-open{overflow:hidden}h1,h2,h3,h4,h5,h6{font-family:"Georgia",serif;font-weight:700;line-height:1.3;color:#0f3d2c;margin-bottom:1rem}h1{font-size:clamp(2rem,5vw,3rem)}h2{font-size:clamp(1.5rem,4vw,2.25rem)}h3{font-size:clamp(1.25rem,3vw,1.75rem)}h4{font-size:1.25rem}p{margin-bottom:1rem}p:last-child{margin-bottom:0}a{color:#0f3d2c;text-decoration:none;transition:color .2s ease}a:hover{color:#1a5740}a:focus-visible{outline:2px solid #0f3d2c;outline-offset:2px}img{max-width:100%;height:auto;display:block}ul,ol{list-style:none}button{cursor:pointer;font-family:inherit}input,textarea,select{font-family:inherit;font-size:inherit;line-height:inherit}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem;width:100%}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.text-center{text-align:center}.text-right{text-align:right}section{padding:3rem 0}@media(min-width: 992px){section{padding:6rem 0}}.site-header{position:fixed;top:0;left:0;right:0;width:100%;padding:1.5rem 0;z-index:1000;box-shadow:none;background-color:rgba(0,0,0,.5);transition:background-color .3s ease,box-shadow .3s ease,padding .3s ease}.site-header .header-content{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.site-header .brand .logo{font-family:"Georgia",serif;font-size:1.75rem;font-weight:700;color:#fff;letter-spacing:.05em;transition:opacity .2s ease}.site-header .brand .logo:hover{opacity:.9}.site-header.scrolled{background-color:rgba(0,0,0,.5);box-shadow:0 2px 8px rgba(0,0,0,.1);padding:1rem 0;backdrop-filter:blur(10px)}@media(min-width: 768px){.site-header .main-nav{display:block}}@media(max-width: 767px){.site-header .main-nav{position:fixed;top:0;right:0;width:280px;height:100vh;background-color:#0f3d2c;padding:3rem 1.5rem;transform:translateX(100%);transition:transform .3s ease;z-index:1100;box-shadow:-4px 0 12px rgba(0,0,0,.2);overflow-y:auto}.site-header .main-nav.is-open{transform:translateX(0)}}.site-header .nav-list{display:flex;flex-direction:column;gap:1rem}@media(min-width: 768px){.site-header .nav-list{flex-direction:row;gap:2rem}}.site-header .nav-item .nav-link{color:#fff;font-size:1.125rem;font-weight:500;padding:.5rem 1rem;display:block;border-radius:.25px;transition:background-color .2s ease}@media(min-width: 768px){.site-header .nav-item .nav-link{font-size:16px}}.site-header .nav-item .nav-link:hover,.site-header .nav-item .nav-link:focus-visible{background-color:hsla(0,0%,100%,.1)}.site-header .nav-item .nav-link.active{background-color:hsla(0,0%,100%,.15);font-weight:700}.site-header .menu-toggle{background:none;border:none;padding:0;cursor:pointer;font:inherit;color:inherit;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background-color:hsla(0,0%,100%,.1);border-radius:.25px;z-index:1101}@media(min-width: 768px){.site-header .menu-toggle{display:none}}.site-header .menu-toggle:hover{background-color:hsla(0,0%,100%,.2)}.site-header .menu-toggle .menu-toggle-icon{position:relative;width:24px;height:2px;background-color:#fff;transition:background-color .2s ease}.site-header .menu-toggle .menu-toggle-icon::before,.site-header .menu-toggle .menu-toggle-icon::after{content:"";position:absolute;left:0;width:100%;height:2px;background-color:#fff;transition:transform .3s ease}.site-header .menu-toggle .menu-toggle-icon::before{top:-8px}.site-header .menu-toggle .menu-toggle-icon::after{bottom:-8px}.site-header .menu-toggle[aria-expanded=true] .menu-toggle-icon{background-color:rgba(0,0,0,0)}.site-header .menu-toggle[aria-expanded=true] .menu-toggle-icon::before{transform:translateY(8px) rotate(45deg)}.site-header .menu-toggle[aria-expanded=true] .menu-toggle-icon::after{transform:translateY(-8px) rotate(-45deg)}.page-header{text-align:center;margin:8rem 0 1.5rem 0}.page-header h1{font-size:clamp(2.5rem,5vw,3.5rem);color:#0f3d2c;margin-bottom:1.5rem}.page-header .intro{font-size:1rem;color:#333;max-width:700px;margin:0 auto;line-height:1.6}@media(max-width: 767px){body.menu-open::before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);z-index:1000;animation:fadeIn .3s ease}@keyframes fadeIn{from{opacity:0}to{opacity:1}}}.site-footer{background-color:#0f3d2c;color:#fff;padding:3rem 0 2rem}.site-footer a{color:#fff}.site-footer a:hover{color:#cdc6af}.site-footer .footer-content{display:grid;grid-template-columns:1fr;gap:2rem;margin-bottom:2rem}@media(min-width: 768px){.site-footer .footer-content{grid-template-columns:1fr 1fr;gap:3rem}}.site-footer .footer-section h3{color:#fff;font-size:1.125rem;margin-bottom:1rem}.site-footer .footer-section address{font-style:normal;line-height:1.8}.site-footer .footer-section p{margin-bottom:.5rem}.site-footer .footer-contact .phone a,.site-footer .footer-contact .email a{text-decoration:underline;text-decoration-color:rgba(0,0,0,0);transition:text-decoration-color .2s ease}.site-footer .footer-contact .phone a:hover,.site-footer .footer-contact .email a:hover{text-decoration-color:currentColor}.site-footer .footer-company .company-name{font-weight:700;margin-bottom:1rem}.site-footer .footer-legal{padding:1.5rem 0;border-top:1px solid hsla(0,0%,100%,.2);border-bottom:1px solid hsla(0,0%,100%,.2);margin-bottom:1.5rem}.site-footer .footer-legal .legal-links{display:flex;flex-wrap:wrap;gap:1rem 2rem;justify-content:center}@media(min-width: 768px){.site-footer .footer-legal .legal-links{justify-content:flex-start}}.site-footer .footer-legal .legal-links li a{font-size:.875rem}.site-footer .footer-legal .legal-links li a:hover{text-decoration:underline}.site-footer .footer-copyright{text-align:center}@media(min-width: 768px){.site-footer .footer-copyright{text-align:left}}.site-footer .footer-copyright p{font-size:.875rem;opacity:.8;margin-bottom:0}.home{background-color:#f5f5f0}.home .hero{position:relative;min-height:60vh;display:flex;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(135deg, #0f3d2c 0%, rgb(4.9342105263, 20.0657894737, 14.4736842105) 100%)}@media(min-width: 992px){.home .hero{min-height:70vh}}.home .hero .hero-images{position:absolute;top:0;left:0;width:100%;height:100%;display:grid;grid-template-columns:repeat(2, 1fr);gap:0}.home .hero .hero-images img{object-fit:cover;object-position:center;width:100%;height:100%;opacity:.7;transition:opacity .5s ease}.home .hero .hero-images img:hover{opacity:.85}.home .info{padding:3rem 0}.home .info .container{display:flex;justify-content:space-between}.home .info .location{color:#0f3d2c;text-wrap:nowrap;font-size:1.125rem;margin-bottom:0}.home .info .opening-hours{color:#0f3d2c;font-size:1rem;font-weight:500;align-self:end}.home .gallery .gallery-grid{display:grid;grid-template-columns:repeat(2, 1fr);gap:1rem}@media(min-width: 768px){.home .gallery .gallery-grid{grid-template-columns:repeat(6, 1fr);gap:1.5rem}}.home .gallery .gallery-grid .gallery-item{position:relative;overflow:hidden;border-radius:1px}.home .gallery .gallery-grid .gallery-item:nth-child(6n+1){grid-column:span 2;grid-row:span 2}@media(min-width: 768px){.home .gallery .gallery-grid .gallery-item:nth-child(6n+1){grid-column:span 3;grid-row:span 2}}.home .gallery .gallery-grid .gallery-item:nth-child(6n+1) img{aspect-ratio:4/3}.home .gallery .gallery-grid .gallery-item:nth-child(6n+2){grid-column:span 2;grid-row:span 2}@media(min-width: 768px){.home .gallery .gallery-grid .gallery-item:nth-child(6n+2){grid-column:span 3;grid-row:span 1}}.home .gallery .gallery-grid .gallery-item:nth-child(6n+2) img{aspect-ratio:16/9}.home .gallery .gallery-grid .gallery-item:nth-child(6n+3){grid-column:span 2;grid-row:span 1}@media(min-width: 768px){.home .gallery .gallery-grid .gallery-item:nth-child(6n+3){grid-column:span 3;grid-row:span 1}}.home .gallery .gallery-grid .gallery-item:nth-child(6n+3) img{aspect-ratio:16/9}.home .gallery .gallery-grid .gallery-item:nth-child(6n+4){grid-column:span 2;grid-row:span 2}@media(min-width: 768px){.home .gallery .gallery-grid .gallery-item:nth-child(6n+4){grid-column:span 2;grid-row:span 2}}.home .gallery .gallery-grid .gallery-item:nth-child(6n+4) img{aspect-ratio:3/4}.home .gallery .gallery-grid .gallery-item:nth-child(6n+5){grid-column:span 2;grid-row:span 1}@media(min-width: 768px){.home .gallery .gallery-grid .gallery-item:nth-child(6n+5){grid-column:span 4;grid-row:span 2}}.home .gallery .gallery-grid .gallery-item:nth-child(6n+5) img{aspect-ratio:16/9}@media(min-width: 768px){.home .gallery .gallery-grid .gallery-item:nth-child(6n+5) img{aspect-ratio:3/2}}.home .gallery .gallery-grid .gallery-item:nth-child(6n+6){grid-column:span 2;grid-row:span 1}@media(min-width: 768px){.home .gallery .gallery-grid .gallery-item:nth-child(6n+6){grid-column:span 3;grid-row:span 2}}.home .gallery .gallery-grid .gallery-item:nth-child(6n+6) img{aspect-ratio:1/1}@media(min-width: 768px){.home .gallery .gallery-grid .gallery-item:nth-child(6n+6) img{aspect-ratio:4/3}}.home .gallery .gallery-grid .gallery-item img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .3s ease,filter .3s ease}.home .gallery .gallery-grid .gallery-item img:hover{transform:scale(1.05);filter:brightness(1.05)}.home .cta{padding:0 !important}.home .cta h3{font-size:clamp(1.25rem,3vw,1.75rem);margin:0}.home .cta h3 a{text-decoration:underline;text-underline-offset:4px;font-weight:700}.home .quick-links .links-grid{display:grid;grid-template-columns:repeat(1, 1fr);gap:2rem}@media(min-width: 768px){.home .quick-links .links-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:2rem}}.home .quick-links .link-card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:1rem;border-radius:2px;transition:all .3s ease}.home .quick-links .link-card:hover{transform:translateY(-8px);box-shadow:0 8px 16px rgba(0,0,0,.15)}.home .quick-links .link-card img{width:100%;height:100%;object-fit:cover;object-position:center;border-radius:1px;margin-bottom:1.5rem}.home .quick-links .link-card h4{color:#0f3d2c;font-size:1.5rem;margin:0}.home .bottom-gallery .bottom-gallery-grid{display:grid;grid-template-columns:repeat(1, 1fr);gap:1.5rem}@media(min-width: 768px){.home .bottom-gallery .bottom-gallery-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:1.5rem}}.home .bottom-gallery .bottom-gallery-grid img{width:100%;height:300px;object-fit:cover;object-position:center;border-radius:1px;transition:transform .3s ease,box-shadow .3s ease}@media(min-width: 992px){.home .bottom-gallery .bottom-gallery-grid img{height:350px}}.home .bottom-gallery .bottom-gallery-grid img:hover{transform:scale(1.02);box-shadow:0 8px 16px rgba(0,0,0,.15)}.reservierung{background-color:#f5f5f0;min-height:70vh;margin-top:3rem}.reservierung .reservation-form{padding:1rem;border-radius:2px;margin-top:3rem}@media(min-width: 768px){.reservierung .reservation-form{padding:4rem}}.reservierung .message{padding:1.5rem;border-radius:1px;margin-bottom:2rem}.reservierung .message.success{background-color:rgb(195.7028985507,240.7971014493,206);border:1px solid #28a745;color:rgb(92.8405797101,216.1594202899,121)}.reservierung .message.error{background-color:hsl(354.251497006,70.4641350211%,98.5294117647%);border:1px solid #dc3545;color:hsl(354.251497006,70.4641350211%,73.5294117647%)}.reservierung .message p{margin:0}.reservierung form .form-group{margin-bottom:2rem}.reservierung form .form-group label{display:block;font-weight:500;color:#0f3d2c;margin-bottom:.5rem;font-size:1.125rem}.reservierung form .form-group input,.reservierung form .form-group textarea{width:100%;padding:1rem 1.5rem;border:2px solid #e0e0e0;border-radius:.25px;font-size:16px;transition:border-color .2s ease,box-shadow .2s ease;background-color:#fff}.reservierung form .form-group input:focus,.reservierung form .form-group textarea:focus{outline:none;border-color:#0f3d2c;box-shadow:0 0 0 3px rgba(15,61,44,.1)}.reservierung form .form-group input::placeholder,.reservierung form .form-group textarea::placeholder{color:#999}.reservierung form .form-group textarea{resize:vertical;min-height:150px;font-family:inherit}.reservierung form .btn-submit{padding:1.5rem 3rem;background-color:#0f3d2c;color:#fff;font-size:1.125rem;font-weight:700;border:none;border-radius:1px;cursor:pointer;transition:background-color .3s ease,transform .2s ease}.reservierung form .btn-submit:hover{background-color:#1a5740;transform:translateY(-2px)}.reservierung form .btn-submit:active{transform:translateY(0)}.reservierung form .btn-submit:focus-visible{outline:3px solid #cdc6af;outline-offset:2px}.reservierung form .btn-submit:disabled{background-color:hsl(0,0%,70%);cursor:not-allowed;transform:none}.menu{background-color:#f5f5f0;margin-top:3rem}.menu .menu-section{padding:1rem;border-radius:2px;margin-bottom:3rem}@media(min-width: 768px){.menu .menu-section{padding:4rem}}.menu .menu-section .section-title{text-align:center;color:#0f3d2c;font-size:clamp(1.5rem,3.5vw,2rem);margin-bottom:1rem;padding-bottom:1.5rem;border-bottom:2px solid #cdc6af;font-family:"Brush Script MT",cursive}.menu .menu-items{display:grid;grid-template-columns:repeat(3, 1fr);gap:1.5rem;grid-template-columns:repeat(auto-fill, minmax(250px, 1fr));gap:2rem}.menu .menu-item{padding:1.5rem;border-left:3px solid #cdc6af;border-radius:.25px;transition:background-color .2s ease,transform .2s ease}.menu .menu-item:hover{background-color:#fff;transform:translateX(4px)}.menu .menu-item .item-name{font-size:1.125rem;color:#0f3d2c;font-weight:700;margin-bottom:.5rem;display:block}.menu .menu-item .item-description{font-size:.875rem;color:#666;font-style:italic;line-height:1.5;margin-bottom:.5rem}.menu .menu-item .item-price{font-size:1.125rem;font-weight:700;color:#0f3d2c;margin-top:.5rem}.menu .menu-card{padding:1rem;border-radius:2px;box-shadow:0 2px 4px rgba(0,0,0,.1);margin-bottom:3rem}@media(min-width: 768px){.menu .menu-card{padding:4rem}}.menu .menu-card.seasonal{border-top:4px solid #cdc6af}.menu .menu-card .card-title{text-align:center;color:#0f3d2c;font-size:clamp(1.5rem,3.5vw,2rem);margin-bottom:3rem;padding-bottom:1.5rem;border-bottom:2px solid #cdc6af;font-family:"Brush Script MT",cursive}.menu .menu-card h3{color:#333;font-size:16px;margin-top:1.5rem;margin-bottom:.5rem}.menu .menu-card p{color:#666;font-size:.875rem;margin-bottom:1rem;line-height:1.6}.menu .menu-card strong{color:#0f3d2c;font-weight:700}.weinkarte{background-color:#f5f5f0;margin-top:3rem}.weinkarte .wine-category{padding:1rem;border-radius:2px;margin-bottom:3rem}@media(min-width: 768px){.weinkarte .wine-category{padding:4rem}}.weinkarte .wine-category .category-title{text-align:center;color:#0f3d2c;font-size:clamp(1.5rem,3.5vw,2rem);margin-bottom:1rem;padding-bottom:1.5rem;border-bottom:2px solid #cdc6af;font-family:"Brush Script MT",cursive}.weinkarte .wine-category .category-description{text-align:center;color:#666;font-style:italic;margin-bottom:2rem}.weinkarte .wine-list{display:grid;grid-template-columns:repeat(3, 1fr);gap:1.5rem;grid-template-columns:repeat(auto-fill, minmax(250px, 1fr));gap:2rem}.weinkarte .wine-item{padding:1.5rem;border-left:3px solid #cdc6af;border-radius:.25px;transition:background-color .2s ease,transform .2s ease;display:flex;flex-direction:column}.weinkarte .wine-item:hover{background-color:#fff;transform:translateX(4px)}.weinkarte .wine-item .wine-header{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:.5rem}.weinkarte .wine-item .wine-header .wine-name{font-size:1.125rem;color:#0f3d2c;margin:0}.weinkarte .wine-item .wine-header .wine-year{font-size:.875rem;color:#666;font-weight:500}.weinkarte .wine-item .wine-producer{font-weight:500;color:#333;margin-bottom:.5rem}.weinkarte .wine-item .wine-region,.weinkarte .wine-item .wine-grape{font-size:.875rem;color:#666;margin-bottom:.5rem}.weinkarte .wine-item .wine-description{font-size:.875rem;color:#333;font-style:italic;margin-top:1rem;margin-bottom:1rem}.weinkarte .wine-item .wine-pricing{display:flex;gap:2rem;margin-top:1rem;flex-wrap:wrap;margin-top:auto}.weinkarte .wine-item .wine-pricing .price-glass,.weinkarte .wine-item .wine-pricing .price-bottle{display:flex;flex-direction:column;gap:4px}.weinkarte .wine-item .wine-pricing .price-glass .price-label,.weinkarte .wine-item .wine-pricing .price-bottle .price-label{font-size:.875rem;color:#666}.weinkarte .wine-item .wine-pricing .price-glass .price-value,.weinkarte .wine-item .wine-pricing .price-bottle .price-value{font-size:1.125rem;font-weight:700;color:#0f3d2c}.weinkarte .wine-special{margin-top:4rem}.weinkarte .wine-special .section-title{text-align:center;color:#0f3d2c;font-size:clamp(1.5rem,3.5vw,2rem);margin-bottom:3rem;font-family:"Brush Script MT",cursive;padding-bottom:1.5rem;border-bottom:2px solid #cdc6af}.weinkarte .wine-special .wine-grid{display:grid;grid-template-columns:repeat(1, 1fr);gap:1.5rem}@media(min-width: 768px){.weinkarte .wine-special .wine-grid{display:grid;grid-template-columns:repeat(2, 1fr);gap:2rem}}@media(min-width: 992px){.weinkarte .wine-special .wine-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:2rem}}.weinkarte .wine-special .wine-card{padding:2rem;border-radius:1px;text-align:center;transition:transform .3s ease,box-shadow .3s ease,background-color .3s ease}.weinkarte .wine-special .wine-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px rgba(0,0,0,.15);background-color:#fff}.weinkarte .wine-special .wine-card h3{color:#0f3d2c;font-size:1.125rem;margin-bottom:.5rem}.weinkarte .wine-special .wine-card .producer{font-size:.875rem;color:#666;margin-bottom:1rem}.weinkarte .wine-special .wine-card .price{font-size:1.5rem;font-weight:700;color:#0f3d2c;margin:0}.weinkarte .wine-notes{margin-top:3rem;padding:2rem;border-radius:1px;font-size:.875rem;color:#333}.weinkarte .wine-notes p:last-child{margin-bottom:0}.getraenke{background-color:#f5f5f0;margin-top:3rem}.getraenke .drink-category{padding:1rem;border-radius:2px;margin-bottom:3rem}@media(min-width: 768px){.getraenke .drink-category{padding:4rem}}.getraenke .drink-category .category-title{text-align:center;color:#0f3d2c;font-size:clamp(1.5rem,3.5vw,2rem);font-family:"Brush Script MT",cursive;margin-bottom:1rem;padding-bottom:1.5rem;border-bottom:2px solid #e0e0e0}.getraenke .drink-category .category-description{text-align:center;color:#666;font-style:italic;margin-bottom:2rem}.getraenke .drink-list{display:grid;grid-template-columns:repeat(3, 1fr);gap:1.5rem;grid-template-columns:repeat(auto-fill, minmax(250px, 1fr));gap:1.5rem}.getraenke .drink-item{padding:1.5rem;border-left:3px solid #cdc6af;border-radius:.25px;transition:background-color .2s ease,transform .2s ease;display:flex;justify-content:space-between;flex-wrap:wrap}.getraenke .drink-item:last-child{border-bottom:none}.getraenke .drink-item:hover{background-color:#fff;transform:translateX(4px)}.getraenke .drink-item .drink-info{flex:1}.getraenke .drink-item .drink-info .drink-name{font-size:1.125rem;color:#0f3d2c;margin-bottom:.5rem}.getraenke .drink-item .drink-info .drink-description{font-size:.875rem;color:#666;font-style:italic;margin-bottom:.5rem}.getraenke .drink-item .drink-info .drink-volume{font-size:.875rem;color:#666;display:inline-block}.getraenke .drink-item .drink-info .brewery{font-size:.875rem;color:#333;margin-bottom:.5rem;font-style:italic}.getraenke .drink-item .drink-meta{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:.5rem}.getraenke .drink-item .drink-meta .drink-price{font-size:1.125rem;font-weight:700;color:#0f3d2c;white-space:nowrap;flex-shrink:0}.getraenke .drink-item .drink-meta .drink-volume{font-size:.875rem;color:#666;display:inline-block}.getraenke .drink-notes{margin-top:3rem;padding:2rem;border-radius:1px;font-size:.875rem;color:#333}.getraenke .drink-notes p:last-child{margin-bottom:0}.lightbox{position:fixed;top:0;left:0;width:100%;height:100%;z-index:9999;display:none;align-items:center;justify-content:center}.lightbox.active{display:flex}.lightbox-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.9);animation:fadeIn .3s}.lightbox-content{position:relative;max-width:90%;max-height:90%;z-index:1}.lightbox-image{max-width:100%;max-height:90vh;object-fit:contain;animation:zoomIn .3s}.lightbox-close,.lightbox-prev,.lightbox-next{position:absolute;background-color:hsla(0,0%,100%,.1);color:#fff;border:2px solid #fff;font-size:2rem;cursor:pointer;transition:background-color .3s;z-index:2}.lightbox-close:hover,.lightbox-prev:hover,.lightbox-next:hover{background-color:hsla(0,0%,100%,.2)}.lightbox-close{top:1rem;right:1rem;width:50px;height:50px;border-radius:50%;line-height:1}.lightbox-prev,.lightbox-next{top:50%;transform:translateY(-50%);width:50px;height:50px;border-radius:50%;line-height:1}.lightbox-prev{left:1rem}.lightbox-next{right:1rem}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes zoomIn{from{transform:scale(0.8);opacity:0}to{transform:scale(1);opacity:1}}@media(max-width: 768px){.lightbox-prev,.lightbox-next{width:40px;height:40px;font-size:1.5rem}}.loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0f3d2c;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:9999;transition:opacity .5s ease,visibility .5s ease}.loading-overlay.hidden{opacity:0;visibility:hidden}.loading-content{display:flex;flex-direction:column;align-items:center;gap:1.5rem}.loading-spinner{width:60px;height:60px;border:4px solid rgba(205,198,175,.3);border-left:4px solid #cdc6af;border-radius:50%;animation:spin 1s linear infinite}.loading-text{color:#fff;font-family:"Georgia",serif;font-size:1.125rem;font-weight:500;opacity:.9;text-align:center}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@media(prefers-reduced-motion: reduce){.loading-spinner{animation:none;border:4px solid #cdc6af}}@media(max-width: 768px){.loading-spinner{width:50px;height:50px;border-width:3px}.loading-text{font-size:1rem}}@media(prefers-reduced-motion: reduce){.scale-in,.slide-in-right,.slide-in-left,.zoom-in,.stumble-in,.image-reveal,.fade-out,.rotate-3d{animation:none !important;opacity:1;transform:none}}@supports(animation-timeline: view()){@media(prefers-reduced-motion: no-preference){@keyframes fade-out{from{opacity:1}to{opacity:0}}.fade-out{animation-name:fade-out;animation-range:exit 0% cover 20%;animation-timeline:view();animation-timing-function:ease-in-out}@keyframes fade-in{from{opacity:0}to{opacity:1}}.fade-in{animation-name:fade-in;animation-range:entry 0% cover 20%;animation-timeline:view();animation-timing-function:ease-in-out}@keyframes scale-in{from{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.scale-in{animation-name:scale-in;animation-range:entry 0% cover 35%;animation-timeline:view();animation-timing-function:cubic-bezier(0.86, 0, 0.07, 1)}@keyframes slide-in-right{from{opacity:0;transform:translateX(50vh)}to{opacity:1;transform:translateX(0)}}.slide-in-right{animation-name:slide-in-right;animation-range:entry 0% cover 50%;animation-timeline:view();animation-timing-function:cubic-bezier(0.75, 0.82, 0.165, 1)}@keyframes slide-in-left{from{opacity:0;transform:translateX(-50vh)}to{opacity:1;transform:translateX(0)}}.slide-in-left{animation-name:slide-in-left;animation-range:entry 0% cover 50%;animation-timeline:view();animation-timing-function:ease-in-out}@keyframes zoom-in{0%{opacity:0;transform:scale(0)}50%{opacity:1;transform:scale(1)}}.zoom-in{animation-name:zoom-in;animation-range:cover 0% cover 50%;animation-timeline:view();animation-timing-function:ease-in-out}@keyframes image-reveal{from{opacity:0;transform:scale(0.5)}to{opacity:1;transform:scale(1)}}.image-reveal{animation-name:image-reveal;animation-range:entry 0% cover 35%;animation-timeline:view();animation-timing-function:cubic-bezier(0.075, 0.82, 0.165, 1)}@keyframes stumble-in{0%{transform:translateX(25vw)}100%{transform:translateX(0)}}.stumble-in{animation-name:stumble-in;animation-range:cover 0% cover 20%;animation-timeline:view();animation-timing-function:ease-out}@keyframes rotate-3d{from{transform:rotateY(-45deg) rotateX(5deg)}to{transform:rotateY(45deg) rotateX(25deg)}}.rotate-3d{animation-name:rotate-3d;animation-range:start 0% cover 100%;animation-timeline:view();animation-timing-function:linear}}}@media print{.site-header,.site-footer{display:none}body{background-color:#fff}a{color:#000;text-decoration:underline}}/*# sourceMappingURL=main.css.map */
