@font-face{font-family:"EB Garamond";src:url("assets/EBGaramond.woff2") format("woff2");font-style:normal;font-weight:400 800;font-display:swap}
@font-face{font-family:"EB Garamond";src:url("assets/EBGaramond-Italic.woff2") format("woff2");font-style:italic;font-weight:400 800;font-display:swap}
@font-face{font-family:"Work Sans";src:url("assets/WorkSans.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap}

:root{--paper:#faf9f5;--white:#fff;--ink:#252c29;--muted:#68706a;--gold:#8a6d32;--gold-light:#b99a57;--line:#e4e4da;--soft:#f2f1e9;--green:#32694b;--green-soft:#edf5ef;--amber:#866120;--amber-soft:#f8f0df;--red:#984f44;--red-soft:#faece7;--serif:"EB Garamond",Georgia,serif;--body:"Work Sans",sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
button,a,input,select,textarea,summary{touch-action:manipulation}
button{border:0;background:none}
button:disabled{cursor:not-allowed;opacity:.48}
button:not(:disabled),a,summary{transition:background-color .18s,color .18s,border-color .18s,transform .18s}
button:not(:disabled):active{transform:translateY(1px)}
button svg,svg{width:20px;height:20px;flex-shrink:0;vertical-align:middle}
button svg{width:18px;height:18px}
img{display:block;max-width:100%}
input,select,textarea{max-width:100%}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--gold-light);outline-offset:4px}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:1px}
h1,h2,h3,h4,p{margin-top:0}
h1,h2,h3,h4{font-family:var(--serif);font-weight:400;line-height:1.06}
h1{font-size:60px;letter-spacing:-1.8px;margin-bottom:20px}
h2{font-size:40px;letter-spacing:-.8px;margin-bottom:18px}
h3{font-size:31px;letter-spacing:-.4px;margin-bottom:14px}
p{margin-bottom:16px}
em{font-weight:400}
strong{font-weight:550}
a{color:var(--gold)}
small{font-size:12px}
[hidden]{display:none!important}
.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.skip-link{position:absolute;left:16px;top:-100px;padding:10px 18px;z-index:1000;background:var(--ink);color:#fff}
.skip-link:focus{top:12px}
.loading,.noscript{padding:70px 30px;text-align:center}
.eyebrow{display:block;font:500 10px/1.5 var(--body);letter-spacing:2px;color:var(--gold);margin-bottom:15px}
.quiet{font-size:12px;color:var(--muted)}
.subtle-tag{font-size:9px;letter-spacing:1.5px;color:var(--muted);white-space:nowrap}
.text-green{color:var(--green);display:inline-flex;align-items:center;gap:7px}
.example-note{font-size:11px;color:var(--muted);line-height:1.7;display:flex;align-items:flex-start;gap:8px}
.example-note svg{width:14px;height:14px;margin-top:2px}
.section-heading,.page-title-row{display:flex;justify-content:space-between;align-items:center;gap:24px}
.section-heading{margin-bottom:30px}
.section-heading h2,.page-title-row h1{margin-bottom:0}
.section-heading.compact{margin-bottom:20px}
.section-heading.compact h2{font-size:29px;letter-spacing:-.3px;line-height:1.15}
.section-heading.compact .eyebrow{margin-bottom:8px}
.section-number{font-size:9px;color:var(--muted);letter-spacing:1.6px;white-space:nowrap}
.button,.icon-button,.text-button,.back-link{display:inline-flex;justify-content:center;align-items:center;gap:10px;line-height:1.4;font-size:12px;font-weight:500;text-decoration:none}
.button{background:var(--ink);color:#fff;min-height:45px;padding:12px 20px;border:1px solid var(--ink);border-radius:4px}
.button:hover:not(:disabled){background:#3d493f;border-color:#3d493f}
.button-outline{background:transparent;color:var(--ink);border-color:#cbd0c5}
.button-outline:hover:not(:disabled){background:#ebece4;border-color:#aab4a5}
.button-light{background:#faf9f2;color:var(--ink);border-color:#faf9f2}
.button-light:hover:not(:disabled){background:#fff;border-color:#fff}
.button.small{min-height:36px;padding:8px 13px;font-size:11px;gap:7px}
.button.full{width:100%}
.button-row{display:flex;flex-wrap:wrap;gap:12px}
.text-button{color:var(--gold);padding:6px 0;min-height:36px;text-align:left}
.text-button:hover:not(:disabled){color:var(--ink)}
.text-button.small{font-size:11px;gap:7px}
.icon-button{width:40px;height:40px;border:1px solid var(--line);border-radius:50%;flex-shrink:0}
.icon-button:hover{background:var(--soft);border-color:var(--gold-light)}
.back-link{min-height:40px;color:var(--muted);padding:4px 0;margin-bottom:25px;font-size:11px}
.back-link:hover{color:var(--gold)}

/* The presenter controls are deliberately separate from the hotel's interface. */
.presenter-bar{display:flex;align-items:center;gap:20px;background:#efeee8;color:#535c56;border-bottom:1px solid #ddddd2;padding:11px 32px;min-height:66px;font-size:10px}
.presenter-brand{display:flex;align-items:center;gap:9px;flex-shrink:0}
.presenter-brand>svg{width:19px;height:19px;color:var(--gold)}
.presenter-brand strong{display:block;font-size:11px;font-weight:600;letter-spacing:.1px}
.presenter-brand span,.presenter-brand small{font-size:9px;color:#72786f;display:block;line-height:1.4}
.presenter-controls{display:flex;align-items:center;justify-content:flex-end;gap:18px;margin-left:auto;flex-wrap:wrap}
.presenter-field{display:flex;align-items:center;gap:8px;line-height:1.4;white-space:nowrap;font-size:10px}
.presenter-field>span{color:#616960}
.presenter-field select{font-size:11px;background:#fbfbf7;padding:7px 29px 7px 10px;min-height:34px;border:1px solid #d8dbcf;border-radius:4px;width:auto;margin:0}
.scenario-toggle{display:flex;padding:3px;background:#dedfd4;border-radius:5px;gap:2px}
.scenario-toggle button{font-size:10px;font-weight:500;white-space:nowrap;padding:7px 11px;border-radius:3px;min-height:31px;color:#5e665c}
.scenario-toggle button.active,.scenario-toggle button[aria-pressed="true"]{background:#fff;color:#344036;box-shadow:0 1px 3px #252c2910}
.scenario-toggle button:hover{background:#f6f6ef}
.presenter-tools{position:relative;font-size:11px}
.presenter-tools:not([open])>div{display:none}
.presenter-tools summary{cursor:pointer;list-style:none;padding:6px;display:flex;align-items:center;gap:6px;min-height:32px}
.presenter-tools summary::-webkit-details-marker{display:none}
.presenter-tools[open]>div{position:absolute;right:0;top:38px;z-index:30;min-width:250px;background:#fff;padding:17px;border:1px solid var(--line);border-radius:6px;box-shadow:0 6px 25px #252c2920}
.presenter-tools p{font-size:11px;line-height:1.7}
.presenter-tools button{font-size:11px}
.presenter-mobile-label{display:none}
.simulation-ribbon{padding:9px 24px;background:#f3ead4;color:#756027;font-size:11px;line-height:1.5;text-align:center;display:flex;align-items:center;justify-content:center;gap:8px;border-bottom:1px solid #e5d7b4}
.simulation-ribbon svg{width:15px;height:15px}
.action-status:empty{display:none}
.action-status{background:var(--green-soft);border-bottom:1px solid #d0e1d4;padding:10px 32px;color:var(--green);font-size:12px;display:flex;align-items:center;gap:8px}

/* Guest guide */
.guest-header{max-width:1400px;margin:auto;min-height:104px;padding:20px 48px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:13px;text-align:left;color:var(--ink);padding:0;flex-shrink:0}
.brand-symbol{width:59px;height:59px;object-fit:contain}
.brand-wordmark{font-family:var(--serif);font-size:25px;line-height:1;letter-spacing:1.7px;white-space:nowrap;font-weight:400}
.brand-wordmark small,.brand-wordmark span{display:block;font-family:var(--body);font-size:8px;line-height:2.1;letter-spacing:2.6px;color:var(--muted);font-weight:400}
.guest-nav{display:flex;align-items:center;gap:25px}
.guest-nav button{font-size:11px;padding:13px 0;position:relative;white-space:nowrap;color:var(--muted);min-height:42px}
.guest-nav button:hover,.guest-nav button.active{color:var(--gold)}
.guest-nav button.active:after{content:"";position:absolute;bottom:4px;left:0;right:0;height:1px;background:var(--gold-light)}
.guest-identity{display:flex;gap:9px;align-items:center;font-size:11px;padding-left:25px;border-left:1px solid var(--line)}
.guest-identity strong{display:block;font-weight:500;line-height:1.3}
.guest-identity small{display:block;font-size:9px;color:var(--muted)}
.avatar{width:33px;height:33px;border-radius:50%;background:#eee9dd;color:#857143;font-size:10px;font-weight:500;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;letter-spacing:.5px}
.guest-hero{position:relative;height:460px;overflow:hidden;background:#303f3d}
.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 49%}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,32,29,.75) 0%,rgba(17,35,32,.49) 40%,rgba(15,33,32,.09) 75%),linear-gradient(0deg,rgba(17,31,28,.26),transparent 35%)}
.hero-copy{position:relative;max-width:1296px;height:100%;margin:auto;padding:55px 48px 42px;z-index:1;color:#fff;animation:hero-rise .7s cubic-bezier(.2,.6,.3,1) both}
.hero-copy .eyebrow{color:#e8d5a7;font-size:9px;margin-bottom:22px}
.hero-copy h1{font-size:76px;line-height:.97;letter-spacing:-2.1px;margin-bottom:22px;max-width:550px;text-shadow:0 1px 10px #0000000a}
.hero-copy p{font-size:12px;letter-spacing:.15px;color:#eeefe7;margin-bottom:25px}
.hero-copy .button{font-size:11px;gap:20px;padding:12px 19px}
.hero-caption{position:absolute;bottom:29px;right:40px;color:#f9f5eb;font-size:8px;letter-spacing:2px;writing-mode:vertical-rl;transform:rotate(180deg);text-shadow:0 1px 3px #182822}
.guest-content{max-width:1296px;margin:auto;padding:0 48px}
.quick-info{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid var(--line);padding:31px 0 26px;gap:20px}
.quick-info>div{display:flex;align-items:center;gap:14px;border-right:1px solid var(--line);padding:0 12px}
.quick-info>div:first-child{padding-left:0}
.quick-info>div:last-child{border:0}
.quick-info>div>svg{width:22px;height:22px;color:var(--gold-light)}
.quick-info span{display:block;font-size:10px;color:var(--muted);line-height:1.3;margin-bottom:4px}
.quick-info strong{display:block;font-size:12px;font-weight:500;line-height:1.4}
.quick-info+.example-note{margin:10px 0 0;font-size:10px}
.experiences{padding:61px 0 55px}
.experiences h2{font-size:40px}
.stories{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.story-image{position:relative;display:block;padding:0;width:100%;aspect-ratio:16/10;overflow:hidden;border-radius:2px;text-align:left}
.story-image img{width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.5,.3,1)}
.story-image:hover img{transform:scale(1.025)}
.image-arrow{position:absolute;right:17px;bottom:17px;background:#fcfbf2;color:var(--ink);border-radius:50%;width:39px;height:39px;display:flex;align-items:center;justify-content:center}
.story-copy{padding:25px 0 0}
.story-copy .eyebrow{font-size:9px;margin-bottom:10px}
.story-copy h3{font-size:36px;margin-bottom:12px}
.story-copy p{font-size:12px;color:var(--muted);margin-bottom:12px}
.story-copy .text-button{font-size:11px}
.stay-info{display:grid;grid-template-columns:1fr 1.6fr;gap:80px;padding:52px 0 72px;border-top:1px solid var(--line)}
.stay-info h2{font-size:45px;margin-bottom:18px}
.stay-info>div>p{color:var(--muted);font-size:12px}
.info-list details{border-bottom:1px solid var(--line)}
.info-list details:first-child{border-top:1px solid var(--line)}
.info-list summary{font-size:12px;padding:21px 0;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none;font-weight:500}
.info-list summary::-webkit-details-marker{display:none}
.info-list summary svg{color:var(--gold);width:16px;height:16px;transition:transform .2s}
.info-list details[open] summary svg{transform:rotate(45deg)}
.info-list details p{font-size:12px;color:var(--muted);padding-right:24px;margin-bottom:23px;line-height:1.9}
.guest-footer{max-width:1200px;margin:auto;border-top:1px solid var(--line);padding:25px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px;color:var(--muted)}
.guest-footer strong{font-family:var(--serif);font-size:18px;letter-spacing:.7px;color:var(--ink);font-weight:400}
.guest-footer span:last-child{font-size:9px}

/* Guest service pages and request history */
.service-page{padding-top:25px;padding-bottom:65px}
.service-intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:65px;align-items:center}
.service-intro-copy{padding:18px 0}
.service-intro h1{font-size:62px;margin-bottom:20px}
.service-intro p{font-size:13px;color:var(--muted);max-width:360px;line-height:1.9;margin-bottom:23px}
.service-intro .quiet{display:block;margin-top:11px;font-size:10px}
.service-intro>img{width:100%;aspect-ratio:1.42;object-fit:cover;border-radius:2px}
.service-body{display:grid;grid-template-columns:1.5fr 1fr;gap:90px;margin-top:67px;align-items:start}
.service-body h2{font-size:36px}
.menu-section{padding:21px 0;border-top:1px solid var(--line)}
.menu-section h3{font-size:25px;margin-bottom:20px}
.menu-item{display:flex;align-items:baseline;gap:15px;font-size:12px;margin-bottom:15px}
.menu-item:last-child{margin-bottom:0}
.menu-rule{flex:1;border-bottom:1px dotted #d9dbce;min-width:15px}
.menu-item strong{white-space:nowrap;font-size:11px}
.service-aside{background:#f0eee5;padding:31px 32px;border-radius:4px;margin-top:4px}
.service-aside h3{font-size:32px;line-height:1.1}
.steps{list-style:none;counter-reset:steps;padding:0;margin:26px 0 17px}
.steps li{counter-increment:steps;display:flex;align-items:baseline;gap:13px;font-size:11px;line-height:1.75;margin-bottom:16px}
.steps li:before{content:"0" counter(steps);font-size:10px;letter-spacing:.5px;color:var(--gold)}
.service-aside .example-note{display:block;border-top:1px solid #dcd9ca;margin:22px 0 0;padding-top:18px;font-size:10px}
.treatment{display:flex;align-items:center;gap:19px;padding:26px 0;border-top:1px solid var(--line)}
.treatment h3{font-size:27px;margin-bottom:9px}
.treatment p{font-size:11px;color:var(--muted);margin-bottom:10px;max-width:370px}
.treatment-icon{width:43px;height:43px;display:grid;place-items:center;background:#f0eee3;color:var(--gold);border-radius:50%;flex-shrink:0}
.treatment .icon-button{margin-left:auto}
.requests-page{padding-top:43px;padding-bottom:70px;min-height:620px}
.page-title-row{align-items:flex-end;margin-bottom:25px}
.page-title-row h1{font-size:54px}
.page-title-row p{font-size:13px;color:var(--muted);margin-top:15px;margin-bottom:0}
.guest-room{display:flex;align-items:center;gap:8px;color:var(--gold);font-size:12px;white-space:nowrap}
.request-summary{display:flex;gap:23px;padding:22px 0;border-bottom:1px solid var(--line);font-size:11px;color:var(--muted);margin-bottom:25px}
.request-summary span+span{padding-left:23px;border-left:1px solid var(--line)}
.guest-bookings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:27px}
.booking-card{border:1px solid var(--line);border-radius:7px;padding:23px;background:#fff;min-width:0}
.booking-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:19px}
.booking-title{display:flex;align-items:center;gap:13px;min-width:0}
.booking-title>svg{width:24px;height:24px;color:var(--gold);flex-shrink:0}
.booking-title h3{font-size:24px;margin:0 0 4px;letter-spacing:0}
.booking-title p,.booking-title small{display:block;font-size:10px;line-height:1.5;color:var(--muted);margin:0}
.booking-meta{display:flex;flex-wrap:wrap;gap:10px 19px;font-size:11px;color:var(--muted)}
.booking-meta span{display:inline-flex;align-items:center;gap:6px}
.booking-meta svg{width:15px;height:15px}
.booking-status-note{font-size:11px;line-height:1.75;background:#f8f7f1;padding:12px 14px;border-radius:4px;margin:18px 0 0;color:#677066}
.booking-status-note p{margin:0}
.booking-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding-top:16px;margin-top:16px;border-top:1px solid var(--line);flex-wrap:wrap}
.status-badge{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:5px 9px;border-radius:4px;background:var(--soft);color:#687066;font-size:10px;font-weight:500;line-height:1.5;white-space:nowrap}
.status-badge.pending,.status-badge.dirty{background:var(--amber-soft);color:var(--amber)}
.status-badge.confirmed,.status-badge.clean{background:var(--green-soft);color:var(--green)}
.status-badge.refused{background:var(--red-soft);color:var(--red)}
.status-badge.cancelled,.status-badge.neutral{background:#f0f0eb;color:#667065}
.status-badge.cleaning{background:#eaf0f1;color:#466e79}
.empty-state{padding:45px 20px 55px;text-align:center}
.empty-state>svg{width:30px;height:30px;color:var(--gold);margin-bottom:20px}
.empty-state h2{font-size:40px;line-height:1.1}
.empty-state p{font-size:12px;color:var(--muted)}
.empty-state .button-row{justify-content:center;margin-top:25px}

/* Team workspaces */
.staff-shell{display:grid;grid-template-columns:224px minmax(0,1fr);min-height:calc(100vh - 66px)}
.staff-sidebar{border-right:1px solid var(--line);background:#f3f3ed;display:flex;flex-direction:column;min-width:0}
.staff-brand{display:flex;align-items:center;gap:10px;padding:28px 21px 30px;border-bottom:1px solid var(--line)}
.staff-brand .brand-symbol{width:43px;height:43px}
.staff-brand .brand-wordmark{font-size:18px;letter-spacing:1px}
.staff-brand .brand-wordmark small,.staff-brand .brand-wordmark span{font-size:6px;letter-spacing:1.6px}
.staff-nav{padding:25px 14px;display:flex;flex-direction:column;gap:5px}
.nav-label{font-size:8px;font-weight:500;letter-spacing:1.5px;color:#858b80;padding:4px 13px;margin-bottom:8px}
.nav-item{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:12px 13px;color:#606a61;font-size:11px;border-radius:5px;min-height:43px}
.nav-item svg{width:18px;height:18px}
.nav-item:hover{background:#e8eae0;color:var(--ink)}
.nav-item.active{background:#e4e8dc;color:#3e523f;font-weight:600}
.nav-item .count-badge{margin-left:auto;background:#fbfbf4;min-width:20px;height:20px;font-size:9px}
.nav-bottom{margin-top:auto;padding:23px 23px 26px;border-top:1px solid var(--line)}
.sidebar-note{font-size:10px;line-height:1.75;color:var(--muted);margin:0}
.sidebar-note strong{display:block;color:var(--ink);font-size:11px;font-weight:500;margin-bottom:5px}
.staff-main{min-width:0;padding:29px 40px 56px;max-width:1600px;width:100%;margin:auto}
.staff-topline{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:10px;color:var(--muted);margin-bottom:30px}
.staff-topline .eyebrow{margin:0;font-size:9px}
.operator-chip{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--muted)}
.operator-chip .avatar{width:27px;height:27px;font-size:9px;background:#e9ece2;color:#57734e}
.workspace-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:25px;margin-bottom:28px}
.workspace-heading .eyebrow{font-size:9px;margin-bottom:10px}
.workspace-heading h1{font-size:46px;letter-spacing:-1px;margin-bottom:12px;line-height:1.07}
.workspace-heading p{font-size:11px;color:var(--muted);margin-bottom:0}
.date-stamp{display:flex;align-items:center;gap:8px;white-space:nowrap;font-size:10px;font-weight:500;padding:8px 0;color:#636e63}
.date-stamp>span{color:var(--muted);font-weight:400}
.date-stamp svg{width:15px;height:15px;color:var(--gold)}
.metrics-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:32px;border-block:1px solid var(--line);padding:21px 0;gap:0}
.metric{position:relative;text-align:left;border-right:1px solid var(--line);padding:0 24px;min-width:0}
.metric:first-child{padding-left:0}
.metric:last-child{border-right:0}
.metric>span:first-child,.metric>div:first-child{font-size:10px;color:var(--muted);display:block}
.metric>strong{display:block;font-family:var(--serif);font-size:49px;line-height:1.1;font-weight:400;color:var(--ink);margin-top:9px;letter-spacing:-.7px}
.metric-icon{position:absolute;right:23px;top:22px;color:#9ca48e}
.metric-icon svg{width:25px;height:25px}
.metric-note{display:block;font-size:9px;color:var(--muted);margin-top:6px}
button.metric:hover{background:#f0f1e9}
button.metric.selected{background:#e9eee2}
.room-metrics .metric{padding:12px 23px}
.room-metrics{padding:0;margin-bottom:23px}
.room-metrics .metric:first-child{padding-left:23px}
.room-metrics .metric>strong{font-size:44px;margin-top:4px}
.overview-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(250px,1fr);gap:32px;align-items:start}
.overview-main,.overview-aside{min-width:0}
.overview-aside{border-left:1px solid var(--line);padding-left:28px}
.overview-main .section-heading.compact h2,.overview-aside .section-heading.compact h2{font-size:28px}
.overview-bookings{margin-bottom:34px}
.mini-request{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 0;border-bottom:1px solid var(--line)}
.mini-request:first-child{padding-top:3px}
.mini-request-main{display:flex;align-items:center;gap:12px;min-width:0}
.mini-request-main>svg{color:var(--gold);width:20px;height:20px}
.mini-request-main strong{display:block;font-size:11px;font-weight:500}
.mini-request-main small{display:block;color:var(--muted);font-size:10px;margin-top:3px}
.mini-request-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}
.mini-request-actions .icon-button{width:30px;height:30px}
.mini-request-actions .icon-button svg{width:13px;height:13px}
.activity-list{list-style:none;padding:0;margin:0}
.activity-item{display:flex;gap:13px;position:relative;padding:0 0 23px}
.activity-item:after{position:absolute;content:"";top:16px;left:4px;bottom:4px;width:1px;background:var(--line)}
.activity-item:last-child:after{display:none}
.activity-dot{width:9px;height:9px;border:2px solid #c7c2af;background:var(--paper);border-radius:50%;flex-shrink:0;margin-top:6px;position:relative;z-index:1}
.activity-dot.success{border-color:#61926e;background:#edf5ed}
.activity-copy{font-size:10px;line-height:1.8;color:var(--muted)}
.activity-copy strong{color:#435144;font-weight:500}
.activity-copy p{margin:0}
.activity-copy small,.activity-copy time{font-size:9px;color:#868e81;display:block;margin-top:3px}
.room-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.room-mini{padding:14px 5px;border:1px solid var(--line);border-radius:5px;text-align:center;background:#fff}
.room-mini strong{display:block;font-family:var(--serif);font-size:27px;font-weight:400;line-height:1.1}
.room-mini span{display:block;font-size:8px;color:var(--muted);margin-top:7px;line-height:1.4}
.room-mini.clean{background:var(--green-soft);border-color:#d6e3d2;color:var(--green)}
.room-mini.dirty{background:#f9f5eb;border-color:#e7decc}
.room-mini.cleaning{background:#f0f4f4;border-color:#d4e0e0}
.overview-banner{display:flex;align-items:center;gap:15px;background:#e9eee3;padding:19px 21px;margin-top:27px;border-radius:4px}
.overview-banner>svg{color:#648257;width:24px;height:24px}
.overview-banner p{font-size:11px;color:#57674f;margin:0}
.overview-banner strong{font-size:12px;font-weight:500;display:block;color:#3d5538;margin-bottom:3px}
.overview-banner .button,.overview-banner .text-button{margin-left:auto;flex-shrink:0}
.count-badge{display:inline-flex;justify-content:center;align-items:center;background:#eceee4;border-radius:50%;font-family:var(--body);font-size:11px;color:#6e7964;min-width:24px;height:24px;vertical-align:middle;margin-left:7px;letter-spacing:0}
.pending-section{margin-bottom:32px}
.pending-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.pending-list .booking-card{padding:20px}
.pending-list .booking-title h3{font-size:23px}
.schedule-section{margin-bottom:33px;padding-top:5px}
.slot-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.slot-item{padding:16px 17px;border:1px solid var(--line);border-radius:5px;background:#fff}
.slot-item>div:first-child{display:flex;justify-content:space-between;align-items:center;margin-bottom:5px}
.slot-item .quiet{font-size:10px}
.slot-time{font-size:14px;font-weight:500;font-variant-numeric:tabular-nums}
.status-dot{width:6px;height:6px;border-radius:50%;display:inline-block}
.status-dot.green{background:#63916b}
.status-dot.amber{background:#b39450}
.capacity-bar{height:3px;background:#e9ece4;margin-top:13px;border-radius:2px;overflow:hidden}
.capacity-bar>span{display:block;height:100%;background:#708c5e;border-radius:2px}
.slot-item.full .capacity-bar>span{background:#b79b5e}
.filter-select{display:flex;align-items:center;gap:10px;font-size:10px;color:var(--muted)}
.filter-select select{font-size:10px;width:auto;padding:7px 24px 7px 9px;min-height:34px;margin:0;background:var(--paper)}
.table-scroll{position:relative;overflow-x:auto;max-width:100%;border-top:1px solid var(--line)}
.booking-table{border-collapse:collapse;width:100%;text-align:left;font-size:11px}
.booking-table th{font-size:9px;text-transform:uppercase;letter-spacing:1px;color:#8a9086;font-weight:500;padding:15px 14px;border-bottom:1px solid var(--line);white-space:nowrap}
.booking-table td{padding:17px 14px;border-bottom:1px solid var(--line);color:#606b61}
.booking-table th:first-child,.booking-table td:first-child{padding-left:0}
.booking-table th:last-child,.booking-table td:last-child{padding-right:0;text-align:right}
.booking-table td>strong{display:block;font-weight:500;color:var(--ink)}
.booking-table td small{display:block;font-size:9px;color:#8c9388;margin-top:3px}
.booking-table td:last-child{white-space:nowrap}
.booking-table td:first-child{white-space:nowrap}
.inline-empty{display:flex;gap:10px;align-items:center;font-size:12px;color:var(--muted);padding:20px;background:#f0f2e9;border-radius:4px}
.inline-empty svg{color:var(--green);width:18px;height:18px}
.notice{display:flex;align-items:flex-start;gap:12px;background:#f2efe4;border:1px solid #e4dfcd;border-radius:5px;padding:16px 19px;margin-bottom:27px;font-size:11px;color:#796b48}
.notice>svg{width:18px;height:18px;margin-top:2px;color:#a88a44}
.notice strong{font-size:11px;font-weight:500}
.notice p{font-size:11px;margin:4px 0 0;line-height:1.7}
.notice>p{margin:0}
.notice-green{background:var(--green-soft);border-color:#d5e3d5;color:#4f7253}
.notice-green>svg{color:#60936a}
.filter-chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{font-size:10px;padding:7px 12px;color:var(--muted);border:1px solid transparent;border-radius:4px;min-height:33px}
.chip:hover{background:#eeefe7}
.chip.active{background:#fff;border-color:#d6dacb;color:var(--ink);font-weight:500}
.rooms-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:23px}
.room-card{border:1px solid var(--line);background:#fff;border-radius:7px;padding:20px;min-width:0;border-top:3px solid #dbccaa}
.room-card.clean{border-top-color:#98b294}
.room-card.cleaning{border-top-color:#9bb7be}
.room-card-top{display:flex;justify-content:space-between;align-items:center;gap:7px}
.room-label{font-size:8px;letter-spacing:1.4px;color:#93988c}
.room-card h2{font-size:53px;line-height:1;margin:17px 0 14px;font-variant-numeric:lining-nums}
.room-description{font-size:10px;display:flex;align-items:center;gap:6px;color:var(--muted);flex-wrap:wrap}
.room-description svg{width:15px;height:15px}
.room-description span{color:#92988b}
.room-sync{font-size:9px;color:#7b8774;display:flex;align-items:center;gap:6px;border-top:1px solid #eeeee6;padding-top:14px;margin-top:18px;min-height:30px}
.room-sync svg{width:13px;height:13px}
.room-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px;min-height:35px;align-items:center}
.room-actions .button{font-size:10px;padding:9px 10px;min-height:36px;flex:1;white-space:nowrap;gap:6px}
.room-actions .button svg{width:14px;height:14px}
.room-actions .text-button{font-size:10px}

/* Explicitly simulated integration */
.simulation-label{display:flex;align-items:center;gap:7px;white-space:nowrap;font-size:9px;letter-spacing:1px;color:var(--gold);padding-top:10px}
.simulation-label svg{width:17px;height:17px}
.integration-section{margin-top:37px}
.sync-list{border-top:1px solid var(--line)}
.sync-row{display:grid;grid-template-columns:77px 86px 24px minmax(0,1fr) auto;align-items:center;gap:16px;border-bottom:1px solid var(--line);padding:18px 0}
.sync-room{display:flex;align-items:center;gap:12px}
.sync-room strong{font-family:var(--serif);font-size:27px;font-weight:400}
.sync-room>svg{width:17px;height:17px;color:#929d88}
.sync-row>.status-badge{justify-self:start}
.sync-arrow{color:#adb4a3}
.sync-arrow>svg{width:17px;height:17px}
.sync-result{font-size:10px;line-height:1.55;color:var(--muted)}
.sync-result .text-green svg{width:13px;height:13px}
.sync-result small{display:block;font-size:9px;color:#8b9285;margin-top:4px}
.sync-done{font-size:10px;color:#7c8a72;display:flex;align-items:center;gap:7px}
.sync-done svg{width:15px;height:15px}
.precheck-records{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:20px}
.precheck-record{padding:23px;background:#fff;border:1px solid var(--line);border-radius:6px;min-width:0}
.record-heading{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:23px}
.record-heading h3{font-size:25px;margin:0 0 5px}
.record-heading .quiet{font-size:10px}
.record-heading .status-badge{margin-left:auto;font-size:9px}
.record-data{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;margin:0 0 25px}
.record-data>div{min-width:0}
.record-data dt{font-size:9px;color:#8a9384;margin-bottom:5px}
.record-data dd{font-size:11px;margin:0;overflow-wrap:anywhere}
.record-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid var(--line);padding-top:17px;flex-wrap:wrap;font-size:10px}
.record-actions .text-green{font-size:10px}
.precheck-page{padding-top:26px;padding-bottom:80px}
.precheck-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start;max-width:1030px;margin:10px auto 0}
.precheck-layout h1{font-size:65px;line-height:1.03;margin-top:20px}
.intro-text{font-size:13px;color:var(--muted);line-height:1.9;max-width:350px}
.precheck-steps{margin:30px 0 33px}
.precheck-steps>div{display:flex;align-items:center;gap:17px;padding:13px 0;border-bottom:1px solid var(--line)}
.precheck-steps>div>span{font-family:var(--serif);font-size:25px;color:var(--gold-light)}
.precheck-steps p{margin:0;font-size:11px;color:var(--muted)}
.form-panel{padding:31px;background:#fff;border:1px solid var(--line);border-radius:6px}
.form-panel .section-heading.compact{gap:12px;align-items:flex-start}
.form-panel .section-heading h2{font-size:28px}
.form-panel .status-badge{font-size:9px}
.form-panel form{margin-top:25px}
.form-panel form>label{display:block;margin-bottom:18px}

/* Forms and dialogs */
label,.fieldgroup{font-size:11px;font-weight:500;line-height:1.6}
input,select,textarea{display:block;width:100%;border:1px solid #d9ddcf;background:#fff;border-radius:4px;padding:11px 12px;min-height:43px;margin-top:7px;font-size:12px;font-weight:400;line-height:1.5}
select{padding-right:28px}
textarea{resize:vertical;min-height:80px}
input::placeholder,textarea::placeholder{color:#9ba391}
label small{display:block;font-size:9px;color:var(--muted);font-weight:400;margin-top:6px}
input[type=checkbox],input[type=radio]{display:inline-block;width:16px;height:16px;min-height:0;margin:0;vertical-align:middle;accent-color:var(--gold)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 16px}
.form-grid .full,.form-grid .full-width{grid-column:1/-1}
.fieldgroup{margin-bottom:17px}
.fieldgroup small{font-weight:400;font-size:10px;color:var(--muted)}
.form-error{color:var(--red);font-size:11px;line-height:1.7;margin:16px 0}
.form-error:empty,.form-success:empty{display:none}
.form-success{display:flex;align-items:flex-start;gap:7px;color:var(--green);font-size:11px;line-height:1.65;margin:18px 0 0}
.form-success svg{width:15px;height:15px;margin-top:2px}
#dialog{border:1px solid var(--line);border-radius:10px;max-width:540px;width:calc(100% - 32px);max-height:calc(100dvh - 40px);padding:0;background:var(--paper);color:var(--ink);box-shadow:0 25px 100px #13251d35;overscroll-behavior:contain}
#dialog::backdrop{background:#14261e69;backdrop-filter:blur(3px)}
.dialog-head{padding:26px 28px 20px;border-bottom:1px solid var(--line);display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.dialog-head .eyebrow{font-size:8px;letter-spacing:1.6px;margin-bottom:8px}
.dialog-head h2{font-size:34px;margin:0;letter-spacing:-.4px}
.dialog-close{display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;width:32px;height:32px;flex-shrink:0;color:var(--muted)}
.dialog-close:hover{background:#edeedf}
.dialog-close svg{width:16px;height:16px}
.dialog-content{padding:25px 28px 28px}
.dialog-content>p{font-size:12px;color:var(--muted);line-height:1.8}
.dialog-content .notice{margin-top:20px;margin-bottom:20px;padding:13px 15px}
.dialog-content .notice p{font-size:10px}
.dialog-content .booking-card{padding:18px}
.dialog-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:24px;padding-top:20px;border-top:1px solid var(--line);flex-wrap:wrap}
.dialog-footer .button{min-height:42px}
.dialog-content form>label{display:block;margin-bottom:18px}
.dialog-content dl{margin-top:0}
.dialog-content dl>div{display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);padding:10px 0;font-size:11px}
.dialog-content dt{color:var(--muted)}
.dialog-content dd{margin:0;text-align:right}
.toast{position:fixed;bottom:22px;left:50%;z-index:90;transform:translate(-50%,15px);opacity:0;pointer-events:none;max-width:min(520px,calc(100% - 32px));width:max-content;background:#2d4434;color:#fff;padding:13px 20px;border-radius:6px;box-shadow:0 8px 35px #13201a25;font-size:12px;line-height:1.6;transition:opacity .22s,transform .22s;display:flex;align-items:center;gap:10px}
.toast.is-visible{opacity:1;transform:translate(-50%,0)}
.toast.error{background:#7c4b3e}
.toast svg{width:17px;height:17px}
.brand-button{padding:0;flex-shrink:0;text-align:left}
.brand-wordmark strong{font-weight:400}
.demo-dot{width:6px;height:6px;border-radius:50%;background:#9b8554;flex-shrink:0}
.presenter-brand .demo-dot{display:block}
.scenario-toggle button{display:inline-flex;align-items:center;justify-content:center;gap:5px}
.scenario-toggle button svg{width:12px;height:12px}
.guest-identity>div>span{display:block;font-size:9px;color:var(--muted)}
.nav-dot{position:absolute;width:4px;height:4px;background:var(--gold);border-radius:50%;right:-7px;top:12px}
.guest-footer .brand-symbol{width:34px;height:34px}
.guest-footer .brand-wordmark{font-size:16px;letter-spacing:1px}
.guest-footer .brand-wordmark strong{font-size:16px}
.guest-footer .brand-wordmark span{font-size:5px;letter-spacing:1.5px}
.guest-footer .brand{gap:9px}
.guest-footer>small{font-size:9px;color:var(--muted)}
.staff-sidebar>.nav-label{margin:22px 14px 0;padding:0 13px}
.staff-sidebar>.staff-nav{padding-top:12px}
.staff-sidebar .sidebar-note{position:relative;margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.sidebar-note>svg{color:var(--gold-light);width:21px;height:21px;margin-bottom:13px}
.staff-footer{font-size:9px;color:#8b9285;padding-top:36px;margin-top:27px;border-top:1px solid var(--line)}
.breadcrumb-divider{padding:0 12px;color:#b9bdaf}
.operator-chip>svg{width:15px;height:15px}
.metrics-row:has(.metric-scenario){grid-template-columns:repeat(4,minmax(0,1fr))}
.metric>span:first-child{display:flex;align-items:center;justify-content:space-between;gap:8px}
.metric>span:first-child svg{width:17px;height:17px;color:#9aa78c}
.metric>strong>small{font-family:var(--body);font-size:14px;color:#939d87;font-weight:400}
.metric>strong.metric-word{font-size:32px;letter-spacing:-.5px;padding-top:10px;padding-bottom:5px}
.booking-service-icon{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#f2eee3;color:var(--gold);flex-shrink:0}
.booking-service-icon svg{width:18px;height:18px}
.booking-title{display:block;flex:1;min-width:0}
.booking-title .eyebrow{font-size:8px;letter-spacing:1.4px;margin-bottom:5px}
.booking-title .quiet{font-size:10px;line-height:1.5;display:block}
.booking-top>.status-badge{flex-shrink:0}
.booking-note{font-size:10px;color:var(--muted);font-style:italic;line-height:1.7;margin:15px 0 0}
.booking-actions:empty{display:none}
.booking-status-note.confirmed{background:#f2f7ef;color:#567549}
.booking-status-note.refused{background:#faf0e8;color:#976b4d}
.request-icon{width:32px;height:32px;border-radius:50%;background:#efede2;display:grid;place-items:center;flex-shrink:0;color:var(--gold)}
.request-icon svg{width:16px;height:16px}
.mini-request-main{display:block;flex:1}
.mini-request-main h3{font-family:var(--body);font-size:12px;font-weight:500;line-height:1.5;letter-spacing:0;margin:0 0 4px}
.mini-request-main>span{font-size:10px;color:var(--muted);display:block}
.overview-banner{justify-content:space-between;gap:22px}
.overview-banner>div{position:relative;padding-left:33px}
.overview-banner>div>svg{position:absolute;left:0;top:3px;width:18px;height:18px;color:#6e865f}
.overview-banner h3{font-size:25px;letter-spacing:-.2px;margin:0 0 7px}
.overview-banner .button{font-size:10px;min-height:39px;padding:10px 13px}
.room-mini span:first-child{font-size:6px;letter-spacing:1px;color:#9b9f91;margin-top:0;margin-bottom:8px}
.room-mini span:last-child{font-size:8px;margin-top:7px}
.overview-rooms>.example-note{font-size:9px;margin-top:14px}
.live-label{font-size:8px;color:#919986;display:flex;align-items:center;gap:5px;white-space:nowrap}
.live-label i{width:5px;height:5px;display:block;background:#8aa777;border-radius:50%}
.activity-dot{width:20px;height:20px;border:0;background:#edf1e5;margin-top:1px;display:grid;place-items:center;color:#7b9566}
.activity-dot svg{width:11px;height:11px}
.activity-item:after{left:10px;top:26px}
.activity-copy{flex:1;min-width:0}
.activity-copy>strong{font-size:10px;display:block}
.activity-empty{padding:20px 0 28px;color:var(--muted);font-size:11px}
.activity-empty>svg{width:27px;height:27px;color:#a6ad99;margin-bottom:18px}
.activity-empty p{font-size:11px;line-height:1.85;margin-bottom:14px}
.activity-empty>span{font-size:10px;color:#969d8c;line-height:1.7;display:block}
.booking-person{display:flex;align-items:center;gap:11px;margin:20px 0 23px;padding:14px 15px;background:#efefe5;border-radius:4px}
.booking-person strong{font-size:11px;display:block;font-weight:500}
.booking-person>div>span{font-size:9px;color:var(--muted);display:block;margin-top:2px}
.booking-person .avatar{background:#e3dfd0}
.form-note{display:flex;align-items:flex-start;gap:8px;font-size:10px;line-height:1.75;color:#80724e;padding:13px 15px;background:#f0eddf;border-radius:4px;margin:20px 0}
.form-note svg{width:14px;height:14px;flex-shrink:0;margin-top:2px}
.optional{font-size:9px;font-weight:400;color:#9da391;margin-left:5px}
#booking-form>.form-grid{margin-bottom:18px}
#booking-form>.example-note{font-size:9px;margin-top:13px;margin-bottom:0;justify-content:center}
.action-status.has-error{background:var(--red-soft);border:1px solid #eccfc0;color:var(--red);border-radius:4px;margin-bottom:23px}
@keyframes hero-rise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}

@media(min-width:1500px){.guest-hero{height:505px}.hero-copy{padding-top:72px}.hero-photo{object-position:center 46%}.staff-main{padding-inline:50px}.workspace-heading h1{font-size:51px}}
@media(max-width:1180px){
  .presenter-bar{padding-inline:22px;gap:12px}.presenter-controls{gap:10px}.presenter-brand{max-width:155px}.presenter-field{gap:5px}.presenter-field select{max-width:175px}.scenario-toggle button{padding-inline:8px}
  .guest-header{padding:18px 32px;gap:20px}.brand-symbol{width:50px;height:50px}.brand-wordmark{font-size:22px}.guest-nav{gap:18px}.guest-nav button{font-size:10px}.guest-identity{padding-left:16px;gap:7px}.guest-identity .avatar{display:none}
  .hero-copy{padding-left:40px}.guest-content{padding-inline:40px}.guest-footer{margin-inline:40px}.quick-info{gap:12px}.quick-info>div{gap:9px;padding-inline:8px}.quick-info strong{font-size:11px}
  .staff-shell{grid-template-columns:198px minmax(0,1fr)}.staff-main{padding-inline:28px}.staff-brand{padding-inline:16px;gap:7px}.staff-brand .brand-symbol{width:36px;height:36px}.staff-brand .brand-wordmark{font-size:17px}.nav-item{font-size:10px;padding-inline:10px;gap:10px}.workspace-heading h1{font-size:41px}.workspace-heading{gap:16px}.date-stamp{font-size:9px}.overview-grid{grid-template-columns:minmax(0,1.5fr) minmax(215px,1fr);gap:23px}.overview-aside{padding-left:22px}.overview-main .section-heading.compact h2,.overview-aside .section-heading.compact h2{font-size:26px}.room-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.metric{padding-inline:20px}.metric-icon{right:17px}.metric-icon svg{width:21px;height:21px}.metric>strong{font-size:44px}.metric-note{font-size:8px}.pending-list{grid-template-columns:1fr}.rooms-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.precheck-records{grid-template-columns:1fr}.sync-row{grid-template-columns:68px 80px 17px minmax(0,1fr) auto;gap:10px}.sync-row .button.small{font-size:10px;padding:8px 10px}.sync-result small{font-size:8px}.service-body{gap:50px}.service-intro{gap:40px}.precheck-layout{gap:50px}
}
@media(max-width:940px){
  .presenter-bar{flex-wrap:wrap;padding:10px 22px;gap:9px}.presenter-brand{max-width:none}.presenter-controls{gap:12px;flex-wrap:wrap}.presenter-field{font-size:9px}.presenter-field select{font-size:10px;max-width:155px}.presenter-tools summary{font-size:10px}.scenario-toggle button{font-size:9px}.presenter-brand strong{font-size:10px}.presenter-brand small,.presenter-brand span{font-size:8px}
  .guest-header{flex-wrap:wrap;min-height:100px;padding-top:15px;padding-bottom:13px;gap:10px 20px}.guest-header .brand{margin-right:auto}.guest-nav{order:3;width:100%;justify-content:center;gap:30px;border-top:1px solid var(--line);padding-top:2px}.guest-nav button{padding:10px 0;min-height:34px}.guest-identity{border-left:0;padding-left:0}.guest-identity .avatar{display:flex}.brand-symbol{width:43px;height:43px}.brand-wordmark{font-size:23px}
  .guest-hero{height:430px}.hero-copy{padding-top:52px}.hero-copy h1{font-size:68px}.hero-caption{right:24px;font-size:7px}.quick-info{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 25px;padding:27px 0}.quick-info>div{padding-left:0}.quick-info>div:nth-child(2){border-right:0}.quick-info>div:nth-child(3){padding-left:0}.quick-info>div:nth-child(4){border-right:0}.quick-info strong{font-size:12px}.quick-info span{font-size:10px}.experiences{padding-top:45px}.experiences h2{font-size:35px}.section-number{font-size:8px}.stay-info{gap:45px}.stay-info h2{font-size:40px}.guest-content{padding-inline:32px}.guest-footer{margin-inline:32px}.stories{gap:23px}.story-copy h3{font-size:32px}.story-copy p{font-size:11px}.service-intro{gap:25px}.service-intro h1{font-size:53px}.service-intro p{font-size:12px}.service-intro>img{aspect-ratio:1.1}.service-body{gap:36px;grid-template-columns:1.35fr 1fr}.service-aside{padding:25px}.service-aside h3{font-size:30px}.service-body h2{font-size:31px}.guest-bookings{grid-template-columns:1fr}.precheck-layout{gap:35px}.precheck-layout h1{font-size:55px}.form-panel{padding:24px}
  .staff-shell{grid-template-columns:175px minmax(0,1fr)}.staff-brand{padding-inline:15px;gap:7px;flex-wrap:wrap;padding-block:23px}.staff-brand .brand-symbol{width:33px;height:33px}.staff-brand .brand-wordmark{font-size:16px;letter-spacing:.5px}.staff-brand .brand-wordmark small{font-size:5px;letter-spacing:1.4px}.staff-nav{padding-inline:9px}.nav-item{gap:8px;padding:11px 10px;font-size:10px}.nav-item svg{width:16px;height:16px}.staff-main{padding:24px}.staff-topline{margin-bottom:23px}.workspace-heading{display:block;margin-bottom:24px}.workspace-heading h1{font-size:39px}.date-stamp{display:none}.workspace-heading .simulation-label{padding-top:17px}.metrics-row{margin-bottom:24px}.metric{padding-inline:15px}.metric>strong{font-size:39px}.metric>span:first-child{font-size:9px}.metric-icon{display:none}.metric-note{font-size:8px}.overview-grid{grid-template-columns:1fr;gap:29px}.overview-aside{border-left:0;border-top:1px solid var(--line);padding-left:0;padding-top:26px}.overview-bookings{margin-bottom:28px}.activity-list{display:grid;grid-template-columns:1fr 1fr;gap:10px 30px}.activity-item:after{display:none}.room-strip{grid-template-columns:repeat(6,minmax(0,1fr))}.room-mini strong{font-size:23px}.room-mini span{font-size:7px}.overview-banner{padding:15px}.overview-banner .button,.overview-banner .text-button{font-size:10px}.section-heading.compact{gap:12px}.section-heading.compact h2{font-size:26px}.section-heading.compact>.quiet{font-size:10px}.slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.table-scroll{margin-right:0}.booking-table{min-width:500px}.room-card{padding:16px}.room-card h2{font-size:48px}.room-card .status-badge{font-size:9px;padding:4px 7px}.room-actions{flex-direction:column;align-items:stretch}.room-actions .button{width:100%;padding:9px;min-height:37px}.room-sync{font-size:8px}.filter-chips{gap:3px}.chip{font-size:9px;padding:7px 8px}.room-metrics .metric{padding:11px 15px}.room-metrics .metric:first-child{padding-left:15px}.room-metrics .metric-note{font-size:8px}.sync-row{grid-template-columns:65px 80px 1fr;gap:9px;padding-block:15px}.sync-arrow{display:none}.sync-result{grid-column:2/4;grid-row:2}.sync-row .button.small,.sync-done{grid-column:3;grid-row:1;justify-self:end}.sync-result small{font-size:9px}.filter-select{gap:7px}.filter-select select{max-width:130px}.record-heading .status-badge{font-size:9px}.record-data{gap:15px}
}
@media(max-width:700px){
  h1{font-size:43px}h2{font-size:33px}h3{font-size:29px}.presenter-bar{padding:10px 18px;gap:10px}.presenter-brand{gap:7px}.presenter-brand>svg{width:16px;height:16px}.presenter-brand strong{font-size:10px}.presenter-brand small,.presenter-brand span{font-size:8px}.presenter-controls{width:100%;justify-content:space-between;margin-left:0;gap:8px}.presenter-field{font-size:9px;gap:5px;max-width:50%;flex:1}.presenter-field select{max-width:100%;min-width:0;width:100%;font-size:10px;padding:6px 22px 6px 8px;min-height:34px}.presenter-field>span{display:none}.scenario-toggle{order:3;flex:1;justify-content:center;gap:3px}.scenario-toggle button{flex:1;min-height:32px;font-size:9px;padding-inline:7px}.presenter-tools{margin-left:auto}.presenter-tools[open]>div{max-width:calc(100vw - 36px)}.presenter-tools summary{min-height:32px;font-size:9px}.presenter-mobile-label{display:block;font-size:8px;color:var(--muted)}.simulation-ribbon{font-size:9px;padding:8px 18px;line-height:1.6;text-align:left}.action-status{font-size:10px;padding:10px 18px}
  .guest-header{padding:17px 22px 8px;gap:13px}.brand-symbol{width:40px;height:40px}.brand-wordmark{font-size:21px;letter-spacing:1.3px}.brand-wordmark small,.brand-wordmark span{font-size:6px;letter-spacing:2px}.guest-identity{gap:7px}.guest-identity .avatar{width:27px;height:27px;font-size:8px}.guest-identity strong{font-size:10px}.guest-identity small{font-size:8px}.guest-nav{justify-content:flex-start;gap:22px;overflow-x:auto;scrollbar-width:none;padding-top:3px}.guest-nav::-webkit-scrollbar{display:none}.guest-nav button{font-size:10px;flex-shrink:0;padding:10px 0}.guest-nav button.active:after{bottom:4px}
  .guest-hero{height:410px}.hero-copy{padding:48px 26px 40px}.hero-copy .eyebrow{font-size:8px;letter-spacing:1.6px;margin-bottom:24px}.hero-copy h1{font-size:57px;letter-spacing:-1.3px;line-height:1;margin-bottom:22px}.hero-copy p{font-size:11px;max-width:260px;line-height:1.8;margin-bottom:25px}.hero-copy .button{font-size:10px;padding:11px 16px;min-height:42px;gap:20px}.hero-shade{background:linear-gradient(90deg,rgba(14,34,27,.75),rgba(14,34,27,.48) 65%,rgba(14,34,27,.2)),linear-gradient(0deg,#152f2940,transparent 45%)}.hero-photo{object-position:60% center}.hero-caption{bottom:22px;right:16px;font-size:6px;letter-spacing:1.6px}
  .guest-content{padding-inline:24px}.quick-info{gap:23px 18px;padding:25px 0}.quick-info>div{gap:10px;padding-right:5px}.quick-info>div>svg{width:21px;height:21px}.quick-info span{font-size:9px}.quick-info strong{font-size:10px}.quick-info+.example-note{font-size:8px;gap:5px;line-height:1.6}.quick-info+.example-note svg{width:12px;height:12px;margin-top:0}.experiences{padding-top:43px;padding-bottom:38px}.section-heading{gap:16px;margin-bottom:24px}.section-heading .eyebrow{font-size:8px;letter-spacing:1.6px;margin-bottom:12px}.experiences h2{font-size:34px;line-height:1.08}.experiences h2 em{display:block}.section-number{display:none}.stories{grid-template-columns:1fr;gap:34px}.story-image{aspect-ratio:1.6}.story-copy{padding-top:20px}.story-copy .eyebrow{font-size:8px;letter-spacing:1.7px;margin-bottom:9px}.story-copy h3{font-size:32px;margin-bottom:11px}.story-copy p{font-size:11px;line-height:1.8;margin-bottom:8px}.story-copy .text-button{font-size:10px}.image-arrow{width:35px;height:35px;right:13px;bottom:13px}.stay-info{grid-template-columns:1fr;gap:20px;padding:35px 0 45px}.stay-info h2{font-size:38px;margin-bottom:13px}.stay-info h2 br{display:none}.stay-info h2 em:before{content:" "}.stay-info .eyebrow{font-size:8px;margin-bottom:12px}.stay-info>div>p{font-size:11px}.info-list summary{font-size:11px;padding:18px 0}.info-list details p{font-size:11px;padding-right:12px;margin-bottom:20px}.guest-footer{margin-inline:24px;padding:22px 0 30px;align-items:flex-start;flex-wrap:wrap;gap:10px 20px}.guest-footer strong{font-size:17px}.guest-footer span:last-child{font-size:8px;line-height:1.7}
  .service-page{padding-top:18px;padding-bottom:45px}.back-link{font-size:10px;min-height:37px;margin-bottom:15px}.service-intro{grid-template-columns:1fr;gap:27px}.service-intro-copy{padding:8px 0 0}.service-intro .eyebrow{font-size:8px;letter-spacing:1.6px}.service-intro h1{font-size:49px;margin-bottom:20px}.service-intro p{font-size:12px;max-width:none}.service-intro .quiet{font-size:10px}.service-intro>img{aspect-ratio:1.5;max-height:350px}.service-body{grid-template-columns:1fr;gap:29px;margin-top:37px}.service-body h2{font-size:32px}.service-body .section-heading{margin-bottom:23px}.service-aside{padding:26px}.service-aside h3{font-size:31px}.service-aside .eyebrow{font-size:8px}.menu-item{font-size:11px;gap:10px;line-height:1.6}.menu-item strong{font-size:10px}.menu-section h3{font-size:26px}.treatment{gap:13px;padding:21px 0}.treatment h3{font-size:26px}.treatment-icon{width:35px;height:35px}.treatment-icon>svg{width:19px;height:19px}.treatment p{font-size:10px}.treatment .quiet{font-size:10px}.treatment .icon-button{width:35px;height:35px}.requests-page{padding-top:28px;padding-bottom:48px;min-height:550px}.requests-page>.eyebrow{font-size:8px}.page-title-row{align-items:flex-start;gap:15px;display:block}.page-title-row h1{font-size:44px}.page-title-row p{font-size:11px;margin-top:14px}.guest-room{font-size:10px;margin-top:20px;gap:6px}.guest-room svg{width:16px;height:16px}.request-summary{font-size:10px;gap:18px;padding:18px 0}.request-summary span+span{padding-left:18px}.booking-card{padding:19px}.booking-top{gap:10px;margin-bottom:17px}.booking-title{gap:10px}.booking-title>svg{width:20px;height:20px}.booking-title h3{font-size:23px}.booking-title small{font-size:9px}.status-badge{font-size:9px;padding:4px 7px}.booking-meta{font-size:10px;gap:8px 13px}.booking-meta svg{width:13px;height:13px}.booking-status-note{font-size:10px;padding:11px 12px;line-height:1.75}.booking-actions{margin-top:14px;padding-top:14px;gap:8px}.booking-actions .button{font-size:10px}.guest-bookings{gap:16px}.example-note{font-size:10px}.empty-state{padding:30px 2px}.empty-state h2{font-size:36px}.empty-state p{font-size:11px}.empty-state .button-row{flex-direction:column;align-items:center;gap:10px}
  .staff-shell{grid-template-columns:1fr;min-height:0}.staff-sidebar{border-right:0;border-bottom:1px solid var(--line)}.staff-brand{padding:14px 20px;border-bottom:0;gap:10px;flex-wrap:nowrap}.staff-brand .brand-symbol{width:31px;height:31px}.staff-brand .brand-wordmark{font-size:18px;letter-spacing:1px}.staff-brand .brand-wordmark small,.staff-brand .brand-wordmark span{font-size:5px;letter-spacing:1.7px}.staff-nav{flex-direction:row;overflow-x:auto;scrollbar-width:none;padding:0 15px 11px;gap:5px}.staff-nav::-webkit-scrollbar{display:none}.nav-label{display:none}.nav-item{font-size:10px;padding:9px 10px;width:auto;flex-shrink:0;min-height:36px;gap:7px}.nav-item svg{width:14px;height:14px}.nav-item .count-badge{font-size:8px;min-width:16px;height:16px;margin-left:0}.nav-bottom{display:none}.staff-main{padding:22px 21px 40px}.staff-topline{margin-bottom:24px;font-size:9px;gap:12px}.staff-topline .eyebrow{font-size:8px;letter-spacing:1.4px}.operator-chip{font-size:9px}.operator-chip .avatar{width:24px;height:24px;font-size:8px}.workspace-heading{margin-bottom:23px}.workspace-heading .eyebrow{font-size:8px;letter-spacing:1.5px;margin-bottom:9px}.workspace-heading h1{font-size:37px;letter-spacing:-.7px;margin-bottom:11px}.workspace-heading p{font-size:10px;line-height:1.8}.metrics-row{padding:18px 0;margin-bottom:26px}.metric{padding-inline:13px}.metric>span:first-child{font-size:9px}.metric>strong{font-size:39px;margin-top:5px}.metric-note{font-size:8px;line-height:1.6}.overview-grid{gap:26px}.overview-main .section-heading.compact h2,.overview-aside .section-heading.compact h2{font-size:27px}.section-heading.compact h2{font-size:25px}.section-heading.compact{gap:13px;align-items:flex-start;flex-wrap:wrap}.section-heading.compact>.quiet{font-size:9px}.overview-bookings{margin-bottom:28px}.mini-request{gap:9px;padding-block:16px}.mini-request-main{gap:10px}.mini-request-main strong{font-size:10px}.mini-request-main small{font-size:9px}.mini-request-main>svg{width:17px;height:17px}.mini-request-actions .status-badge{font-size:8px}.mini-request-actions{gap:5px}.room-strip{gap:6px}.room-mini{padding:12px 3px}.room-mini strong{font-size:24px}.room-mini span{font-size:7px}.overview-banner{align-items:flex-start;flex-wrap:wrap;gap:10px 13px;margin-top:23px}.overview-banner strong{font-size:11px}.overview-banner p{font-size:10px}.overview-banner .button,.overview-banner .text-button{margin-left:37px}.overview-banner>svg{width:23px;height:23px}.activity-list{grid-template-columns:1fr;gap:0}.activity-item{padding-bottom:19px}.activity-item:after{display:block}.activity-copy{font-size:10px}.pending-section{margin-bottom:28px}.pending-list .booking-card{padding:18px}.slot-grid{gap:10px}.slot-item{padding:14px}.slot-time{font-size:13px}.schedule-section{margin-bottom:28px}.reservations-section .section-heading{align-items:center}.booking-table{min-width:500px}.booking-table th{font-size:8px;padding:13px 10px}.booking-table td{padding:15px 10px;font-size:10px}.filter-select{font-size:9px}.filter-select select{font-size:9px;min-height:32px;max-width:145px}.count-badge{font-size:10px;min-width:21px;height:21px}.notice{padding:14px;gap:10px;margin-bottom:22px}.notice strong,.notice p{font-size:10px}.notice>svg{width:16px;height:16px}.room-metrics{padding:0;margin-bottom:20px}.room-metrics .metric{padding:12px 13px}.room-metrics .metric:first-child{padding-left:13px}.room-metrics .metric>strong{font-size:37px}.room-metrics .metric-note{font-size:7px}.rooms-grid{gap:12px}.room-card{padding:15px 13px}.room-card-top{gap:5px}.room-label{font-size:7px;letter-spacing:1px}.room-card .status-badge{font-size:8px;padding:4px 6px}.room-card h2{font-size:45px;margin-block:16px 12px}.room-description{font-size:9px;gap:4px}.room-description svg{width:13px;height:13px}.room-description span{font-size:8px}.room-sync{font-size:8px;align-items:flex-start;margin-top:14px;padding-top:12px;line-height:1.5;min-height:38px;gap:4px}.room-sync svg{width:12px;height:12px;flex-shrink:0}.room-actions{gap:7px;margin-top:12px}.room-actions .button{font-size:9px;min-height:37px;padding:8px 5px;gap:5px}.room-actions .button svg{width:12px;height:12px}.room-actions .text-button{font-size:9px}.filter-chips{gap:4px}.chip{font-size:9px;min-height:33px;padding:7px 10px}.simulation-label{font-size:8px;letter-spacing:.8px}.integration-section{margin-top:29px}.sync-row{grid-template-columns:58px 80px 1fr;gap:7px}.sync-room{gap:8px}.sync-room strong{font-size:24px}.sync-room>svg{width:15px;height:15px}.sync-row .button.small{font-size:9px;padding:7px 8px;min-height:34px;gap:5px}.sync-row .button.small svg{width:13px;height:13px}.sync-result{font-size:9px}.sync-result small{font-size:8px}.sync-done{font-size:9px;gap:4px}.precheck-record{padding:20px}.record-heading{gap:10px}.record-heading h3{font-size:25px}.record-heading .status-badge{margin-left:0;font-size:8px}.record-heading .quiet{font-size:9px}.record-data dd{font-size:10px}.record-data dt{font-size:8px}.record-actions{gap:12px}.record-actions .button.small{font-size:10px}.record-actions .text-button{font-size:10px}.precheck-page{padding-top:18px;padding-bottom:45px}.precheck-layout{grid-template-columns:1fr;gap:18px;margin-top:0}.precheck-layout h1{font-size:49px;margin-top:15px}.precheck-layout .eyebrow{font-size:8px}.intro-text{font-size:12px;max-width:none}.precheck-steps{margin-block:25px}.precheck-steps>div{padding:11px 0}.precheck-steps>div>span{font-size:23px}.precheck-steps p{font-size:10px}.form-panel{padding:24px}.form-panel .section-heading h2{font-size:28px}.form-panel .section-heading{align-items:flex-start}.form-panel .quiet{font-size:10px}.form-panel .status-badge{font-size:8px}
  #dialog{max-height:calc(100dvh - 26px);width:calc(100% - 24px);border-radius:8px}.dialog-head{padding:22px 21px 18px}.dialog-head h2{font-size:30px}.dialog-content{padding:21px}.dialog-content>p{font-size:11px}.form-grid{gap:17px 12px}.dialog-footer{margin-top:20px;padding-top:18px}.dialog-footer .button{font-size:11px;min-height:42px}.dialog-footer .text-button{font-size:10px}.toast{font-size:11px;bottom:14px;padding:11px 15px;max-width:calc(100% - 28px)}
}
@media(max-width:400px){
  .guest-header{padding-inline:20px}.brand-symbol{width:35px;height:35px}.brand{gap:9px}.brand-wordmark{font-size:19px}.guest-identity{gap:5px}.guest-identity .avatar{display:none}.guest-nav{gap:21px}.hero-copy h1{font-size:52px}.hero-copy{padding-left:24px}.hero-caption{right:12px}.guest-content{padding-inline:22px}.quick-info{gap:22px 13px}.quick-info>div{gap:8px}.quick-info strong{font-size:9px}.quick-info span{font-size:8px}.quick-info>div>svg{width:19px;height:19px}.guest-footer{margin-inline:22px}.presenter-bar{padding-inline:15px}.presenter-controls{gap:7px}.presenter-field select{font-size:9px}.scenario-toggle button{font-size:8px}.staff-main{padding-inline:18px}.staff-topline{font-size:8px}.metric{padding-inline:10px}.metric>span:first-child{font-size:8px}.workspace-heading h1{font-size:35px}.rooms-grid{gap:10px}.room-card{padding-inline:11px}.room-card .status-badge{font-size:7px}.room-description{font-size:8px}.room-actions .button{font-size:8px}.room-actions .button svg{width:11px;height:11px}.room-sync{font-size:7px}.room-metrics .metric-note{font-size:7px}.mini-request-actions .status-badge{font-size:7px}.mini-request-actions .text-button{font-size:9px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}
}
@media(max-width:1180px){.metric>strong.metric-word{font-size:27px;padding-top:8px}.metric>span:first-child{font-size:9px}.metric>span:first-child svg{width:15px;height:15px}.overview-banner{flex-wrap:wrap;gap:15px}.overview-banner .button{margin-left:33px}.overview-aside .section-heading{flex-wrap:wrap;gap:8px}.staff-brand .brand{gap:9px}.mini-request-actions .button{font-size:10px;padding:8px 10px}.mini-request-actions .button svg{width:13px;height:13px}}
@media(max-width:940px){.guest-header>.brand-button{margin-right:auto}.staff-brand .brand{gap:8px}.metrics-row:has(.metric-scenario){grid-template-columns:repeat(2,minmax(0,1fr));padding:0}.metrics-row:has(.metric-scenario) .metric{padding:17px 18px;border-bottom:1px solid var(--line)}.metrics-row:has(.metric-scenario) .metric:nth-child(2){border-right:0}.metrics-row:has(.metric-scenario) .metric:nth-child(n+3){border-bottom:0}.metrics-row:has(.metric-scenario) .metric>strong{font-size:43px}.metrics-row:has(.metric-scenario) .metric>strong.metric-word{font-size:29px;line-height:1.1;padding:13px 0 5px}.metric>span:first-child svg{display:block}.overview-aside .section-heading{flex-wrap:nowrap}.staff-footer{font-size:8px}.guest-footer>span{font-size:9px}.guest-footer>small{font-size:8px}}
@media(max-width:700px){.presenter-brand .demo-dot{width:5px;height:5px}.presenter-controls>.guest-switch{flex:1;max-width:none}.presenter-controls>.presenter-field{max-width:none;flex:1}.presenter-controls>.scenario-toggle{order:0;flex:initial}.presenter-tools{margin-left:0}.presenter-controls .scenario-toggle button{padding-inline:7px;font-size:8px}.presenter-controls .scenario-toggle button svg{display:none}.guest-identity>div>span{font-size:8px}.guest-footer .brand-symbol{width:28px;height:28px}.guest-footer .brand-wordmark strong{font-size:15px}.guest-footer .brand-wordmark span{font-size:5px}.guest-footer>.brand{width:100%}.staff-sidebar>.nav-label{display:none}.staff-sidebar>.staff-nav{padding-top:0}.staff-brand .brand{gap:10px}.staff-footer{margin-top:20px;padding-top:24px;font-size:8px}.mini-request-main h3{font-size:10px}.mini-request-main>span{font-size:8px}.mini-request-actions .button{font-size:9px;padding:8px;gap:5px}.mini-request-actions .button svg{width:11px;height:11px}.request-icon{width:28px;height:28px}.request-icon svg{width:14px;height:14px}.booking-service-icon{width:31px;height:31px}.booking-service-icon svg{width:16px;height:16px}.booking-title .eyebrow{font-size:7px;letter-spacing:1.2px}.booking-title .quiet{font-size:9px}.booking-title h3{font-size:22px}.booking-top{gap:10px}.booking-note{font-size:10px}.metric>span:first-child{font-size:9px}.metrics-row:has(.metric-scenario) .metric{padding:15px 17px}.metric>span:first-child svg{width:16px;height:16px}.metrics-row:has(.metric-scenario) .metric>strong{font-size:42px}.metric>strong>small{font-size:12px}.metrics-row:has(.metric-scenario) .metric>strong.metric-word{font-size:29px;padding-top:12px}.overview-banner h3{font-size:24px}.overview-banner .button{margin-left:33px}.activity-empty{padding-top:10px}.activity-empty>svg{margin-bottom:15px}.form-note{font-size:9px}.booking-person{margin-top:17px}.record-heading{row-gap:14px}.room-mini span:last-child{font-size:7px}.room-mini span:first-child{font-size:5px}.simulation-ribbon{flex-wrap:wrap;justify-content:flex-start;gap:5px 7px}.simulation-ribbon>span{flex-basis:100%;padding-left:22px}}
@media(max-width:460px){.presenter-controls{display:grid;grid-template-columns:1fr 1fr auto;gap:6px 9px}.presenter-controls .presenter-field{min-width:0}.presenter-controls .scenario-toggle{grid-column:1/3;grid-row:2;justify-self:stretch}.presenter-controls .scenario-toggle button{font-size:9px;padding-inline:11px}.presenter-controls .presenter-tools{grid-column:3;grid-row:1/3;align-self:center}.presenter-controls:has(.guest-switch) .presenter-tools{grid-row:2}.presenter-controls:has(.guest-switch) .guest-switch{grid-column:2/4}.presenter-controls:has(.guest-switch) .scenario-toggle{grid-column:1/3}.presenter-controls:not(:has(.guest-switch)) .presenter-field{grid-column:1/3}.booking-top>.status-badge{font-size:8px;padding-inline:6px}.guest-bookings .booking-title h3{font-size:21px}}

/* Readable at presentation distance and on the team's phones. */
main:focus,h1[tabindex="-1"]:focus{outline:none}
.guest-nav button,.nav-item{font-size:12px}
.quiet,.booking-meta,.booking-status-note,.booking-note,.workspace-heading p,.mini-request-main>span,.activity-copy p,.activity-empty p,.hero-copy p,.story-copy p,.stay-info>div>p{font-size:13px}
.booking-table{font-size:13px}
.booking-table th{font-size:10px;color:var(--muted)}
.booking-table td small{font-size:11px;color:var(--muted)}
.status-badge,.booking-top>.status-badge{font-size:11px}
.button.small,.text-button.small,.room-actions .button{font-size:12px;min-height:42px}
.notice strong,.notice p,.form-note,.steps li,.info-list summary,.info-list details p,.menu-item,.treatment p{font-size:13px}
.metric>span:first-child,.metric-note,.metrics-row:has(.metric-scenario) .metric>span:first-child{font-size:11px}
.mini-request-main h3{font-size:14px}
.example-note{font-size:11px}
.record-data dd,.record-actions .text-button{font-size:12px}
.room-description,.room-sync{font-size:11px}
.sync-result,.sync-result small{font-size:11px}
.sync-room{min-width:0}
.presenter-tools[open]>div{width:285px;max-width:calc(100vw - 32px)}
@media(max-width:700px){
  .guest-nav{gap:20px;overflow-x:auto;justify-content:flex-start;padding-inline:2px}
  .guest-nav button{font-size:11px;min-height:44px}
  .guest-content .button,.room-actions .button,.button.small{min-height:44px;font-size:12px}
  .quiet,.booking-note,.booking-meta,.booking-status-note,.workspace-heading p,.mini-request-main>span,.activity-copy p,.activity-empty p{font-size:12px}
  .quick-info strong{font-size:11px}.quick-info span{font-size:10px}
  .room-card .status-badge,.booking-top>.status-badge{font-size:10px}
  .room-description,.room-description span,.room-sync{font-size:10px}
  .room-actions .button{font-size:11px;padding-inline:7px}
  .room-metrics .metric-note{font-size:9px}
  .room-mini span:last-child{font-size:10px}.room-mini span:first-child{font-size:8px}
  .booking-table td{font-size:12px}.booking-table td small{font-size:10px}
  .info-list summary,.info-list details p,.story-copy p,.service-intro p,.treatment p,.menu-item{font-size:13px}
  .precheck-steps p,.intro-text,.record-data dd{font-size:12px}
  .record-data dt,.record-heading .quiet,.sync-result,.sync-result small{font-size:10px}
  .record-heading .status-badge{font-size:10px}
  .dialog-content label,.form-panel label{font-size:12px}
  .dialog-content input,.dialog-content select,.dialog-content textarea,.form-panel input,.form-panel select{font-size:16px;min-height:44px}
  .dialog-content>p,.notice strong,.notice p,.form-note{font-size:12px}
  .sync-row .button.small{font-size:11px;min-height:40px}
  .section-heading.compact{flex-wrap:wrap}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.story-image:hover img{transform:none}}


/* Revisão da chamada: guia público e agenda partilhada. */
.guest-hero-compact{height:275px}
.guest-hero-compact .hero-copy{padding-top:40px;padding-bottom:28px}
.guest-hero-compact .hero-copy h1{font-size:58px;line-height:1;margin-bottom:18px}
.guest-hero-compact .hero-copy .eyebrow{margin-bottom:15px}
.guide-hours{grid-template-columns:repeat(5,minmax(0,1fr));gap:13px}
.guide-hours>div{padding-inline:8px;gap:10px}
.guide-hours strong{font-size:12px}
.guide-faq{padding-block:40px;gap:55px}
.guide-faq h2{font-size:40px}
.story-copy h2{font-size:36px;margin-bottom:12px}
.service-details{margin-top:16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.service-details summary{padding:14px 0;cursor:pointer;font-size:13px;font-weight:500}
.service-details .menu-section{border:0;padding:8px 0 20px}
.service-details .treatment{padding:17px 0;gap:12px}
.service-details .treatment h3{font-size:25px}
.service-details .example-note{margin-bottom:12px}
.presenter-controls{gap:14px}
.staff-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:28px}
.date-controls{display:flex;border:1px solid var(--line);border-radius:6px;padding:4px;gap:4px;flex-shrink:0;background:var(--white)}
.date-option{padding:8px 15px;min-width:100px;border-radius:3px;text-align:center;color:var(--muted)}
.date-option strong,.date-option span{display:block}
.date-option strong{font-size:16px;font-weight:500}
.date-option span{font-size:10px}
.date-option.active{background:#e7ecdf;color:#33442f}
.date-option:hover{background:var(--soft)}
.overview-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
.availability-first{padding:24px;border:1px solid var(--line);border-radius:8px;background:#f3f4ed;margin-bottom:34px}
.availability-first .slot-item{background:var(--white)}
.availability-first .slot-grid{margin-bottom:14px}
.availability-first .example-note{margin:0}
.slot-availability{font-family:var(--serif);display:block;font-size:28px;font-weight:400;color:var(--green);line-height:1.1;margin:15px 0 10px}
.slot-item.full .slot-availability{color:var(--amber)}
.booking-contact{font-size:12px;overflow-wrap:anywhere;color:var(--muted);margin-top:13px;margin-bottom:0}
.booking-contact svg{width:15px;height:15px;margin-right:5px}
.request-receipt>svg{width:42px;height:42px;color:var(--green);background:var(--green-soft);border-radius:50%;padding:9px;margin-bottom:20px}
.request-receipt h3{font-size:32px;line-height:1.12}
.request-receipt p{font-size:14px;overflow-wrap:anywhere}
.request-receipt .status-badge{margin-bottom:20px}
.request-receipt .button-row{margin-top:20px}
.email-preview dl{margin:24px 0}
.email-preview dl>div{padding:12px 0;border-bottom:1px solid var(--line)}
.email-preview dt{font-size:11px;color:var(--muted);margin-bottom:4px}
.email-preview dd{margin:0;font-size:14px;overflow-wrap:anywhere}
.email-body{white-space:pre-wrap;font-size:14px;line-height:1.8;background:var(--soft);padding:20px;border-radius:4px;overflow-wrap:anywhere}
#hotel-times,#stay-info,#restaurant-info,#spa-info{scroll-margin-top:24px}
#hotel-times:focus,#stay-info h2:focus,#restaurant-info h2:focus,#spa-info h2:focus{outline:none}
@media(max-width:940px){
 .guide-hours{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
 .guide-hours>div{border:0;padding:0}
 .guide-hours>div:nth-child(3){border:0}
 .overview-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
 .workspace-heading{flex-wrap:wrap;align-items:flex-start}
}
@media(max-width:700px){
 .presenter-controls{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px}
 .presenter-controls>.presenter-field{flex:1}
 .presenter-tools{margin-left:auto}
 .presenter-brand{flex-wrap:wrap}
 .guest-header{padding:18px 22px 10px}
 .guest-nav{justify-content:flex-start;gap:24px}
 .guest-hero-compact{height:240px}
 .guest-hero-compact .hero-copy{padding:32px 24px}
 .guest-hero-compact .hero-copy h1{font-size:42px;letter-spacing:-1px}
 .guest-hero-compact .hero-copy p{font-size:13px;max-width:290px}
 .guide-hours{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px}
 .guide-hours strong{font-size:12px;line-height:1.5}
 .guide-hours span{font-size:11px}
 .guide-faq{padding-block:32px;gap:20px}
 .guide-faq h2{font-size:34px}
 .date-controls{width:100%}.date-option{flex:1;min-width:0}
 .date-option strong{font-size:16px}.date-option span{font-size:11px}
 .availability-first{padding:16px;margin-bottom:25px}
 .slot-availability{font-size:25px}.availability-first .slot-item{padding:14px 10px}
 .overview-metrics .metric{padding-inline:12px}.overview-metrics .metric:first-child{padding-left:12px}
 .overview-metrics .metric>strong{font-size:38px}
 .staff-actions>.button{flex:1;min-width:150px}.staff-actions .quiet{width:100%;font-size:12px}
 .booking-contact{font-size:12px}.booking-table{min-width:650px}
 .request-receipt h3{font-size:29px}.email-body{padding:16px;font-size:13px}
}

@media(max-width:700px){.guest-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;overflow:visible}.guest-nav button{text-align:left;min-height:40px}}
