@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Noto+Sans+JP:wght@400;500;600&family=Noto+Serif+JP:wght@400;500;600&display=swap";:root{--paper:#f8f7f1;--ink:#343d30;--green:#4b5a42;--muted:#7c8175;--line:#dedfd4;--white:#fffefa;--serif:"Noto Serif JP",serif;--latin:"Cormorant Garamond",Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{background:var(--paper);color:var(--ink);margin:0;font-family:Noto Sans JP,sans-serif;font-size:13px;line-height:1.9}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.4}a,button{transition:background .2s,color .2s,transform .2s}:is(button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible){outline-offset:4px;outline:2px solid #8c9a73}img{object-fit:cover;width:100%;display:block}svg{flex-shrink:0}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--serif);font-weight:400}h2{letter-spacing:.08em;font-size:clamp(25px,2.7vw,39px);line-height:1.85}button{color:inherit}.italic{color:#839072}.eyebrow{letter-spacing:.19em;font-size:10px;font-weight:500;line-height:1.6}.button{border:1px solid var(--green);background:var(--green);color:#fff;letter-spacing:.06em;justify-content:center;align-items:center;gap:30px;min-height:52px;padding:16px 25px;font-size:12px;display:inline-flex}.button:hover{background:#35452e}.button svg{margin-left:auto}.header{background:var(--paper);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:35px;height:100px;padding:0 5%;display:flex}.brand{line-height:.9;font-family:var(--latin);letter-spacing:.015em;align-items:center;gap:12px;font-size:39px;display:flex}.brand-symbol{color:#7f8b69;font-family:Georgia;font-size:48px;font-weight:400;line-height:1}.brand small{letter-spacing:.15em;margin-top:10px;font-family:Noto Sans JP,sans-serif;font-size:8px;display:block}.header nav{letter-spacing:.06em;gap:32px;margin-left:auto;font-size:11px;display:flex}.header nav a:hover{color:#879475}.nav-book{min-width:135px;min-height:42px;padding:11px 25px}.hero{grid-template-columns:1fr 1fr;min-height:650px;display:grid}.hero-copy{flex-direction:column;align-items:flex-start;padding:68px 7% 22px 10%;display:flex}.hero .eyebrow{letter-spacing:.16em;align-items:center;gap:9px;font-size:9px;display:flex}.hero .eyebrow span{background:#849571;border-radius:50%;width:6px;height:6px}.hero h1{letter-spacing:.1em;white-space:nowrap;margin:28px 0 20px;font-size:clamp(32px,3.4vw,53px);line-height:1.95}.hero-sub{color:#777c6f;letter-spacing:.07em;font-size:12px;line-height:2.35}.hero .button{min-width:245px;margin:30px 0 32px}.hero-bottom{color:#8a8e81;letter-spacing:.08em;justify-content:space-between;align-items:center;width:100%;margin-top:auto;font-size:9px;display:flex}.hero-bottom a{border:1px solid var(--line);padding:8px 10px}.hero-photo{margin:19px 19px 19px 0;position:relative;overflow:hidden}.hero-photo>img{object-position:40% center;filter:brightness(.86)saturate(.74);height:100%;position:absolute;inset:0}.hero-photo:after{content:"";background:linear-gradient(#0000 55%,#171c1766);position:absolute;inset:0}.photo-label{color:#f7f3e6;font-family:var(--latin);z-index:1;font-size:22px;font-style:italic;position:absolute;bottom:28px;left:30px}.photo-stamp{writing-mode:vertical-rl;font-family:var(--serif);letter-spacing:.3em;color:#fff;z-index:1;font-size:17px;line-height:2.2;position:absolute;top:30px;right:26px}.intro-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);letter-spacing:.08em;color:#737c6b;justify-content:space-between;align-items:center;gap:15px;padding:22px 5%;font-size:10px;display:flex}.intro-strip span{align-items:center;gap:10px;display:flex}.intro-strip i{border-left:1px solid var(--line);height:15px}.section{max-width:1600px;margin:auto;padding:100px 7.5%}.about{grid-template-columns:1fr 1fr;align-items:center;gap:9%;padding-top:115px;padding-bottom:115px;display:grid}.about-image{padding:0 20px 22px 0;position:relative}.about-image:before{content:"";z-index:-1;border:1px solid #c9cebe;position:absolute;inset:25px 0 0 28px}.about-image img{object-position:65%;filter:saturate(.65);height:400px}.image-number{letter-spacing:.15em;font-size:9px;position:absolute;bottom:0;right:25px}.about-copy .eyebrow{margin-bottom:22px}.about-copy h2{margin-bottom:26px;font-size:30px}.about-copy>p:not(.eyebrow){color:#757c6d;margin-bottom:18px;font-size:11px;line-height:2.5}.text-link{cursor:pointer;background:0 0;border:none;border-bottom:1px solid #adb69d;align-items:center;gap:15px;padding:12px 0 6px;font-size:11px;display:inline-flex}.text-link:hover{color:#8a9a74}.menu-section{background:#eeefe6;padding:95px 7.5%}.section-head{justify-content:space-between;align-items:end;gap:40px;margin-bottom:40px;display:flex}.section-head .eyebrow{color:#78836c;margin-bottom:17px}.section-head>p{color:#77806f;padding-bottom:7px;font-size:11px;line-height:2.3}.menu-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.menu-card{background:#f9f9f3;border:1px solid #d8ddce;flex-direction:column;min-height:265px;padding:28px;display:flex}.menu-card:hover{border-color:#9eac8b;transform:translateY(-4px)}.menu-top{font-family:var(--latin);color:#98a18b;justify-content:space-between;align-items:center;margin-bottom:30px;font-size:19px;display:flex}.menu-english{font-family:var(--latin);margin-bottom:9px;font-size:24px;line-height:1.2}.menu-card h3{letter-spacing:.04em;margin-bottom:10px;font-size:12px;font-weight:500}.menu-card>p:not(.menu-english){color:#7e8575;font-size:10px;line-height:1.9}.menu-price{border-top:1px solid var(--line);align-items:center;gap:15px;margin-top:25px;padding-top:14px;display:flex}.menu-price>span{font-family:var(--latin);font-size:25px}.menu-price small{font-size:15px}.menu-price strong{font-family:var(--latin);margin-left:auto;font-size:25px;font-weight:500}.signature{background:var(--green);color:#fafbef;grid-column:span 2}.signature .menu-top,.signature>p:not(.menu-english){color:#d3dcc9}.signature .menu-price{border-color:#829075}.pill{letter-spacing:.12em;border:1px solid #9aa88b;padding:4px 8px;font-family:Noto Sans JP,sans-serif;font-size:8px}.fine-print{color:#828979;margin-top:17px;font-size:10px;line-height:1.9}.staff-grid{grid-template-columns:1fr 1fr;gap:45px;display:grid}.staff-card{grid-template-columns:160px 1fr;align-items:center;gap:25px;display:grid}.staff-card img{filter:saturate(.7);object-position:center 23%;height:225px}.staff-card .eyebrow{color:#909780;font-size:8px}.staff-card h3{font-family:var(--serif);margin:12px 0;font-size:24px;font-weight:400}.staff-card h3 small{font-family:var(--latin);color:#8a927d;margin-left:10px;font-size:18px;font-style:italic}.staff-card p:not(.eyebrow){color:#7b8371;font-size:10px;line-height:2.2}.staff-card .text-link{gap:7px;font-size:9px}.quiet-banner{text-align:center;background:#e5e8dc;padding:65px 20px}.quiet-banner svg{color:#93a17e;margin:0 auto 12px}.quiet-banner p{font-family:var(--serif);letter-spacing:.17em;font-size:26px;line-height:2}.quiet-banner>span{letter-spacing:.22em;color:#8b977b;margin-top:22px;font-size:8px;display:block}.booking-shell{border:1px solid var(--line);background:var(--white);grid-template-columns:280px 1fr;display:grid}.booking-aside{background:#eaede2;flex-direction:column;padding:35px;display:flex}.booking-aside>svg{color:#8a9876;margin-bottom:22px}.booking-aside h3{font-family:var(--latin);font-size:36px;font-weight:400;line-height:1.03}.booking-aside em{color:#7d8e68;font-weight:400}.booking-aside>p{color:#8a927c;margin:22px 0;font-size:10px;line-height:2.2}.booking-aside ol{gap:25px;margin:20px 0 45px;padding:0;line-height:1;list-style:none;display:grid}.booking-aside li{color:#a2ac95;align-items:center;gap:13px;font-size:11px;display:flex}.booking-aside li span{border:1px solid #c6cebb;border-radius:50%;place-items:center;width:26px;height:26px;font-size:9px;display:grid}.booking-aside li.current{color:var(--green)}.booking-aside li.current span{background:var(--green);color:#fff;border-color:var(--green)}.booking-help{border-top:1px solid #ccd3c0;margin-top:auto;padding-top:22px}.booking-help p,.booking-help small{color:#849174;font-size:9px;display:block}.booking-help a{font-family:var(--latin);font-size:28px;line-height:1.8}.booking-main{padding:36px}.booking-main>h3{font-size:16px;font-family:var(--serif);margin-bottom:5px;font-weight:500}.booking-main>.fine-print{margin-top:0;margin-bottom:25px}label{font-size:11px;font-weight:500;display:block}input,select,textarea{width:100%;color:var(--ink);background:#fdfdf9;border:1px solid #d9ded0;border-radius:0;min-width:0;margin-top:9px;padding:13px}select{font-size:11px}textarea{resize:vertical;min-height:110px}label small{color:#8a927c;font-size:9px;font-weight:400;display:block}.field-grid{grid-template-columns:1.6fr 1fr;gap:18px;margin-bottom:25px;display:grid}.date-heading{justify-content:space-between;align-items:center;margin:24px 0 12px;font-size:11px;display:flex}.date-heading>div{gap:9px;display:flex}.date-heading button{border:1px solid var(--line);background:0 0;place-items:center;width:28px;height:28px;display:grid}.date-strip{grid-template-columns:repeat(7,1fr);gap:7px;margin-bottom:25px;display:grid}.date-strip button{border:1px solid var(--line);background:#f8f9f3;flex-direction:column;align-items:center;gap:2px;min-width:0;padding:8px 0;display:flex}.date-strip small{font-size:8px;font-weight:400}.date-strip b{font-family:var(--latin);font-size:24px;font-weight:500;line-height:1.1}.date-strip span{font-size:9px}.date-strip .selected,.times .selected{background:var(--green);border-color:var(--green);color:#fff}.field-title{margin-bottom:13px;font-size:11px;display:block}.field-title small{color:#8b967f;margin-left:12px;font-weight:400}.times{grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:15px;display:grid}.times button{border:1px solid var(--line);background:#fff;padding:8px 2px;font-size:11px}.times p{grid-column:1/-1}.times button:hover,.date-strip button:hover{border-color:var(--green)}.booking-actions{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:15px;margin-top:25px;padding-top:23px;display:flex}.booking-actions>span{font-size:11px}.booking-actions strong{font-family:var(--latin);margin-left:8px;font-size:27px;font-weight:500}.booking-actions .button{gap:20px;padding:13px 22px;font-size:11px}.plain-button{text-align:left;background:0 0;border:none;padding:10px 0;font-size:11px;display:block}.required{color:#9e8163;margin-left:5px;font-size:8px}.checkbox{align-items:start;gap:10px;margin-top:22px;font-size:10px;font-weight:400;line-height:2;display:flex}.checkbox input{width:16px;height:16px;accent-color:var(--green);flex-shrink:0;margin-top:3px}.checkbox a{text-decoration:underline}.honeypot{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.confirmation{margin:25px 0}.confirmation>div{border-bottom:1px solid var(--line);grid-template-columns:100px 1fr;padding:14px 0;font-size:11px;display:grid}.confirmation dt{color:#90977e}.confirmation dd{overflow-wrap:anywhere;margin:0}.notice{color:#737c62;background:#eeefe4;padding:17px 20px;font-size:11px;line-height:1.9}.error{color:#a54535;overflow-wrap:anywhere;background:#fff1eb;margin:15px 0;padding:12px 16px;font-size:11px}.loading{color:#899677;align-items:center;gap:10px;padding:15px;font-size:12px;display:flex}.spin{animation:1.1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.lookup{border-top:1px solid var(--line);color:#859076;margin-top:25px;padding-top:20px;font-size:10px}.lookup form{gap:15px;padding-top:15px;display:grid}.booking-success{text-align:center;background:#eaeee2;border:1px solid #ccd4be;padding:55px}.success-icon{border:1px solid #a0b18c;border-radius:50%;place-items:center;width:60px;height:60px;margin:0 auto 20px;display:grid}.booking-success h3{font-family:var(--serif);margin:18px 0;font-size:24px;font-weight:400}.booking-success>p{font-size:12px}.receipt{border:1px solid #cbd3c0;flex-direction:column;gap:7px;max-width:510px;margin:25px auto;padding:25px;display:flex}.receipt small{overflow-wrap:anywhere}.booking-success details{margin:25px;font-size:11px}.booking-success .plain-button{margin:auto}.booking-success code{overflow-wrap:anywhere}.access-section{border-top:1px solid var(--line);background:#edeee5;grid-template-columns:1fr 1fr;display:grid}.access-copy{padding:75px 12% 75px 15%}.access-copy .eyebrow{margin-bottom:24px}.access-copy h2{margin-bottom:25px;font-size:29px}.access-copy dl>div{border-bottom:1px solid #d4d9c9;grid-template-columns:80px 1fr;gap:10px;padding:17px 0;display:grid}.access-copy dt{letter-spacing:.13em;color:#8d9880;padding-top:3px;font-size:8px}.access-copy dd{margin:0;font-size:11px;line-height:2}.access-copy dd small{color:#909a82;font-size:9px;display:block}.phone-number{font-family:var(--latin);justify-content:space-between;align-items:center;font-size:28px;display:flex}.access-links{align-items:center;gap:28px;margin-top:28px;display:flex}.access-links .button{gap:15px;min-height:45px;padding:12px 16px;font-size:10px}.map-wrap{min-height:600px;position:relative}.map-wrap iframe{filter:saturate(.3);border:0;width:100%;height:100%;position:absolute;inset:0}.map-note{font-family:var(--latin);background:#fffff4ee;border:1px solid #d9ddce;align-items:center;gap:15px;padding:20px 25px;font-size:24px;display:flex;position:absolute;bottom:30px;left:30px;right:30px}.map-note small{letter-spacing:.17em;color:#859274;font-family:Noto Sans JP,sans-serif;font-size:8px;display:block}footer{flex-wrap:wrap;align-items:center;gap:40px;padding:55px 7.5% 25px;display:flex}footer>p{color:#89947b;font-size:10px}footer>div{color:#8c967f;gap:20px;margin-left:auto;font-size:9px;display:flex}footer>small{text-align:right;color:#a2aa96;width:100%;margin-top:15px;font-size:8px}.mobile-book{display:none}.document-page{max-width:850px;margin:auto;padding:70px 25px}.document-page>.eyebrow{margin-top:60px}.document-page h1{margin:20px 0 40px;font-size:35px}.document-page h2{margin:30px 0 15px;font-size:20px}.document-page p,.document-page li{font-size:13px;line-height:2.2}.document-page a{text-decoration:underline}.document-page li{margin-bottom:15px}.admin-login{background:#edf0e5;min-height:100vh;padding:40px 7%}.admin-login form{background:var(--white);border:1px solid var(--line);max-width:410px;margin:70px auto;padding:40px}.admin-login .eyebrow{margin-top:20px}.admin-login h1{margin:15px 0 10px;font-size:29px}.admin-login form>p:not(.eyebrow){color:#7e8b70;margin-bottom:25px;font-size:11px}.admin-login form .button{width:100%;margin:25px 0 10px}.admin-app{background:#f6f7f1;grid-template-columns:230px 1fr;min-height:100vh;display:grid}.admin-sidebar{background:#e8ecdf;border-right:1px solid #d8decb;flex-direction:column;height:100vh;padding:35px 23px;display:flex;position:sticky;top:0}.admin-sidebar .brand{margin-bottom:60px;font-size:33px}.admin-sidebar .brand-symbol{font-size:40px}.admin-sidebar>.eyebrow{color:#9aa68a;margin-bottom:20px;font-size:8px}.admin-sidebar>button,.admin-sidebar>a:not(.brand),.sidebar-bottom button{text-align:left;background:0 0;border:0;align-items:center;gap:12px;padding:13px 15px;font-size:11px;display:flex}.admin-sidebar>button b{background:#d6dfc8;border-radius:30px;margin-left:auto;padding:0 7px}.admin-sidebar>button.sidebar-active{background:#d7dfc9}.admin-sidebar>a:not(.brand){margin-top:20px;padding-left:0;font-size:10px}.sidebar-bottom{margin-top:auto}.sidebar-bottom p{align-items:center;gap:7px;font-size:10px;display:flex}.connection-dot{background:#789c61;border-radius:50%;width:6px;height:6px;display:inline-block}.connection-dot.offline{background:#d88d62}.sidebar-bottom small{color:#94a281;padding-left:14px;font-size:8px;display:block}.sidebar-bottom button{margin-top:22px;padding-left:0;font-size:10px}.admin-main{min-width:0;padding:0 40px 50px}.admin-top{border-bottom:1px solid var(--line);letter-spacing:.1em;color:#929e83;justify-content:space-between;align-items:center;height:70px;font-size:9px;display:flex}.admin-title{justify-content:space-between;align-items:center;gap:25px;padding:42px 0 30px;display:flex}.admin-title h1{letter-spacing:.1em;margin:10px 0 5px;font-size:31px}.admin-title p:not(.eyebrow){color:#8f9b80;font-size:11px}.admin-title .eyebrow{color:#8a977c;font-size:8px}.admin-tools{gap:10px;display:flex}.outline-button{background:0 0;border:1px solid #cdd6bf;align-items:center;gap:8px;padding:11px 15px;font-size:10px;display:flex}.outline-button.enabled{background:#e1e8d8}.admin-stats{grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:25px;display:grid}.admin-stats button{background:var(--white);text-align:left;border:1px solid #d9dfcf;padding:22px}.admin-stats button:first-child{background:#e8eedf;border-color:#c4d0b5}.admin-stats button>span{color:#7f9070;justify-content:space-between;font-size:11px;display:flex}.admin-stats b{font-family:var(--latin);margin:10px 0;font-size:52px;font-weight:400;line-height:1.3;display:block}.admin-stats small{color:#8c9b7d;font-size:8px}.admin-main>.notice{margin:20px 0;font-size:10px}.reservation-list{background:var(--white);border:1px solid #dbe0d1;margin-top:25px}.list-toolbar{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;padding:15px 20px;display:flex}.tabs{gap:5px;display:flex}.tabs button{color:#87947a;background:0 0;border:0;padding:8px 11px;font-size:10px}.tabs button.active{color:#4d613f;background:#e7eddc}.date-filter{color:#89967c;align-items:center;gap:9px;font-size:10px;display:flex}.date-filter input{width:130px;margin:0;padding:5px;font-size:10px}.table-scroll{overflow-x:auto}table{border-collapse:collapse;text-align:left;white-space:nowrap;width:100%}th{color:#96a187;background:#f8f9f3;padding:14px 20px;font-size:9px;font-weight:400}td{vertical-align:top;border-top:1px solid #e6e9df;padding:23px 20px;font-size:11px}td>b{font-size:11px;font-weight:500;display:block}td>b strong{font-family:var(--latin);margin-left:6px;font-size:20px;font-weight:500}td>span:not(.status-badge){color:#879779;margin-top:5px;font-size:9px;display:block}td>a{color:#869776;align-items:center;gap:5px;margin-top:8px;font-size:10px;display:flex}td details{color:#81916f;margin-top:8px;font-size:9px}td details p{white-space:pre-wrap;max-width:270px;padding-top:10px}.status-badge{color:#8b9481;background:#efefea;padding:5px 9px;font-size:9px;display:inline-block}.status-badge.pending{color:#a08444;background:#f4ead5}.status-badge.confirmed{color:#647e48;background:#e3ebd7}.status-badge.cancelled{color:#af8170;background:#f4e6df}.small-button{background:var(--green);color:#fff;border:0;padding:8px 12px;font-size:9px}.cancel-button{color:#a29181;background:0 0;border:none;padding:6px;font-size:8px}.row-actions{flex-direction:column;align-items:start;gap:5px;display:flex}.table-footer{color:#9ba68b;border-top:1px solid var(--line);justify-content:space-between;padding:14px 20px;font-size:8px;display:flex}.empty-state{color:#a0ae91;flex-direction:column;align-items:center;padding:65px 20px;display:flex}.empty-state h3{color:#7d8e6a;margin:18px 0 8px;font-size:13px;font-weight:400}.empty-state p{font-size:10px}.modal-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:100;background:#252f2380;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.reservation-popup{text-align:center;background:#fbfcf4;width:100%;max-width:500px;padding:40px;box-shadow:0 25px 100px #1b241b33}.reservation-popup>svg{color:#8a9c70;margin:0 auto 25px}.reservation-popup h2{letter-spacing:.03em;margin:20px 0 12px;font-size:23px}.reservation-popup>p:not(.eyebrow){color:#8d997f;font-size:11px}.popup-item{text-align:left;background:#edf0e4;margin:15px 0;padding:17px;font-size:11px}.popup-item span{color:#869672;font-size:10px;display:block}.reservation-popup .button{width:100%;margin-top:15px}@media (min-width:1600px){.hero-copy{padding-left:15%}.hero{min-height:720px}}@media (max-width:1100px){.header{gap:25px}.header nav{gap:19px}.hero{min-height:580px}.hero-copy{padding-top:50px}.hero h1{font-size:35px}.hero-sub{font-size:10px}.hero .eyebrow{font-size:7px}.about-copy h2{font-size:25px}.section,.menu-section{padding:75px 6%}.staff-card{grid-template-columns:120px 1fr;gap:18px}.staff-card img{height:200px}.staff-grid{gap:30px}.booking-shell{grid-template-columns:240px 1fr}.booking-aside,.booking-main{padding:28px}.access-copy{padding:60px 10%}.access-copy h2{font-size:25px}.access-copy dl>div{grid-template-columns:65px 1fr}.admin-app{grid-template-columns:195px 1fr}.admin-main{padding:0 25px 40px}.admin-sidebar{padding:30px 18px}.admin-title{align-items:start}.admin-tools{flex-wrap:wrap;justify-content:end}td,th{padding-left:14px;padding-right:14px}}@media (max-width:760px){html{scroll-padding-top:15px}.header{gap:15px;height:80px;padding:0 6%}.brand{font-size:32px}.brand-symbol{font-size:40px}.brand small{font-size:7px}.header nav{display:none}.nav-book{min-width:110px;padding:9px 18px;font-size:11px}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:40px 7% 24px}.hero h1{margin-top:24px;font-size:clamp(30px,7.4vw,44px)}.hero-sub{font-size:11px}.hero .eyebrow{font-size:8px}.hero .button{margin-bottom:28px}.hero-bottom{font-size:8px}.hero-photo{height:360px;margin:0 16px 16px}.hero-photo>img{object-position:center 45%}.photo-stamp{font-size:14px}.photo-label{font-size:22px;left:22px}.intro-strip{grid-template-columns:1fr 1fr;gap:15px 10px;padding:20px 6%;font-size:8px;display:grid}.intro-strip i{display:none}.intro-strip span{gap:7px}.intro-strip svg{width:14px}.section{padding:65px 7%}.about{grid-template-columns:1fr;gap:40px}.about-image img{height:300px}.about-copy h2{font-size:27px}.about-copy>p:not(.eyebrow){font-size:11px}.section-head{margin-bottom:30px;display:block}.section-head>p{margin-top:20px;font-size:10px}.section-head h2{font-size:27px}.menu-section{padding:65px 7%}.menu-grid{grid-template-columns:1fr;gap:12px}.menu-card{min-height:235px;padding:25px}.menu-top{margin-bottom:20px}.signature{grid-column:auto}.menu-card h3{font-size:13px}.staff-grid{grid-template-columns:1fr;gap:35px}.staff-card{grid-template-columns:125px 1fr;gap:22px}.staff-card img{height:200px}.staff-card .text-link{font-size:9px}.quiet-banner{padding:50px 20px}.quiet-banner p{font-size:23px}.booking-shell{grid-template-columns:1fr}.booking-aside{padding:25px}.booking-aside>svg,.booking-aside>p,.booking-help{display:none}.booking-aside h3{font-size:30px}.booking-aside h3 br{display:none}.booking-aside h3 em{margin-left:6px}.booking-aside ol{justify-content:space-between;gap:18px;margin:25px 0 0;display:flex}.booking-aside li{gap:6px;font-size:9px}.booking-aside li span{width:23px;height:23px;font-size:8px}.booking-main{padding:25px 20px}.booking-main>h3{font-size:14px}.field-grid{grid-template-columns:1fr;gap:18px}.date-strip{gap:4px}.date-strip button{padding:9px 0}.times{grid-template-columns:repeat(4,1fr);gap:6px}.booking-actions{flex-wrap:wrap}.booking-actions .button{gap:14px;padding:12px 16px;font-size:10px}.booking-actions strong{font-size:24px}.booking-success{padding:35px 20px}.booking-success h3{font-size:21px}.receipt{padding:20px 10px;font-size:11px}.access-section{grid-template-columns:1fr}.access-copy{padding:60px 7%}.access-copy h2{font-size:27px}.map-wrap{min-height:350px}.map-note{font-size:22px;bottom:20px;left:20px;right:20px}.access-links .button{font-size:10px}.access-copy dl>div{grid-template-columns:80px 1fr}footer{gap:25px;padding:40px 7% 100px}footer>div{flex-wrap:wrap;gap:15px;width:100%;margin:0}footer>p{font-size:9px}footer>small{text-align:left;margin-top:0}.mobile-book{z-index:30;justify-content:space-between;min-height:48px;padding:13px 22px;display:flex;position:fixed;bottom:12px;left:16px;right:16px;box-shadow:0 5px 25px #26352130}.admin-app{grid-template-columns:1fr}.admin-sidebar{flex-flow:wrap;align-items:center;gap:15px;height:auto;padding:20px;position:static}.admin-sidebar .brand{margin:0 auto 0 0;font-size:28px}.admin-sidebar>.eyebrow,.admin-sidebar>button,.admin-sidebar>a:not(.brand),.sidebar-bottom small,.sidebar-bottom p{display:none}.sidebar-bottom{margin:0}.sidebar-bottom button{margin:0;padding:5px;font-size:9px}.admin-main{padding:0 18px 35px}.admin-top{letter-spacing:0;height:55px;font-size:8px}.admin-title{flex-wrap:wrap;padding-top:30px}.admin-title h1{font-size:28px}.admin-tools{justify-content:start}.admin-stats{gap:8px}.admin-stats button{padding:14px 12px}.admin-stats button>span{font-size:9px}.admin-stats button>span svg{display:none}.admin-stats b{font-size:39px}.admin-stats small{font-size:7px}.admin-main>.notice{padding:15px;font-size:9px}.list-toolbar{padding:10px}.tabs{flex-wrap:wrap;gap:0}.tabs button{padding:7px 9px;font-size:9px}.date-filter{margin-left:auto}.table-footer{padding:12px;font-size:7px}.admin-login{padding:30px 7%}.admin-login form{margin:50px auto;padding:30px}.reservation-popup{padding:30px 20px}.reservation-popup h2{font-size:20px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.brand .lotus-symbol{color:#755373;flex-shrink:0;width:51px;height:44px}.admin-sidebar .brand .lotus-symbol{width:40px;height:35px}.hero-phone{border-left:2px solid #a1ad90;grid-template-columns:auto auto;align-items:center;column-gap:15px;margin:-12px 0 25px;padding-left:15px;display:grid}.hero-phone>span{color:#7e8972;letter-spacing:.04em;grid-column:1/-1;font-size:9px}.hero-phone strong{font-family:var(--latin);letter-spacing:.015em;font-size:30px;font-weight:500;line-height:1.4}.hero-phone small{color:#87927d;font-size:8px}.hero-phone:hover strong{color:#755373}.photo-crop{overflow:hidden}.photo-crop img{object-fit:cover;width:100%;height:100%;transform:scale(1.035)}.treatment-about .thai-photo{height:420px}.treatment-about .thai-photo img{object-position:center bottom;filter:saturate(.78)}.treatment-story{border-top:1px solid #d2d9c6;grid-template-columns:1fr 1fr;align-items:start;gap:8%;margin-top:40px;padding-top:40px;display:grid}.foot-photo{aspect-ratio:1.18;background:#dbc7ad}.foot-photo img{object-position:center;filter:saturate(.78)}.treatment-story-copy{padding:15px 0}.treatment-story-copy>.eyebrow{color:#859575;margin-bottom:17px;font-size:9px}.treatment-story-copy>h3{font-family:var(--serif);letter-spacing:.06em;margin-bottom:18px;font-size:25px;font-weight:400;line-height:1.9}.treatment-story-copy>p:not(.eyebrow){color:#7d8971;font-size:11px;line-height:2.3}.menu-poster{border-top:1px solid #cbd5be;border-bottom:1px solid #cbd5be;margin-top:25px}.menu-poster summary{cursor:pointer;justify-content:space-between;padding:15px 0;font-size:11px;list-style:none;display:flex}.menu-poster summary::-webkit-details-marker{display:none}.menu-poster summary span{font-size:18px;line-height:1.4}.menu-poster[open] summary span{transform:rotate(45deg)}.menu-poster>a{margin-bottom:18px;display:block}.menu-poster img{width:100%;height:auto}.hero-copy{padding-top:52px}.hero h1{margin-top:24px}.hero .button{margin-top:25px}@media (max-width:1100px){.hero-phone{grid-template-columns:1fr;gap:1px;margin-bottom:22px}.hero-phone strong{font-size:28px}.hero-copy{padding-top:38px}.hero h1{font-size:33px}.treatment-about .thai-photo{height:385px}}@media (max-width:760px){.brand .lotus-symbol{width:43px;height:37px}.hero-copy{padding-top:35px}.hero h1{font-size:clamp(30px,7.4vw,44px)}.hero-phone{grid-template-columns:auto auto;column-gap:14px;margin-top:-8px;margin-bottom:24px}.hero-phone strong{font-size:29px}.hero-phone small{font-size:8px}.hero-phone>span{font-size:9px}.treatment-about .thai-photo{height:340px}.treatment-story{grid-template-columns:1fr;gap:25px;margin-top:30px;padding-top:30px}.treatment-story-copy{padding:0}.treatment-story-copy>h3{font-size:24px}.menu-poster>a{max-width:430px;margin-left:auto;margin-right:auto}}.treatment-about .thai-photo{position:relative}.treatment-about .thai-photo img{object-fit:cover;object-position:center bottom;width:104%;height:118%;position:absolute;top:-16%;left:-2%;transform:none}
