@font-face{font-family:Paperlogy;src:url('assets/paperlogy-regular.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:Paperlogy;src:url('assets/paperlogy-semibold.woff2') format('woff2');font-weight:600 900;font-display:swap}:root{--bg:#1b1c1a;--panel:#151614;--gold:#c9ae6b;--white:#f1eee5;--muted:#aba99f;--line:#3b3c34}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:#10110f;color:var(--white);font:15px/1.85 Paperlogy,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--gold);outline-offset:5px}.site-shell{max-width:1600px;margin:auto;background:var(--bg);overflow:hidden;background-image:repeating-linear-gradient(133deg,transparent 0,transparent 230px,#ffffff02 231px,transparent 234px)}header{height:110px;margin:0 7%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:24px}.brand{display:flex;align-items:center;gap:12px;font-size:14px;line-height:1.5;letter-spacing:1.7px}.brand small{display:block;color:var(--muted);font-size:9px;letter-spacing:2.9px}.brand-seal{height:43px;width:43px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font-size:30px}nav{display:flex;gap:30px;font-size:12px;color:#cfcec4}nav a:hover,footer a:hover{color:var(--gold)}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:35px;padding:13px 24px;background:var(--gold);color:#1b1c16;border:1px solid var(--gold);border-radius:30px;font-weight:600;font-size:13px}.button:hover{background:#e1ca8d}.button.small{font-size:11px;padding:8px 18px;gap:22px}.hero{padding:66px 7% 0}.eyebrow{font-size:10px;letter-spacing:2.8px;color:var(--gold);margin-bottom:21px}.hero-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:36px}.hero-kicker{font-size:18px;color:var(--muted);margin:0 0 10px}h1{font-size:clamp(48px,6.6vw,94px);line-height:1.16;font-weight:600;letter-spacing:-5px;margin:0}h1 span{display:block;color:var(--gold)}.hero-invite{width:225px;padding-top:30px}.mini-star{font-size:42px;color:var(--gold)}.hero-invite p{font-size:20px;line-height:1.7;margin:8px 0 20px}.hero-invite a{font-size:11px;color:var(--gold);border-bottom:1px solid #625b41;padding-bottom:8px;display:flex;justify-content:space-between}.hero-bottom{display:grid;grid-template-columns:190px 1fr;gap:28px}.hero-note{display:flex;background:#131411;border:1px solid #37392f;border-radius:5px;justify-content:space-between;padding:22px 17px}.vertical-word{writing-mode:vertical-rl;letter-spacing:4px;font-size:9px;color:#797c6c}.hero-note>div{align-self:end}.gold{color:var(--gold)}.hero-note .gold{font-size:9px}.hero-note p{font-size:13px;line-height:2}.hero-note a{font-size:9px;color:var(--gold)}.hero-photo{height:360px;position:relative;overflow:hidden;border-radius:5px}.hero-photo img{height:100%;width:100%;object-fit:cover;object-position:50% 54%}.photo-overlay{position:absolute;inset:0;background:linear-gradient(transparent 55%,#0009);display:flex;justify-content:space-between;align-items:end;padding:30px;color:#f5e4be;font-size:11px;letter-spacing:2px}.round-link{border:1px solid #e8d3a4aa;width:52px;height:52px;display:grid;place-items:center;border-radius:50%;font-size:25px}.image-note{position:absolute;right:15px;top:10px;font-size:8px;color:#eee;background:#0008;padding:2px 8px;border-radius:3px}.hero-foot{display:flex;justify-content:space-between;padding:20px 0;color:var(--muted);font-size:10px}.hero-foot a{font-size:8px;letter-spacing:2px}.section{padding:95px 7%}h2{font-size:36px;font-weight:400;line-height:1.55;letter-spacing:-1.5px;margin:0 0 22px}h2 em{font-style:normal;color:var(--gold)}p{color:#c1c0b6}h3{font-weight:400}.intro{text-align:center;padding-top:100px;padding-bottom:85px}.intro h2{color:var(--gold);font-size:38px}.intro p{font-size:14px;line-height:2.15}.outline-link{display:inline-block;background:transparent;color:var(--gold);border:1px solid #5f593e;border-radius:25px;padding:8px 18px;font-size:11px;margin-top:17px}.outline-link:hover{background:#c9ae6b15}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:28px;gap:30px}.section-heading h2{margin:0}.section-heading>p{font-size:12px;margin:0 0 5px}.spaces{padding-top:30px}.gallery{display:grid;grid-template-columns:1.3fr .85fr .85fr;gap:18px;align-items:center;margin-top:36px}figure{margin:0;position:relative;overflow:hidden;border-radius:5px;height:350px}.gallery-tall{height:410px}.gallery-detail{height:310px}.gallery img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.gallery figure:hover img{transform:scale(1.04)}.gallery-detail img{object-position:83% 80%;width:170%;max-width:none}.gallery figcaption{position:absolute;inset:0;padding:25px 20px;display:flex;flex-direction:column;justify-content:end;background:linear-gradient(transparent 35%,#000c)}figcaption small{font-size:8px;letter-spacing:1.6px;color:#ddc78f}figcaption h3{font-size:17px;margin:9px 0 0}.caption{font-size:9px;color:#96968b;text-align:right;margin-top:17px}.about-line{display:grid;grid-template-columns:1fr 3fr;gap:40px;padding-top:36px;align-items:start}.pill{display:inline-block;width:max-content;border:1px solid #57533d;color:var(--gold);padding:1px 12px;border-radius:20px;font-size:9px;letter-spacing:1px}.about-line p{margin:0;font-size:13px;line-height:2.1}.occasions{background:#151613;text-align:center}.occasion-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;text-align:left;margin-top:43px}.occasion-grid article{position:relative;background:#1c1d19;padding:32px 26px 26px;border:1px solid #37392f;border-radius:6px}.index{position:absolute;right:24px;top:24px;color:#7e785f;font-size:25px}.occasion-grid h3{font-size:21px;line-height:1.65;margin:25px 0 16px}.occasion-grid p{font-size:12px;line-height:2;min-height:95px}.occasion-grid a{font-size:10px;color:var(--gold);display:block;border-top:1px solid var(--line);padding-top:18px;margin-top:24px}.drinks{display:grid;grid-template-columns:1fr 1.1fr;gap:8%;align-items:center}.drink-copy>p{font-size:13px}.drink-copy .muted{font-size:11px;color:#96998c;max-width:360px;margin-top:26px}.drink-image{position:relative;height:470px;border-radius:7px;overflow:hidden}.drink-image img{width:100%;height:100%;object-fit:cover}.drink-image span{position:absolute;bottom:20px;left:25px;font-size:8px;letter-spacing:1.8px;color:#dbc48d}.guide{padding-top:40px}.guide-rows{margin-top:40px;border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:16px;font-size:17px;padding:26px 0}summary::-webkit-details-marker{display:none}.number{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;border:1px solid #676044;color:var(--gold);font-size:15px}.toggle{margin-left:auto;flex-shrink:0;width:28px;height:28px;border:1px solid #595742;border-radius:50%;position:relative}.toggle:before,.toggle:after{content:'';position:absolute;background:#bdbaa9;top:13px;left:8px;width:10px;height:1px}.toggle:after{transform:rotate(90deg)}details[open] .toggle:after{transform:none}.detail-body{padding:0 50px 27px;color:var(--muted);font-size:12px}.detail-body>p{max-width:720px}.detail-body dl{margin-top:24px}.detail-body dl div{display:flex;justify-content:space-between;border-bottom:1px solid #ffffff08;padding:10px 0}.detail-body dd{margin:0;color:#d4d0c0}.night-banner{text-align:center;padding:77px 20px;background:linear-gradient(#10110fe8,#10110fe8),url('assets/lounge.png') center/cover;border-block:1px solid #38392e}.night-banner h2{font-size:35px;color:#e5deca}.night-banner p{font-size:12px;margin-bottom:26px}.faq{display:grid;grid-template-columns:1fr 1.4fr;gap:8%}.faq>div>p{font-size:12px;color:var(--muted)}.faq-list summary{font-size:13px;padding:22px 0;gap:18px}.faq-list p{font-size:12px;line-height:2;margin:0 35px 25px 0}.reservation{display:grid;grid-template-columns:1fr 1fr;gap:10%;background:#141511;border-top:1px solid var(--line)}.reservation p{font-size:13px}.contact-status{border-left:1px solid var(--gold);padding-left:20px;margin-top:36px;font-size:12px}.contact-status p{font-size:11px;color:var(--muted);margin:8px 0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}label{display:block;font-size:11px;color:#d0cebe;margin-bottom:15px}input,select,textarea{display:block;width:100%;background:#20211c;border:1px solid #454638;border-radius:3px;color:#eae5d4;padding:11px 12px;margin-top:7px;color-scheme:dark;font-size:12px}textarea{resize:vertical}form .button{width:100%;margin-top:5px}form .form-note{font-size:9px;color:#949789;line-height:1.8}.reservation #copy-status{font-size:11px;color:var(--gold)}#inquiry-result{border-top:1px solid var(--line);padding-top:20px;margin-top:20px}footer{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:45px 7% 20px;flex-wrap:wrap}footer p{font-size:12px}footer p span{color:#92978a;font-size:10px}footer>a:last-of-type{font-size:9px;color:var(--gold);letter-spacing:1px}.footer-bottom{width:100%;border-top:1px solid var(--line);padding-top:20px;margin-top:10px;display:flex;justify-content:space-between;font-size:8px;color:#8b8e81}.skip{position:fixed;left:15px;top:-100px;background:var(--gold);color:#111;padding:10px;z-index:9}.skip:focus{top:10px}@media(min-width:1500px){.site-shell{margin:30px auto;border:1px solid #36372e;border-radius:9px}}@media(max-width:900px){header{margin-inline:5%;height:90px}nav{gap:15px}nav a{font-size:10px}.brand{font-size:11px}.brand small{font-size:7px}.hero{padding:45px 5% 0}.section{padding:65px 5%}.hero-bottom{grid-template-columns:145px 1fr;gap:15px}.hero-note{padding:15px 10px}.hero-note p{font-size:11px}.hero-photo{height:310px}h2,.intro h2{font-size:29px}.hero-invite{width:185px}.hero-invite p{font-size:17px}.gallery{gap:12px}figure{height:280px}.gallery-tall{height:330px}.gallery-detail{height:260px}.gallery figcaption{padding:20px 12px}figcaption h3{font-size:13px}.occasion-grid{gap:12px}.occasion-grid article{padding:25px 18px}.occasion-grid h3{font-size:18px}.occasion-grid p{min-height:125px}.drink-image{height:400px}.faq{gap:5%}.reservation{gap:7%}}@media(max-width:620px){body{font-size:14px}header{height:83px;gap:10px;flex-wrap:wrap;align-content:center;position:relative}.brand{font-size:10px;letter-spacing:1px}.brand-seal{height:33px;width:33px;font-size:24px}.brand small{font-size:6px;letter-spacing:2px}header nav{display:none}header .button{padding:7px 13px;font-size:10px;gap:12px}.hero{padding-top:38px}.eyebrow{font-size:8px;letter-spacing:2px;margin-bottom:17px}.hero-kicker{font-size:13px;margin-bottom:12px}h1{font-size:57px;letter-spacing:-3px}.hero-top{padding-bottom:28px;align-items:end}.hero-invite{width:95px;padding:0 0 5px 10px}.mini-star{font-size:30px}.hero-invite p{font-size:10px;line-height:1.8;margin-bottom:0}.hero-invite a{display:none}.hero-bottom{display:block}.hero-note{display:none}.hero-photo{height:285px}.photo-overlay{padding:20px;font-size:7px}.round-link{width:37px;height:37px;font-size:20px}.hero-foot{font-size:8px;gap:15px}.hero-foot a{font-size:6px;letter-spacing:1px}.image-note{font-size:6px}.section{padding:57px 6%}h2,.intro h2{font-size:27px;letter-spacing:-1px}.intro p{font-size:11px;line-height:2.2}.intro p br{display:none}.section-heading{display:block}.section-heading>p{font-size:11px;margin-top:17px}.gallery{grid-template-columns:1fr 1fr;gap:12px;margin-top:25px}.gallery-main{grid-column:1/-1;height:270px}.gallery-tall,.gallery-detail{height:240px}.gallery figcaption{padding:17px 12px}figcaption h3{font-size:13px}figcaption small{font-size:6px}.caption{font-size:8px;text-align:left}.about-line{display:block;padding-top:20px}.about-line p{font-size:11px;margin-top:20px}.occasion-grid{grid-template-columns:1fr;gap:15px;margin-top:26px}.occasion-grid article{padding:26px}.occasion-grid h3{font-size:21px}.occasion-grid p{min-height:0;font-size:12px}.occasions h2{font-size:25px}.drinks{display:flex;flex-direction:column;gap:30px;align-items:stretch}.drink-image{height:330px}.drink-copy .muted{max-width:100%}.guide summary{font-size:15px;padding:20px 0}.detail-body{padding:0 0 22px 0;font-size:11px}.detail-body dl div{gap:15px}.detail-body dd{text-align:right}.night-banner{padding:55px 6%}.night-banner h2{font-size:26px}.night-banner p{font-size:11px}.faq,.reservation{grid-template-columns:1fr;gap:25px}.faq-list summary{font-size:12px}.contact-status{margin-top:22px}.reservation{gap:35px}footer{padding:35px 6% 20px;gap:20px}footer p{display:none}.footer-bottom{font-size:7px;display:block;line-height:2.2}.footer-bottom span{display:block}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* --- Additional Enhanced Styles for SEO & Operational Data --- */
.location-section { background: #131411; border-top: 1px solid var(--line); }
.location-grid { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 40px; margin-top: 36px; align-items: start; }
.info-box-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 24px; }
.info-box { background: #1a1b17; border: 1px solid #37392f; border-radius: 6px; padding: 20px; }
.info-box strong { display: flex; align-items: center; gap: 8px; color: var(--gold); font-size: 14px; margin-bottom: 8px; }
.info-box p { font-size: 12px; color: var(--muted); margin: 0; line-height: 1.8; }
.location-summary { background: #181915; border: 1px solid #45473a; border-radius: 8px; padding: 30px; }
.location-summary h3 { font-size: 20px; color: var(--gold); margin: 0 0 14px; }
.location-summary p { font-size: 13px; line-height: 1.9; color: #cfcec4; margin-bottom: 20px; }
.badge-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.badge { display: inline-flex; align-items: center; background: #23251e; border: 1px solid #4a4d3e; color: #dfdcce; font-size: 11px; padding: 4px 12px; border-radius: 16px; }

.pricing-section { background: #171814; border-top: 1px solid var(--line); }
.pricing-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-top: 36px; }
.pricing-card { background: #1d1e1a; border: 1px solid #3c3e33; border-radius: 8px; padding: 34px 28px; position: relative; display: flex; flex-direction: column; justify-content: space-between; }
.pricing-card.featured { border-color: var(--gold); box-shadow: 0 0 25px #c9ae6b15; }
.pricing-card .card-badge { position: absolute; top: 18px; right: 20px; background: var(--gold); color: #10110f; font-size: 10px; font-weight: 700; padding: 3px 10px; border-radius: 12px; }
.pricing-card h3 { font-size: 22px; color: var(--white); margin: 0 0 8px; }
.pricing-card .time-range { font-size: 12px; color: var(--gold); margin-bottom: 16px; }
.pricing-card p { font-size: 13px; line-height: 1.8; color: var(--muted); margin-bottom: 20px; }
.pricing-card ul { list-style: none; padding: 0; margin: 0 0 24px; border-top: 1px solid #ffffff0a; }
.pricing-card li { display: flex; align-items: center; gap: 10px; font-size: 12px; color: #dedbc9; padding: 10px 0; border-bottom: 1px solid #ffffff08; }
.pricing-card li::before { content: '✓'; color: var(--gold); font-weight: 700; }

.history-card { background: #161713; border: 1px solid #36382d; border-radius: 8px; padding: 28px; margin-top: 36px; display: grid; grid-template-columns: 180px 1fr; gap: 30px; align-items: center; }
.history-card .history-title { font-size: 16px; color: var(--gold); font-weight: 600; line-height: 1.5; }
.history-card p { margin: 0; font-size: 13px; line-height: 2; color: #cfcec4; }

@media(max-width: 900px) {
  .location-grid, .pricing-cards { grid-template-columns: 1fr; gap: 20px; }
  .history-card { grid-template-columns: 1fr; gap: 15px; }
}
@media(max-width: 620px) {
  .info-box-grid { grid-template-columns: 1fr; }
  .pricing-card { padding: 24px 20px; }
}

/* Linked promotional board above the heritage introduction. */
.promo-board { display: flex; justify-content: center; padding: 12px 20px 0; }
.promo-board a { display: block; line-height: 0; border-radius: 12px; }
.promo-board img { display: block; width: 146px; max-width: 100%; height: auto; }
.promo-board + .intro.section { padding-top: 24px; }

/* Transparent rabbit hosts: decorative, in-flow, and non-interactive. */
.rabbit-mascot { display: block; width: auto; height: 170px; max-width: 100%; object-fit: contain; pointer-events: none; user-select: none; }
.hero-invite .rabbit-welcome { height: 155px; margin: -40px auto 12px; }
.spaces, .guide { position: relative; }
.mascot-section-host { float: right; margin: -20px 0 16px 30px; }
.mascot-section-host .rabbit-mascot { height: 160px; }
.spaces .section-heading, .guide .section-heading { display: block; min-height: 155px; }
.spaces .section-heading > p, .guide .section-heading > p { margin-top: 16px; }
.spaces .gallery, .guide .guide-rows { clear: both; }
.rabbit-faq { height: 185px; margin: 26px auto 0 18px; }
.rabbit-contact { height: 170px; margin: 20px 0 0 16px; }
@media (max-width: 620px) {
 .hero-invite .rabbit-welcome { height: 100px; max-width: 95px; margin: 0 auto 10px; }
 .mascot-section-host { margin: 0 0 12px 16px; }
 .mascot-section-host .rabbit-mascot { height: 115px; max-width: 90px; }
 .spaces .section-heading, .guide .section-heading { min-height: 125px; }
 .rabbit-faq, .rabbit-contact { height: 115px; margin: 20px auto 0; }
}

/* Double mascot size; keep copy and controls in the foreground. */
.rabbit-mascot {
 transform: scale(2);
 transform-origin: center center;
 position: relative;
 z-index: 0;
}
.hero-top, .spaces, .guide, .faq, .reservation { isolation: isolate; }
.hero-top > div, .hero-invite > p, .hero-invite > a,
.spaces .section-heading, .spaces .gallery, .spaces .caption, .spaces .about-line,
.guide .section-heading, .guide .guide-rows,
.faq h2, .faq p, .faq .eyebrow, .faq-list,
.reservation h2, .reservation p, .reservation .eyebrow,
.reservation .contact-status, .reservation form {
 position: relative;
 z-index: 1;
}
.hero-invite .rabbit-welcome { transform: translateY(145px) scale(2); transform-origin: center bottom; }
.rabbit-faq, .rabbit-contact { transform-origin: left top; }
@media (max-width: 620px) {
 .hero-invite .rabbit-welcome { transform-origin: right center; }
 .mascot-section-host .rabbit-mascot { transform-origin: right center; }
 .rabbit-faq, .rabbit-contact { transform-origin: center center; }
}

/* Raise the FAQ mascot behind its introduction. */
.rabbit-faq { transform: translateY(-160px) scale(2); }

/* Fit the mobile welcome rabbit between the header and hero photograph. */
@media (max-width: 620px) {
 .hero-invite .rabbit-welcome { transform: translateY(20px) scale(2.8); }
}
