@import "https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Outfit:wght@300;400;500;600&display=swap";*,:before,:after{box-sizing:border-box}html,body{width:100%;margin:0;padding:0;overflow-x:hidden}#root{text-align:left;border:none;width:100%;max-width:100%}:root{--white:#fdfbf7;--cream:#f8f2e6;--gold:#c9a84c;--gold-light:#e8c96f;--gold-dark:#9e7b30;--brown:#5c3d2e;--brown-light:#8b6355;--brown-dark:#3a2318;--mocha:#7b5b40;--text:#4a3728;--text-light:#8b7b6d;--text-muted:#b5a898;--border:#e8ddd0;--bg:#fdfbf7;--grad-gold:linear-gradient(135deg, #c9a84c 0%, #e8c96f 50%, #c9a84c 100%);--grad-hero:linear-gradient(180deg, #3a23188c 0%, #5d3d2e66 60%, #3a2318a6 100%);--grad-section:linear-gradient(180deg, #fdfbf7 0%, #f8f2e6 100%);--shadow-sm:0 2px 8px #5c3d2e14;--shadow-md:0 8px 24px #5c3d2e24;--shadow-lg:0 20px 60px #5c3d2e2e;--shadow-gold:0 4px 24px #c9a84c4d;--font-serif:"Playfair Display", Georgia, serif;--font-sans:"Outfit", system-ui, sans-serif;--section-pad:100px;--container:1200px;--radius-sm:8px;--radius-md:16px;--radius-lg:24px;--radius-xl:32px;--transition:.3s cubic-bezier(.4, 0, .2, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;line-height:1.6;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}ul{list-style:none}button{cursor:pointer;border:none;outline:none}input,textarea,select{font-family:var(--font-sans);outline:none}#root{width:100%;min-height:100vh}.section-container{max-width:var(--container);margin:0 auto;padding:0 24px}.section-header{text-align:center;margin-bottom:56px}.section-eyebrow{font-family:var(--font-sans);letter-spacing:4px;text-transform:uppercase;color:var(--gold);margin-bottom:12px;font-size:13px;font-weight:600}.section-title{font-family:var(--font-serif);color:var(--brown-dark);margin-bottom:16px;font-size:clamp(2rem,4vw,3rem);font-weight:600;line-height:1.2}.section-desc{color:var(--text-light);max-width:540px;margin:0 auto;font-size:1rem;line-height:1.75}.gold-text{color:var(--gold)}.btn-primary{background:var(--grad-gold);color:var(--brown-dark);font-family:var(--font-sans);cursor:pointer;transition:var(--transition);box-shadow:var(--shadow-gold);letter-spacing:.5px;white-space:nowrap;border:none;border-radius:50px;align-items:center;gap:8px;padding:14px 32px;font-size:.95rem;font-weight:600;display:inline-flex}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 32px #c9a84c73}.btn-outline{color:#fff;font-family:var(--font-sans);cursor:pointer;transition:var(--transition);white-space:nowrap;background:0 0;border:1.5px solid #ffffffb3;border-radius:50px;align-items:center;gap:8px;padding:13px 30px;font-size:.95rem;font-weight:500;display:inline-flex}.btn-outline:hover{background:#ffffff1f;border-color:#fff;transform:translateY(-2px)}.btn-full{justify-content:center;width:100%}.navbar{z-index:1000;transition:var(--transition);padding:20px 0;position:fixed;top:0;left:0;right:0}.navbar.scrolled{-webkit-backdrop-filter:blur(20px);box-shadow:var(--shadow-md);background:#fdfbf7f2;padding:12px 0}.navbar-container{max-width:var(--container);justify-content:space-between;align-items:center;margin:0 auto;padding:0 24px;display:flex}.navbar-brand{align-items:center;gap:10px;text-decoration:none;display:flex}.brand-icon{font-size:1.6rem}.brand-text{font-family:var(--font-serif);color:#fff;transition:var(--transition);font-size:1.4rem;font-weight:700}.scrolled .brand-text{color:var(--brown-dark)}.brand-gold{color:var(--gold-light)}.scrolled .brand-gold{color:var(--gold)}.navbar-links{align-items:center;gap:8px;display:flex}.nav-link{color:#ffffffe6;transition:var(--transition);border-radius:50px;padding:8px 16px;font-size:.9rem;font-weight:500;display:block}.scrolled .nav-link{color:var(--text)}.nav-link:hover{color:#fff;background:#ffffff26}.scrolled .nav-link:hover{background:var(--cream);color:var(--brown)}.nav-btn{background:var(--grad-gold);transition:var(--transition);box-shadow:var(--shadow-gold);border-radius:50px;padding:9px 22px;font-size:.88rem;font-weight:600;display:inline-block;color:var(--brown-dark)!important}.nav-btn:hover{transform:translateY(-2px);box-shadow:0 6px 24px #c9a84c73}.hamburger{cursor:pointer;background:0 0;border:none;flex-direction:column;gap:5px;padding:4px;display:none}.hamburger span{width:24px;height:2px;transition:var(--transition);background:#fff;border-radius:2px;display:block}.scrolled .hamburger span{background:var(--brown)}.hamburger.open span:first-child{transform:translateY(7px)rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.hero-section{justify-content:center;align-items:center;height:100vh;min-height:650px;display:flex;position:relative;overflow:hidden}.hero-bg{object-fit:cover;object-position:center;width:100%;height:100%;animation:20s ease-in-out infinite alternate heroKenBurns;position:absolute;inset:0;transform:scale(1.05)}@keyframes heroKenBurns{0%{transform:scale(1.05)translate(0)}to{transform:scale(1.12)translate(-1%,1%)}}.hero-overlay{background:var(--grad-hero);z-index:1;position:absolute;inset:0}.hero-content{z-index:2;text-align:center;color:#fff;max-width:800px;padding:0 24px;position:relative}.hero-tagline{letter-spacing:5px;text-transform:uppercase;color:var(--gold-light);margin-bottom:20px;font-size:.85rem;font-weight:500;animation:.8s both fadeInUp}.hero-title{font-family:var(--font-serif);color:#fff;margin-bottom:24px;font-size:clamp(4rem,10vw,8rem);font-weight:700;line-height:.9;animation:.8s .15s both fadeInUp}.hero-title span{color:var(--gold-light);display:block}.hero-sub{color:#ffffffd9;margin-bottom:40px;font-size:1.05rem;line-height:1.75;animation:.8s .3s both fadeInUp}.hero-actions{flex-wrap:wrap;justify-content:center;gap:16px;margin-bottom:60px;animation:.8s .45s both fadeInUp;display:flex}.hero-stats{justify-content:center;align-items:center;gap:32px;animation:.8s .6s both fadeInUp;display:flex}.stat{text-align:center}.stat-num{font-family:var(--font-serif);color:var(--gold-light);font-size:2rem;font-weight:700;display:block}.stat-label{color:#ffffffb3;letter-spacing:1px;font-size:.75rem}.stat-divider{background:#ffffff40;width:1px;height:40px}.hero-scroll-indicator{z-index:2;position:absolute;bottom:32px;left:50%;transform:translate(-50%)}.scroll-dot{background:var(--gold-light);border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite scrollBounce}@keyframes scrollBounce{0%,to{opacity:1;transform:translateY(0)}50%{opacity:.4;transform:translateY(12px)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.menu-section{padding:var(--section-pad) 0;background:var(--grad-section)}.menu-tabs{flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:48px;display:flex}.menu-tab{border:1.5px solid var(--border);color:var(--text-light);font-size:.9rem;font-weight:500;font-family:var(--font-sans);transition:var(--transition);background:#fff;border-radius:50px;align-items:center;gap:6px;padding:10px 24px;display:flex}.menu-tab:hover{border-color:var(--gold);color:var(--gold-dark)}.menu-tab.active{background:var(--grad-gold);color:var(--brown-dark);box-shadow:var(--shadow-gold);border-color:#0000;font-weight:600}.menu-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;display:grid}.menu-card{border-radius:var(--radius-lg);border:1px solid var(--border);transition:var(--transition);box-shadow:var(--shadow-sm);background:#fff;flex-direction:column;display:flex;position:relative;overflow:hidden}.menu-card:hover{box-shadow:var(--shadow-lg);border-color:var(--gold-light);transform:translateY(-6px)}.menu-badge{background:var(--grad-gold);color:var(--brown-dark);letter-spacing:.5px;z-index:1;text-transform:uppercase;border-radius:50px;padding:4px 10px;font-size:.7rem;font-weight:700;position:absolute;top:14px;right:14px}.menu-image-wrap{background:linear-gradient(135deg, var(--cream) 0%, #f5ede0 100%);flex-shrink:0;width:100%;height:200px;position:relative;overflow:hidden}.menu-photo{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform .5s cubic-bezier(.4,0,.2,1);display:block}.menu-card:hover .menu-photo{transform:scale(1.06)}.menu-placeholder{background:linear-gradient(135deg, var(--cream) 0%, #f0e6d8 100%);justify-content:center;align-items:center;width:100%;height:100%;font-size:4rem;display:flex}.menu-card-body{flex-direction:column;flex:1;padding:16px 20px 20px;display:flex}.menu-name{font-family:var(--font-serif);color:var(--brown-dark);margin-bottom:2px;font-size:1.15rem;font-weight:600}.menu-name-en{color:var(--gold-dark);letter-spacing:.3px;margin-bottom:8px;font-size:.78rem;font-style:italic}.menu-desc{color:var(--text-light);flex:1;margin-bottom:16px;font-size:.86rem;line-height:1.6}.menu-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding-top:14px;display:flex}.menu-price{font-family:var(--font-serif);color:var(--brown);font-size:1.3rem;font-weight:700}.menu-order-btn{background:var(--grad-gold);color:var(--brown-dark);transition:var(--transition);cursor:pointer;font-size:.82rem;font-weight:600;font-family:var(--font-sans);border:none;border-radius:50px;padding:7px 18px}.menu-order-btn:hover{transform:scale(1.05);box-shadow:0 4px 16px #c9a84c66}.about-section{padding:var(--section-pad) 0;background:var(--brown-dark);position:relative;overflow:hidden}.about-section:before{content:"";background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23C9A84C' fill-opacity='0.04'%3E%3Ccircle cx='30' cy='30' r='2'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");position:absolute;inset:0}.about-section .section-title,.about-section .section-eyebrow{color:var(--gold-light)}.about-grid{grid-template-columns:1fr 1fr;align-items:center;gap:72px;display:grid;position:relative}.about-image-wrapper{position:relative}.about-img{object-fit:cover;border-radius:var(--radius-xl);width:100%;height:580px;box-shadow:var(--shadow-lg)}.about-img-badge{background:var(--grad-gold);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-gold);padding:20px 28px;position:absolute;bottom:-20px;right:-20px}.badge-year{font-family:var(--font-serif);color:var(--brown-dark);font-size:2.5rem;font-weight:700;line-height:1;display:block}.badge-since{color:var(--brown);letter-spacing:1px;font-size:.75rem;font-weight:500}.about-content{color:#fff}.about-desc{color:#ffffffbf;margin-bottom:16px;font-size:.97rem;line-height:1.8}.about-values{grid-template-columns:1fr 1fr;gap:20px;margin:32px 0;display:grid}.value-item{border-radius:var(--radius-md);transition:var(--transition);background:#ffffff0f;border:1px solid #c9a84c33;align-items:flex-start;gap:12px;padding:16px;display:flex}.value-item:hover{background:#c9a84c1a;border-color:#c9a84c66}.value-icon{flex-shrink:0;font-size:1.5rem}.value-title{color:var(--gold-light);margin-bottom:4px;font-size:.9rem;font-weight:600}.value-desc{color:#ffffffa6;font-size:.8rem;line-height:1.5}.about-signature{border-top:1px solid #c9a84c33;align-items:center;gap:16px;padding-top:24px;display:flex}.signature-img{opacity:.9;width:120px}.signature-name{font-family:var(--font-serif);color:#fff;margin-bottom:4px;font-size:1rem}.signature-role{color:var(--gold-light);letter-spacing:.5px;font-size:.8rem}.contact-section{padding:var(--section-pad) 0;background:var(--cream)}.contact-grid{grid-template-columns:1fr 1.4fr;align-items:start;gap:48px;display:grid}.contact-info{background:var(--brown-dark);border-radius:var(--radius-xl);color:#fff;padding:40px;position:relative;overflow:hidden}.contact-info:before{content:"☕";opacity:.05;font-size:120px;position:absolute;bottom:-20px;right:-10px}.contact-info-title{font-family:var(--font-serif);color:var(--gold-light);margin-bottom:28px;font-size:1.5rem}.contact-info-list{flex-direction:column;gap:20px;display:flex}.contact-info-item{align-items:flex-start;gap:14px;display:flex}.contact-info-icon{flex-shrink:0;margin-top:2px;font-size:1.3rem}.contact-info-label{color:var(--gold);letter-spacing:1px;text-transform:uppercase;margin-bottom:4px;font-size:.75rem}.contact-info-value{color:#ffffffd9;font-size:.9rem;line-height:1.5}.contact-social{border-top:1px solid #ffffff1a;margin-top:32px;padding-top:24px}.social-title{color:var(--gold);letter-spacing:2px;text-transform:uppercase;margin-bottom:14px;font-size:.8rem}.social-links{gap:10px;display:flex}.social-btn{color:#fff;width:40px;height:40px;transition:var(--transition);background:#ffffff14;border:1px solid #c9a84c4d;border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;font-weight:700;text-decoration:none;display:flex}.social-btn:hover{background:var(--grad-gold);color:var(--brown-dark);border-color:#0000;transform:translateY(-2px)}.cafe-hours-badge{color:var(--gold-light);background:#c9a84c1a;border:1px solid #c9a84c40;border-radius:50px;align-items:center;gap:8px;margin-top:24px;padding:10px 16px;font-size:.85rem;font-weight:500;display:flex}.hours-dot{background:#4caf50;border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite pulse}@keyframes pulse{0%,to{box-shadow:0 0 #4caf5080}50%{box-shadow:0 0 0 6px #4caf5000}}.contact-form-wrapper{border-radius:var(--radius-xl);box-shadow:var(--shadow-md);border:1px solid var(--border);background:#fff;padding:40px}.form-title{font-family:var(--font-serif);color:var(--brown-dark);margin-bottom:28px;font-size:1.6rem}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-group{flex-direction:column;gap:6px;margin-bottom:18px;display:flex}.form-group label{color:var(--text);letter-spacing:.3px;font-size:.82rem;font-weight:600}.form-group input,.form-group select,.form-group textarea{border:1.5px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text);background:var(--white);transition:var(--transition);padding:12px 16px;font-size:.9rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px #c9a84c1f}.form-group textarea{resize:vertical}.form-success{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:60px 20px;display:flex}.success-icon{font-size:3rem;animation:.6s bounceIn}.form-success h3{font-family:var(--font-serif);color:var(--brown-dark);font-size:1.5rem}.form-success p{color:var(--text-light)}@keyframes bounceIn{0%{transform:scale(0)}60%{transform:scale(1.2)}to{transform:scale(1)}}.footer{background:var(--brown-dark);border-top:1px solid #c9a84c33;padding:40px 0}.footer-container{max-width:var(--container);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin:0 auto;padding:0 24px;display:flex}.footer-logo{font-family:var(--font-serif);color:var(--gold-light);font-size:1.3rem;font-weight:700}.footer-tagline{color:#ffffff80;margin-top:4px;font-size:.8rem}.footer-links{gap:24px;display:flex}.footer-links a{color:#ffffffa6;transition:var(--transition);font-size:.88rem}.footer-links a:hover{color:var(--gold-light)}.footer-copy{color:#ffffff59;font-size:.8rem}@media (width<=1024px){:root{--section-pad:72px}.about-grid{grid-template-columns:1fr;gap:48px}.about-img{height:420px}.about-img-badge{bottom:-16px;right:16px}.about-section .section-title{text-align:center!important}.contact-grid{grid-template-columns:1fr}}@media (width<=768px){:root{--section-pad:60px}.hamburger{order:3;display:flex}.navbar-links{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:999;background:#3a2318f7;flex-direction:column;justify-content:center;align-items:flex-start;gap:0;width:300px;padding:80px 32px 40px;transition:right .4s cubic-bezier(.4,0,.2,1);position:fixed;top:0;bottom:0;right:-100%}.navbar-links.open{right:0}.navbar-links li{width:100%}.nav-link{border-bottom:1px solid #ffffff14;border-radius:0;padding:14px 0;font-size:1.1rem;display:block;color:#ffffffe6!important}.nav-btn{margin-top:24px;padding:12px 28px;display:inline-block}.hero-stats{gap:20px}.stat-num{font-size:1.6rem}.hero-actions{flex-direction:column;align-items:center}.menu-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.about-values,.form-row{grid-template-columns:1fr}.contact-info,.contact-form-wrapper{padding:28px}.footer-container{text-align:center;flex-direction:column}.footer-links{justify-content:center}}@media (width<=480px){:root{--section-pad:48px}.hero-title{font-size:3.5rem}.hero-sub{font-size:.92rem}.menu-grid{grid-template-columns:1fr}.about-img{height:300px}.section-title{font-size:1.8rem}}
