/* Consistent rubber-duck campaign art across all public pages. */
.page-art{margin:30px 0 35px;border-radius:10px;overflow:hidden;position:relative;background:#d9dcca}.page-art img{width:100%;height:300px;object-fit:cover;display:block}.page-art figcaption{position:absolute;bottom:10px;right:14px;padding:4px 8px;border-radius:3px;background:#f7f5efe8;color:#596957;font:8px Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase}.page-art.games-art img{height:340px;object-position:center 55%}.page-art.contact-art img{object-position:center 55%}.night.pagehero{display:block}.night.pagehero h1{max-width:14ch;font-size:clamp(45px,5vw,74px)}.night.pagehero .page-art{max-width:100%;margin:30px 0}.night.pagehero p{max-width:70ch}.night.pagehero .actions{margin-bottom:0}.home-illustrated{margin-top:0;padding-top:20px}.home-illustrated .split{padding:0;gap:45px;align-items:center}.home-illustrated img{width:100%;height:360px;object-fit:cover;border-radius:8px}.home-illustrated h2{font-size:45px}.home-illustrated p{font-size:14px;color:var(--muted)}.home-illustrated .image-caption{font:8px Arial,sans-serif;letter-spacing:.15em;color:#737e70;margin-top:12px}.admin-nav{background:#173f39}.admin-nav h2{font-family:Georgia,serif;font-weight:400}.admin-section{border-radius:10px;box-shadow:0 4px 20px #173f3904}.admin-main .help{font-size:12px}.admin-section input,.admin-section textarea,.admin-section select{border-radius:6px}.login .brand{font-family:Georgia,serif}.login h1{font-family:Georgia,serif;font-weight:400}.login input{border-radius:6px}.hero-artwork{object-position:center center}@media(max-width:800px){.page-art img,.page-art.games-art img{height:220px}.home-illustrated .split{gap:25px}.home-illustrated img{height:260px}.home-illustrated h2{font-size:38px}.night.pagehero h1{font-size:46px}.hero-artwork{height:350px;object-position:center}}
/* Existing café photography and clear event details. */
.real-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:28px 0}.real-photo-grid figure{margin:0;min-width:0}.real-photo-grid img{display:block;width:100%;height:250px;object-fit:cover;border-radius:8px}.real-photo-grid figcaption{font-size:13px;color:var(--muted);margin-top:10px}.event-essentials{border-left:3px solid #d4b375;padding:4px 18px;margin:24px 0}.event-essentials p:first-child{font-weight:700;font-size:20px}.night .event-essentials p{color:inherit}@media(max-width:600px){.real-photo-grid{grid-template-columns:1fr;gap:20px}.real-photo-grid img{height:260px}.event-essentials{padding-left:14px}}

:root{--muted:#526258}.eyebrow,.welcome-card .number{color:#76572c}.night .eyebrow{color:#d5ba87}.art-note small,.hero-index,.home-illustrated .image-caption{color:#53624f}

.google-reviews{background:#ebe9df}.google-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.google-review-card{margin:0;background:#f7f5ef;padding:28px;border-radius:10px}.google-review-card blockquote{font:24px/1.5 Georgia,serif;margin:16px 0 24px}.google-review-card figcaption{font-size:13px;color:#40564a}.review-stars{font-size:24px;letter-spacing:3px;color:#76572c}.google-rating{min-width:235px}.google-rating strong{font:54px Georgia,serif}.google-rating strong span{font-size:24px}.google-rating p,.review-provenance{font-size:12px;color:#40564a}.google-rating .review-stars{font-size:25px;margin:0}.review-provenance{margin:24px 0}@media(max-width:800px){.google-review-grid{grid-template-columns:1fr}.google-rating{margin-top:24px}.google-review-card blockquote{font-size:23px}}

.google-rating .review-stars{background:linear-gradient(to right,#76572c 98%,#b8b8ab 98%);background-clip:text;-webkit-background-clip:text;color:transparent;width:max-content}

/* Photographic coffee welcome, v2 */
#intro.coffee-intro-v2{position:fixed;inset:0;z-index:9999;background:#0b1812;display:flex;align-items:center;justify-content:center;overflow:hidden;opacity:1;transition:opacity .45s ease;pointer-events:auto}
#intro.coffee-intro-v2[hidden]{display:none!important}
#intro.coffee-leaving{opacity:0;pointer-events:none}
#intro .coffee-scene{position:relative;width:min(90vw,75vh,700px);aspect-ratio:1;flex:none;animation:coffee-pullback 3s cubic-bezier(.2,.5,.2,1) both}
#intro .coffee-photo{display:block;width:100%;height:100%;object-fit:contain;mask-image:radial-gradient(ellipse at center,#000 48%,transparent 73%)}
#intro #skip{position:absolute;top:max(24px,env(safe-area-inset-top));right:24px;z-index:3;background:transparent;color:#f8efde;border:1px solid #f8efde66;border-radius:30px;padding:10px 20px;font:14px Arial;cursor:pointer}
#intro .espresso-stream{position:absolute;left:49.5%;top:0;width:1%;height:53%;background:linear-gradient(90deg,#35190e,#b97b39 40%,#633414 72%,#27140b);border-radius:20% 20% 45% 45%;transform-origin:top;filter:blur(.35px);animation:espresso-pour 1.65s ease-in-out both;box-shadow:1px 0 3px #dbad7155}
#intro .coffee-ripple{position:absolute;left:44%;top:51%;width:12%;height:3%;border:1px solid #e6bd7899;border-radius:50%;animation:coffee-ripple .65s .3s 3 both;filter:blur(.5px)}
#intro .steam{position:absolute;top:27%;left:45%;width:5%;height:24%;border-left:4px solid #f5e7d580;border-radius:50%;filter:blur(7px);opacity:0;animation:coffee-steam 2s .65s infinite ease-out}
#intro .steam-b{left:53%;top:24%;animation-delay:.9s;transform:scaleX(-1)}#intro .steam-c{left:49%;top:29%;animation-delay:1.2s;width:3%}
#intro .coffee-caption{position:absolute;bottom:8%;text-align:center;color:#f4e8d0;z-index:2;padding:0 20px}
#intro .coffee-caption span{font:11px Arial;letter-spacing:.28em;color:#d6b681}#intro .coffee-caption p{font:italic clamp(22px,4vw,32px) Georgia;margin:14px 0}
@keyframes espresso-pour{0%{transform:scaleY(0);opacity:0}15%{opacity:1;transform:scaleY(1)}78%{opacity:1;transform:scaleY(1)}100%{opacity:0;transform:scaleY(1)}}
@keyframes coffee-ripple{0%{transform:scale(.3);opacity:0}25%{opacity:.8}100%{transform:scale(1.6);opacity:0}}
@keyframes coffee-steam{0%{opacity:0;translate:0 15px;rotate:-6deg}35%{opacity:.45}100%{opacity:0;translate:8px -35px;rotate:8deg}}
@keyframes coffee-pullback{from{transform:scale(1.1)}to{transform:scale(.95)}}
@media(prefers-reduced-motion:reduce){#intro.coffee-intro-v2{display:none!important}}
