:root{--green:#183c32;--cream:#f5f0e4;--ink:#213e34;--orange:#d47148;--line:#d8d1bf}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Playfair Display',serif;font-weight:500}em{font-weight:500}.demo{background:#e6b96d;text-align:center;font-size:10px;letter-spacing:.12em;font-weight:700;padding:9px}.demo span{padding:0 8px}header{height:88px;display:flex;align-items:center;padding:0 6%;gap:40px;background:var(--cream)}.logo{display:flex;align-items:center;gap:10px;font-size:11px;line-height:1.05;letter-spacing:.12em}.logo b{font-size:15px;letter-spacing:.025em}.logo-icon{font-size:38px;font-weight:400}nav{display:flex;gap:35px;margin:auto;font-size:13px}.btn{display:inline-flex;justify-content:space-between;align-items:center;gap:30px;border:0;padding:17px 21px;font-weight:700;font-size:12px;cursor:pointer}.btn span{font-size:17px}.btn-dark{background:var(--green);color:#fff}.btn-cream{background:#f5f0e4;color:var(--green)}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:610px;background:var(--green);color:var(--cream);position:relative}.hero-copy{padding:90px 8% 40px 12%;display:flex;flex-direction:column;align-items:flex-start}.eyebrow,.overline{font-size:10px;font-weight:700;letter-spacing:.17em}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#e3ae65;margin-right:9px}.hero h1{font-size:clamp(56px,5.7vw,92px);line-height:1.02;letter-spacing:-.04em;margin:34px 0 25px;max-width:620px}.hero h1 em,h2 em{color:#d89a72}.hero-copy>p{max-width:410px;line-height:1.8;color:#d8e0d5;font-size:15px}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:22px}.text-link{font-size:12px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:8px}.text-link span{margin-left:17px}.hero-bottom{font-size:9px;letter-spacing:.16em;margin-top:auto;padding-top:64px}.hero-bottom span{font-size:20px;color:#e0a879;margin-right:12px;vertical-align:middle}.hero-art{background:#c87950;position:relative;overflow:hidden;min-height:610px}.hero-art:before{content:'';position:absolute;inset:5%;border:1px solid #e8b29480}.art-label{position:absolute;top:10%;left:9%;font-size:11px;letter-spacing:.18em;line-height:1.4;z-index:2}.art-label em{font:italic 27px 'Playfair Display';letter-spacing:0}.board{position:absolute;width:55%;aspect-ratio:1;top:20%;left:23%;background:#e8cb91;transform:rotate(-12deg);box-shadow:0 18px 30px #723e2840;padding:5%;border:2px solid #674c35}.board-inner{border:2px solid #486348;height:100%;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#304d3b}.board-inner span{font-size:10px;letter-spacing:.3em}.board-inner strong{font:500 clamp(26px,3.5vw,56px)/.9 'Playfair Display';margin:15px}.board-inner i{font-size:45px;font-style:normal}.dice{position:absolute;background:#f3e7c9;color:#284738;border-radius:10px;padding:11px;line-height:.8;box-shadow:3px 7px 0 #9a583a}.dice-one{top:19%;right:13%;transform:rotate(15deg);font-size:20px}.dice-two{bottom:17%;left:12%;transform:rotate(-15deg);font-size:16px}.cup{position:absolute;right:5%;bottom:9%;width:24%;aspect-ratio:1;border-radius:50%;background:#eee1ca;box-shadow:4px 10px 12px #84482d70;display:grid;place-items:center}.cup:after{content:'';position:absolute;width:25%;height:30%;border:10px solid #eee1ca;border-radius:50%;right:-14%}.cup div{width:72%;height:72%;border-radius:50%;background:#674230;border:8px solid #fff4dd}.card{position:absolute;background:#f6ead0;color:#be694b;width:14%;aspect-ratio: .7;border-radius:5px;text-align:center;padding:15px;font-size:35px;box-shadow:3px 7px 10px #874b3340}.card small{font-size:7px;display:block;letter-spacing:.1em}.card-one{left:8%;top:30%;transform:rotate(18deg)}.card-two{right:8%;top:31%;transform:rotate(15deg)}.art-caption{position:absolute;bottom:5%;left:9%;font-size:9px;letter-spacing:.15em}.art-caption span{margin:0 10px}.vertical{position:absolute;right:10px;top:32%;writing-mode:vertical-rl;font-size:8px;letter-spacing:.2em;color:#fff9}.ticker{background:#e3b86d;padding:19px;display:flex;justify-content:space-around;align-items:center;gap:15px;font-size:10px;font-weight:700;letter-spacing:.14em}.section{padding:110px 8%}.intro{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:end}.dark-eye{color:#a15b41}.section h2{font-size:clamp(42px,4.8vw,69px);line-height:1.12;letter-spacing:-.035em;margin:23px 0 0}.intro-right p,.section-heading>p{font-size:15px;line-height:1.9;color:#647369}.intro-right p{max-width:490px;margin-bottom:32px}.experiences{background:#eae4d6}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:48px}.section-heading>p{max-width:300px;margin:0}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.feature-art{height:260px;position:relative;overflow:hidden}.games{background:#a5b39a}.mini-board{position:absolute;inset:16% 23%;background:#e8d29f;border:5px double #657356;transform:rotate(-10deg);display:grid;place-content:center;text-align:center;color:#ad684a;font-size:60px;line-height:.7}.mini-board span{font-size:9px;letter-spacing:.15em;line-height:1.4;margin-top:20px}.token{position:absolute;border-radius:50%;height:43px;width:43px;display:grid;place-items:center;background:#d17b56;color:#f5e3be;box-shadow:2px 4px #7c6e50}.t1{left:13%;bottom:19%}.t2{right:13%;top:15%;background:#355e4c}.t3{right:16%;bottom:15%;background:#e1ae63}.drink{background:#d5ae8d}.plate{position:absolute;width:180px;height:180px;border-radius:50%;background:#f1e5d1;left:20%;top:15%;display:grid;place-items:center;box-shadow:4px 8px #b88b70}.coffee{width:115px;height:115px;background:#704a35;border:13px solid #f8f1df;border-radius:50%;display:grid;place-items:center;color:#e6cdb0;font-size:38px}.cookie{position:absolute;right:13%;bottom:15%;background:#c88752;width:70px;height:70px;border-radius:50%;display:grid;place-items:center;color:#7c4c34;font-size:40px}.shop{background:#c17a5b}.book{position:absolute;top:19%;height:65%;width:28%;box-shadow:5px 8px 8px #8a543c70;padding:22px 12px;font-weight:700;font-size:13px;letter-spacing:.1em}.b1{left:12%;background:#e7c48a;transform:rotate(-9deg)}.b2{left:37%;background:#315949;color:#edca93;font-size:70px;text-align:center;transform:rotate(5deg)}.b3{left:62%;background:#e7ddc1;transform:rotate(12deg)}.feature-title{display:flex;align-items:baseline;gap:16px;border-bottom:1px solid #bfb9aa;margin-top:25px}.feature-title span{font-size:10px;color:#a66b51}.feature-title h3{font-size:29px;margin-bottom:16px}.feature-title b{margin-left:auto}.features article>p{font-size:13px;line-height:1.8;color:#68776c;margin-top:18px}.booking{background:#24493d;color:#f4eee0;display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.booking-intro>p{max-width:410px;line-height:1.9;color:#d2dfd4;margin-top:30px}.booking-note{display:flex;gap:18px;align-items:center;margin-top:65px;font-size:13px;line-height:1.8}.booking-note>span{font-size:38px;color:#e5ad7f}.booking-note a{text-decoration:underline}.booking-panel{background:#f8f4eb;color:var(--ink);padding:38px}.panel-top,.schedule-header{display:flex;justify-content:space-between;gap:10px;align-items:start}.panel-top h3,.schedule h3{font-size:30px;margin:10px 0}.demo-tag{font-size:9px;letter-spacing:.08em;background:#ead8ba;color:#765738;padding:8px;white-space:nowrap}.panel-desc,.small-print{font-size:12px;color:#758077;line-height:1.6}.booking-panel label{display:block;font-size:11px;font-weight:700;margin:25px 0 10px}.booking-panel input,.booking-panel select{width:100%;background:transparent;border:1px solid #c7cebf;padding:14px;color:var(--ink)}.label-row{display:flex;align-items:end;justify-content:space-between}.label-row span{font-size:10px;color:#899187;margin-bottom:10px}.slots{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.slot{padding:12px 4px;border:1px solid #c7cebf;background:transparent;color:var(--ink);cursor:pointer}.slot[aria-pressed=true]{background:var(--green);color:white}.slot:disabled{color:#aaa;background:#eee;cursor:not-allowed;text-decoration:line-through}.panel-button{width:100%;margin-top:25px}.schedule{background:#fffdf7;border:1px solid var(--line);padding:35px}.schedule-header p{font-size:13px;color:#77847a}.schedule-summary{display:flex;background:#f4f1e8;margin:25px 0}.schedule-summary div{padding:20px 30px;min-width:160px;border-right:1px solid #dedbd0}.schedule-summary strong,.schedule-summary span{display:block}.schedule-summary strong{font:25px 'Playfair Display'}.schedule-summary span{font-size:11px;color:#7b867c;margin-top:6px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}th{font-size:9px;letter-spacing:.12em;color:#889389}th,td{padding:17px 10px;border-bottom:1px solid #e9e7df}td:first-child{font-weight:700}.status{background:#e4efe4;color:#53745b;padding:6px 10px;border-radius:20px;font-size:10px}.visit{background:#c97752;color:#fff4e6;display:flex;justify-content:space-between;align-items:center}.visit h2 em{color:#f1cc9e}.visit p{line-height:1.8;margin:30px 0}.visit-mark{border:1px solid #eab69a;border-radius:50%;width:300px;height:300px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.visit-mark span{font-size:45px}.visit-mark p{font-size:10px;letter-spacing:.15em;line-height:1.5}.visit-mark em{font:italic 36px 'Playfair Display';letter-spacing:0}footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:40px 8%;font-size:12px}footer p{margin:0;color:#748077}@media(max-width:800px){header{height:75px;padding:0 5%}nav{display:none}.header-cta{margin-left:auto;padding:13px;font-size:10px}.hero{grid-template-columns:1fr}.hero-copy{padding:70px 7% 35px}.hero h1{font-size:60px}.hero-art{min-height:430px}.board{width:55%;top:15%}.section{padding:75px 6%}.intro,.booking{grid-template-columns:1fr;gap:35px}.features{grid-template-columns:1fr}.feature-art{height:260px}.section-heading{display:block}.section-heading>p{margin-top:20px}.booking-note{margin-top:30px}.visit-mark{width:180px;height:180px}.visit-mark em{font-size:25px}.ticker{overflow:hidden;white-space:nowrap;justify-content:flex-start}.schedule-summary div{min-width:110px;padding:15px}.schedule{padding:20px}footer{flex-wrap:wrap}}@media(max-width:480px){.hero h1{font-size:51px}.hero-art{min-height:360px}.hero-actions{gap:18px}.hero-actions .btn{padding:15px 12px;gap:12px}.booking-panel{padding:22px}.panel-top{display:block}.panel-top .demo-tag{display:inline-block}.slots{grid-template-columns:repeat(2,1fr)}.visit{display:block}.visit-mark{margin:45px auto 0}footer p{width:100%}.schedule-summary div{min-width:0;flex:1;padding:12px}.schedule-summary strong{font-size:19px}}

/* Wordmark: a quiet, editorial signature for the café. */
.logo{display:inline-flex;flex:none;align-items:center;color:var(--green);line-height:1;text-align:center;letter-spacing:0}
.logo-wordmark{display:flex;flex-direction:column;align-items:center;gap:4px}
.logo-top,.logo-sub{font-family:'DM Sans',sans-serif;font-size:8px;font-weight:700;letter-spacing:.22em}
.logo-top{display:flex;align-items:center;gap:7px}
.logo-top:before,.logo-top:after{content:'';width:17px;height:1px;background:#c47a58}
.logo-name{font:600 23px/.95 'Playfair Display',serif;white-space:nowrap;letter-spacing:-.045em}
.logo-name em{font-weight:500;color:#ad684c}
.logo-sub{font-size:6px;letter-spacing:.15em}
@media(max-width:480px){.logo-name{font-size:20px}.logo-sub{font-size:5.5px}header{gap:12px}}

.hero-art:before{display:none}.hero-art img,.feature-art img{width:100%;height:100%;display:block;object-fit:cover}.hero-art img{position:absolute;inset:0;object-position:center}.image-credit{position:absolute;bottom:22px;right:22px;background:#183c32c9;color:#fff;padding:8px 10px;font-size:8px;font-weight:700;letter-spacing:.1em}.feature-art{background:#d7c9b5}.feature-art img{transition:transform .5s ease}.features article:hover .feature-art img{transform:scale(1.035)}@media(prefers-reduced-motion:reduce){.feature-art img{transition:none}}
.line-icon{display:inline-block;flex:none;width:22px;height:22px;vertical-align:middle;color:#c98b65}.hero-bottom .line-icon{width:25px;height:25px;margin-right:12px}.ticker .line-icon{width:21px;height:21px;color:#815138}.booking-note .line-icon{width:37px;height:37px;color:#e5ad7f}.visit-mark .line-icon{width:48px;height:48px;color:#f5dfc7}
