@import "https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@300;400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap";:root{--green:#073c32;--dark:#062e28;--gold:#d5b47b;--cream:#f5f2e9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{background:var(--cream);color:var(--green);margin:0;font-family:Be Vietnam Pro,sans-serif;font-size:14px}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}p{line-height:1.9}h1,h2,h3{margin:0;font-family:Playfair Display,Georgia,serif;font-weight:400}em{color:#a0814f;font-weight:400}h2{font-size:clamp(32px,4vw,52px);line-height:1.25}h3{font-size:24px}.top{background:var(--dark);color:#d4dbd5;letter-spacing:1px;justify-content:space-between;padding:10px 6%;font-size:10px;display:flex}header{background:var(--cream);z-index:20;border-bottom:1px solid #073c3215;justify-content:space-between;align-items:center;height:90px;padding:0 6%;display:flex;position:sticky;top:0}.brand{letter-spacing:2px;align-items:center;gap:10px;font-family:Be Vietnam Pro,Arial,sans-serif;font-size:21px;font-weight:600;display:flex}.brand small{letter-spacing:3.4px;text-align:center;margin-top:6px;font:8px Be Vietnam Pro,sans-serif;display:block}.mark{color:#a0814f;font-size:42px}nav{gap:30px;font-size:12px;display:flex}nav a:hover{color:#a0814f}.button{background:var(--gold);color:#132f28;justify-content:space-between;align-items:center;gap:35px;padding:18px 26px;font-size:12px;font-weight:600;transition:background .2s;display:inline-flex}.button:hover{background:#e4c998}.button.small{background:var(--green);color:#fff;padding:13px 22px}.hamb{display:none}.hero{background:var(--dark);color:#fff;height:calc(100svh - 126px);min-height:680px;max-height:900px;position:relative;overflow:hidden}.heroimg{object-fit:cover;object-position:center;width:75%;height:100%;position:absolute;top:0;right:0}.shade{background:linear-gradient(90deg,#062e28 0%,#062e28eb 26%,#062e2870 57%,#062e2810 100%),linear-gradient(#0000 65%,#062e2899);position:absolute;inset:0}.herotext{max-width:900px;padding:80px 6% 100px;position:relative}.eyebrow{letter-spacing:2.7px;color:#9d7c46;margin:0 0 25px;font-size:10px;font-weight:600}.hero .eyebrow{color:var(--gold)}h1{letter-spacing:-1.5px;font-size:clamp(48px,5.7vw,82px);line-height:1.12}h1 em{color:var(--gold)}.herotext>p:not(.eyebrow){color:#dce3dc;margin:26px 0;font-size:13px;font-weight:300}.actions{align-items:center;gap:30px;display:flex}.textlink{border-bottom:1px solid #ffffff60;padding:15px 0;font-size:12px}.textlink span{margin-left:20px}.herofoot{letter-spacing:1.7px;border-top:1px solid #ffffff30;justify-content:space-between;padding:25px 0;font-size:8px;display:flex;position:absolute;bottom:0;left:6%;right:6%}.wrap{max-width:1600px;margin:auto;padding:100px 7%}.story{grid-template-columns:1fr 1fr;align-items:center;gap:9%;display:grid}.story p:not(.eyebrow){color:#67736a;margin-top:0;font-size:13px}.line-link{border-bottom:1px solid #a0814f;margin-top:10px;padding-bottom:9px;font-size:11px;font-weight:500;display:inline-block}.ribbon{letter-spacing:1.5px;background:#e9e7db;justify-content:space-evenly;align-items:center;gap:20px;padding:25px 5%;font-size:10px;display:flex}.ribbon b{color:#a0814f}.sectionhead{justify-content:space-between;align-items:end;display:flex}.sectionhead>p{color:#738075;font-size:12px}.tabs{gap:8px;margin:38px 0 30px;display:flex}.tabs button{color:var(--green);background:0 0;border:1px solid #073c3225;border-radius:30px;padding:10px 23px;font-size:11px}.tabs button.active{background:var(--green);color:#fff}.dishgrid{grid-template-columns:repeat(2,1fr);gap:40px 28px;display:grid}.dishimage{background:#e5dfd0;height:320px;position:relative;overflow:hidden}.dishimage img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.dishimage:hover img{transform:scale(1.04)}.dishimage>span{background:#f5f2e9ed;padding:7px 12px;font-size:9px;position:absolute;top:18px;left:18px}.dishname{justify-content:space-between;align-items:center;padding:20px 0;display:flex}.dishname p{color:#758074;margin:7px 0 0;font-size:11px}.dishname>a{border:1px solid #073c3230;border-radius:50%;place-items:center;width:38px;height:38px;display:grid}.foodnote{color:#67736a;border-top:1px solid #073c3225;justify-content:space-between;gap:20px;margin-top:22px;padding-top:24px;font-size:10px;display:flex}.foodnote a{color:var(--green);white-space:nowrap}.space{background:var(--dark);color:var(--cream);grid-template-columns:1fr 1fr;display:grid}.spaceart{background:repeating-linear-gradient(90deg,#0000 0 50px,#cfae7415 51px 52px),radial-gradient(#2d5e4b,#0b352b);flex-direction:column;justify-content:center;align-items:center;min-height:620px;padding:60px;display:flex}.arch{outline-offset:15px;border:1px solid #c1a77570;border-radius:200px 200px 0 0;outline:1px solid #c1a77530;flex-direction:column;justify-content:center;align-items:center;width:80%;height:390px;display:flex}.arch>span{letter-spacing:10px;color:var(--gold);font:36px Georgia}.boat{color:var(--gold);height:125px;font:120px Georgia}.arch small{letter-spacing:2px;color:#b9c2af;font-size:7px}.artcaption{letter-spacing:3px;color:var(--gold);margin-top:55px;font-size:8px}.spacetext{padding:75px 12%}.spacetext .eyebrow,.spacetext em{color:var(--gold)}.spacetext>p:not(.eyebrow){color:#b9c9bd;margin-top:25px;font-size:12px}.specs{border-bottom:1px solid #ffffff25;gap:50px;margin:30px 0;padding-bottom:25px;display:flex}.specs strong{color:var(--gold);font:38px Georgia;display:block}.specs span{color:#c6d1c6;margin-top:10px;font-size:9px;display:block}.spacetext ul{color:#c6d1c6;margin-bottom:30px;padding-left:15px;font-size:10px;line-height:2.5}.contact{text-align:center;padding-top:100px;padding-bottom:80px}.contact>p:not(.eyebrow){color:#708071;max-width:470px;margin:25px auto;font-size:12px}.phone{border-bottom:1px solid #bd9c62;margin:5px 0 50px;padding-bottom:20px;font-family:Georgia,serif;font-size:clamp(30px,5vw,60px);display:inline-block}.contactrow{text-align:left;justify-content:center;gap:120px;display:flex}.contactrow small{letter-spacing:2px;color:#99794a;font-size:8px}.contactrow p{font-size:12px}.contactrow a{border-bottom:1px solid #a0814f;padding-bottom:5px;font-size:10px}footer{background:var(--dark);color:#e4e7dc;justify-content:space-between;align-items:center;gap:25px;padding:35px 6%;display:flex}footer .brand{font-size:15px}footer span,footer small{color:#adbaad;font-size:9px}.floatcall{background:var(--gold);color:var(--green);border:4px solid var(--cream);z-index:30;border-radius:40px;padding:12px 20px;position:fixed;bottom:22px;right:22px;box-shadow:0 5px 25px #0002}.floatcall span{margin-left:7px;font-size:10px}@media (min-width:1500px){.herotext{padding-top:110px}}@media (max-width:760px){.top{justify-content:center;font-size:8px}.top span:last-child{display:none}header{height:75px;padding:0 5%}.brand{letter-spacing:1px;font-size:15px}.brand small{letter-spacing:2px;font-size:6px}.mark{font-size:30px}header>.button{padding:11px 14px;font-size:10px}.hamb{color:var(--green);background:0 0;border:0;font-size:20px;display:block}nav{background:var(--cream);padding:25px;display:none;position:absolute;top:75px;left:0;right:0}nav.opened{flex-direction:column;display:flex}.hero{height:calc(100svh - 104px);min-height:650px}.heroimg{object-position:63% center;width:100%}.shade{background:linear-gradient(90deg,#062e28ed,#062e2860),linear-gradient(#0000,#062e28)}.herotext{padding:80px 6% 90px}h1{font-size:52px}.herotext>p:not(.eyebrow){font-size:12px}.herofoot span:nth-child(2){display:none}.herofoot{font-size:7px}.wrap{padding:65px 6%}.story{grid-template-columns:1fr;gap:25px}.ribbon{flex-wrap:wrap;gap:18px;font-size:8px}.ribbon b,.sectionhead>p{display:none}.dishgrid{grid-template-columns:1fr;gap:20px}.dishimage{height:300px}.tabs{justify-content:space-between;gap:5px}.tabs button{padding:10px 15px;font-size:10px}.foodnote{flex-direction:column;line-height:1.8}.space{grid-template-columns:1fr}.spaceart{min-height:410px;padding:45px}.arch{width:75%;height:280px}.arch>span{font-size:29px}.artcaption{margin-top:35px;font-size:7px}.spacetext{padding:55px 7%}.contactrow{text-align:center;flex-direction:column;align-items:center;gap:30px}.contact>p:not(.eyebrow){font-size:11px}footer{text-align:center;flex-direction:column;padding-bottom:90px}.floatcall{bottom:15px;right:15px}.eyebrow{font-size:8px}h3{font-size:23px}}.logo-crop{aspect-ratio:878/655;flex-shrink:0;width:65px;display:block;position:relative;overflow:hidden}.logo-crop img{width:233.257%;max-width:none;height:auto;position:absolute;top:-49.771%;left:-48.405%}footer .logo-crop{width:55px}@media (max-width:760px){header .logo-crop{width:44px}header .brand{gap:8px;font-size:13px}header .brand small{letter-spacing:1.8px;font-size:5px}}.roomgallery{flex-direction:column;justify-content:center;gap:12px;min-width:0;padding:38px 0 38px 38px;display:flex}.roommain{aspect-ratio:4/3;background:#163c32;position:relative;overflow:hidden}.roommain>img{object-fit:contain;width:100%;height:100%;display:block}.roomcontrols{background:linear-gradient(#0000,#000b);justify-content:space-between;align-items:center;padding:35px 15px 15px;display:flex;position:absolute;bottom:0;left:0;right:0}.roomcontrols span{letter-spacing:1.5px;color:#fff;font-size:8px}.roomcontrols button{color:#fff;background:#062e2850;border:1px solid #ffffff70;border-radius:50%;width:36px;height:36px;font-size:18px}.roomthumbs{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.roomthumbs button{aspect-ratio:3/2;opacity:.65;background:0 0;border:2px solid #0000;padding:0;overflow:hidden}.roomthumbs button.selected{border-color:var(--gold);opacity:1}.roomthumbs button:hover{opacity:1}.roomthumbs img{object-fit:cover;width:100%;height:100%;display:block}@media (max-width:760px){.roomgallery{padding:25px 6% 0}.roomcontrols span{font-size:7px}.roommain{aspect-ratio:3/2}.roomthumbs{gap:6px}}.roomcaption{color:#f5f2e9;border-left:3px solid var(--gold);background:#062e28ed;padding:11px 16px;font-size:13px;position:absolute;top:18px;left:18px}.roomthumbs button{aspect-ratio:auto;opacity:1;background:#103c32;flex-direction:column;display:flex;overflow:visible}.roomthumbs button img{aspect-ratio:3/2;opacity:.7;height:auto}.roomthumbs button.selected img,.roomthumbs button:hover img{opacity:1}.roomthumbs button span{color:#e3e8dd;text-align:center;width:100%;padding:7px 3px;font-size:9px;line-height:1.5;display:block}.roomthumbs button.selected span{color:var(--gold)}@media (max-width:760px){.roomcaption{padding:9px 12px;font-size:11px;top:12px;left:12px}.roomthumbs button span{padding:5px 2px;font-size:8px}}.menu-filters{grid-template-columns:1fr 2fr;gap:16px;margin:32px 0;display:grid}.menu-filters label{gap:8px;font-size:12px;font-weight:600;display:grid}.menu-filters input,.menu-filters select{width:100%;min-width:0;color:var(--green);font:inherit;background:#fffdf7;border:1px solid #073c3245;padding:13px;font-size:13px}.menu-group{margin:32px 0}.menu-group>h3{background:var(--green);color:var(--gold);padding:14px 20px}.menu-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px;margin:0;padding:0;list-style:none;display:grid}.menu-entry{border-bottom:1px solid #073c3225;padding:17px 3px}.menu-item{grid-template-columns:minmax(0,1fr) auto;gap:12px;display:grid}.menu-item h4{margin:0 0 5px;font-size:14px;line-height:1.5}.menu-item p{color:#536259;margin:3px 0;font-size:11px;line-height:1.5}.menu-price{text-align:right;font-variant-numeric:tabular-nums;max-width:142px;font-size:13px}.menu-price small{color:#536259;margin-top:5px;display:block}.menu-entry details{margin-top:8px;font-size:11px;line-height:1.7}.menu-entry summary{cursor:pointer;color:#6b542d}.menu-entry details ul{padding-left:20px}@media (max-width:760px){.menu-list,.menu-filters{grid-template-columns:1fr}.menu-price{max-width:115px;font-size:12px}}.dish-gallery{padding-bottom:0}.dish-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:28px;display:grid}.dish-gallery figure{background:#fffdf7;border:1px solid #073c3225;margin:0}.dish-gallery img{object-fit:contain;background:var(--dark);width:100%;height:clamp(250px,33vw,445px);display:block}.dish-gallery figcaption{padding:18px}.dish-gallery figcaption p{color:#536259;margin:6px 0 0;font-size:12px}@media (max-width:760px){.dish-gallery-grid{grid-template-columns:1fr}.dish-gallery img{height:320px}}.custom-logo img{object-fit:contain;width:58px;height:48px;display:block}@media (max-width:760px){.custom-logo img{width:40px;height:36px}}.admin-shell{max-width:1080px;margin:auto;padding:40px 20px 80px}.admin-shell h1{font:600 clamp(28px,5vw,44px)/1.2 Be Vietnam Pro,sans-serif}.admin-toolbar{z-index:100;color:#fffdf7;background:#073c32;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 20px;display:flex;position:sticky;top:0}.admin-toolbar>div{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-toolbar>span{flex-basis:100%;font-size:12px}.admin-toolbar a{text-decoration:underline}.admin-toolbar button,.admin-fields button{font:inherit;color:#073c32;background:#fffdf7;border:1px solid #9e9d87;border-radius:5px;padding:8px 12px}.admin-toolbar button.admin-primary{background:#d5b47b;font-weight:700}.admin-toolbar button:disabled,.admin-fields button:disabled{opacity:.55;cursor:default}.admin-fields{border:0;min-width:0;margin:0;padding:0}.admin-fields details{background:#fffdf7;border:1px solid #073c3240;border-radius:6px;margin:12px 0;padding:14px}.admin-fields summary{cursor:pointer;padding:5px 0;font-weight:600}.admin-fields label{gap:5px;margin:10px 0;font-size:12px;display:grid}.admin-fields input,.admin-fields textarea,.admin-fields select{color:#073c32;width:100%;min-width:0;font:inherit;background:#fff;border:1px solid #073c3255;border-radius:4px;padding:8px;font-size:14px}.admin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px;display:grid}.admin-photo{grid-template-columns:96px minmax(0,1fr);align-items:center;gap:12px;display:grid}.admin-photo img{object-fit:contain;background:#f5f2e9;width:96px;height:72px}.admin-photo span{font-size:11px}.admin-add{align-items:end;gap:10px;margin-bottom:12px;display:flex}.admin-add label{flex:1;margin:0}@media (max-width:650px){.admin-grid{grid-template-columns:1fr}.admin-toolbar{position:relative}.admin-photo{grid-template-columns:72px minmax(0,1fr)}.admin-photo img{width:72px}}.offer-wrap{padding-bottom:0}.offer-banner{color:#fffaf0;background:radial-gradient(at 95% 5%,#17604a,#062a24 68%);border:1px solid #b9985e;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:center;gap:clamp(18px,4vw,54px);padding:clamp(20px,4vw,52px);display:grid;box-shadow:0 16px 40px #062a2420}.offer-copy .eyebrow{color:#e8c88d}.offer-copy h2{color:#f3d8a4;max-width:24ch;font-family:Be Vietnam Pro,Arial,sans-serif;font-size:clamp(23px,3.2vw,47px);line-height:1.23}.offer-copy p{white-space:pre-line;line-height:1.6}.offer-period{color:#f3d8a4;font-weight:700}.offer-copy .button{color:#072a22;background:#e8c88d}.offer-terms{color:#f0e3cb;margin-bottom:0;font-size:12px}.offer-banner img{border:1px solid #b9985e;justify-self:center;width:100%;max-width:440px;height:auto;display:block}.offer-banner:has(.offer-copy:only-child){grid-template-columns:1fr}.admin-fields .offer-switch{align-items:center;display:flex}.admin-fields .offer-switch input{width:auto}@media (max-width:700px){.offer-banner{grid-template-columns:1fr}.offer-banner img{max-width:360px}}.jobs-section{padding-bottom:0}.jobs-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:24px 0;display:grid}.job-card{background:#fffdf7;border:1px solid #073c3240;padding:22px}.job-card dl{gap:9px;margin:16px 0;display:grid}.job-card dl div{grid-template-columns:90px 1fr;gap:10px;display:grid}.job-card dt{font-weight:600}.job-card dd{margin:0}.job-details{white-space:pre-line;line-height:1.6}.jobs-section .textlink{font-weight:700}@media (max-width:700px){.jobs-grid{grid-template-columns:1fr}}.recruitment-announcement{background:#fffdf7;border:1px solid #b9985e;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:24px;margin:24px 0;padding:clamp(16px,3vw,32px);display:grid}.recruitment-announcement img{width:100%;height:auto;display:block}.recruitment-announcement>div:only-child{grid-column:1/-1}.recruitment-announcement .job-details{overflow-wrap:anywhere}@media (max-width:700px){.recruitment-announcement{grid-template-columns:1fr}}.section-edit-bar{text-align:right;background:#e9efe6;padding:8px 20px}.section-edit-bar button{font:inherit;color:#073c32;cursor:pointer;background:#fffdf7;border:1px solid #073c32;border-radius:5px;padding:8px 12px;font-weight:700}.section-editor{z-index:150;background:#fffdf7;width:min(100%,580px);position:fixed;inset:0 0 0 auto;overflow:auto;box-shadow:-8px 0 28px #0003}.section-editor .admin-shell{padding:12px 20px 40px}.booking-dialog{color:#073c32;background:#fffdf7;border:0;border-radius:12px;width:min(440px,100% - 32px);max-height:calc(100dvh - 32px);margin:auto;padding:24px;position:fixed;inset:0;overflow:auto}.booking-dialog::backdrop{background:#0009}.booking-dialog form,.booking-dialog label{gap:6px;display:grid}.booking-dialog form{gap:14px;margin:16px 0}.booking-dialog input{width:100%;font:inherit;border:1px solid #9e9d87;border-radius:5px;padding:8px}.booking-close{cursor:pointer;font-size:26px;position:absolute;top:8px;right:12px}.booking-dialog button.button,.actions button.button,header button.button{cursor:pointer}.booking-list{gap:12px;margin:16px 0;display:grid}.booking-list article{border:1px solid #073c3240;border-radius:6px;padding:14px}.booking-list a{text-decoration:underline}
