:root{--ink:#17130f;--brown:#493727;--cream:#e9ddc8;--sand:#dfcfb4;--gold:#c7a77d;--rust:#8a6642;--line:#32271a2b;--page:1280px}
html{scroll-padding-top:100px}body{background:#100e0b;color:#eee2ce;font-family:Arial,sans-serif;-webkit-font-smoothing:antialiased}.wrap{width:min(86%,1280px)}
.topline{background:#100e0b;color:#bda98c;font-size:10px;letter-spacing:.06em;border-bottom:1px solid #e9ddc81a}.topline .wrap{padding:12px 0}header{background:#100e0bf5;border-bottom:1px solid #e9ddc825;color:#eee2ce}.nav{min-height:86px;gap:25px}.brand{background:#e9ddc8;padding:7px 14px;border-radius:2px}.brand img{width:125px;height:43px}nav{color:#dac9ad;gap:22px;font-size:12px;font-weight:400}nav a:hover{color:#fff0d6}.nav-button,.button{font-size:12px;font-weight:500;letter-spacing:.025em;min-height:49px;padding:0 25px;box-shadow:none}.nav-button{background:#e9ddc8;color:#21190f}.language-switcher{color:#c7b394;border-color:#c7b39455}.language-switcher button.is-active{background:#dfcfb4;color:#21190f}.instagram-link{color:#d5bf9b;border-color:#d5bf9b55}.menu-toggle{background:transparent;border-color:#c7b39466;color:#e9ddc8;font-weight:400;font-size:12px}
h2{font-size:clamp(40px,5.8vw,82px);font-weight:400;line-height:1.02;letter-spacing:-.055em}h3{font-weight:400}.eyebrow{font-size:10px;font-weight:400;letter-spacing:.22em;color:#ad8d66;margin-bottom:26px}.intro{background:#e9ddc8;color:#20180f;padding:30px 0 100px}.intro-grid{grid-template-columns:1.25fr .75fr;gap:12%;align-items:center}.intro-copy{font-size:15px;line-height:1.9;color:#756047}.intro-copy .button{border-radius:0;padding:0;border:0;border-bottom:1px solid #8a7051;min-height:40px}.highlights{border:0;border-top:1px solid #6d543b40;border-radius:0;background:transparent;gap:35px;margin-top:70px!important}.highlight{background:transparent;padding:30px 0;min-height:0}.highlight-mark{display:block;background:none;border-radius:0;font-size:11px;font-weight:400;color:#92704a;width:auto;height:auto}.highlight strong{font-size:27px;margin:18px 0 10px}.highlight p{font-size:13px;line-height:1.8;color:#756047}
.cafe-visuals{background:#100e0b;padding:20px 0 100px}.cafe-photo-grid{grid-template-columns:1.5fr 1fr;gap:22px}.cafe-photo,.cafe-photo:first-child{border-radius:0;box-shadow:none;margin:0}.cafe-photo:first-child{grid-column:1;grid-row:span 2;min-height:640px}.cafe-photo img{transition:transform .8s}.cafe-photo:hover img{transform:scale(1.04)}
.menu-gallery{background:#e9ddc8;color:#21190f;padding:30px 0 100px}.menu-gallery-header{display:block;margin-bottom:50px}.menu-gallery-header h2{max-width:800px}.menu-gallery-actions{max-width:none;margin-top:26px;align-items:center;gap:14px}.menu-gallery-actions p{max-width:460px;flex-basis:auto;margin:0 35px 0 0;font-size:14px;line-height:1.8;color:#756047}.button.primary{background:#21190f;color:#e9ddc8}.button.outline{color:#21190f;border-color:#21190f}.menu-grid{grid-template-columns:repeat(3,1fr);gap:36px 24px}.menu-card,.menu-card:nth-child(1),.menu-card:nth-child(6){grid-column:auto;border-radius:0;margin:0;min-height:0;box-shadow:none;background:transparent;overflow:hidden}.menu-card img{height:320px;min-height:0;object-fit:cover}.menu-card:nth-child(3n+2){transform:translateY(45px)}.menu-card figcaption{position:static;background:none;color:#57412c;border-radius:0;padding:14px 0;font-size:12px;font-weight:400;backdrop-filter:none;letter-spacing:.04em}.menu-grid{padding-bottom:45px}
.feature{background:#100e0b;color:#eee2ce;padding:30px 0 110px}.feature-grid{grid-template-columns:1.2fr .8fr;gap:9%}.feature h2{max-width:none}.feature .eyebrow{color:#bfa079}.feature p{font-size:14px;line-height:1.9;color:#b8a58c}.steps{gap:0;margin-top:40px}.step{padding:20px 0;border-top:1px solid #e9ddc82a;grid-template-columns:38px 1fr}.step-number{border:0;border-radius:0;color:#c7a77d;font-weight:400}.step strong{font-weight:400;font-size:16px;margin-bottom:6px}.step span{color:#aa967a;font-size:13px}.feature-card{border:1px solid #c4aa7c55;border-radius:10px;padding:46px 35px;background:radial-gradient(ellipse at 90% 0%,#9f754633,transparent 65%),#19140e;transform:rotate(3deg);box-shadow:0 30px 60px #0004}.feature-card h3{font-size:40px;line-height:1.05}.feature-card .button{background:#e9ddc8;color:#21190f}.feature-card .eyebrow{margin-bottom:35px}
.reserve{padding:25px 0 110px;background:#e9ddc8;color:#21190f}.reserve-card{display:block;background:none;border-radius:0;padding:0;box-shadow:none}.reserve-card h2{font-size:clamp(40px,5.8vw,82px);max-width:800px}.reserve-card p{color:#756047;font-size:14px;line-height:1.8}.reservation-form{margin-top:50px;padding:40px 0 0;border:0;border-top:1px solid #6d543b50;border-radius:0;background:none;max-width:940px}.reservation-form-grid{gap:26px}.reservation-form label{font-size:11px;font-weight:400;letter-spacing:.04em;color:#6d543b}.reservation-form input,.reservation-form select,.reservation-form textarea{border:0;border-bottom:1px solid #a88b6655;border-radius:0;background:#f5ecdd88;color:#21190f;min-height:54px;padding:15px;font-size:16px}.reservation-form input:focus,.reservation-form select:focus,.reservation-form textarea:focus{outline:2px solid #9d7e53;outline-offset:2px}.reservation-form .button{border-radius:30px;margin-top:10px}.reservation-hint{font-size:13px}.required-mark{color:#775234}
.hours{padding:25px 0 110px;background:#100e0b;color:#eee2ce}.hours-grid{grid-template-columns:1.2fr .8fr;gap:10%}.address{color:#bba68b;font-size:15px;line-height:1.9}.contact-links a{border:0;border-bottom:1px solid #e9ddc844;border-radius:0;color:#d4bd99;font-size:12px;font-weight:400;padding:10px 0;margin-right:15px}.opening{border-color:#c7a77d}.opening-row{color:#bba68b;border-color:#c7a77d44;font-size:13px;padding:24px 0}.opening-row strong{color:#e9ddc8;font-weight:400}.opening-row.closed strong{color:#bba68b}
footer{background:#e9ddc8;color:#21190f;padding:70px 0 30px}.footer-brand img{filter:none;mix-blend-mode:multiply;width:180px;height:70px}footer p,.footer-links,.legal-links{color:#6b543a;font-size:13px;line-height:1.8}footer h3{color:#8a6642;font-size:10px;font-weight:400;letter-spacing:.18em}.copyright{color:#8a7457;border-color:#8a745744}.legal-links{margin-top:40px}.legal-links a{text-decoration-color:#8a745755}a:focus-visible,button:focus-visible{outline:2px solid #b08c57;outline-offset:5px}
@media(max-width:1100px){nav{background:#17130f;border-color:#e9ddc833;box-shadow:0 18px 40px #0005}nav a{color:#e9ddc8;border-color:#e9ddc833;font-weight:400}nav a.nav-button{color:#21190f}.language-switcher{border-color:#e9ddc833}.nav{min-height:78px}}
@media(max-width:780px){.wrap{width:86%}.intro-grid,.feature-grid,.hours-grid{grid-template-columns:1fr;gap:35px}.highlights{gap:0;margin-top:35px!important}.highlight{display:block;border-bottom:1px solid #6d543b40}.highlight-mark{margin-bottom:10px}.highlight strong{margin-top:0}.intro,.feature,.menu-gallery,.reserve,.hours{padding-top:15px;padding-bottom:65px}.menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 14px}.menu-card:nth-child(1),.menu-card:nth-child(6){grid-column:auto;min-height:0}.menu-card img,.menu-card:nth-child(1) img{height:220px;min-height:0}.menu-card:nth-child(3n+2){transform:none}.menu-card:nth-child(even){transform:translateY(25px)}.menu-card figcaption{font-size:11px}.menu-gallery-actions p{flex-basis:100%;margin:0 0 10px}.cafe-photo-grid{grid-template-columns:1fr 1fr;gap:12px}.cafe-photo:first-child{grid-column:span 2;grid-row:auto;min-height:350px}.cafe-photo img,.cafe-photo:first-child img{min-height:0;height:100%;object-fit:cover}.cafe-photo{height:200px;min-height:0}.cafe-photo:first-child{height:350px}.feature-card{transform:none;padding:35px}.reservation-form{padding-top:28px;margin-top:30px}.reservation-form-grid{grid-template-columns:1fr}.footer-grid{gap:35px}.topline .wrap{font-size:9px}.brand img{height:37px;width:110px}.nav{min-height:75px}h2{font-size:45px}.cafe-visuals{padding-bottom:65px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.cafe-photo img{transition:none}}

/* Rotating food and drink column; ordinary vertical page scrolling stays available. */
.menu-carousel{position:relative;height:510px;perspective:1100px;overflow:hidden;touch-action:pan-y;cursor:grab;outline-offset:5px;isolation:isolate;background:radial-gradient(ellipse at 50% 90%,#62431b20,transparent 58%)}
.menu-carousel:active{cursor:grabbing}.menu-carousel .carousel-ring{display:block;position:absolute;inset:0;padding:0;transform-style:preserve-3d;transition:transform .65s cubic-bezier(.22,.7,.25,1);pointer-events:none}
.menu-carousel .menu-card,.menu-carousel .menu-card:nth-child(n){position:absolute;top:48%;left:50%;width:280px;height:370px;min-height:0;margin:0;overflow:hidden;border-radius:140px 140px 18px 18px;background:#17130f;box-shadow:0 20px 35px #33200c35;backface-visibility:hidden;transition:opacity .55s;pointer-events:auto}
.menu-carousel .menu-card img,.menu-carousel .menu-card:nth-child(n) img{width:100%;height:100%;min-height:0;object-fit:cover;transform:none;user-select:none;-webkit-user-drag:none}
.menu-carousel .menu-card figcaption{position:absolute;inset:auto 0 0;padding:55px 20px 24px;background:linear-gradient(transparent,#100e0be6);font-size:14px;letter-spacing:.03em;text-align:center;color:#f1e2c8}
.menu-carousel.is-dragging .carousel-ring,.menu-carousel.is-dragging .menu-card{transition:none}.carousel-controls{display:flex;align-items:center;justify-content:center;gap:28px;padding-top:10px}.carousel-controls button{width:48px;height:48px;border:1px solid #91724c;border-radius:50%;background:transparent;color:#493727;font:24px Georgia;cursor:pointer}.carousel-controls button:hover{background:#21190f;color:#e9ddc8}.carousel-controls>div{width:260px;text-align:center}.carousel-count{font-size:12px;color:#493727}.carousel-controls p{margin:9px 0 0;font-size:10px;color:#8a7051;letter-spacing:.05em}
@media(max-width:780px){.menu-gallery .wrap{width:100%}.menu-gallery-header{width:86%;margin:0 auto 25px}.menu-carousel{height:390px;perspective:850px}.menu-carousel .menu-card,.menu-carousel .menu-card:nth-child(n){width:210px;height:290px;border-radius:110px 110px 14px 14px}.menu-carousel .menu-card figcaption{font-size:12px;padding:45px 14px 20px}.carousel-controls{gap:12px;width:90%;margin:auto}.carousel-controls>div{width:210px}.carousel-controls button{flex-shrink:0;width:40px;height:40px}}
@media(prefers-reduced-motion:reduce){.menu-carousel .carousel-ring,.menu-carousel .menu-card{transition:none}}
