:root{--cream-bg: #f0e5d8;--accent-rust: #c97c5d;--accent-brown: #4b2e2b;--accent-olive: #556b2f;--accent-orange: #e08d3c;--text-dark: #3a3a3a;--text-light: #f8f5f0;--border-color: #d4cac0}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:"Merriweather",serif;background-color:var(--cream-bg);color:var(--text-dark);line-height:1.6}img{width:100%}h1,h2,h3,h4,h5,h6{font-family:"Abril Fatface",serif;color:var(--accent-brown)}h2{font-size:3rem;margin-bottom:1rem}h3{font-size:1.8rem;margin-bottom:1.5rem}h4{font-size:1.3rem;margin-bottom:.5rem}p{margin-bottom:1rem;color:var(--text-dark)}a{color:var(--accent-rust);text-decoration:none;transition:color .3s ease}a:hover{color:var(--accent-orange)}.caffetteria-header{background-color:var(--cream-bg);border-bottom:3px solid var(--accent-brown);padding:1rem 0;position:sticky;top:0;z-index:100;box-shadow:0 2px 8px rgba(75,46,43,.1)}.header-container{max-width:1200px;margin:0 auto;padding:0 1rem;display:flex;justify-content:space-between;align-items:center}.logo-section{display:flex;align-items:center;gap:1rem}.logo-icon{width:48px;height:48px;border-radius:50%;background-color:var(--accent-rust);padding:6px}.brand-title{font-size:1.8rem;color:var(--accent-brown);margin:0}.burger-menu{display:none;flex-direction:column;background:none;border:none;cursor:pointer;gap:6px}.burger-menu span{width:25px;height:3px;background-color:var(--accent-brown);border-radius:2px;transition:all .3s ease}.burger-menu.active span:nth-child(1){transform:rotate(45deg) translate(8px, 8px)}.burger-menu.active span:nth-child(2){opacity:0}.burger-menu.active span:nth-child(3){transform:rotate(-45deg) translate(5px, -5px)}.navigation-menu{display:flex;gap:2rem}.nav-link{font-size:1.1rem;font-family:"Merriweather",serif;color:var(--accent-brown);padding:.5rem 0;border-bottom:2px solid rgba(0,0,0,0);transition:all .3s ease}.nav-link:hover,.nav-link.active{color:var(--accent-rust);border-bottom-color:var(--accent-rust)}.vintage-hero{height:600px;background:linear-gradient(135deg, var(--accent-rust) 0%, var(--accent-orange) 100%);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.vintage-hero::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:repeating-linear-gradient(90deg, transparent, transparent 2px, rgba(255, 255, 255, 0.03) 2px, rgba(255, 255, 255, 0.03) 4px),repeating-linear-gradient(0deg, transparent, transparent 2px, rgba(255, 255, 255, 0.03) 2px, rgba(255, 255, 255, 0.03) 4px);pointer-events:none}.hero-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:rgba(75,46,43,.3);background:radial-gradient(circle at 50% 40%, rgba(255, 255, 255, 0.05), rgba(0, 0, 0, 0.6));animation:lightShift 8s infinite ease-in-out}@keyframes lightShift{0%,100%{background-position:50% 40%}50%{background-position:60% 45%}}.hero-content{position:relative;z-index:1;text-align:center;color:var(--text-light);animation:fadeUp 1.6s ease-out both}.hero-title{font-size:4rem;margin-bottom:1rem;color:var(--text-light);text-shadow:2px 2px 4px rgba(0,0,0,.3)}.hero-subtitle{font-size:1.5rem;margin-bottom:2rem;color:var(--text-light)}@keyframes fadeUp{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.cta-button{position:relative;overflow:hidden}.cta-button::after{content:"";position:absolute;top:0;left:-75%;width:50%;height:100%;background:hsla(0,0%,100%,.2);transform:skewX(-25deg);animation:shine 4s infinite}@keyframes shine{0%{left:-75%}60%{left:125%}100%{left:125%}}.cta-button{display:inline-block;padding:.8rem 2rem;background-color:var(--accent-olive);color:var(--text-light);border:none;border-radius:4px;font-family:"Merriweather",serif;font-size:1rem;cursor:pointer;transition:all .3s ease;text-decoration:none}.cta-button:hover{background-color:var(--accent-brown);transform:translateY(-2px);box-shadow:0 4px 12px rgba(85,107,47,.3)}.cta-button-alt{background-color:var(--accent-rust)}.cta-button-alt:hover{background-color:var(--accent-orange)}.container-content{max-width:1200px;margin:0 auto;padding:4rem 1rem}.section-heading{text-align:center;margin-bottom:3rem;color:var(--accent-brown);position:relative}.section-heading::after{content:"";display:block;width:80px;height:3px;background-color:var(--accent-rust);margin:1rem auto 0}.about-section{background-color:var(--cream-bg);border-top:1px solid var(--border-color)}.wrapper-content{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.about-text{order:2}.about-text p{font-size:1.1rem;color:var(--text-dark)}.about-image{order:1}.about-image img{width:100%;border-radius:8px;box-shadow:0 8px 24px rgba(75,46,43,.15)}.featured-items{background-color:var(--cream-bg);padding:4rem 1rem}.items-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(250px, 1fr));gap:2rem;max-width:1200px;margin:0 auto}.item-card{background-color:#fff;border-radius:8px;overflow:hidden;box-shadow:0 4px 12px rgba(75,46,43,.1);transition:transform .3s ease,box-shadow .3s ease}.item-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px rgba(75,46,43,.15)}.item-image{width:100%;height:200px;overflow:hidden;background-color:var(--border-color)}.item-image img{width:100%;height:100%;object-fit:cover}.item-name{color:var(--accent-rust);padding:1.5rem 1.5rem .5rem}.item-description{padding:.5rem 1.5rem 1.5rem;font-size:.95rem;color:#666}.cta-section{background:linear-gradient(135deg, var(--accent-olive) 0%, var(--accent-brown) 100%);color:var(--text-light);padding:4rem 1rem;text-align:center}.cta-section h3{color:var(--text-light);font-size:2.5rem;margin-bottom:1rem}.cta-section p{color:var(--text-light);font-size:1.2rem;margin-bottom:2rem}.menu-hero{background:linear-gradient(135deg, rgba(201, 124, 93, 0.7) 0%, rgba(224, 141, 60, 0.5) 100%),url(assets/images/espresso-beans-6909b3828eb74.webp) center/cover no-repeat;color:var(--text-light);padding:4rem 1rem;text-align:center}.menu-hero h2{color:var(--text-light);margin-bottom:1rem}.menu-hero p{color:var(--text-light);font-size:1.1rem}.menu-container{padding:4rem 1rem}.menu-category{margin-bottom:4rem}.menu-category-title{color:var(--accent-brown);border-bottom:2px solid var(--accent-rust);padding-bottom:.5rem;margin-bottom:2rem}.menu-items-list{display:flex;flex-direction:column;gap:2rem}.menu-item{border-bottom:1px solid var(--border-color);padding-bottom:1.5rem}.menu-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.menu-item h4{color:var(--accent-rust);margin:0}.menu-price{font-size:1.1rem;font-weight:700;color:var(--accent-olive)}.menu-item p{font-size:.95rem;color:#666;margin:0}.gallery-hero{background:linear-gradient(135deg, var(--accent-olive) 0%, var(--accent-brown) 100%);color:var(--text-light);padding:4rem 1rem;text-align:center}.gallery-hero h2{color:var(--text-light)}.gallery-hero p{color:var(--text-light);font-size:1.1rem}.gallery-container{padding:4rem 1rem}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));gap:2rem;max-width:1200px;margin:0 auto}.gallery-item{position:relative;overflow:hidden;border-radius:8px;aspect-ratio:1;cursor:pointer}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.gallery-item:hover img{transform:scale(1.05)}.gallery-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:rgba(75,46,43,.7);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}.gallery-item:hover .gallery-overlay{opacity:1}.gallery-overlay p{color:var(--text-light);font-size:1.3rem;margin:0;font-family:"Abril Fatface",serif}.contacts-hero{background:linear-gradient(135deg, rgba(201, 124, 93, 0.7) 0%, rgba(224, 141, 60, 0.5) 100%),url(assets/images/cappuccino-making-draw-6909b382af75e.webp) center/cover no-repeat;color:var(--text-light);padding:4rem 1rem;text-align:center}.contacts-hero h2{color:var(--text-light)}.contacts-hero p{color:var(--text-light);font-size:1.1rem}.contacts-container{padding:4rem 1rem}.contacts-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;max-width:1200px;margin:0 auto 4rem}.contact-info-section,.booking-form-section{background-color:#fff;padding:2rem;border-radius:8px;box-shadow:0 4px 12px rgba(75,46,43,.1)}.contact-item{margin-bottom:2rem}.contact-item h4{color:var(--accent-rust);margin-bottom:.5rem}.contact-link{font-size:1.1rem;color:var(--accent-rust)}.contacts-img{max-width:460px;border-radius:16px;margin:60px auto 0}.contact-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column}.form-group label{margin-bottom:.5rem;color:var(--accent-brown);font-weight:600}.form-group input,.form-group select,.form-group textarea{padding:.8rem;border:2px solid var(--border-color);border-radius:4px;font-family:"Merriweather",serif;font-size:1rem;background-color:#fff;color:var(--text-dark);transition:border-color .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--accent-rust)}.submit-button{padding:.8rem 2rem;background-color:var(--accent-rust);color:#fff;border:none;border-radius:4px;font-size:1rem;font-family:"Merriweather",serif;cursor:pointer;transition:all .3s ease;align-self:flex-start}.submit-button:hover{background-color:var(--accent-orange);transform:translateY(-2px)}.map-section{max-width:1200px;margin:0 auto;padding:0 1rem}.map-section h3{text-align:center;margin-bottom:2rem}.map-frame{width:100%;height:450px;border:2px solid var(--accent-rust);border-radius:8px}.modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);z-index:1000;align-items:center;justify-content:center}.modal.show{display:flex}.modal-content{background-color:var(--cream-bg);padding:2rem;border-radius:8px;max-width:500px;position:relative;text-align:center;box-shadow:0 8px 24px rgba(0,0,0,.3)}.modal-close{position:absolute;top:1rem;right:1rem;font-size:2rem;cursor:pointer;color:var(--accent-brown)}.modal-content h3{color:var(--accent-brown);margin-bottom:1rem}.modal-content p{margin-bottom:2rem}.vintage-footer{background-color:var(--accent-brown);color:var(--text-light);padding:3rem 1rem 1rem}.footer-content{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit, minmax(250px, 1fr));gap:2rem;margin-bottom:2rem}.footer-section h4{color:var(--accent-orange);margin-bottom:1rem}.footer-section p{color:var(--text-light);margin-bottom:.5rem;font-size:.95rem}.footer-section a{color:var(--accent-orange)}.footer-section a:hover{color:var(--accent-rust)}.footer-links{list-style:none}.footer-links li{margin-bottom:.5rem}.footer-bottom{text-align:center;border-top:1px solid hsla(0,0%,100%,.2);padding-top:1rem;font-size:.9rem}.footer-bottom p{color:var(--accent-rust)}.policy-container h2{text-align:center}.policy-content{max-width:800px;margin:0 auto;background-color:#fff;padding:2rem;border-radius:8px;box-shadow:0 4px 12px rgba(75,46,43,.1)}.policy-content h3{color:var(--accent-rust);margin-top:1.5rem}.policy-content ul{margin-left:1.5rem;margin-bottom:1rem}.policy-content li{margin-bottom:.5rem;color:var(--text-dark)}@media(max-width: 768px){.burger-menu{display:flex}.navigation-menu{position:absolute;top:100%;left:0;right:0;opacity:0;background-color:var(--cream-bg);flex-direction:column;gap:1rem;padding:1rem;max-height:0;overflow:hidden;transition:all .3s ease;border-bottom:3px solid var(--accent-brown);pointer-events:none}.navigation-menu.show{max-height:360px;padding:2.5rem 1rem;opacity:1;pointer-events:all}.nav-link{padding:.5rem 0}.vintage-hero{height:400px}.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1.1rem}h2{font-size:2rem}h3{font-size:1.5rem}.container-content{grid-template-columns:1fr;gap:2rem}.about-image{order:2}.about-text{order:1}.contacts-grid{grid-template-columns:1fr;gap:2rem}.gallery-grid{grid-template-columns:repeat(auto-fit, minmax(200px, 1fr))}.map-frame{height:300px}.footer-content{grid-template-columns:1fr}.menu-container{padding:0 1rem}}@media(max-width: 480px){.brand-title{font-size:1.3rem}.hero-title{font-size:1.8rem}.items-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr}.menu-item-header{flex-direction:column;align-items:flex-start;gap:.5rem}}
