:root{--paper:#f7f6f2;--ink:#263b32;--muted:#62715e;--line:#dce0d5;--green:#294436;--sage:#e8eddf;--serif:'Instrument Serif',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.6 var(--sans);-webkit-font-smoothing:antialiased}body.dialog-open{overflow:hidden}h1,h2,h3,p{margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit;color:inherit}button{cursor:pointer;background:none;border:0}button:disabled{cursor:default;opacity:.55}svg{fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #8a643e;outline-offset:5px}::selection{background:#d6dfc8}[hidden]{display:none!important}.eyebrow{font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:500}.skip-link{position:fixed;left:18px;top:10px;z-index:30;background:var(--paper);padding:12px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}
.studio-header{display:flex;align-items:center;height:88px;border-bottom:1px solid var(--line);padding-inline:max(40px,calc((100vw - 1360px)/2));gap:30px}.wordmark{display:flex;align-items:center;font-size:28px;font-weight:550;letter-spacing:-1.5px;line-height:1}.wordmark svg{width:27px;height:27px;margin-right:10px}.wordmark>span{color:#7b8b6b}.studio-breadcrumb{font-size:12px;color:#a3ac99;display:flex;gap:22px;align-items:center}.studio-breadcrumb>span{color:var(--muted)}.back-link{margin-left:auto;font-size:12px;display:flex;gap:20px;align-items:center}.back-link>span{font-size:19px}.studio-main{max-width:1360px;width:calc(100% - 80px);margin:auto}.studio-intro{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:52px 0 38px}.studio-intro h1{font-family:var(--serif);font-size:62px;font-weight:400;line-height:1.1;letter-spacing:-.02em;margin-top:13px}.studio-intro h1 em{color:#728461;font-weight:400}.intro-description{color:var(--muted);font-size:13px;max-width:525px;line-height:1.8;margin-top:14px}.sample-note{display:flex;gap:11px;align-items:flex-start;padding-top:33px}.sample-dot{width:5px;height:5px;border-radius:50%;background:#718863;flex-shrink:0;margin-top:7px}.sample-note strong{display:block;font-weight:500;font-size:12px}.sample-note div>span{font-size:11px;color:var(--muted);display:block;margin-top:4px}
.studio-workspace{display:grid;grid-template-columns:285px 1fr;gap:34px;align-items:start}.policy-panel{background:#efefe7;border:1px solid var(--line);padding:25px 24px}.policy-heading{display:flex;gap:13px;align-items:center}.section-number{font-size:10px;color:#68775d;font-variant-numeric:tabular-nums}.policy-heading h2,.workspace-heading h2{font-size:15px;font-weight:500;letter-spacing:-.02em}.policy-description{font-size:12px;color:var(--muted);line-height:1.7;margin-top:12px}.control-group{margin-top:27px}.control-group label{font-size:12px;font-weight:500}.currency-field{display:flex;align-items:center;border:1px solid #bbc6ae;background:#fbfaf7;padding:7px 12px;margin-top:10px;gap:10px}.currency-field>span:first-child{font-size:23px;font-family:var(--serif);color:#647658}.currency-field input{width:100%;min-width:0;font-size:22px;border:0;background:none;padding:2px;line-height:1.4;font-variant-numeric:tabular-nums}.currency-field input:focus-visible{outline:0}.currency-field:focus-within{outline:2px solid #8a643e;outline-offset:3px}.currency-field input[aria-invalid=true]{color:#974a36}.currency-code{font-size:10px;color:var(--muted)}.control-help{font-size:11px;line-height:1.7;color:#65715c;margin-top:8px}.control-help strong{color:#364e2b;font-weight:550}.control-label{display:flex;justify-content:space-between;gap:15px;align-items:center}.control-label output{font-size:12px;font-variant-numeric:tabular-nums;font-weight:500;color:#4c6240}input[type=range]{width:100%;height:25px;margin:15px 0 0;accent-color:#3e5635;cursor:pointer}.range-ends{display:flex;justify-content:space-between;font-size:10px;color:#64715a}.demand-control{padding-top:24px;border-top:1px solid #d8dece;margin-top:24px}.reset-button{font-size:11px;display:flex;gap:8px;align-items:center;min-height:40px;padding:6px 0;margin-top:24px;color:#526744}.reset-button svg{width:17px;height:17px}.reset-button:hover{color:#182e13}.policy-principle{display:flex;gap:12px;border-top:1px solid #d8dece;margin-top:13px;padding-top:21px;align-items:flex-start}.policy-principle svg{width:19px;height:19px;color:#657c52;margin-top:1px}.policy-principle p{font-size:10px;line-height:1.75;color:#5b6e4e}
.service-workspace{min-width:0}.workspace-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:7px 0 20px}.workspace-heading>div{display:flex;gap:13px;align-items:center}.live-note{font-size:10px;color:#65775a;display:flex;align-items:center;gap:8px}.live-note i{width:4px;height:4px;background:#829b68;border-radius:50%}.slot-selector{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}.slot{position:relative;display:flex;flex-direction:column;padding:20px 20px 17px;text-align:left;background:#f2f2eb;overflow:hidden;min-width:0;transition:background .2s,color .2s}.slot+.slot{border-left:1px solid var(--line)}.slot.active{background:var(--green);color:#f7f7ee}.slot-label{font-size:11px;color:#617553;position:relative;z-index:1}.active .slot-label{color:#d2ddc5}.slot-time{font-family:var(--serif);font-size:40px;line-height:1.2;margin-top:6px;font-variant-numeric:lining-nums tabular-nums;position:relative;z-index:1}.slot-bottom{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-top:11px;position:relative;z-index:1}.slot-price{font-size:16px;font-weight:500;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.slot-demand{font-size:10px;color:#5d7151}.active .slot-demand{color:#c9d5bd}.slot:focus-visible{outline-offset:-5px;outline-color:#a98754}.slot-bars{position:absolute;display:flex;gap:3px;align-items:flex-end;top:39px;right:20px;height:42px;opacity:.45}.slot-bars i{width:3px;height:10px;background:#97a882;border-radius:1px}.slot-bars i:nth-child(2n){height:16px}.slot-bars i:nth-child(3n){height:23px}.peak-bars i{height:32px}.peak-bars i:nth-child(2n){height:42px}.peak-bars i:nth-child(3n){height:37px}.late-bars i{height:22px}.late-bars i:nth-child(2n){height:30px}.late-bars i:nth-child(3n){height:25px}
.status-row{min-height:48px;padding:12px 0;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.status-row p{font-size:11px;color:#607153;line-height:1.7}.status-row #policy-error{color:#913d2b}.status-row button{font-size:11px;border-bottom:1px solid #7f573b;padding:3px 0;color:#70452b}.status-row button>span{margin-left:10px}.service-detail{display:grid;grid-template-columns:1fr 1fr;gap:20px;transition:opacity .15s}.studio-workspace[aria-busy=true] .service-detail{opacity:.6}.room-card{background:#eaeee1;border:1px solid #d6deca;padding:22px 23px;min-width:0}.room-heading{display:flex;justify-content:space-between;align-items:center;gap:15px}.room-time{font-size:12px;color:#5c714c;font-variant-numeric:tabular-nums}.table-grid{position:relative;border:1px solid #c6d2b7;margin-top:23px;padding:40px 17px 34px;background:repeating-linear-gradient(90deg,transparent 0,transparent 35px,#d4ddc84d 35px,#d4ddc84d 36px)}.room-axis{position:absolute;top:11px;left:13px;font-size:8px;letter-spacing:.12em;color:#5f724e}.table-layout{display:grid;grid-template-columns:repeat(4,1fr);gap:27px 16px;min-height:176px;align-items:center}.studio-table{position:relative;display:flex;align-items:center;justify-content:center;width:35px;height:35px;margin:auto;border:1px solid #8d9f78;border-radius:50%;background:#e8eddf;color:#51693e;font-size:9px;font-variant-numeric:tabular-nums;transition:background .2s,color .2s}.studio-table::before,.studio-table::after{content:'';position:absolute;width:18px;height:4px;border:1px solid #99aa85;background:#eaeee1;border-radius:2px;left:50%;transform:translateX(-50%)}.studio-table::before{top:-8px}.studio-table::after{bottom:-8px}.studio-table.occupied{background:#597249;border-color:#597249;color:#fffef8}.studio-table.occupied::before,.studio-table.occupied::after{background:#c5d1b4}.room-entrance{position:absolute;bottom:-5px;right:13px;background:#eaeee1;font-size:7px;letter-spacing:.12em;padding:0 7px;color:#5c714b}.room-entrance>span{margin-left:7px}.room-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:22px 0 17px;border-bottom:1px solid #ced8bf}.room-summary>div:last-child{border-left:1px solid #ced8bf;padding-left:20px}.room-summary strong{font-family:var(--serif);font-size:34px;font-weight:400;line-height:1.1;font-variant-numeric:lining-nums tabular-nums}.room-summary span{font-size:10px;color:#5b704c;display:block;margin-top:6px}.room-legend{display:flex;gap:18px;margin-top:17px;font-size:10px;color:#536e42}.room-legend>span{display:flex;align-items:center;gap:7px}.room-legend i{width:7px;height:7px;border:1px solid #7e9769;border-radius:2px}.room-legend .is-occupied{background:#597249}
.quote-card{padding:22px 23px;background:#fefdf9;border:1px solid #dedfd3;display:flex;flex-direction:column;min-width:0}.quote-top{display:flex;align-items:center;justify-content:space-between;gap:13px}.offer-badge{font-size:10px;color:#486033;border:1px solid #d6dfc7;padding:3px 8px;background:#f1f5e9}.quote-card h3{font-family:var(--serif);font-size:33px;font-weight:400;letter-spacing:-.02em;line-height:1.1;margin-top:25px}.quote-context{font-size:11px;color:var(--muted);margin-top:10px}.quote-price{font-family:var(--serif);font-size:75px;line-height:1.1;letter-spacing:-.03em;margin-top:19px;font-variant-numeric:lining-nums tabular-nums}.quote-unit{font-size:11px;color:#5b6e4d;margin-top:2px}.quote-unit>span{margin-left:7px;color:#65755a}.quote-reason{font-size:12px;line-height:1.75;margin-top:21px;color:var(--muted);min-height:63px}.quote-rules{margin-top:auto;padding-top:16px;margin-bottom:18px}.quote-rules>div{display:flex;justify-content:space-between;gap:15px;padding:10px 0;border-top:1px solid #dde1d3;font-size:10px}.quote-rules dt{color:#657458}.quote-rules dd{margin:0;color:#3b522e}.primary-button{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:14px 16px;min-height:47px;background:var(--green);color:#fffef4;font-size:11px;text-align:left;transition:background .15s}.primary-button:hover:not(:disabled){background:#405c34}.primary-button>span{font-size:19px;line-height:1}.workspace-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:22px;padding-top:19px;border-top:1px solid var(--line)}.workspace-footer>p{font-size:11px;color:var(--muted)}.download-button{display:flex;align-items:center;gap:12px;font-size:11px;padding:6px 0;min-height:35px}.download-button svg{width:17px;height:17px}.download-button:hover:not(:disabled){color:#6c8056}.studio-disclaimer{font-size:11px;color:#65725b;max-width:860px;margin:34px 0 46px;line-height:1.9}.studio-footer{display:flex;align-items:center;gap:25px;max-width:1360px;width:calc(100% - 80px);margin:auto;border-top:1px solid var(--line);padding:25px 0 31px;font-size:10px;color:#65725b}.studio-footer>a{font-size:22px;font-weight:550;letter-spacing:-1.2px;color:var(--ink)}.studio-footer>span:last-child{margin-left:auto}.fallback-message{border:1px solid var(--line);padding:20px;margin-top:25px}.fallback-message a{text-decoration:underline}.no-js #studio-shell{opacity:.65}.no-js .status-row{display:none}
.guest-dialog{padding:0;border:0;background:var(--paper);color:var(--ink);width:calc(100% - 36px);max-width:520px;max-height:calc(100dvh - 40px);overscroll-behavior:contain;box-shadow:0 25px 100px #10281b44}.guest-dialog::backdrop{background:#1d3025ad;backdrop-filter:blur(4px)}.dialog-header{display:flex;align-items:center;justify-content:space-between;padding:14px 22px;border-bottom:1px solid var(--line)}.dialog-header>button{width:38px;height:38px;font-size:29px;color:#60734e;line-height:1}.guest-inner{text-align:center;padding:25px 22px}.guest-mark{width:35px;height:35px;color:#7c8d69;margin-bottom:19px}.guest-inner h2{font-family:var(--serif);font-size:49px;font-weight:400;line-height:1.1;letter-spacing:-.025em;margin-top:13px}.guest-at{font-size:12px;color:#60744f;margin-top:12px}.guest-courses{margin:23px auto 25px;padding-bottom:25px;border-bottom:1px solid var(--line);max-width:345px}.guest-courses>div+div{margin-top:19px}.guest-courses span{font-family:var(--serif);font-size:23px;font-style:italic;color:#61744f}.guest-courses p{font-size:12px;margin-top:3px}.guest-inner>strong{font-family:var(--serif);font-size:48px;font-weight:400;line-height:1}.guest-unit{font-size:11px;color:#627450;margin-top:9px}.guest-fine-print{font-size:10px;color:#637557;line-height:1.8;margin-top:16px}.guest-return{margin:0 23px 23px;width:calc(100% - 46px)}
@media(min-width:1550px){.studio-header{padding-inline:calc((100vw - 1360px)/2)}.studio-workspace{grid-template-columns:295px 1fr;gap:40px}.studio-intro{padding-top:60px;padding-bottom:45px}.studio-intro h1{font-size:71px}}
@media(max-width:1150px){.studio-main,.studio-footer{width:calc(100% - 56px)}.studio-header{padding-inline:28px}.studio-workspace{grid-template-columns:250px 1fr;gap:24px}.policy-panel{padding:23px 19px}.slot{padding:17px 15px}.slot-time{font-size:35px}.slot-bars{right:13px;gap:2px;opacity:.28}.slot-bars i{width:2px}.slot-bottom{gap:4px;flex-direction:column}.room-card,.quote-card{padding:20px 18px}.service-detail{gap:15px}.table-grid{padding:38px 13px 28px}.table-layout{gap:27px 11px;grid-template-columns:repeat(3,1fr);min-height:220px}.studio-table{width:33px;height:33px}.quote-card h3{font-size:31px}.quote-price{font-size:66px}.quote-reason{font-size:11px}.primary-button{padding-inline:13px;font-size:10px}.sample-note{min-width:210px}.studio-intro h1{font-size:57px}.intro-description{max-width:450px;font-size:12px}}
@media(max-width:900px){.studio-intro{align-items:flex-start;padding-top:36px}.studio-intro h1{font-size:52px}.sample-note{padding-top:32px;min-width:180px}.sample-note strong{font-size:11px}.sample-note div>span{font-size:10px}.studio-workspace{grid-template-columns:1fr;gap:29px}.policy-panel{padding:22px 24px}.policy-heading h2{font-size:15px}.policy-description{display:none}#policy-form{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0 25px;align-items:start}.control-group{margin-top:22px}.demand-control{padding-top:0;border-top:0;margin-top:22px}.reset-button{grid-column:1/-1;justify-self:end;margin-top:9px;min-height:32px}.policy-principle{display:none}.control-label{align-items:flex-start;gap:10px}.control-label output{font-size:11px}.control-group label{font-size:11px}.control-help{font-size:10px}.range-ends{font-size:9px}.service-detail{grid-template-columns:1fr 1fr;gap:22px}.table-layout{grid-template-columns:repeat(4,1fr);min-height:175px;gap:25px 15px}.room-card,.quote-card{padding:24px}.quote-card h3{font-size:34px}.quote-price{font-size:72px}.quote-reason{font-size:12px}.primary-button{font-size:11px}.slot-bottom{flex-direction:row;align-items:baseline;gap:10px}.slot-time{font-size:39px}.slot-bars{opacity:.5;gap:3px;right:25px}.slot-bars i{width:3px}.slot{padding:20px 23px}.quote-rules>div{font-size:11px}.room-summary span{font-size:11px}.room-legend{font-size:11px}.studio-disclaimer{margin-bottom:35px}}
@media(max-width:640px){.studio-header{height:75px;padding-inline:20px;gap:15px}.wordmark{font-size:25px}.wordmark svg{width:24px;height:24px;margin-right:8px}.studio-breadcrumb{font-size:10px;gap:12px}.back-link{font-size:0;gap:0}.back-link>span{font-size:20px}.studio-main,.studio-footer{width:calc(100% - 40px)}.studio-intro{display:block;padding:30px 0 27px}.studio-intro h1{font-size:50px;line-height:1.04;max-width:310px;margin-top:17px}.studio-intro .eyebrow{font-size:9px}.intro-description{font-size:12px;margin-top:16px;max-width:410px}.sample-note{padding-top:0;margin-top:21px;align-items:center}.sample-note>div{display:flex;gap:6px;flex-direction:column}.sample-note strong{font-size:11px}.sample-note div>span{margin:0;font-size:10px}.sample-dot{margin-top:0}.studio-workspace{gap:26px}.policy-panel{padding:21px 20px}.policy-heading h2{font-size:15px}#policy-form{grid-template-columns:1fr 1fr;column-gap:24px}.control-group label{font-size:11px}.control-label{flex-wrap:wrap;row-gap:5px}.control-label output{font-size:11px}.currency-field{padding:7px 10px;gap:6px}.currency-field input{font-size:21px}.currency-code{font-size:9px}.control-group{margin-top:20px}.control-help{font-size:10px}.demand-control{grid-column:1/-1;padding-top:21px;border-top:1px solid #d8dece;margin-top:23px}.demand-control .control-label{flex-wrap:nowrap}.demand-control .control-help{margin-top:6px}.reset-button{margin-top:14px;justify-self:start;font-size:11px}.workspace-heading{padding-bottom:16px}.workspace-heading h2{font-size:15px}.live-note{font-size:9px;gap:5px}.slot{padding:15px 12px 16px}.slot-label{font-size:10px;line-height:1.5;min-height:30px;max-width:70px}.slot-time{font-size:31px;margin-top:4px}.slot-bottom{flex-direction:column;gap:3px;margin-top:13px}.slot-price{font-size:16px}.slot-demand{font-size:9px}.slot-bars{display:none}.status-row{min-height:49px;padding-block:12px}.status-row p{font-size:10px}.service-detail{display:flex;flex-direction:column;gap:17px}.quote-card{order:-1;padding:25px}.quote-card h3{font-size:37px;margin-top:20px}.quote-context{font-size:12px}.quote-price{font-size:80px;margin-top:17px}.quote-unit{font-size:12px}.quote-reason{font-size:12px;max-width:360px;min-height:0;line-height:1.8;margin-top:20px}.quote-rules{padding-top:25px;margin-bottom:20px}.quote-rules>div{font-size:11px;padding-block:12px}.primary-button{font-size:12px;min-height:48px}.room-card{padding:23px 25px}.table-grid{padding:45px 21px 34px}.table-layout{grid-template-columns:repeat(4,1fr);min-height:200px;gap:30px 18px}.studio-table{width:36px;height:36px;font-size:10px}.room-summary strong{font-size:37px}.room-summary span{font-size:11px}.room-legend{font-size:11px}.workspace-footer{align-items:flex-start;flex-direction:column;gap:10px;margin-top:23px;padding-top:20px}.workspace-footer>p{font-size:11px}.download-button{font-size:12px;min-height:42px;border-bottom:1px solid #6a7c58}.studio-disclaimer{font-size:10px;line-height:1.85;margin-top:26px;margin-bottom:32px}.studio-footer{flex-wrap:wrap;gap:11px 20px;padding-block:22px}.studio-footer>a{font-size:23px}.studio-footer>span{font-size:9px}.studio-footer>span:last-child{margin-left:0;width:100%}.dialog-header .eyebrow{font-size:9px}.guest-inner h2{font-size:44px}.guest-inner .eyebrow{font-size:9px}.guest-courses p{font-size:11px}.guest-fine-print{font-size:9px}}
@media(max-width:359px){.studio-main,.studio-footer{width:calc(100% - 32px)}.studio-header{padding-inline:16px}.studio-breadcrumb{display:none}.back-link{margin-left:auto}.studio-intro h1{font-size:45px}.policy-panel{padding-inline:17px}#policy-form{column-gap:16px}.control-label{min-height:34px}.demand-control .control-label{min-height:0}.currency-field{padding-inline:7px}.currency-field input{font-size:19px}.currency-code{display:none}.slot{padding-inline:10px}.slot-time{font-size:29px}.slot-demand{font-size:8px}.slot-price{font-size:15px}.live-note{display:none}.quote-card,.room-card{padding-inline:20px}.table-grid{padding-inline:13px}.table-layout{grid-template-columns:repeat(3,1fr);min-height:260px}.guest-inner h2{font-size:39px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}html{scroll-behavior:auto}}
.section-number,.policy-description,.control-help,.range-ends,.live-note,.slot-label{color:#506241}
.active .slot-label{color:#d2ddc5}
.policy-preview{display:none}
.room-rounding{font-size:10px;line-height:1.7;color:#536848;margin-top:12px}
@media(max-width:900px){.policy-preview{display:flex;justify-content:space-between;align-items:center;margin-top:19px;padding:13px 16px;border:1px solid #c7d2b9;background:#e5ebd9}.policy-preview>div{display:flex;align-items:center;gap:18px}.policy-preview .eyebrow{font-size:9px;color:#526b40}.policy-preview>div>span:last-child{font-size:11px;color:#526b40}.policy-preview strong{font-family:var(--serif);font-size:34px;line-height:1;font-weight:400;font-variant-numeric:lining-nums tabular-nums;letter-spacing:-.02em;min-width:65px;text-align:right}}
@media(max-width:640px){.policy-preview{padding:13px 14px}.policy-preview>div{flex-direction:column;align-items:flex-start;gap:4px}.policy-preview strong{font-size:37px}}
