@import"https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;600;700&family=Space+Grotesk:wght@400;500;600&display=swap";:root{color:#f4efe8;background-color:#050505;font-family:Space Grotesk,Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh;background-color:#050505;color:#f4efe8}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:auto}.peran-site{background-color:#050505;color:#f4efe8;min-height:100vh;position:relative;overflow-x:hidden}.peran-site:before{content:"";position:fixed;inset:0;background:radial-gradient(circle at 20% 30%,rgba(220,38,38,.08),transparent 50%),radial-gradient(circle at 80% 70%,rgba(220,38,38,.06),transparent 50%);pointer-events:none;z-index:0}.peran-site>*{position:relative;z-index:1}h1,h2,.mark{font-family:Playfair Display,Times New Roman,serif;font-weight:600;letter-spacing:.02em;display:inline-block;line-height:1}.logo-image{height:clamp(2.5rem,5vw,4rem);width:auto;object-fit:cover;object-position:center;max-width:none}.footer-logo{height:clamp(4rem,6vw,6rem);margin-bottom:.5rem}.site-header{position:fixed;top:0;left:0;right:0;z-index:20;background:#050505eb;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid rgba(244,239,232,.08);transition:background .3s cubic-bezier(.2,.8,.2,1),backdrop-filter .3s cubic-bezier(.2,.8,.2,1),border-color .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s cubic-bezier(.2,.8,.2,1)}.site-header.scrolled{background:#050505fa;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border-bottom:1px solid rgba(244,239,232,.15);box-shadow:0 4px 24px #0006,0 8px 48px #0003}.nav{display:flex;align-items:center;justify-content:space-between;padding:.75rem clamp(1.5rem,4vw,4rem);gap:1.5rem;min-height:auto}.mark{font-size:1.5rem;text-transform:uppercase;letter-spacing:.4em}.mark .accent{color:#dc2626}.nav-links{display:flex;gap:1.5rem;text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;flex-wrap:wrap;justify-content:center}.nav a{color:#f4efe899;transition:color .2s ease}.nav-links a{display:inline-flex;align-items:center;gap:.4rem}.nav-chinese-char{color:#dc2626;font-size:.9em;font-weight:500}.nav a:hover,.nav a.active{color:#f4efe8}.hero{position:relative;padding:3rem clamp(1.5rem,4vw,4rem) 4rem;border-bottom:1px solid rgba(244,239,232,.08);overflow:visible;background:radial-gradient(circle at top right,rgba(220,38,38,.18),transparent 55%)}.hero:after{content:"";position:absolute;inset:20% -20% -10% 40%;background:radial-gradient(circle,rgba(220,38,38,.12),transparent 60%);filter:blur(120px);pointer-events:none}.hero-content{max-width:840px;padding:4rem 0 2rem;margin:0 auto;text-align:center}.eyebrow{text-transform:uppercase;letter-spacing:.3em;font-size:.75rem;color:#f4efe899}.lede{font-size:1.15rem;color:#f4efe8c7;margin-bottom:2rem}.cta-row{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}.primary-btn,.ghost-btn,.text-btn{font-family:Space Grotesk,sans-serif;letter-spacing:.1em;text-transform:uppercase;font-size:.8rem;padding:.85rem 1.6rem;border-radius:999px;border:1px solid transparent;cursor:pointer;background:none;color:inherit;transition:all .2s ease}.primary-btn{background-color:#dc2626;color:#f4efe8;border-color:#dc2626}.primary-btn:hover{background-color:transparent;color:#dc2626}.ghost-btn{border-color:#f4efe84d}.ghost-btn:hover{border-color:#f4efe8}.text-btn{border:none;padding:0;border-bottom:1px solid rgba(244,239,232,.4);border-radius:0;letter-spacing:.2em}.hero-slides{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin-top:2rem}.hero-slide{border:1px solid rgba(244,239,232,.1);border-radius:1.5rem;overflow:hidden;background:#ffffff05}.hero-image{aspect-ratio:3 / 4;background-size:cover;background-position:center}.hero-slide-caption{padding:1.25rem;color:#f4efe8cc}.slide-label{text-transform:uppercase;letter-spacing:.3em;font-size:.7rem;color:#f4efe8}main{padding:2.5rem clamp(1.5rem,4vw,4rem) 5rem;background:radial-gradient(circle at 10% 20%,rgba(220,38,38,.08),transparent 45%),radial-gradient(circle at 80% 0%,rgba(220,38,38,.06),transparent 50%);position:relative}main>:not(:last-child){margin-bottom:5rem}section{scroll-margin-top:140px}.story{display:grid;gap:0}.story-hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;isolation:isolate}.story-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;background-attachment:fixed;z-index:0}.story-hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,#05050566,#05050580,#05050599);z-index:1}.story-hero-content{position:relative;z-index:2;text-align:center;max-width:900px;padding:clamp(2rem,6vw,6rem) clamp(1.5rem,4vw,4rem);color:#f4efe8}.story-hero-content .eyebrow{color:#f4efe8cc;margin-bottom:1.5rem}.story-hero-content h2{font-size:clamp(2rem,5vw,3.5rem);text-shadow:0 4px 40px rgba(5,5,5,.8),0 8px 80px rgba(5,5,5,.6);line-height:1.2;margin:0}.story-content{padding:clamp(3rem,6vw,5rem) clamp(1.5rem,4vw,4rem);max-width:1200px;margin:0 auto}.story-content>p{font-size:clamp(1rem,2vw,1.2rem);line-height:1.7;color:#f4efe8d9;margin-bottom:3rem}.story-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem}.philosophy-main{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;isolation:isolate}.philosophy-main-bg{position:absolute;inset:0;background-size:cover;background-position:center;background-attachment:fixed;z-index:0}.philosophy-main-overlay{position:absolute;inset:0;background:linear-gradient(180deg,#05050566,#05050580,#05050599);z-index:1}.philosophy-main-content{position:relative;z-index:2;max-width:900px;margin:0 auto;text-align:center;padding:clamp(2rem,6vw,6rem) clamp(1.5rem,4vw,4rem);color:#f4efe8}.philosophy-main-title{font-family:Playfair Display,Times New Roman,serif;font-size:clamp(2.5rem,5vw,4rem);font-weight:600;letter-spacing:.02em;margin-bottom:1rem;color:#f4efe8;text-shadow:0 4px 40px rgba(5,5,5,.8),0 8px 80px rgba(5,5,5,.6)}.philosophy-main-subtitle{font-size:clamp(1.1rem,2.5vw,1.5rem);color:#f4efe8e6;margin-bottom:2rem;font-style:italic;text-shadow:0 2px 20px rgba(5,5,5,.7)}.philosophy-main-text{font-size:clamp(1rem,2vw,1.2rem);line-height:1.7;color:#f4efe8e6;margin-bottom:2.5rem;max-width:800px;margin-left:auto;margin-right:auto;text-shadow:0 2px 20px rgba(5,5,5,.7)}.philosophy-main-cta{display:inline-block;font-family:Space Grotesk,sans-serif;letter-spacing:.1em;text-transform:uppercase;font-size:.85rem;padding:1rem 2rem;border:1px solid rgba(244,239,232,.3);border-radius:999px;color:#f4efe8;text-decoration:none;transition:all .2s ease}.philosophy-main-cta:hover{border-color:#f4efe8;background:#f4efe80d}.philosophy-calendar{padding:clamp(3rem,6vw,6rem) 0}.philosophy-calendar-header{margin-bottom:3rem;text-align:center}.philosophy-calendar-header h2{font-family:Playfair Display,Times New Roman,serif;font-size:clamp(2.5rem,5vw,3.5rem);font-weight:600;letter-spacing:.02em;color:#f4efe8}.philosophy-calendar-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.philosophy-calendar-card{border-radius:1rem;overflow:hidden;background:#ffffff05;border:1px solid rgba(244,239,232,.1);transition:transform .3s ease,border-color .3s ease}.philosophy-calendar-card:hover{transform:translateY(-4px);border-color:#f4efe833}.philosophy-calendar-image{width:100%;aspect-ratio:4 / 3;background-size:cover;background-position:center;transition:transform .6s cubic-bezier(.2,.8,.2,1)}.philosophy-calendar-card:hover .philosophy-calendar-image{transform:scale(1.05)}.philosophy-calendar-content{padding:2rem}.philosophy-calendar-title{font-family:Playfair Display,Times New Roman,serif;font-size:clamp(1.5rem,3vw,2rem);font-weight:600;letter-spacing:.02em;margin-bottom:1rem;color:#f4efe8}.philosophy-calendar-description{font-size:clamp(.95rem,1.8vw,1.1rem);line-height:1.6;color:#f4efe8cc;margin-bottom:1.5rem}.philosophy-calendar-cta{display:inline-block;font-family:Space Grotesk,sans-serif;letter-spacing:.1em;text-transform:uppercase;font-size:.8rem;color:#dc2626;text-decoration:none;border-bottom:1px solid rgba(220,38,38,.4);padding-bottom:.2rem;transition:border-color .2s ease}.philosophy-calendar-cta:hover{border-color:#dc2626}.mini-title{letter-spacing:.2em;text-transform:uppercase;font-size:.75rem;color:#f4efe8a6}.underlined{text-decoration:underline;text-decoration-color:#dc2626;text-underline-offset:.2em;text-decoration-thickness:1px}.section-header{max-width:760px;margin-bottom:2rem}.tasting-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.tasting-card{border:1px solid rgba(244,239,232,.1);border-radius:1.4rem;padding:1.75rem;background:#ffffff05;display:flex;flex-direction:column;gap:1rem}.tasting-top{display:flex;justify-content:space-between;align-items:center;font-size:.95rem}.tasting-card .mini-title{font-size:clamp(1.5rem,4vw,2.5rem);font-weight:600;letter-spacing:.1em;color:#f4efe8}.muted{color:#f4efe899}.tasting-hero{padding:0;margin-bottom:0}.tasting-hero-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;min-height:60vh}.tasting-hero-image{width:100%;background-size:cover;background-position:center;min-height:60vh;transition:transform .6s cubic-bezier(.2,.8,.2,1)}.tasting-hero-image:hover{transform:scale(1.05)}.tasting-main-title{padding:clamp(4rem,8vw,6rem) 0;text-align:center;margin-bottom:0}.tasting-main-title h2{font-family:Playfair Display,Times New Roman,serif;font-size:clamp(3rem,7vw,5.5rem);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#f4efe8;margin:0}.tasting-packages{padding:clamp(3rem,6vw,5rem) clamp(1.5rem,4vw,4rem)}.tasting-packages-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem;max-width:1400px;margin:0 auto}.tasting-package-card{border-radius:1rem;overflow:hidden;background:#ffffff05;border:1px solid rgba(244,239,232,.1);transition:transform .3s ease,border-color .3s ease;display:flex;flex-direction:column}.tasting-package-card:hover{transform:translateY(-6px);border-color:#f4efe840}.tasting-package-image{width:100%;aspect-ratio:4 / 3;background-size:cover;background-position:center;transition:transform .6s cubic-bezier(.2,.8,.2,1)}.tasting-package-card:hover .tasting-package-image{transform:scale(1.08)}.tasting-package-content{padding:2rem;display:flex;flex-direction:column;gap:1.25rem;flex:1}.tasting-package-title{font-family:Playfair Display,Times New Roman,serif;font-size:clamp(1.5rem,3vw,2rem);font-weight:600;letter-spacing:.02em;margin:0;color:#f4efe8;line-height:1.3}.tasting-package-description{font-size:clamp(.95rem,1.8vw,1.1rem);line-height:1.7;color:#f4efe8d9;margin:0;flex:1}.tasting-package-cta{display:inline-block;font-family:Space Grotesk,sans-serif;letter-spacing:.1em;text-transform:uppercase;font-size:.85rem;color:#dc2626;text-decoration:none;border-bottom:1px solid rgba(220,38,38,.4);padding-bottom:.3rem;transition:border-color .2s ease,color .2s ease;align-self:flex-start;margin-top:auto}.tasting-package-cta:hover{border-color:#dc2626;color:#ef4444}.experience-list{list-style:none;padding:0;margin:0;border-top:1px solid rgba(244,239,232,.1)}.experience-list li{display:grid;grid-template-columns:70px 1fr;gap:2rem;padding:2rem 0;border-bottom:1px solid rgba(244,239,232,.1)}.experience-list .index{font-size:1.2rem;letter-spacing:.3em;color:#f4efe866}.full-image-experience{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;isolation:isolate}.full-image-bg{position:absolute;inset:0;background-size:cover;background-position:center;background-attachment:fixed;z-index:0;transition:transform .8s cubic-bezier(.2,.8,.2,1)}.full-image-experience:hover .full-image-bg{transform:scale(1.05)}.full-image-overlay{position:absolute;inset:0;background:linear-gradient(180deg,#0505054d,#05050580,#0505054d);z-index:1}.full-image-content{position:relative;z-index:2;max-width:1200px;width:100%;padding:clamp(2rem,6vw,6rem) clamp(1.5rem,4vw,4rem);color:#f4efe8}.full-image-experience.align-left .full-image-content{text-align:left}.full-image-experience.align-right .full-image-content{text-align:right}.full-image-number{font-size:clamp(1rem,2vw,1.5rem);letter-spacing:.4em;text-transform:uppercase;color:#f4efe880;margin-bottom:1.5rem;font-family:Space Grotesk,sans-serif}.full-image-title{font-family:Playfair Display,Times New Roman,serif;font-size:clamp(3rem,8vw,6.5rem);font-weight:600;letter-spacing:.02em;line-height:1.1;margin-bottom:2rem;text-shadow:0 4px 40px rgba(5,5,5,.8),0 8px 80px rgba(5,5,5,.6);color:#f4efe8}.full-image-detail{font-size:clamp(1.1rem,2.5vw,1.5rem);line-height:1.6;color:#f4efe8e6;max-width:600px;text-shadow:0 2px 20px rgba(5,5,5,.7)}.full-image-experience.align-left .full-image-detail{margin-left:0;margin-right:auto}.full-image-experience.align-right .full-image-detail{margin-left:auto;margin-right:0}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem}.gallery-card{border-radius:1rem;overflow:hidden;border:1px solid rgba(244,239,232,.08);background:#ffffff03}.gallery-image{aspect-ratio:4 / 5;background-size:cover;background-position:center}.gallery-card figcaption{padding:1rem 1.25rem 1.5rem}.collab-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}.collab-grid article{padding:1.75rem;border-radius:1.35rem;border:1px solid rgba(244,239,232,.08);background:#ffffff04}.reserve{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2.5rem;align-items:center;border-top:1px solid rgba(244,239,232,.1);padding-top:3rem}.reserve-card{border:1px solid rgba(244,239,232,.1);border-radius:1.5rem;padding:2rem;background:#ffffff05}.reserve-card ul{list-style:none;padding:0;margin:1rem 0 2rem;display:grid;gap:.5rem}.full{width:100%;text-align:center}.book-page-wrapper{position:relative;min-height:100vh}.booking-form-section{padding:clamp(3rem,6vw,5rem) clamp(1.5rem,4vw,4rem);max-width:900px;margin:0 auto;position:relative}.booking-form{background:#050505d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(244,239,232,.2);border-radius:1.5rem;padding:2.5rem;box-shadow:0 20px 60px #00000080}.booking-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem}.booking-form-group{display:flex;flex-direction:column;gap:.5rem}.booking-form-group.full-width{grid-column:1 / -1}.booking-form-group label{font-family:Space Grotesk,sans-serif;font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;color:#f4efe8cc;font-weight:500}.booking-form-group input,.booking-form-group select,.booking-form-group textarea{background:#05050599;border:1px solid rgba(244,239,232,.15);border-radius:.5rem;padding:.85rem 1rem;color:#f4efe8;font-family:Space Grotesk,sans-serif;font-size:1rem;transition:border-color .2s ease,background .2s ease}.booking-form-group input:focus,.booking-form-group select:focus,.booking-form-group textarea:focus{outline:none;border-color:#dc2626;background:#050505cc}.booking-form-group input::placeholder,.booking-form-group textarea::placeholder{color:#f4efe866}.booking-form-group textarea{resize:vertical;min-height:100px}.radio-group{display:flex;gap:1.5rem;flex-wrap:wrap}.radio-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:1rem;text-transform:none;letter-spacing:normal;color:#f4efe8;font-weight:400}.radio-label input[type=radio]{width:18px;height:18px;cursor:pointer;accent-color:#dc2626}.booking-submit{width:100%;margin-top:1rem;padding:1rem 2rem;font-size:.9rem}@media(max-width:768px){.booking-form-section{padding-left:0;padding-right:0}.booking-form{padding:1.25rem}.booking-form-grid{grid-template-columns:minmax(0,1fr)}.tasting-main-title h2{font-size:min(6.8vw,3rem)}}.calendar{background:#05050566;border:1px solid rgba(244,239,232,.1);border-radius:1rem;padding:1.5rem;margin-top:.5rem}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.calendar-nav-btn{background:#f4efe80d;border:1px solid rgba(244,239,232,.15);border-radius:.5rem;color:#f4efe8;font-size:1.5rem;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;padding:0}.calendar-nav-btn:hover:not(:disabled){background:#f4efe81a;border-color:#dc2626;color:#dc2626}.calendar-nav-btn:disabled{opacity:.3;cursor:not-allowed}.calendar-month-year{font-family:Playfair Display,Times New Roman,serif;font-size:1.25rem;font-weight:600;color:#f4efe8;margin:0;letter-spacing:.02em}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:.5rem;margin-bottom:.75rem}.calendar-weekday{text-align:center;font-family:Space Grotesk,sans-serif;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:#f4efe899;font-weight:500;padding:.5rem 0}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:.5rem}.calendar-day{aspect-ratio:1;background:#f4efe808;border:1px solid rgba(244,239,232,.1);border-radius:.5rem;color:#f4efe8;font-family:Space Grotesk,sans-serif;font-size:.9rem;cursor:pointer;transition:all .2s ease;padding:0;display:flex;align-items:center;justify-content:center}.calendar-day.empty{background:transparent;border:none;cursor:default}.calendar-day.past{opacity:.3;cursor:not-allowed;background:#f4efe805}.calendar-day.booked{background:#dc262633;border-color:#dc262666;color:#f4efe880;cursor:not-allowed;position:relative}.calendar-day.booked:after{content:"✕";position:absolute;font-size:.7rem;color:#dc262699}.calendar-day.available:hover{background:#f4efe81a;border-color:#f4efe84d;transform:scale(1.05)}.calendar-day.selected{background:#dc2626;border-color:#dc2626;color:#f4efe8;font-weight:600}.calendar-legend{display:flex;gap:1.5rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(244,239,232,.1);flex-wrap:wrap;justify-content:center}.legend-item{display:flex;align-items:center;gap:.5rem;font-family:Space Grotesk,sans-serif;font-size:.75rem;color:#f4efe8b3}.legend-color{width:1rem;height:1rem;border-radius:.25rem;border:1px solid rgba(244,239,232,.2)}.legend-color.available{background:#f4efe808}.legend-color.booked{background:#dc262633;border-color:#dc262666}.legend-color.selected{background:#dc2626;border-color:#dc2626}@media(max-width:768px){.calendar{padding:.5rem}.calendar-weekdays,.calendar-days{gap:.25rem}.calendar-nav-btn{width:44px;height:44px}.calendar-day{font-size:.8rem}.calendar-legend{flex-direction:column;gap:.75rem}}.footer{border-top:1px solid rgba(244,239,232,.08);padding:2rem clamp(1.5rem,4vw,4rem) 3rem;display:flex;flex-wrap:wrap;gap:2rem;justify-content:space-between;align-items:center}.footer-links{display:flex;gap:1.25rem;text-transform:uppercase;letter-spacing:.2em;font-size:.7rem}.footer-links a{color:#f4efe8b3;display:inline-flex;align-items:center;gap:.4rem}.footer-links a.active{color:#f4efe8}.page-hero{padding:3rem 0 1rem;border-bottom:1px solid rgba(244,239,232,.1);margin-bottom:3rem;text-align:center;max-width:800px;margin-left:auto;margin-right:auto}.page-hero h1{margin-top:.5rem;margin-bottom:1.2rem}.split-section{display:grid;grid-template-columns:1fr 1fr;min-height:70vh;gap:0}.split-card{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;text-decoration:none;color:inherit;transition:transform .4s cubic-bezier(.2,.8,.2,1)}.split-card:hover{transform:scale(1.02);z-index:1}.split-image{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform .6s cubic-bezier(.2,.8,.2,1)}.split-card:hover .split-image{transform:scale(1.08)}.split-overlay{position:relative;z-index:2;text-align:center;padding:2rem}.split-title{font-family:Playfair Display,Times New Roman,serif;font-size:clamp(2.5rem,5vw,4.5rem);font-weight:600;letter-spacing:.02em;color:#f4efe8;text-shadow:0 2px 30px rgba(5,5,5,.95),0 4px 60px rgba(5,5,5,.8);margin:0;transition:transform .3s ease}.split-card:hover .split-title{transform:translateY(-4px)}[data-reveal]{opacity:0;transform:translateY(60px);transition:opacity .9s cubic-bezier(.2,.8,.2,1),transform .9s cubic-bezier(.2,.8,.2,1);transition-delay:var(--delay, 0ms)}[data-reveal].revealed{opacity:1;transform:translateY(0)}.menu-modal{position:fixed;inset:0;background:#050505f2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;display:flex;align-items:center;justify-content:center;padding:2rem;cursor:pointer}.menu-modal-content{position:relative;max-width:95vw;max-height:90vh;cursor:default;overflow-y:auto}.menu-modal-images{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;align-items:start}.menu-modal-image{width:100%;height:auto;max-height:85vh;object-fit:contain;border-radius:.5rem;box-shadow:0 20px 60px #00000080;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.menu-modal-image:hover{transform:scale(1.02);box-shadow:0 25px 70px #0009}.menu-modal-close{position:absolute;top:-2.5rem;right:0;background:none;border:none;color:#f4efe8;font-size:3rem;line-height:1;cursor:pointer;padding:0;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;transition:color .2s ease,transform .2s ease}.menu-modal-close:hover{color:#dc2626;transform:scale(1.1)}.menu-fullsize-container{position:relative;display:flex;align-items:center;justify-content:center;width:100%;max-width:95vw;max-height:90vh}.menu-fullsize-image{width:100%;height:auto;max-height:90vh;object-fit:contain;border-radius:.5rem;box-shadow:0 20px 60px #00000080}.menu-nav-arrow{position:absolute;top:50%;transform:translateY(-50%);background:#050505cc;border:2px solid rgba(244,239,232,.3);color:#f4efe8;font-size:4rem;line-height:1;cursor:pointer;padding:1rem 1.5rem;width:auto;height:auto;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:10;border-radius:.5rem;-webkit-user-select:none;user-select:none}.menu-nav-arrow:hover{background:#050505f2;border-color:#dc2626;color:#dc2626;transform:translateY(-50%) scale(1.1)}.menu-nav-arrow-prev{left:1rem}.menu-nav-arrow-next{right:1rem}.menu-fullsize-close{position:absolute;top:-2.5rem;right:0;background:none;border:none;color:#f4efe8;font-size:3rem;line-height:1;cursor:pointer;padding:0;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;transition:color .2s ease,transform .2s ease;z-index:10}.menu-fullsize-close:hover{color:#dc2626;transform:scale(1.1)}.menu-fullsize-counter{position:absolute;bottom:-2.5rem;left:50%;transform:translate(-50%);color:#f4efe8;font-size:1rem;font-weight:500;background:#050505cc;padding:.5rem 1rem;border-radius:.25rem}@media(max-width:768px){.menu-nav-arrow{font-size:3rem;padding:.75rem 1rem}.menu-nav-arrow-prev{left:.5rem}.menu-nav-arrow-next{right:.5rem}}@media(max-width:900px){.nav-links{justify-content:center}.footer{flex-direction:column;align-items:flex-start}.split-section{grid-template-columns:1fr;min-height:auto}.split-card{min-height:50vh}.split-title{font-size:clamp(2rem,8vw,3.5rem)}.full-image-experience{min-height:80vh}.full-image-bg,.philosophy-main-bg{background-attachment:scroll}.philosophy-main{min-height:80vh}.full-image-experience.align-left .full-image-content,.full-image-experience.align-right .full-image-content{text-align:center}.full-image-experience.align-left .full-image-detail,.full-image-experience.align-right .full-image-detail{margin-left:auto;margin-right:auto}.philosophy-calendar-grid{grid-template-columns:1fr;gap:1.5rem}.philosophy-calendar-content{padding:1.5rem}.tasting-hero-grid{grid-template-columns:1fr;min-height:auto}.tasting-hero-image{min-height:40vh}.tasting-packages-grid{grid-template-columns:1fr;gap:2rem}.tasting-package-content{padding:1.5rem}.story-hero{min-height:80vh}.story-hero-bg{background-attachment:scroll}.story-content{padding:clamp(2rem,4vw,3rem) clamp(1.5rem,4vw,4rem)}.menu-modal{padding:1rem}.menu-modal-close{top:-2rem;font-size:2.5rem;width:2rem;height:2rem}.menu-modal-images{grid-template-columns:1fr;gap:1.5rem}.menu-modal-image{max-height:80vh}.nav{flex-wrap:wrap;row-gap:.25rem;padding-bottom:.25rem}.mark{display:inline-flex;align-items:center;min-height:44px}.nav-links{order:3;flex:1 0 100%;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}.nav-links::-webkit-scrollbar{display:none}.nav-links a{flex:0 0 auto;min-height:44px;white-space:nowrap}.nav-links a:first-child{margin-left:auto}.nav-links a:last-child{margin-right:auto}main{padding-top:8.5rem}.hero,.hero-content{padding-top:1rem}.story-hero,.full-image-experience,.philosophy-main{min-height:80svh}.split-card{min-height:50svh}.tasting-hero-image{min-height:40svh}.book-page-wrapper{min-height:100svh}.philosophy-calendar-description,.tasting-package-description{font-size:1rem}.reserve-card .full{display:block}.reserve-card .full+.full{margin-top:.75rem}.footer{flex-wrap:nowrap}.footer>div{max-width:100%}.footer-links{flex-wrap:wrap;column-gap:1.25rem;row-gap:0}.footer-links a{min-height:44px;min-width:44px}html:has(.menu-modal){overflow:hidden}.menu-modal{padding:3.75rem 1rem 1rem}.menu-modal-content{max-height:100%;overscroll-behavior:contain}.menu-modal-close,.menu-fullsize-close{position:fixed;top:.5rem;right:.75rem;width:44px;height:44px;z-index:110}.menu-fullsize-container,.menu-fullsize-image{max-height:100%}.menu-fullsize-counter{position:fixed;bottom:.5rem;z-index:110}}@media(pointer:coarse){.text-btn,.philosophy-calendar-cta,.tasting-package-cta{position:relative}.text-btn:after,.philosophy-calendar-cta:after,.tasting-package-cta:after{content:"";position:absolute;inset:-12px -4px}}@media(hover:none){.split-card:hover,.split-card:hover .split-image,.split-card:hover .split-title,.tasting-hero-image:hover,.full-image-experience:hover .full-image-bg,.philosophy-calendar-card:hover,.philosophy-calendar-card:hover .philosophy-calendar-image,.tasting-package-card:hover,.tasting-package-card:hover .tasting-package-image,.menu-modal-image:hover{transform:none}}.consent-banner{position:fixed;inset:auto clamp(1rem,3vw,2rem) clamp(1rem,3vw,2rem);background:#050505f2;border:1px solid rgba(244,239,232,.15);border-radius:1.25rem;padding:clamp(1.5rem,4vw,2rem);display:flex;flex-direction:column;gap:1rem;z-index:1000;box-shadow:0 20px 70px #0006;max-width:480px}.consent-banner__title{font-family:Playfair Display,Times New Roman,serif;font-size:1.2rem;margin:0;color:#f4efe8}.consent-banner__text{margin:0;color:#f4efe8cc;line-height:1.5;font-size:.95rem}.consent-banner__actions{display:flex;gap:.75rem}.consent-banner__btn{flex:1;border-radius:999px;border:1px solid transparent;padding:.75rem 1.5rem;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:all .2s ease;font-family:Space Grotesk,sans-serif}.consent-banner__btn.ghost{border-color:#f4efe84d;background:transparent;color:#f4efe8d9}.consent-banner__btn.ghost:hover{border-color:#f4efe899}.consent-banner__btn.primary{background:#c5a26e;border-color:#c5a26e;color:#050505}.consent-banner__btn.primary:hover{filter:brightness(1.05)}@media(max-width:600px){.consent-banner{inset:auto 1rem 1rem}.consent-banner__actions{flex-direction:column}.consent-banner__btn{min-height:44px}}
