/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.hidden{display:none}.table{display:table}}:root{--ink:#3d2a18;--ink-soft:#735a3f;--gold:#aa7b30;--gold-light:#d9bc78;--cream:#fbf5e8;--paper:#fffdf7;--forest:#33482e;--line:#8b632a38;--shadow:0 24px 70px #56371121}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:Noto Serif TC,Songti TC,PMingLiU,Georgia,serif}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}img{max-width:100%;display:block}.site-header{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);z-index:30;background:#fffdf7e0;justify-content:space-between;align-items:center;height:82px;padding:0 clamp(22px,5vw,76px);display:flex;position:sticky;top:0;left:0;right:0}.brand{color:var(--ink);align-items:center;gap:12px;text-decoration:none;display:inline-flex}.brand-logo{object-fit:contain;width:82px;height:60px}.brand strong{letter-spacing:.22em;font-size:21px;font-weight:600;line-height:1.1;display:block}.brand small{letter-spacing:.23em;margin-top:5px;font-family:Georgia,serif;font-size:8px;display:block}.site-nav{align-items:center;gap:clamp(18px,2.2vw,34px);display:flex}.site-nav a{color:var(--ink-soft);letter-spacing:.11em;font-size:13px;text-decoration:none;transition:color .18s;position:relative}.site-nav a:after{background:var(--gold);content:"";width:100%;height:1px;transition:transform .18s;position:absolute;bottom:-8px;left:50%;transform:translate(-50%)scaleX(0)}.site-nav a:hover{color:var(--ink)}.site-nav a:hover:after{transform:translate(-50%)scaleX(1)}.header-action{border-bottom:1px solid var(--gold);color:var(--ink);letter-spacing:.14em;padding:8px 2px;font-size:14px;text-decoration:none}.hero{background:linear-gradient(100deg,#fcf4e0f5,#fffcf39e),repeating-linear-gradient(45deg,#0000 0 12px,#a1722a06 12px 13px);grid-template-columns:minmax(0,.88fr) minmax(440px,1.12fr);align-items:center;min-height:680px;padding:80px clamp(24px,7vw,108px);display:grid;position:relative;overflow:hidden}.hero:before{content:"";border:1px solid #aa7b304d;border-radius:50%;width:540px;height:540px;position:absolute;top:-240px;right:-170px}.hero-copy{z-index:3;max-width:590px;position:relative}.kicker{color:var(--gold);letter-spacing:.28em;margin:0 0 18px;font-family:Georgia,serif;font-size:12px}.hero h1{letter-spacing:.08em;margin:0;font-size:clamp(52px,6.1vw,90px);font-weight:500;line-height:1.26}.hero-lead{color:var(--ink-soft);letter-spacing:.06em;white-space:pre-line;margin:26px 0 34px;font-size:18px;line-height:2}.hero-actions{flex-wrap:wrap;gap:13px;display:flex}.hero-address{color:var(--ink-soft);letter-spacing:.09em;margin:23px 0 0;font-size:12px}.button{cursor:pointer;letter-spacing:.12em;border:0;justify-content:center;align-items:center;min-height:50px;padding:0 30px;text-decoration:none;transition:transform .18s,box-shadow .18s,background .18s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #aa7b3059}.primary,.submit-button{color:#fffaf0;background:linear-gradient(135deg,#836025,#b68737);box-shadow:0 12px 30px #78511d38}.secondary{border:1px solid var(--gold);color:var(--ink);background:0 0}.hero-orbit{z-index:2;width:100%;max-width:690px;height:550px;margin-left:auto;position:relative}.orbit-ring{border:1px solid #aa7b3052;border-radius:50%;width:520px;height:520px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.orbit-ring:before,.orbit-ring:after{background:var(--gold);content:"";border-radius:50%;width:7px;height:7px;position:absolute}.orbit-ring:before{top:75px;left:45px}.orbit-ring:after{bottom:55px;right:70px}.hero-card{box-shadow:var(--shadow);background:#f9efd7;border:8px solid #fffdf6f2;position:absolute;overflow:hidden}.hero-card img{object-fit:cover;width:100%;height:100%}.hero-card-front{width:352px;height:440px;top:62px;left:13%;transform:rotate(-4deg)}.hero-card-back{width:284px;height:355px;top:112px;right:5%;transform:rotate(6deg)}.spark{color:var(--gold);position:absolute}.spark-one{font-size:26px;top:13%;left:3%}.spark-two{font-size:18px;bottom:12%;right:4%}.ambient{filter:blur(1px);pointer-events:none;border-radius:50%;position:absolute}.ambient-one{background:#ecca7447;width:340px;height:340px;top:100px;left:-190px}.ambient-two{background:#ffebb27a;width:420px;height:420px;bottom:-150px;right:30%}.section-shell{max-width:1420px;margin:0 auto;padding-left:28px;padding-right:28px}.news-section,.about-section,.space-gallery-section,.corner-gallery-section,.menu-section,.cat-section,.experiences,.booking-section,.faq-section,.visit-section{scroll-margin-top:82px}.news-section{grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);align-items:center;gap:clamp(48px,8vw,110px);padding-top:112px;padding-bottom:112px;display:grid}.news-copy>span{color:var(--gold);letter-spacing:.15em;margin-bottom:20px;font-family:Georgia,serif;font-size:12px;display:block}.news-copy h2,.news-copy h3{letter-spacing:.08em;margin:0;font-weight:500}.news-copy h2{font-size:clamp(36px,4vw,54px)}.news-copy h3{margin-top:24px;font-size:22px}.news-copy>p:last-child{color:var(--ink-soft);white-space:pre-line;margin:18px 0 0;line-height:2}.news-image{box-shadow:var(--shadow);cursor:zoom-in;background:#efe4ce;border:8px solid #fffaf0;margin:0;padding:0}.news-image img{width:100%;height:auto}.about-section{grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);align-items:center;gap:clamp(54px,8vw,120px);padding-top:118px;padding-bottom:118px;display:grid}.about-mark{cursor:zoom-in;background:0 0;border:0;width:100%;max-width:520px;padding:0;display:block;overflow:hidden}.about-mark img{width:100%;height:auto;transition:transform .22s}.about-mark:hover img{transform:scale(1.012)}.about-copy{max-width:710px}.about-copy h2,.menu-intro h2,.food-gallery-heading h2,.cat-section h2,.section-heading h2,.booking-summary h2,.visit-section h2{letter-spacing:.08em;margin:0;font-size:clamp(34px,4vw,52px);font-weight:500;line-height:1.45}.about-copy>p:not(.kicker){color:var(--ink-soft);margin:22px 0 0;font-size:15px;line-height:2.05}.about-tags{flex-wrap:wrap;gap:9px;margin-top:30px;display:flex}.about-tags span{border:1px solid var(--gold-light);color:var(--ink-soft);letter-spacing:.12em;padding:8px 14px;font-size:11px}.space-gallery-section,.corner-gallery-section{padding-bottom:118px}.corner-gallery-section{padding-top:8px}.space-gallery-heading{grid-template-columns:minmax(260px,.58fr) minmax(0,1.42fr);gap:20px 54px;margin-bottom:48px;display:grid}.space-gallery-heading .kicker{grid-column:1/-1;margin-bottom:-4px}.space-gallery-heading h2{letter-spacing:.08em;margin:0;font-size:clamp(34px,4vw,52px);font-weight:500;line-height:1.45}.space-gallery-heading>p:last-child{color:var(--ink-soft);max-width:760px;margin:2px 0 0;line-height:2}.photo-rail-shell{position:relative}.photo-rail-controls{justify-content:flex-end;align-items:center;gap:9px;margin-bottom:15px;display:flex}.photo-rail-controls button{background:var(--paper);color:var(--ink);cursor:pointer;border:1px solid #aa7b3057;border-radius:50%;justify-content:center;align-items:center;width:39px;height:39px;padding:0 0 2px;font-family:Arial,sans-serif;font-size:20px;transition:background .18s,transform .18s;display:flex}.photo-rail-controls button:hover{background:#f2e3bf;transform:translateY(-1px)}.photo-rail{overscroll-behavior-inline:contain;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-color:#aa7b3080 #aa7b3017;scrollbar-width:thin;gap:18px;padding:7px 2px 22px;display:flex;overflow-x:auto}.photo-rail-card{color:var(--ink);cursor:zoom-in;font:inherit;scroll-snap-align:start;text-align:left;background:#fffdf7;border:1px solid #aa7b303d;flex:0 0 clamp(310px,42vw,560px);padding:0;transition:box-shadow .18s,transform .18s;overflow:hidden;box-shadow:0 10px 28px #482e0f14}.photo-rail-card:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.photo-rail-image{background:#eee6d8;justify-content:center;align-items:center;height:360px;display:flex;overflow:hidden}.photo-rail-image img{object-fit:contain;width:100%;height:100%}.photo-rail-caption{letter-spacing:.06em;justify-content:space-between;align-items:center;gap:12px;padding:14px 15px;font-size:12px;display:flex}.photo-rail-caption small,.food-photo-card small{color:var(--gold);letter-spacing:.05em;flex:none;font-size:9px}.menu-section{border-bottom:1px solid var(--line);border-top:1px solid var(--line);background:linear-gradient(145deg,#f2e5c9,#fbf6e9 56%,#efe0bf);padding:112px 0}.menu-shell{grid-template-columns:minmax(280px,.62fr) minmax(0,1.38fr);align-items:center;gap:clamp(42px,6vw,90px);display:grid}.menu-intro{max-width:650px}.menu-intro>p:not(.kicker){color:var(--ink-soft);margin:24px 0 30px;line-height:2}.menu-poster-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:14px;display:grid}.menu-poster{color:var(--ink);cursor:zoom-in;font:inherit;text-align:left;background:#766044;border:6px solid #fffcf2e6;width:100%;padding:0;text-decoration:none;transition:box-shadow .18s,transform .18s;display:block;overflow:hidden;box-shadow:0 16px 38px #482e0f24}.menu-poster:first-child{transform:rotate(-1.2deg)}.menu-poster:nth-child(3){transform:rotate(1.2deg)}.menu-poster:hover{box-shadow:var(--shadow);transform:translateY(-5px)}.menu-poster img{width:100%;height:auto}.menu-poster span{letter-spacing:.05em;text-align:center;background:#fffdf7f5;padding:10px 8px;font-size:10px;display:block}.menu-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:70px;display:grid}.menu-card{background:#fffdf7c7;border:1px solid #aa7b303d;min-height:100%;padding:28px 24px}.menu-card h3{letter-spacing:.1em;margin:0;font-size:20px;font-weight:500}.menu-card>p{color:var(--gold);letter-spacing:.08em;margin:8px 0 20px;font-size:10px}.menu-card dl{margin:0}.menu-card dl>div{border-top:1px dotted #78542738;justify-content:space-between;align-items:baseline;gap:10px;padding:11px 0;display:flex}.menu-card dt{color:var(--ink-soft);font-size:12px;line-height:1.55}.menu-card dd{color:var(--gold);flex:none;margin:0;font-family:Georgia,serif;font-size:12px}.menu-disclaimer{color:var(--ink-soft);letter-spacing:.05em;text-align:right;max-width:1420px;margin:22px auto 0;padding:0 28px;font-size:10px}.food-gallery-shell{margin-top:94px}.food-gallery-heading{text-align:center;max-width:740px;margin:0 auto 42px}.food-gallery-heading>p:last-child{color:var(--ink-soft);margin:16px 0 0;font-size:13px;line-height:1.9}.food-photo-grid{column-count:4;column-gap:16px}.food-photo-card{break-inside:avoid;color:var(--ink);cursor:zoom-in;font:inherit;text-align:left;background:#fffdf7;border:1px solid #aa7b303d;width:100%;margin-bottom:16px;padding:0;text-decoration:none;transition:box-shadow .18s,transform .18s;display:block;overflow:hidden;box-shadow:0 10px 28px #482e0f14}.food-photo-card:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.food-photo-card img{width:100%;height:auto}.food-photo-card span{letter-spacing:.07em;justify-content:space-between;align-items:center;gap:12px;padding:13px 14px;font-size:12px;display:flex}.cat-section{grid-template-columns:150px 1fr;align-items:center;gap:clamp(36px,7vw,90px);padding-top:100px;padding-bottom:100px;display:grid}.cat-section>div:last-child{max-width:720px}.cat-section>div:last-child>p:last-child{color:var(--ink-soft);white-space:pre-line;margin:20px 0 0;line-height:2}.cat-seal{aspect-ratio:1;border:1px solid var(--gold-light);color:#e7cc8b;background:#3a2c1d;border-radius:50%;justify-content:center;align-items:center;font-size:40px;display:flex;box-shadow:inset 0 0 0 8px #3a2c1d,inset 0 0 0 9px #d9bc7866}.experiences{padding-top:112px;padding-bottom:112px}.section-heading{text-align:center;max-width:780px;margin:0 auto 54px}.section-heading>p:last-child{color:var(--ink-soft);margin-top:18px;line-height:1.9}.activity-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;display:grid}.activity-card{border:1px solid var(--line);background:#fff;grid-template-columns:1fr;align-items:start;transition:border .18s,box-shadow .18s,transform .18s;display:grid;overflow:hidden;box-shadow:0 10px 35px #482e0f0f}.activity-card:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.activity-card.selected{border-color:#aa7b30bf;box-shadow:0 18px 55px #76501c24}.activity-image-button{aspect-ratio:4/5;cursor:pointer;background:#efe1bc;border:0;align-self:start;width:100%;min-height:0;padding:0;position:relative;overflow:hidden}.activity-image-button>img{object-fit:contain;width:100%;height:100%}.combo-posters{background:radial-gradient(circle,#fff8e4,#e7d19b);width:100%;height:100%;display:block;position:relative;overflow:hidden}.combo-posters img{object-fit:contain;background:#f8efd9;border:5px solid #fffaf0;width:57%;height:78%;position:absolute;top:11%;box-shadow:0 12px 28px #4a2e1233}.combo-posters img:first-child{left:4%;transform:rotate(-5deg)}.combo-posters img:last-child{right:4%;transform:rotate(5deg)}.zoom-badge{color:#fff;letter-spacing:.1em;opacity:.9;background:#2e2318d1;padding:8px 12px;font-size:12px;transition:opacity .16s,transform .16s;position:absolute;bottom:14px;right:14px;transform:translateY(0)}.activity-image-button:hover .zoom-badge{opacity:1;transform:translateY(-2px)}.activity-content{padding:34px 30px}.activity-eyebrow{color:var(--gold);letter-spacing:.16em;margin:0 0 12px;font-size:12px}.activity-title-row{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:end;gap:14px;padding-bottom:18px;display:flex}.activity-title-row h3{letter-spacing:.08em;margin:0;font-size:31px;font-weight:500}.price{color:var(--gold);white-space:nowrap;margin:0;font-family:Georgia,serif;font-size:19px}.price small{letter-spacing:.1em;text-align:right;font-family:inherit;font-size:10px;display:block}.activity-subtitle{color:var(--ink-soft);font-size:14px;line-height:1.8}.activity-description{color:#68543d;margin:12px 0 16px;font-size:13px;line-height:1.9}.activity-duration{border-left:3px solid var(--gold);background:#f7eedb;justify-content:space-between;align-items:center;margin:16px 0;padding:12px 14px;display:flex}.activity-duration span{color:var(--ink-soft);letter-spacing:.08em;font-size:11px}.activity-duration strong{color:var(--gold);font-size:14px;font-weight:600}.capacity-note{color:var(--ink-soft);margin:-6px 0 12px;font-size:12px}.activity-content ul{margin:16px 0 18px;padding:0;list-style:none}.activity-content li{padding:7px 0 7px 22px;font-size:14px;position:relative}.activity-content li:before{color:var(--gold);content:"✦";font-size:9px;position:absolute;top:10px;left:0}.extra-question-note{color:#4f6249;background:#33482e12;margin:0 0 20px;padding:11px 13px;font-size:12px;line-height:1.7}.card-button{background:var(--cream);border:1px solid var(--gold-light);color:var(--ink);width:100%;min-height:44px;padding:0 20px}.booking-section{border-bottom:1px solid var(--line);border-top:1px solid var(--line);background:radial-gradient(circle at 12% 20%,#debc692b,#0000 28%),#f2e7cf;scroll-margin-top:80px}.booking-shell{grid-template-columns:minmax(300px,.82fr) minmax(520px,1.18fr);max-width:1220px;margin:0 auto;display:grid}.booking-summary{padding:82px 70px 82px 28px}.booking-summary>p:nth-of-type(2){color:var(--ink-soft);margin:20px 0 32px;line-height:1.9}.mini-selection{background:#ffffff80;border:1px solid #aa7b3040;align-items:center;gap:18px;padding:13px;display:flex}.mini-visual{flex:0 0 78px;height:100px;overflow:hidden}.mini-visual>img{object-fit:cover;width:100%;height:100%}.mini-visual .combo-posters img{border-width:2px}.mini-selection small,.mini-selection span{color:var(--ink-soft);font-size:12px;display:block}.mini-selection strong{letter-spacing:.08em;margin:5px 0 7px;font-size:21px;display:block}.steps{margin:38px 0 0;padding:0;list-style:none}.steps li{align-items:center;gap:20px;margin:24px 0;display:flex}.steps li>span{color:var(--gold);font-family:Georgia,serif;font-size:13px}.steps strong,.steps small{display:block}.steps strong{letter-spacing:.08em;font-size:15px}.steps small{color:var(--ink-soft);margin-top:5px;font-size:12px}.booking-form{background:#fffdf9;padding:66px clamp(30px,5vw,68px);box-shadow:-24px 0 70px #4e300f14}.booking-form fieldset{border:0;border-bottom:1px solid var(--line);margin:0 0 34px;padding:0 0 34px}.booking-form legend{letter-spacing:.08em;align-items:center;gap:12px;margin-bottom:23px;padding:0;font-size:19px;font-weight:600;display:flex}.booking-form legend span{border:1px solid var(--gold);color:var(--gold);border-radius:50%;justify-content:center;align-items:center;width:27px;height:27px;font-family:Georgia,serif;font-size:12px;display:inline-flex}.choice-row{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.choice-pill{border:1px solid var(--line);cursor:pointer;min-height:65px;padding:12px 16px;transition:all .16s}.choice-pill.active{border-color:var(--gold);background:#f5ead0}.choice-pill input{opacity:0;width:1px;height:1px;position:absolute}.choice-pill span{letter-spacing:.05em;font-size:15px;display:block}.choice-pill small{color:var(--gold);margin-top:5px;font-family:Georgia,serif;font-size:11px;display:block}.form-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.form-grid label{display:block}.form-grid label>span{letter-spacing:.07em;margin-bottom:9px;font-size:13px;display:block}.contact-name-field{grid-template-columns:1fr auto;gap:12px;display:grid}.salutation-options{align-items:end;gap:8px;padding-bottom:1px;display:flex}.salutation-options label{cursor:pointer;border:1px solid #6f4e2247;align-items:center;gap:7px;min-height:48px;padding:0 12px;display:flex}.salutation-options input{width:16px;height:16px;min-height:0;padding:0}.salutation-options label>span{white-space:nowrap;margin:0;font-size:12px;display:inline}.booking-date-picker>span{letter-spacing:.07em;margin-bottom:9px;font-size:13px;display:block}.booking-calendar{background:#fff;border:1px solid #6f4e2247;padding:16px}.calendar-header{grid-template-columns:42px 1fr 42px;align-items:center;margin-bottom:14px;display:grid}.calendar-header strong{letter-spacing:.08em;text-align:center;font-size:16px;font-weight:600}.calendar-header button{background:var(--cream);border:1px solid var(--line);color:var(--ink);cursor:pointer;height:40px;padding:0;font-size:25px}.calendar-header button:disabled{cursor:not-allowed;opacity:.35}.calendar-weekdays,.calendar-days{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.calendar-weekdays{margin-bottom:6px}.calendar-weekdays span{color:var(--ink-soft);text-align:center;padding:6px 0;font-size:11px}.calendar-days{min-height:300px;transition:opacity .15s}.calendar-days.is-loading{opacity:.55}.calendar-days button,.calendar-blank{min-height:54px}.calendar-days button{color:var(--ink);cursor:pointer;background:#fffdf8;border:1px solid #e5dac3;flex-direction:column;justify-content:center;align-items:center;padding:5px 2px;display:flex}.calendar-days button span{font-family:Georgia,serif;font-size:15px}.calendar-days button small{color:#55704f;margin-top:3px;font-size:9px}.calendar-days button.available:hover{border-color:var(--gold);background:#f6edda}.calendar-days button.selected{background:var(--forest);border-color:var(--forest);color:#fff;box-shadow:0 5px 14px #33482e33}.calendar-days button.selected small{color:#eaf1e5}.calendar-days button.unavailable{color:#aaa094;cursor:not-allowed;background:#f1eee9;border-color:#ebe6de}.calendar-days button.unavailable small{color:#a86b62}.calendar-legend{gap:18px;margin-top:13px;display:flex}.calendar-legend span{color:var(--ink-soft);align-items:center;gap:6px;font-size:10px;display:flex}.calendar-legend i{border:1px solid var(--line);width:11px;height:11px;display:inline-block}.legend-open{background:#fffdf8}.legend-closed{background:#f1eee9}.calendar-status{color:var(--ink-soft);margin:10px 0 0;font-size:11px}.calendar-status.error{color:#a04134}.availability-message{margin-top:8px;font-size:11px;line-height:1.55;display:block}.availability-message.checking,.availability-message.idle{color:var(--ink-soft)}.availability-message.available{color:#40643b}.availability-message.unavailable{color:#a04134}.field-note{color:var(--ink-soft);margin-top:8px;font-size:11px;line-height:1.55;display:block}.full-width{grid-column:1/-1}input,select,textarea{color:var(--ink);background:#fff;border:1px solid #6f4e2247;border-radius:0;width:100%;min-height:48px;padding:11px 13px}select:disabled{color:#9d8e7b;cursor:not-allowed;background:#f4efe6}textarea{resize:vertical;line-height:1.65}input::placeholder,textarea::placeholder{color:#aa9c8a}.order-total{background:var(--cream);border:1px solid #aa7b3047;justify-content:space-between;align-items:center;margin:0 0 20px;padding:20px;display:flex}.order-total span,.order-total small{display:block}.order-total span{font-size:14px}.order-total small{color:var(--ink-soft);margin-top:5px;font-size:11px}.order-total strong{color:var(--gold);white-space:nowrap;font-family:Georgia,serif;font-size:25px;font-weight:500}.consent{cursor:pointer;align-items:flex-start;gap:12px;display:flex}.consent input{flex:none;width:17px;height:17px;min-height:0;margin-top:3px}.consent span{color:var(--ink-soft);font-size:12px;line-height:1.8}.submit-button{width:100%;min-height:58px;margin-top:24px;font-size:15px}.submit-button:disabled{cursor:wait;opacity:.65}.privacy-note{color:#998874;text-align:center;margin:12px 0 0;font-size:11px}.form-error{color:#9a392e;background:#fff0ed;border:1px solid #e8b8ae;padding:12px 14px;font-size:13px;line-height:1.6}.faq-section{padding-top:108px;padding-bottom:108px}.faq-list{border-top:1px solid var(--line);max-width:980px;margin:0 auto}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;letter-spacing:.06em;padding:23px 48px 23px 0;font-size:16px;list-style:none;position:relative}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{color:var(--gold);content:"+";font-family:Georgia,serif;font-size:25px;font-weight:300;transition:transform .18s;position:absolute;top:16px;right:10px}.faq-list details[open] summary:after{transform:rotate(45deg)}.faq-list details p{color:var(--ink-soft);max-width:800px;margin:0;padding:0 46px 24px 0;font-size:13px;line-height:1.9}.visit-section{grid-template-columns:.85fr 1.15fr;align-items:center;gap:70px;padding-top:90px;padding-bottom:90px;display:grid}.visit-section>div>p:last-child{color:var(--ink-soft);max-width:650px;line-height:1.9}.visit-section address{border-left:1px solid var(--gold);padding:14px 0 14px 34px;font-style:normal}.visit-section address span,.visit-section address small{color:var(--ink-soft);font-size:12px;display:block}.visit-section address strong{letter-spacing:.08em;margin:10px 0;font-size:19px;display:block}.visit-section address a{color:var(--gold);margin:0 0 10px;font-size:15px;text-decoration:none;display:block}.visit-section address .direction-link{border-bottom:1px solid var(--gold-light);letter-spacing:.06em;margin-top:14px;padding-bottom:5px;font-size:12px;display:inline-block}.social-links{gap:10px;margin-top:16px;display:flex}.social-links a{border:1px solid var(--line);color:var(--gold);align-items:center;gap:8px;min-height:38px;margin:0;padding:7px 12px;text-decoration:none;transition:background .2s,border-color .2s,transform .2s;display:inline-flex}.visit-section address .social-links a{margin:0;display:inline-flex}.social-links a:hover{background:var(--cream);border-color:var(--gold);transform:translateY(-1px)}.social-links svg{width:18px;height:18px}.social-links a:first-child svg{fill:currentColor}.social-links.compact{margin:0}.social-links.compact a{color:#cdbb99;border-color:#cdbb9973;border-radius:50%;justify-content:center;width:36px;height:36px;min-height:0;padding:0}.social-links.compact svg{width:15px;height:15px}.footer-links{align-items:center;gap:18px;display:flex}.map-frame{border:1px solid var(--line);height:300px;margin-top:22px;overflow:hidden;box-shadow:0 12px 32px #482e0f1a}.map-frame iframe{border:0;width:100%;height:100%}footer{color:#f4ead2;background:#332818;justify-content:space-between;align-items:center;min-height:120px;padding:24px clamp(24px,7vw,100px);display:flex}.footer-brand{color:#f4ead2}footer p,footer a{color:#cdbb99;font-size:11px;text-decoration:none}.lightbox{cursor:zoom-out;z-index:100;background:#18120ce0;justify-content:center;align-items:center;padding:clamp(14px,3vw,42px);display:flex;position:fixed;inset:0}.lightbox-panel{cursor:default;flex-direction:column;justify-content:center;align-items:center;width:100%;max-width:1480px;height:100%;display:flex;position:relative}.lightbox-images{justify-content:center;align-items:center;width:100%;max-width:100%;height:calc(100vh - 116px);display:flex;overflow:hidden}.lightbox-image-button{cursor:zoom-in;background:0 0;border:0;max-width:100%;max-height:100%;padding:0;line-height:0;display:block}.lightbox-image-button img{object-fit:contain;background:#17120d;width:auto;max-width:100%;max-height:calc(100vh - 116px);box-shadow:0 24px 80px #00000070}.lightbox-images.is-zoomed{background:#00000040;justify-content:flex-start;align-items:flex-start;overflow:auto}.lightbox-images.is-zoomed .lightbox-image-button{cursor:zoom-out;flex:none;max-width:none;max-height:none}.lightbox-images.is-zoomed .lightbox-image-button img{max-width:none;max-height:none}.lightbox-panel p{color:#fff8e8;letter-spacing:.08em;text-align:center;margin:13px 52px 0;font-size:13px}.lightbox-close{color:var(--ink);cursor:pointer;z-index:2;background:#fffaf0;border:1px solid #d6b775bf;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;padding:0 0 3px;font-family:Arial,sans-serif;font-size:30px;line-height:1;display:flex;position:absolute;top:0;right:0}.lightbox-close:hover{background:#f0dfb8}.confirmation-page{background:radial-gradient(circle at 50% 20%,#fff7df,#e7d09f);justify-content:center;align-items:center;min-height:100vh;padding:32px;display:flex;position:relative;overflow:hidden}.confirmation-card{box-shadow:var(--shadow);text-align:center;z-index:2;background:#fffdf7f0;border:1px solid #aa7b3061;width:100%;max-width:650px;padding:clamp(34px,7vw,70px);position:relative}.confirmation-card:before{content:"";pointer-events:none;border:1px solid #aa7b302e;position:absolute;inset:11px}.confirmation-logo{object-fit:contain;width:132px;height:96px;margin:0 auto 22px}.confirmation-card h1{letter-spacing:.1em;margin:0;font-size:clamp(34px,6vw,48px);font-weight:500}.confirmation-lead{color:var(--ink-soft);max-width:480px;margin:22px auto 28px;line-height:1.9}.confirmation-details{border-bottom:1px solid var(--line);border-top:1px solid var(--line);text-align:left;margin:0 0 24px;padding:15px 0}.confirmation-details div{grid-template-columns:100px 1fr;padding:8px 0;display:grid}.confirmation-details dt{color:var(--ink-soft);font-size:12px}.confirmation-details dd{margin:0;font-size:14px}.notice{background:var(--cream);color:var(--ink-soft);text-align:left;align-items:flex-start;gap:9px;padding:13px;font-size:12px;line-height:1.7;display:flex}.confirmation-card .button{margin-top:26px}.address{color:var(--ink-soft);margin:24px 0 0;font-size:11px}@media (width<=1080px){.site-nav{gap:18px}.site-nav a{font-size:11px}.hero{grid-template-columns:.9fr 1.1fr;padding-left:50px;padding-right:30px}.hero-card-front{width:315px;height:395px;left:5%}.hero-card-back{width:256px;height:320px;right:1%}.activity-card{grid-template-columns:1fr}.activity-image-button{aspect-ratio:4/5;height:auto;min-height:0}.menu-grid{grid-template-columns:1fr 1fr}.food-photo-grid{column-count:3}.choice-row{grid-template-columns:repeat(2,1fr)}}@media (width<=820px){.site-header{height:70px}.site-nav{display:none}.brand strong{font-size:18px}.brand-logo{width:70px;height:52px}.hero{grid-template-columns:1fr;padding:64px 24px 40px}.hero-copy{text-align:center}.hero-orbit{height:505px;margin-top:30px}.orbit-ring{width:430px;height:430px}.hero-card-front{width:324px;height:405px;left:calc(50% - 190px)}.hero-card-back{width:252px;height:315px;right:calc(50% - 220px)}.news-section{grid-template-columns:.8fr 1.2fr;padding-top:88px;padding-bottom:88px}.about-section{grid-template-columns:minmax(220px,.7fr) 1.3fr;gap:48px;padding-top:88px;padding-bottom:88px}.menu-shell{grid-template-columns:1fr}.menu-intro{max-width:760px}.food-photo-grid{column-count:2}.space-gallery-heading{grid-template-columns:1fr}.space-gallery-heading .kicker{grid-column:auto}.photo-rail-card{flex-basis:min(78vw,500px)}.photo-rail-image{height:330px}.activity-grid{grid-template-columns:1fr 1fr}.activity-image-button{aspect-ratio:4/5;height:auto}.booking-shell{grid-template-columns:1fr}.booking-summary{padding:70px 28px 42px}.steps{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.steps li{align-items:flex-start;margin:0}.booking-form{box-shadow:none}.visit-section{grid-template-columns:1fr;gap:38px}}@media (width<=620px){.site-header{padding:0 18px}.header-action{font-size:12px}.hero{min-height:auto}.hero h1{font-size:48px}.hero-lead{font-size:15px}.hero-actions{justify-content:center}.hero-address{font-size:10px;line-height:1.7}.desktop-break{display:none}.hero-orbit{height:400px}.orbit-ring{width:340px;height:340px}.hero-card-front{width:260px;height:325px;top:36px;left:calc(50% - 160px)}.hero-card-back{width:198px;height:248px;top:85px;right:calc(50% - 172px)}.about-section{grid-template-columns:1fr;gap:44px;padding-top:76px;padding-bottom:76px}.news-section{grid-template-columns:1fr;gap:42px;padding-top:76px;padding-bottom:76px}.about-mark{max-width:390px;margin:0 auto}.about-copy h2,.menu-intro h2,.food-gallery-heading h2,.cat-section h2{font-size:34px}.menu-section{padding:76px 0}.menu-shell{grid-template-columns:1fr;gap:45px}.menu-poster-grid{grid-template-columns:1fr;max-width:390px;margin:0 auto}.menu-poster:first-child,.menu-poster:nth-child(3){transform:none}.menu-grid{grid-template-columns:1fr;margin-top:48px}.menu-disclaimer{text-align:left}.food-gallery-shell{margin-top:70px}.food-gallery-heading{text-align:left}.food-photo-grid{column-count:1}.space-gallery-section,.corner-gallery-section{padding-bottom:76px}.space-gallery-heading{margin-bottom:34px}.photo-rail-card{flex-basis:86vw}.photo-rail-image{height:300px}.experiences{padding-top:76px;padding-bottom:76px}.section-heading{text-align:left;margin-bottom:38px}.activity-grid{grid-template-columns:1fr}.activity-image-button{aspect-ratio:4/5;height:auto}.activity-content{padding:28px 24px}.activity-title-row h3{font-size:28px}.cat-section{grid-template-columns:88px 1fr;gap:28px;padding-top:76px;padding-bottom:76px}.cat-seal{font-size:28px}.steps{grid-template-columns:1fr}.booking-form{padding:44px 22px}.choice-row,.form-grid,.contact-name-field{grid-template-columns:1fr}.salutation-options{align-items:stretch}.salutation-options label{flex:1;justify-content:center}.booking-calendar{padding:10px}.calendar-weekdays,.calendar-days{gap:3px}.calendar-days{min-height:268px}.calendar-days button,.calendar-blank{min-height:48px}.calendar-days button span{font-size:14px}.calendar-days button small{font-size:8px}.full-width{grid-column:auto}.order-total{align-items:flex-start;gap:14px}.order-total strong{font-size:21px}.faq-section{padding-top:76px;padding-bottom:76px}.faq-list summary{padding-right:42px;font-size:14px;line-height:1.65}.visit-section{padding-top:70px;padding-bottom:70px}footer{flex-direction:column;align-items:flex-start;gap:18px;padding-top:36px;padding-bottom:36px}.confirmation-page{padding:16px}.confirmation-card{padding:48px 26px 36px}.lightbox{padding:12px}.lightbox-images{height:calc(100vh - 94px)}.lightbox-panel p{margin-top:10px;font-size:11px}.lightbox-close{width:40px;height:40px;top:4px;right:4px}}
