:root{color-scheme:light;font-size:80%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f3f0ea;color:#1f1d1a;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}.villa-app{min-height:100vh;background:#f3f0ea}.fixed-visual{position:fixed;inset:0 auto 0 0;width:58vw;min-height:100vh;background:#1f1d1a;color:#fff;overflow:hidden}.hero-photo{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;border:0;padding:0;isolation:isolate;color:inherit;text-align:left}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:46% center;filter:none;transition:filter .6s ease,scale .9s ease}.hero-photo:hover img{filter:grayscale(0) saturate(1);scale:1.025}.photo-veil{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#1f1d1a0f 40%,#1f1d1ab3),linear-gradient(90deg,rgba(31,29,26,.18),transparent 52%);z-index:1}.vertical-note{position:absolute;left:clamp(24px,4vw,64px);top:42%;z-index:2;writing-mode:vertical-rl;transform:rotate(180deg);text-transform:uppercase;font-size:.68rem;letter-spacing:.5em;opacity:.78}.gallery-cue{position:absolute;right:clamp(24px,4vw,64px);top:clamp(28px,5vw,72px);z-index:2;display:inline-flex;align-items:center;gap:10px;border-bottom:1px solid currentColor;padding-bottom:8px;text-transform:uppercase;font-size:.72rem;letter-spacing:.18em}.brand-lockup{position:absolute;left:clamp(28px,5vw,86px);bottom:clamp(74px,10vw,150px);z-index:2;display:grid;font-family:Georgia,Times New Roman,serif;font-size:clamp(3rem,6vw,6.1rem);font-weight:700;line-height:.86}.brand-caption{position:absolute;left:clamp(32px,5vw,92px);bottom:clamp(40px,5vw,76px);z-index:2;text-transform:uppercase;font-size:.78rem;letter-spacing:.22em}.scroll-panel{container-type:inline-size;width:calc(100% - 58vw);margin-left:58vw;min-height:100vh;background:#f3f0ea;color:#1f1d1a}.top-nav{position:sticky;top:0;z-index:10;display:flex;flex-wrap:wrap;align-items:center;gap:18px;min-height:92px;padding:24px clamp(24px,4vw,56px);background:#f3f0eae6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid rgba(31,29,26,.08)}.top-nav>div{display:flex;flex-wrap:wrap;align-items:center;gap:clamp(12px,1.7vw,26px);flex:1;min-width:0;overflow:visible}.top-nav a{flex:0 0 auto;text-transform:uppercase;font-size:.68rem;letter-spacing:.24em;color:#1f1d1a8f}.top-nav a:hover{color:#1f1d1a}.mini-brand,.admin-menu-button,.guest-pill{border:1px solid rgba(31,29,26,.34);background:transparent}.mini-brand{border:0}.mini-brand{display:grid;place-items:center;width:76px;height:76px;overflow:visible;border-radius:0;color:#1f1d1a!important;letter-spacing:0!important}.mini-brand img{display:block;width:88px;height:54px;object-fit:contain}.guest-pill{display:inline-flex;flex-shrink:0;align-items:center;gap:8px;min-height:42px;padding:0 13px;border-radius:999px;color:#1f1d1a!important;letter-spacing:.1em!important;text-transform:uppercase;font-size:.68rem}.header-brand{display:block;width:66px;height:72px;overflow:visible;mix-blend-mode:multiply}.admin-menu-button{position:fixed;top:16px;right:16px;z-index:80;display:inline-flex;align-items:center;justify-content:center;width:42px;min-height:42px;padding:0;color:#1f1d1a!important;background:#fff;box-shadow:0 10px 28px #1f1d1a14}.admin-menu-button span{position:absolute;top:calc(100% + 8px);right:0;z-index:20;width:max-content;max-width:180px;padding:7px 9px;border:1px solid rgba(31,29,26,.14);background:#1f1d1a;color:#f8f5ef;font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;opacity:0;pointer-events:none;transform:translateY(-4px);transition:opacity .16s ease,transform .16s ease}.admin-menu-button:hover span,.admin-menu-button:focus-visible span{opacity:1;transform:translateY(0)}.content-section{min-height:100vh;padding:clamp(34px,4vw,58px) clamp(26px,4.6vw,72px) clamp(64px,8vw,116px);border-bottom:1px solid rgba(31,29,26,.1);scroll-margin-top:100px}.content-section h1,.content-section h2{margin:0;max-width:760px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.1rem,4.1vw,4.55rem);line-height:.98;font-weight:600}.content-section h3{margin:14px 0 8px;font-family:Georgia,Times New Roman,serif;font-size:1.4rem}.content-section p{max-width:640px;font-size:1rem;line-height:1.8;color:#1f1d1aad}.lead{font-size:clamp(1.08rem,1.6vw,1.35rem)!important}.editorial-copy{display:grid;gap:18px;max-width:720px;margin-top:24px}.editorial-copy p{margin:0;max-width:720px;font-size:clamp(1rem,1.25vw,1.16rem);line-height:1.82}.editorial-copy p:last-child{color:#1f1d1a;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.3rem,2vw,1.8rem);line-height:1.25}.micro-label{margin:0 0 22px!important;text-transform:uppercase;color:#1f1d1a94!important;font-size:.7rem!important;letter-spacing:.28em;font-weight:700}.status-grid,.amenity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:52px;background:#1f1d1a1a}.status-grid>div,.amenity-grid>div{min-height:138px;padding:24px;background:#f8f5ef}.status-grid span,.reservation-panel span,.amenity-grid span{display:block;text-transform:uppercase;font-size:.65rem;letter-spacing:.16em;color:#1f1d1a80}.status-grid strong,.amenity-grid strong,.reservation-panel strong{display:block;margin-top:12px;font-family:Georgia,Times New Roman,serif;font-size:1.35rem;line-height:1.1}.status-grid small{display:block;margin-top:6px;color:#1f1d1a80}.gallery-section{min-height:auto}.section-heading{margin-bottom:34px}.compact-heading{margin-bottom:18px}.gallery-mosaic{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:260px;gap:14px}.gallery-mosaic button{position:relative;display:block;margin:0;border:0;overflow:hidden;background:#ddd5c9;color:inherit;cursor:pointer;padding:0;text-align:left}.gallery-mosaic button.wide-tile{grid-column:span 2;grid-row:span 2}.gallery-mosaic img{width:100%;height:100%;object-fit:cover;transition:scale .6s ease}.gallery-mosaic button:hover img,.gallery-mosaic button:focus-visible img{scale:1.04}.gallery-mosaic button:focus-visible{outline:2px solid #a5782c;outline-offset:3px}.gallery-caption{position:absolute;left:16px;right:16px;bottom:16px;display:grid;gap:5px;color:#fff;font-family:Georgia,Times New Roman,serif;text-shadow:0 2px 18px rgba(0,0,0,.46)}.gallery-caption span{font-family:Inter,ui-sans-serif,system-ui,sans-serif;text-transform:uppercase;font-size:.62rem;letter-spacing:.22em}.gallery-caption .gallery-action{display:inline-flex;align-items:center;gap:8px;margin-top:6px;color:#ffffffdb;letter-spacing:.16em}.location-map{position:relative;min-height:430px;margin-top:42px;overflow:hidden;border:1px solid rgba(31,29,26,.16);background:linear-gradient(135deg,#f8f5ef2e,#15141214),#ddd5c9}.location-map:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,#15141205,#1514123d),radial-gradient(circle at 50% 42%,transparent 0 18%,rgba(21,20,18,.2) 76%);mix-blend-mode:multiply}.location-map iframe{width:100%;height:100%;min-height:430px;border:0;filter:saturate(.72) contrast(.95) brightness(1.03)}.location-pin{position:absolute;left:50%;top:45%;z-index:2;display:grid;width:56px;height:56px;place-items:center;border:1px solid rgba(255,255,255,.72);border-radius:50%;background:#151412;color:#f8f5ef;box-shadow:0 18px 48px #00000042;translate:-50% -50%}.location-card{position:absolute;left:22px;right:22px;bottom:22px;z-index:3;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 22px;align-items:end;max-width:520px;padding:22px;background:#f8f5efeb;border:1px solid rgba(255,255,255,.5);box-shadow:0 24px 70px #0000002e;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.location-card span{display:block;grid-column:1 / -1;text-transform:uppercase;font-size:.62rem;letter-spacing:.22em;color:#1f1d1a80}.location-card strong{display:block;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.35rem,2vw,1.85rem);line-height:1.05}.location-card p{margin:0;font-size:.82rem;line-height:1.2}.location-card a{display:inline-flex;align-items:center;gap:8px;justify-self:end;min-height:42px;padding:0 16px;border:1px solid #1f1d1a;color:#1f1d1a;text-decoration:none;text-transform:uppercase;font-size:.66rem;font-weight:800;letter-spacing:.14em;transition:background .22s ease,color .22s ease}.location-card a:hover,.location-card a:focus-visible{background:#1f1d1a;color:#f8f5ef}.split-list{display:grid;gap:14px;margin-top:42px}.split-list div{display:flex;align-items:center;gap:14px;padding:18px 0;border-top:1px solid rgba(31,29,26,.1);color:#1f1d1ac2}.booking-section{display:grid;align-content:start}.booking-form{width:min(100%,720px);border:1px solid #1f1d1a;background:#f8f5ef;padding:clamp(28px,4vw,42px)}.booking-form h2{margin:0 0 24px;padding-bottom:16px;border-bottom:1px solid rgba(31,29,26,.14);font-family:Georgia,Times New Roman,serif;font-size:1.8rem;line-height:1.1;font-weight:600}.booking-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px}.booking-fields label{display:grid;gap:9px}.booking-fields label span{text-transform:uppercase;color:#1f1d1a94;font-size:.72rem;letter-spacing:.08em;font-weight:800}.booking-fields input,.booking-fields select,.booking-fields textarea{width:100%;min-height:48px;border:1px solid rgba(31,29,26,.14);background:#fff;color:#1f1d1a;padding:0 16px;outline:none}.booking-fields input:focus,.booking-fields select:focus,.booking-fields textarea:focus{border-color:#1f1d1a}.booking-fields textarea{min-height:88px;padding-top:15px;resize:vertical}.full-field{grid-column:1 / -1}.price-estimate{margin-top:28px;border:1px solid rgba(31,29,26,.14);background:#fff;padding:18px 20px}.price-estimate div{display:flex;align-items:center;justify-content:space-between;gap:18px;color:#1f1d1ab3}.price-estimate div+div{margin-top:14px}.price-estimate div:last-child{margin-top:16px;padding-top:16px;border-top:1px solid rgba(31,29,26,.12)}.price-estimate span{font-size:.9rem}.price-estimate strong{font-family:Georgia,Times New Roman,serif;font-size:1rem;font-weight:500;color:#1f1d1a;white-space:nowrap}.price-estimate div:last-child span,.price-estimate div:last-child strong{color:#1f1d1a;font-weight:700}.price-estimate div:last-child strong{color:#a5782c;font-size:1.5rem}.form-message{margin:18px 0 0;max-width:none;border:1px solid rgba(31,29,26,.14);padding:13px 15px;font-size:.88rem;line-height:1.45}.form-message-error{border-color:#78281e47;background:#78281e0f;color:#78281e}.form-message-success{border-color:#2f5e4b47;background:#2f5e4b14;color:#2f5e4b}.quote-breakdown{margin-top:16px;border:1px solid rgba(31,29,26,.12);background:#ffffff57;padding:14px}.quote-breakdown summary{cursor:pointer;text-transform:uppercase;font-size:.68rem;letter-spacing:.14em;font-weight:800}.quote-breakdown div{display:grid;gap:8px;margin-top:12px;color:#1f1d1a9e;font-size:.86rem;line-height:1.45}.booking-form>button{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;margin-top:24px;min-height:60px;border:0;background:#1f1d1a;color:#fff;text-transform:uppercase;font-size:.74rem;letter-spacing:.22em;font-weight:800}.booking-form>button:disabled{cursor:wait;opacity:.64}.arrival-services{display:grid;gap:14px;margin:0 0 28px;padding:18px;border:1px solid rgba(31,29,26,.12)}.arrival-services legend{padding:0 8px;color:#1f1d1a94;font-size:.68rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.arrival-services>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.arrival-services label{display:flex;align-items:flex-start;gap:10px;min-height:58px;padding:12px;border:1px solid rgba(31,29,26,.1);background:#ffffff6b}.arrival-services input{width:auto;margin-top:3px}.arrival-services span{display:grid;gap:4px}.arrival-services strong,.arrival-services small{line-height:1.25}.arrival-services small{color:#1f1d1a94}.owner-app{min-height:100vh;background:#f3f0ea;color:#1f1d1a;padding-bottom:48px}.owner-header{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:86px;border-bottom:1px solid rgba(31,29,26,.1);background:#f3f0eaf0;padding:16px clamp(16px,5vw,60px);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.owner-header h1,.owner-panel-heading h2{margin:0;font-family:Georgia,Times New Roman,serif;font-weight:500;line-height:1}.owner-header h1{font-size:clamp(1.6rem,4vw,3rem)}.owner-header span,.owner-row small,.owner-demo-note{color:#1f1d1a94;line-height:1.55}.owner-header-actions{display:flex;flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end;gap:8px}.owner-header button,.owner-panel-heading button,.owner-row-actions button{min-height:42px;border:1px solid rgba(31,29,26,.18);background:transparent;color:#1f1d1a;padding:0 14px;text-transform:uppercase;font-size:.66rem;letter-spacing:.12em;font-weight:800}.owner-header button:hover,.owner-panel-heading button:hover,.owner-row-actions button:hover,.owner-header button:focus-visible,.owner-panel-heading button:focus-visible,.owner-row-actions button:focus-visible{background:#1f1d1a;color:#f8f5ef}.owner-header button:disabled,.owner-panel-heading button:disabled,.owner-row-actions button:disabled{cursor:not-allowed;opacity:.42}.owner-header button:disabled:hover,.owner-panel-heading button:disabled:hover,.owner-row-actions button:disabled:hover{background:transparent;color:#1f1d1a}.owner-tabs{display:flex;gap:8px;overflow-x:auto;padding:18px clamp(16px,5vw,60px) 0;scrollbar-width:none}.owner-tabs::-webkit-scrollbar{display:none}.owner-tabs button{flex:0 0 auto;display:inline-grid;grid-auto-flow:column;align-items:center;justify-content:center;gap:8px;min-height:42px;border:1px solid rgba(31,29,26,.12);background:#f8f5ef;color:#1f1d1aa8;padding:0 14px;text-transform:uppercase;font-size:.66rem;letter-spacing:.12em;font-weight:800}.owner-tabs button small{display:none}.owner-tabs button.is-active{background:#1f1d1a;color:#f8f5ef}.owner-shell{width:min(100%,1180px);margin:0 auto;padding:clamp(18px,4vw,38px) clamp(14px,4vw,34px) 0}.owner-panel{border:1px solid rgba(31,29,26,.1);background:#f8f5ef;padding:clamp(18px,4vw,32px)}.owner-data-banner{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:12px;border:1px solid rgba(31,29,26,.1);background:#ffffff6b;margin-bottom:14px;padding:12px 14px;color:#1f1d1aa3;font-size:.78rem}.owner-debug-details{flex-basis:100%;color:#1f1d1ac7}.owner-debug-details summary{cursor:pointer;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.owner-debug-details ul{display:grid;gap:6px;margin:10px 0 0;padding-left:18px}.owner-debug-details li{overflow-wrap:anywhere}.owner-auth-panel{display:grid;gap:16px;max-width:620px}.owner-auth-panel h2{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.7rem,4vw,3rem);font-weight:500;line-height:1}.owner-auth-panel p{margin:0;color:#1f1d1aad;line-height:1.6}.owner-auth-panel button{min-height:44px;border:1px solid rgba(31,29,26,.18);background:#1f1d1a;color:#f8f5ef;padding:0 18px;text-transform:uppercase;font-size:.68rem;letter-spacing:.12em;font-weight:800}.owner-auth-error{color:#8f2f24}.owner-auth-uid{display:grid;gap:8px;border:1px solid rgba(31,29,26,.1);background:#ffffff61;padding:14px;overflow-wrap:anywhere}.owner-auth-uid span{color:#1f1d1a85;text-transform:uppercase;font-size:.64rem;letter-spacing:.12em;font-weight:800}.owner-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.owner-kpi-grid article,.owner-row,.owner-calendar-day{border:1px solid rgba(31,29,26,.1);background:#ffffff6b}.owner-kpi-grid article{display:grid;gap:10px;min-height:138px;align-content:start;padding:18px}.owner-kpi-grid span,.owner-row span,.owner-calendar-day span{text-transform:uppercase;font-size:.64rem;letter-spacing:.14em;color:#1f1d1a80;font-weight:800}.owner-kpi-grid strong{font-family:Georgia,Times New Roman,serif;font-size:clamp(1.8rem,4vw,3.2rem);line-height:1}.owner-list{display:grid;gap:8px}.owner-list:empty{border:1px solid rgba(31,29,26,.1);background:#ffffff57;min-height:84px}.owner-list:empty:before{display:grid;min-height:84px;place-items:center;color:#1f1d1a94;content:"Ainda nao existem registos para mostrar.";font-size:.82rem}.owner-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:16px;align-items:center;padding:16px}.owner-row>div{display:grid;gap:5px}.owner-row strong{font-family:Georgia,Times New Roman,serif;font-size:1.2rem;line-height:1.1;font-weight:500}.owner-row-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:end}.owner-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.owner-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.owner-calendar-day{display:grid;gap:6px;min-height:96px;align-content:start;padding:10px}.owner-calendar-day strong{font-family:Georgia,Times New Roman,serif;font-size:1.3rem}.owner-calendar-day small{color:#1f1d1a94;line-height:1.3}.owner-calendar-day.is-confirmed{border-color:#0b2a5b47;background:#0b2a5b14}.owner-calendar-day.is-pending{border-color:#c79d4457;background:#c79d441a}.owner-calendar-day.is-blocked{border-color:#78281e3d;background:#78281e14}.owner-config-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.owner-service-list{display:grid;gap:10px}.owner-access-section{display:grid;gap:14px;margin-top:26px}.owner-section-heading{display:grid;gap:4px}.owner-section-heading h3{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.35rem,3vw,2rem);font-weight:500;line-height:1.05}.owner-empty-state{display:grid;gap:8px;border:1px solid rgba(31,29,26,.1);background:#f8f5ef;padding:22px;color:#1f1d1a99}.owner-empty-state strong{color:#1f1d1a;font-family:Georgia,Times New Roman,serif;font-size:1.15rem;font-weight:500}.owner-service-list-item{display:grid;grid-template-columns:92px minmax(0,1fr) auto;align-items:center;gap:18px;width:100%;min-height:72px;border:1px solid rgba(31,29,26,.1);background:#ffffff75;color:#1f1d1a;padding:14px 18px;text-align:left}.owner-service-list-item:hover,.owner-service-list-item:focus-visible{border-color:#1f1d1a4d;background:#fff}.owner-service-list-item>span{justify-self:start}.owner-status-dot{display:inline-flex;align-self:center;justify-self:center;width:14px;height:14px;border:1px solid rgba(31,29,26,.2);background:#1f1d1a38}.owner-status-dot.is-active{border-color:#0e96a673;background:#0e96a6}.owner-status-dot.is-pending{border-color:#b87e257a;background:#b87e25}.owner-status-dot.is-disabled{border-color:#1f1d1a24;background:#1f1d1a47}.owner-switch-control{position:relative;display:inline-flex;width:54px;height:30px}.owner-switch-control input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;width:100%;height:100%;cursor:pointer;opacity:0}.owner-switch-control input:disabled{cursor:not-allowed}.owner-switch-control>span{position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid rgba(31,29,26,.18);background:#1f1d1a14;transition:background .16s ease,border-color .16s ease}.owner-switch-control>span:after{content:"";position:absolute;top:4px;left:4px;width:20px;height:20px;background:#8f8779;transition:transform .16s ease,background .16s ease}.owner-switch-control input:checked+span{border-color:#1c8b916b;background:#1c8b911f}.owner-switch-control input:checked+span:after{background:#13767c;transform:translate(24px)}.owner-switch-control input:focus-visible+span{outline:2px solid rgba(165,120,44,.45);outline-offset:3px}.owner-service-list-item div{display:grid;gap:5px}.owner-service-list-item strong{font-family:Georgia,Times New Roman,serif;font-size:1.18rem;font-weight:500}.owner-service-list-item small{color:#1f1d1a94;font-size:.78rem}.owner-site-fields{margin-bottom:34px}.owner-media-heading{margin-top:18px;padding-top:24px;border-top:1px solid rgba(31,29,26,.1)}.owner-media-list-item{grid-template-columns:72px 86px minmax(0,1fr) auto}.owner-media-list-item img{width:86px;height:58px;object-fit:cover;border:1px solid rgba(31,29,26,.1);background:#eee9df}.owner-upload-controls{display:flex;align-items:center;gap:10px}.owner-upload-controls select,.owner-upload-controls label{min-height:42px;border:1px solid rgba(31,29,26,.18);background:transparent;color:#1f1d1a;padding:0 14px;text-transform:uppercase;font-size:.66rem;letter-spacing:.12em;font-weight:800}.owner-upload-controls label{display:inline-flex;align-items:center;gap:8px;cursor:pointer}.owner-upload-controls input{display:none}.owner-upload-progress{position:relative;height:28px;margin-bottom:16px;border:1px solid rgba(31,29,26,.12);background:#ffffff80;overflow:hidden}.owner-upload-progress span{display:block;height:100%;background:#1c8b912e}.owner-upload-progress small{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#13767c;font-size:.68rem;font-weight:800}.owner-image-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.owner-image-card{display:grid;gap:12px;border:1px solid rgba(31,29,26,.1);background:#ffffff6b;padding:12px}.owner-image-card>button:first-child{width:100%;aspect-ratio:4 / 3;border:0;background:#eee9df;padding:0;overflow:hidden}.owner-image-card img{width:100%;height:100%;object-fit:cover;transition:transform .18s ease}.owner-image-card>button:first-child:hover img,.owner-image-card>button:first-child:focus-visible img{transform:scale(1.03)}.owner-image-card div{display:grid;gap:5px}.owner-image-card strong{font-family:Georgia,Times New Roman,serif;font-size:1.08rem;font-weight:500}.owner-image-card small,.owner-image-card span{color:#1f1d1a94;font-size:.76rem}.owner-image-actions{display:flex!important;align-items:center;gap:8px;border-top:1px solid rgba(31,29,26,.08);padding-top:10px}.owner-image-actions button{min-height:32px;border:1px solid rgba(31,29,26,.14);background:transparent;color:#1f1d1a;padding:0 10px;text-transform:uppercase;font-size:.58rem;letter-spacing:.1em;font-weight:800}.owner-config-card{display:grid;gap:16px;border:1px solid rgba(31,29,26,.1);background:#ffffff6b;padding:18px}.owner-config-card-header{display:flex;justify-content:space-between;gap:14px}.owner-config-card-header>div{display:grid;gap:5px}.owner-config-card-header span,.owner-config-fields span{color:#1f1d1a94;font-size:.62rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.owner-config-card-header strong{font-family:Georgia,Times New Roman,serif;font-size:1.25rem}.owner-config-card-header small{color:#1f1d1a94}.owner-config-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.owner-config-fields label{display:grid;gap:7px}.owner-config-fields input,.owner-config-fields select,.owner-config-fields textarea{width:100%;min-height:42px;border:1px solid rgba(31,29,26,.14);background:#fff;color:#1f1d1a;padding:10px;font:inherit}.owner-config-fields textarea{min-height:84px;resize:vertical}.owner-config-fields .full-field,.owner-config-fields .owner-field-wide{grid-column:1 / -1}.owner-toggle{display:flex!important;align-items:center;gap:8px;color:#1f1d1ab8;font-size:.82rem;font-weight:700}.owner-toggle input{width:auto;min-height:auto}.owner-config-card>button{min-height:42px;border:1px solid #1f1d1a;background:#1f1d1a;color:#f8f5ef;font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.owner-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:22px;background:#1514129e;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.owner-modal{position:relative;width:min(100%,760px);max-height:min(86vh,820px);overflow:auto;border:1px solid rgba(31,29,26,.12);background:#f8f5ef;color:#1f1d1a;padding:34px;box-shadow:0 30px 90px #00000047}.owner-modal h2{margin:0 0 22px;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.8rem,4vw,2.6rem);font-weight:500;line-height:1}.owner-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.owner-modal-actions button{min-height:44px;border:1px solid rgba(31,29,26,.18);background:transparent;color:#1f1d1a;padding:0 16px;text-transform:uppercase;font-size:.68rem;font-weight:800;letter-spacing:.12em}.owner-modal-actions button:last-child{border-color:#1f1d1a;background:#1f1d1a;color:#f8f5ef}.owner-modal-actions button:disabled{cursor:not-allowed;opacity:.45}.concierge-checkbox{display:flex!important;align-items:center;gap:10px}.concierge-checkbox input{width:auto}.owner-demo-note{width:min(100%,1180px);margin:18px auto 0;padding:0 clamp(14px,4vw,34px);font-size:.84rem}.admin-loading-shell{min-height:100vh;display:grid;place-items:center;background:#f4f0e8;color:#1f1d1a;font-size:.74rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.owner-floating-close{position:fixed;right:18px;top:18px;z-index:30;display:grid;width:46px;height:46px;place-items:center;border:1px solid rgba(31,29,26,.16);background:#1f1d1a;color:#f8f5ef;box-shadow:0 18px 50px #1f1d1a38}.admin-assistant-fab{position:fixed;right:18px;bottom:18px;z-index:40;display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 18px;border:1px solid rgba(9,127,135,.35);background:#f8f5ef;color:#1f1d1a;box-shadow:0 18px 50px #1f1d1a38;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;animation:assistantPulse 4s ease-in-out infinite}@keyframes assistantPulse{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.admin-assistant-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;pointer-events:none;background:linear-gradient(90deg,transparent 0%,rgba(31,29,26,.18) 100%)}.admin-assistant-panel{position:fixed;top:0;right:0;width:min(460px,100vw);height:100vh;display:flex;flex-direction:column;border-left:1px solid rgba(31,29,26,.14);background:#f4f0e8;box-shadow:-24px 0 80px #1f1d1a38;pointer-events:auto;animation:assistantSlideIn .18s ease-out}@keyframes assistantSlideIn{0%{transform:translate(32px);opacity:0}to{transform:translate(0);opacity:1}}.admin-assistant-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:24px;border-bottom:1px solid rgba(31,29,26,.12)}.admin-assistant-header h2{margin:6px 0 0;font-size:clamp(1.55rem,4vw,2.1rem);line-height:1}.admin-assistant-header p{margin:10px 0 0;color:#5f5a52;line-height:1.55}.admin-assistant-header>button{display:grid;width:40px;height:40px;place-items:center;border:1px solid rgba(31,29,26,.14);background:transparent;color:#1f1d1a;cursor:pointer}.admin-assistant-toolbar{display:flex;gap:10px;padding:14px 24px;border-bottom:1px solid rgba(31,29,26,.12)}.admin-assistant-toolbar button,.admin-assistant-actions button{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(31,29,26,.14);background:transparent;padding:10px 12px;color:#1f1d1a;font-size:.67rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}.admin-assistant-messages{flex:1;min-height:0;overflow-y:auto;padding:20px 24px}.admin-assistant-message{max-width:88%;margin-bottom:16px;padding:16px;border:1px solid rgba(31,29,26,.12);background:#ffffff9e}.admin-assistant-message-user{margin-left:auto;background:#1f1d1a;color:#fff}.admin-assistant-message p{margin:0;line-height:1.55}.admin-assistant-message ol,.admin-assistant-message ul{margin:12px 0 0;padding-left:18px;color:inherit;line-height:1.5}.admin-assistant-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.admin-assistant-files{margin-top:12px;color:#6f675e;font-size:.8rem}.admin-assistant-files summary{cursor:pointer}.admin-assistant-suggestions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.admin-assistant-suggestions button{border:1px solid rgba(31,29,26,.12);background:#fff;padding:14px;text-align:left;color:#1f1d1a;font-weight:700;cursor:pointer}.admin-assistant-input{display:grid;grid-template-columns:1fr auto;gap:10px;padding:16px 24px 20px;border-top:1px solid rgba(31,29,26,.12);background:#f8f5ef}.admin-assistant-input input{min-width:0;min-height:44px;border:1px solid rgba(31,29,26,.14);background:#fff;padding:0 14px;color:#1f1d1a}.admin-assistant-input button{display:inline-flex;align-items:center;gap:7px;border:0;background:#1f1d1a;color:#fff;padding:0 16px;font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}.guest-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:24px;background:#151412c7;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.guest-modal{position:relative;width:min(100%,420px);background:#fff;color:#1f1d1a;padding:34px;box-shadow:0 28px 80px #00000047}.modal-close{position:absolute;top:24px;right:24px;display:grid;place-items:center;width:28px;height:28px;border:0;background:transparent;color:#1f1d1a73;padding:0}.modal-close:hover{color:#1f1d1a}.modal-eyebrow{margin:0 0 4px;color:#a5782c;text-transform:uppercase;font-size:.68rem;letter-spacing:.14em;font-weight:800}.guest-modal h2{margin:0;font-family:Georgia,Times New Roman,serif;font-size:1.75rem;line-height:1.1;font-weight:500}.guest-modal>p:not(.modal-eyebrow){margin:22px 0;color:#1f1d1a94;font-size:.95rem;line-height:1.65}.guest-modal form{display:grid;gap:14px}.guest-modal label{display:grid;gap:8px}.guest-modal label span{text-transform:uppercase;color:#1f1d1a94;font-size:.7rem;letter-spacing:.08em;font-weight:800}.guest-modal input{width:100%;min-height:46px;border:1px solid rgba(31,29,26,.14);background:#fbfaf7;color:#1f1d1a;padding:0 14px;text-align:center;text-transform:uppercase;letter-spacing:.22em}.guest-modal form button{display:flex;align-items:center;justify-content:center;gap:10px;min-height:46px;border:0;background:#1f1d1a;color:#fff;text-transform:uppercase;font-size:.72rem;letter-spacing:.18em;font-weight:800}.demo-access{margin-top:22px;padding-top:18px;border-top:1px solid rgba(31,29,26,.1);text-align:center}.demo-access span{display:block;color:#1f1d1a6b;font-size:.78rem;line-height:1.35}.demo-access button{margin-top:13px;border:0;background:transparent;color:#a5782c;text-transform:uppercase;font-size:.72rem;letter-spacing:.08em;font-weight:800}.guest-access-error,.guest-portal-success{margin:0;border:1px solid rgba(120,40,30,.26);background:#78281e0f;color:#78281e;padding:11px 13px;font-size:.82rem;line-height:1.45}.guest-portal-success{border-color:#2f5e4b47;background:#2f5e4b14;color:#2f5e4b}.guest-portal{min-height:100vh;background:#f3f0ea;color:#1f1d1a}.guest-portal-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:86px;padding:16px clamp(18px,5vw,72px);border-bottom:1px solid rgba(31,29,26,.1);background:#f3f0eaeb;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.guest-portal-brand{display:flex;align-items:center;gap:14px;color:#1f1d1a;text-decoration:none}.guest-portal-brand img{width:62px;height:48px;object-fit:contain}.guest-portal-brand div{display:grid;gap:3px}.guest-portal-brand strong{font-family:Georgia,Times New Roman,serif;font-size:1.08rem;line-height:1}.guest-portal-brand span,.guest-portal-eyebrow{text-transform:uppercase;font-size:.64rem;letter-spacing:.2em;color:#1f1d1a85;font-weight:800}.guest-portal-header>button,.guest-action-button,.guest-action-link,.guest-card button,.concierge-form button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;border:1px solid rgba(31,29,26,.22);background:transparent;color:#1f1d1a;padding:0 15px;text-decoration:none;text-transform:uppercase;font-size:.68rem;letter-spacing:.13em;font-weight:800}.guest-portal-header>button:hover,.guest-action-button:hover,.guest-action-link:hover,.guest-card button:hover,.concierge-form button:hover,.guest-portal-header>button:focus-visible,.guest-action-button:focus-visible,.guest-action-link:focus-visible,.guest-card button:focus-visible,.concierge-form button:focus-visible{background:#1f1d1a;color:#f8f5ef}.guest-portal-hero{padding:clamp(48px,8vw,96px) clamp(18px,6vw,96px) clamp(28px,5vw,62px)}.guest-portal-hero h1{margin:12px 0 18px;max-width:900px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.4rem,6vw,6.4rem);line-height:.92;font-weight:600}.guest-portal-hero p:not(.guest-portal-eyebrow){max-width:680px;color:#1f1d1aa8;font-size:1.05rem;line-height:1.75}.guest-portal-layout{display:grid;gap:28px;padding:0 clamp(18px,6vw,96px) clamp(64px,8vw,110px)}.guest-portal-section{scroll-margin-top:108px}.guest-summary-grid,.guest-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:18px;background:#1f1d1a1a}.guest-summary-grid>div,.guest-card{min-height:136px;padding:24px;background:#f8f5ef}.guest-summary-grid span,.guest-info-list span,.wifi-card span{display:block;text-transform:uppercase;font-size:.66rem;letter-spacing:.16em;color:#1f1d1a7a;font-weight:800}.guest-summary-grid strong,.guest-info-list strong,.wifi-card strong{display:block;margin-top:9px;font-family:Georgia,Times New Roman,serif;font-size:1.32rem;line-height:1.08}.guest-card{border:1px solid rgba(31,29,26,.1)}.guest-card h2,.guest-card h3,.guest-concierge-panel h2{margin:10px 0;font-family:Georgia,Times New Roman,serif;font-weight:500}.guest-card h2{font-size:1.8rem}.guest-card h3{font-size:1.35rem}.guest-card p,.guest-concierge-panel p{max-width:620px;color:#1f1d1a9e;line-height:1.68}.guest-info-list,.wifi-card{display:grid;gap:16px;margin:18px 0}.guest-card-grid .guest-card{display:grid;align-content:start;gap:8px}.guest-card-grid .guest-card strong{color:#0b2a5b}.service-grid .guest-card button{justify-self:start;margin-top:8px}.guest-concierge-panel{display:grid;grid-template-columns:minmax(0,.82fr) minmax(320px,1fr);gap:clamp(24px,5vw,58px);margin-top:18px;border:1px solid rgba(31,29,26,.12);background:#f8f5ef;padding:clamp(24px,4vw,42px)}.concierge-form{display:grid;gap:16px}.concierge-form label{display:grid;gap:8px}.concierge-form label span{text-transform:uppercase;color:#1f1d1a94;font-size:.7rem;letter-spacing:.08em;font-weight:800}.concierge-form select,.concierge-form textarea{width:100%;border:1px solid rgba(31,29,26,.14);background:#fff;color:#1f1d1a;padding:0 14px;outline:none}.concierge-form select{min-height:48px}.concierge-form textarea{min-height:130px;padding-top:14px;resize:vertical}.concierge-form button{background:#1f1d1a;color:#f8f5ef}.guest-mobile-nav{display:none}.guest-app{min-height:100vh;padding-bottom:84px;background:#f3f0ea;color:#1f1d1a}.guest-app-header{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:70px;padding:10px clamp(14px,5vw,54px);border-bottom:1px solid rgba(31,29,26,.1);background:#f3f0eaf0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.guest-app-brand{display:flex;align-items:center;gap:12px;min-width:0;color:#1f1d1a;text-decoration:none}.guest-app-brand img{width:54px;height:42px;object-fit:contain}.guest-app-brand div{display:grid;gap:3px;min-width:0}.guest-app-brand strong{overflow:hidden;font-family:Georgia,Times New Roman,serif;font-size:1.06rem;line-height:1;text-overflow:ellipsis;white-space:nowrap}.guest-app-brand span{text-transform:uppercase;font-size:.62rem;letter-spacing:.2em;color:#1f1d1a85;font-weight:800}.guest-app-header>button{display:grid;flex:0 0 auto;width:42px;height:42px;place-items:center;border:1px solid rgba(31,29,26,.18);background:transparent;color:#1f1d1a}.guest-app-shell{width:min(100%,1120px);margin:0 auto;padding:clamp(22px,4vw,48px) clamp(14px,4vw,36px) 0}.guest-tab-panel{display:grid;gap:22px}.guest-dashboard-hero,.guest-tab-heading{display:grid;gap:10px}.guest-dashboard-hero h1,.guest-tab-heading h1,.guest-service-detail h1{margin:0;max-width:760px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.1rem,8vw,5rem);line-height:.94;font-weight:600}.guest-dashboard-hero p:not(.guest-portal-eyebrow),.guest-tab-heading p:not(.guest-portal-eyebrow),.guest-service-detail p{max-width:640px;color:#1f1d1aa3;line-height:1.7}.reservation-card,.next-action-card,.guest-app-card,.guest-service-detail{border:1px solid rgba(31,29,26,.11);background:#f8f5ef;padding:clamp(20px,4vw,34px)}.reservation-card{display:grid;gap:18px}.reservation-card span,.next-action-card span{display:block;text-transform:uppercase;font-size:.66rem;letter-spacing:.18em;color:#1f1d1a80;font-weight:800}.reservation-card strong,.next-action-card strong{font-family:Georgia,Times New Roman,serif;font-size:clamp(1.25rem,3vw,2.1rem);line-height:1.05}.reservation-dates{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.quick-actions-grid,.guest-app-card-grid,.guest-tile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.quick-actions-grid button,.guest-tile-card{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:76px;border:1px solid rgba(31,29,26,.11);background:#f8f5ef;color:#1f1d1a;padding:16px;text-align:left}.quick-actions-grid button{justify-content:flex-start;text-transform:uppercase;font-size:.7rem;letter-spacing:.12em;font-weight:800}.guest-app-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guest-app-card-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.guest-app-card h2,.guest-app-card h3,.guest-tile-card h3{margin:0 0 10px;font-family:Georgia,Times New Roman,serif;font-weight:500}.guest-app-card h2{font-size:1.65rem}.guest-app-card h3,.guest-tile-card h3{font-size:1.28rem}.guest-app-card p,.guest-tile-card p{margin:0;color:#1f1d1a9e;line-height:1.62}.guest-tile-card{min-height:132px}.guide-category-icon{display:grid;flex:0 0 auto;width:38px;height:38px;place-items:center;border:1px solid rgba(31,29,26,.12);background:#ffffff6b;font-size:1.1rem}.guest-tile-card:hover,.guest-tile-card:focus-visible,.quick-actions-grid button:hover,.quick-actions-grid button:focus-visible{border-color:#1f1d1a57}.guest-back-link{justify-self:start;display:inline-flex;align-items:center;gap:8px;border:0;background:transparent;color:#1f1d1aa3;padding:0;text-transform:uppercase;font-size:.68rem;letter-spacing:.14em;font-weight:800}.guide-item-grid{display:grid;gap:12px}.guide-item-card{display:grid;gap:18px;border:1px solid rgba(31,29,26,.11);background:#f8f5ef;padding:clamp(20px,4vw,32px)}.guide-item-copy{display:grid;gap:8px}.guide-item-copy h3,.house-manual h2{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.35rem,3vw,2rem);line-height:1.05;font-weight:500}.guide-item-copy p:not(.guest-portal-eyebrow),.house-manual .guest-tab-heading p{margin:0;max-width:700px;color:#1f1d1a9e;line-height:1.62}.guide-meta-list,.guide-tag-list,.guide-card-actions{display:flex;flex-wrap:wrap;gap:8px}.guide-meta-list span,.guide-tag-list span{display:inline-flex;align-items:center;gap:6px;min-height:30px;border:1px solid rgba(31,29,26,.11);background:#ffffff7a;color:#1f1d1aad;padding:0 10px;font-size:.74rem;font-weight:700}.guide-tag-list span{border-color:#0e96a638;color:#0b6f78}.guide-note-list{display:grid;gap:8px;margin:0;padding-left:18px;color:#1f1d1a94;line-height:1.56}.house-manual{display:grid;gap:18px;margin-top:10px}.house-manual-list{display:grid;gap:8px}.house-manual-section{border:1px solid rgba(31,29,26,.11);background:#f8f5ef}.house-manual-toggle{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;width:100%;border:0;background:transparent;color:#1f1d1a;padding:18px;text-align:left}.house-manual-toggle span:nth-child(2){display:grid;gap:5px}.house-manual-toggle strong{font-family:Georgia,Times New Roman,serif;font-size:1.16rem;line-height:1.1;font-weight:500}.house-manual-toggle small{color:#1f1d1a94;line-height:1.45}.house-manual-toggle svg{transition:rotate .18s ease}.house-manual-toggle[aria-expanded=true] svg{rotate:180deg}.house-manual-icon{display:grid;width:38px;height:38px;place-items:center;border:1px solid rgba(31,29,26,.12);background:#ffffff85}.house-manual-body{display:grid;gap:14px;padding:0 18px 20px 70px}.house-manual-body ul{display:grid;gap:8px;margin:0;padding-left:18px;color:#1f1d1aa3;line-height:1.58}.house-manual-important{margin:0;border-left:3px solid #c79d44;background:#c79d441c;color:#1f1d1abd;padding:12px 14px;line-height:1.52}.guest-service-detail{display:grid;grid-template-columns:minmax(0,.8fr) minmax(320px,1fr);gap:clamp(22px,5vw,56px)}.concierge-form input{width:100%;min-height:48px;border:1px solid rgba(31,29,26,.14);background:#fff;color:#1f1d1a;padding:0 14px;outline:none}.guest-logout-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;justify-self:start;min-height:48px;border:1px solid rgba(31,29,26,.22);background:#1f1d1a;color:#f8f5ef;padding:0 18px;text-transform:uppercase;font-size:.7rem;letter-spacing:.14em;font-weight:800}.guest-bottom-nav{position:fixed;left:50%;bottom:14px;z-index:80;display:grid;grid-template-columns:repeat(5,minmax(58px,1fr));width:min(calc(100% - 24px),620px);border:1px solid rgba(31,29,26,.12);background:#f8f5eff2;box-shadow:0 18px 70px #1f1d1a2e;translate:-50% 0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.guest-bottom-nav button{display:grid;min-height:62px;place-items:center;gap:4px;border:0;border-right:1px solid rgba(31,29,26,.08);background:transparent;color:#1f1d1a94;padding:8px 5px;text-transform:uppercase;font-size:.58rem;letter-spacing:.08em;font-weight:800}.guest-bottom-nav button:last-child{border-right:0}.guest-bottom-nav button.is-active{background:#1f1d1a;color:#f8f5ef}.immersive-gallery{min-height:100vh;background:#151412;color:#f8f5ef}.gallery-close{position:fixed;top:24px;right:24px;z-index:30;display:inline-flex;align-items:center;gap:10px;min-height:44px;border:1px solid rgba(248,245,239,.34);background:#151412a3;color:#f8f5ef;padding:0 15px;text-transform:uppercase;font-size:.68rem;letter-spacing:.16em;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.immersive-stage{position:relative;min-height:min(68vh,760px);overflow:hidden;background:#1f1d1a}.immersive-stage-button{display:block;width:100%;border:0;background:transparent;color:inherit;padding:0}.immersive-stage-button img{width:100%;height:min(68vh,760px);min-height:460px;object-fit:cover;display:block;animation:stageReveal .46s ease both}.stage-open-cue{position:absolute;top:24px;left:24px;z-index:1;border:1px solid rgba(248,245,239,.32);background:#15141294;padding:12px 14px;text-transform:uppercase;font-size:.62rem;letter-spacing:.18em;opacity:0;transition:opacity .22s ease;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.immersive-stage-button:hover .stage-open-cue,.immersive-stage-button:focus-visible .stage-open-cue{opacity:1}.immersive-stage-button:focus-visible{outline:2px solid #f8f5ef;outline-offset:-6px}.immersive-stage:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 38%,rgba(21,20,18,.7));pointer-events:none}.immersive-stage>div{position:absolute;left:clamp(20px,4vw,64px);bottom:clamp(22px,4vw,58px);z-index:1;display:grid;gap:8px}.immersive-stage span{text-transform:uppercase;font-size:.72rem;letter-spacing:.24em;color:#f8f5efad}.immersive-stage strong{font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,5.5vw,5.6rem);line-height:.9;font-weight:600}.immersive-mosaic{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:clamp(150px,19vw,280px);gap:10px;padding:10px}.immersive-mosaic button{position:relative;min-width:0;min-height:0;overflow:hidden;border:1px solid rgba(248,245,239,.1);background:#24211d;color:#f8f5ef;padding:0;text-align:left}.immersive-mosaic button:nth-child(1),.immersive-mosaic button:nth-child(6){grid-column:span 2;grid-row:span 2}.immersive-mosaic button:nth-child(4),.immersive-mosaic button:nth-child(8){grid-column:span 2}.immersive-mosaic button.is-selected{border-color:#f8f5ef;box-shadow:inset 0 0 0 3px #f8f5ef}.immersive-mosaic img{width:100%;height:100%;object-fit:cover;display:block;opacity:.74;transition:opacity .24s ease,scale .5s ease}.immersive-mosaic button:hover img,.immersive-mosaic button.is-selected img{opacity:1;scale:1.035}.immersive-mosaic span{position:absolute;left:14px;right:14px;bottom:14px;display:grid;gap:4px;font-family:Georgia,Times New Roman,serif;font-size:1.05rem;text-shadow:0 2px 18px rgba(0,0,0,.64)}.immersive-mosaic small{font-family:Inter,ui-sans-serif,system-ui,sans-serif;text-transform:uppercase;font-size:.58rem;letter-spacing:.2em;color:#f8f5efb8}.gallery-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:clamp(18px,4vw,54px);background:#0a0908e6;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.lightbox-figure{position:relative;display:grid;width:min(100%,1180px);max-height:88vh;margin:0;place-items:center}.lightbox-figure img{display:block;width:100%;max-height:82vh;object-fit:contain;animation:stageReveal .26s ease both}.lightbox-figure figcaption{position:absolute;left:0;right:0;bottom:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 18px;align-items:end;padding:clamp(18px,4vw,34px);background:linear-gradient(180deg,transparent,rgba(10,9,8,.78));color:#f8f5ef}.lightbox-figure figcaption span{grid-column:1 / -1;text-transform:uppercase;font-size:.64rem;letter-spacing:.22em;color:#f8f5efb8}.lightbox-figure figcaption strong{font-family:Georgia,Times New Roman,serif;font-size:clamp(1.6rem,4vw,3.4rem);line-height:.95;font-weight:500}.lightbox-figure figcaption small{align-self:end;color:#f8f5efb8;font-size:.74rem;letter-spacing:.16em}.lightbox-close,.lightbox-arrow{position:fixed;z-index:55;display:grid;place-items:center;border:1px solid rgba(248,245,239,.28);background:#151412a8;color:#f8f5ef;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.lightbox-close{top:24px;right:24px;width:46px;height:46px}.lightbox-arrow{top:50%;width:54px;height:54px;translate:0 -50%}.lightbox-arrow-left{left:24px}.lightbox-arrow-right{right:24px}.lightbox-close:hover,.lightbox-close:focus-visible,.lightbox-arrow:hover,.lightbox-arrow:focus-visible{border-color:#f8f5efb8;background:#f8f5ef1f}@keyframes stageReveal{0%{opacity:0;scale:1.015}to{opacity:1;scale:1}}@media(max-width:1080px){.fixed-visual{position:relative;width:100%;min-height:94vh}.hero-photo{min-height:94vh}.scroll-panel{width:100%;margin-left:0}}@media(max-width:760px){.fixed-visual{min-height:clamp(420px,115vw,640px)}.hero-photo{min-height:0}.brand-lockup{bottom:92px;font-size:clamp(2.7rem,13vw,4.3rem)}.brand-caption{bottom:54px;max-width:260px}.vertical-note{display:none}.top-nav{min-height:76px;padding:16px}.guest-pill{width:42px;justify-content:center;padding:0;font-size:0}.guest-pill svg{flex:0 0 auto}.content-section{min-height:auto;padding:64px 18px}.content-section h1,.content-section h2{font-size:clamp(1.95rem,10vw,3.35rem)}.status-grid,.amenity-grid,.guest-summary-grid,.guest-card-grid,.guest-concierge-panel{grid-template-columns:1fr}.guest-portal-header{align-items:flex-start;flex-direction:column}.guest-portal-header>button{width:100%}.guest-portal-brand img{width:54px;height:42px}.guest-app{padding-bottom:82px}.guest-app-header{min-height:64px;padding:9px 12px}.guest-app-brand img{width:46px;height:36px}.guest-app-brand strong{font-size:.98rem}.guest-app-brand span{font-size:.56rem}.guest-app-shell{padding:22px 14px 0}.guest-dashboard-hero h1,.guest-tab-heading h1,.guest-service-detail h1{font-size:clamp(2rem,13vw,3.4rem)}.quick-actions-grid,.guest-app-card-grid,.guest-app-card-grid.compact,.guest-tile-grid,.guest-service-detail,.owner-kpi-grid,.owner-config-grid,.owner-config-fields,.arrival-services>div{grid-template-columns:1fr}.owner-header,.owner-panel-heading{align-items:flex-start;flex-direction:column}.owner-header-actions{width:100%;justify-content:stretch}.owner-header button,.owner-panel-heading button{width:100%}.owner-app{padding-bottom:calc(102px + env(safe-area-inset-bottom))}.owner-tabs{position:fixed;right:0;bottom:0;left:0;z-index:72;gap:4px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));border-top:1px solid rgba(31,29,26,.12);background:#f8f5eff5;box-shadow:0 -14px 40px #1f1d1a1f;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.owner-tabs button{min-width:72px;min-height:58px;grid-auto-flow:row;gap:5px;padding:7px 9px;font-size:0;letter-spacing:0}.owner-tabs button span{display:none}.owner-tabs button small{display:block;color:inherit;font-size:.58rem;letter-spacing:.08em;line-height:1;text-transform:uppercase}.owner-tabs button svg{width:17px;height:17px}.owner-shell{padding-bottom:18px}.owner-row{grid-template-columns:1fr}.owner-service-list-item{grid-template-columns:1fr;align-items:start}.owner-media-list-item{grid-template-columns:1fr}.owner-upload-controls,.owner-image-actions{flex-wrap:wrap}.owner-image-gallery{grid-template-columns:1fr}.admin-assistant-fab{right:14px;bottom:calc(86px + env(safe-area-inset-bottom));min-height:46px;padding:0 14px}.admin-assistant-panel{top:auto;bottom:0;width:100%;height:min(88vh,720px);border-top:1px solid rgba(31,29,26,.14);border-left:0}.admin-assistant-header,.admin-assistant-toolbar,.admin-assistant-messages,.admin-assistant-input{padding-right:16px;padding-left:16px}.admin-assistant-suggestions,.admin-assistant-input{grid-template-columns:1fr}.owner-service-list-item>span{width:fit-content}.owner-modal{max-height:92vh;padding:28px 20px}.owner-modal-actions{display:grid}.owner-row-actions{justify-content:start}.owner-calendar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guest-bottom-nav{bottom:0;width:100%;border-right:0;border-bottom:0;border-left:0}.guest-bottom-nav button{min-height:calc(58px + env(safe-area-inset-bottom));padding-bottom:calc(8px + env(safe-area-inset-bottom))}.guest-summary-grid>div,.guest-card{min-height:auto}.guest-portal{padding-bottom:92px}.guest-mobile-nav{position:fixed;left:0;right:0;bottom:0;z-index:70;display:flex;gap:4px;overflow-x:auto;padding:10px 12px calc(10px + env(safe-area-inset-bottom));border-top:1px solid rgba(31,29,26,.12);background:#f8f5eff0;box-shadow:0 -14px 40px #1f1d1a1f;scrollbar-width:none;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.guest-mobile-nav::-webkit-scrollbar{display:none}.guest-mobile-nav a{flex:0 0 auto;display:grid;min-width:72px;min-height:54px;place-items:center;gap:4px;border:1px solid rgba(31,29,26,.1);background:#ffffff75;color:#1f1d1a;padding:7px 9px;text-decoration:none;text-transform:uppercase;font-size:.58rem;letter-spacing:.08em;font-weight:800}.guest-mobile-nav a:focus-visible{outline:2px solid #a5782c;outline-offset:2px}.gallery-mosaic{grid-template-columns:1fr;grid-auto-rows:320px}.gallery-mosaic button.wide-tile{grid-column:auto;grid-row:auto}.location-map,.location-map iframe{min-height:360px}.location-pin{top:38%;width:50px;height:50px}.location-card{left:14px;right:14px;bottom:14px;grid-template-columns:1fr;padding:18px}.location-card a{justify-self:start}.gallery-close{top:14px;right:14px;width:44px;justify-content:center;padding:0;font-size:0}.immersive-stage img{height:56vh;min-height:360px}.immersive-mosaic{grid-template-columns:1fr 1fr;grid-auto-rows:190px}.immersive-mosaic button:nth-child(n){grid-column:auto;grid-row:auto}.immersive-mosaic button:first-child{grid-column:span 2;grid-row:span 2}.gallery-lightbox{padding:14px}.lightbox-figure{max-height:84vh}.lightbox-figure img{max-height:78vh}.lightbox-close{top:14px;right:14px}.lightbox-arrow{top:auto;bottom:18px;width:48px;height:48px;translate:0}.lightbox-arrow-left{left:18px}.lightbox-arrow-right{right:18px}.lightbox-figure figcaption{padding-bottom:76px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #94662e;outline-offset:3px}@media(max-width:760px){.top-nav{flex-wrap:wrap;gap:8px}.top-nav>div{order:3;flex-basis:100%;flex-wrap:wrap;justify-content:center;gap:12px 20px;padding:8px 0;overflow:visible}.top-nav a{font-size:.85rem;letter-spacing:.1em}.guest-pill{margin-left:auto;min-height:44px}.booking-fields{grid-template-columns:1fr}.owner-calendar-day{min-width:0;overflow-wrap:anywhere}input,textarea,select{font-size:16px;max-width:100%}}@container (max-width: 800px){.top-nav{gap:8px}.top-nav>div{order:3;flex-basis:100%;justify-content:center;gap:12px 20px;padding:8px 0}.guest-pill{margin-left:auto}.content-section{scroll-margin-top:200px}}.owner-year-calendar{container-type:inline-size;margin-top:28px}.owner-year-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.owner-year-toolbar h3{font:2rem Georgia,serif;margin:8px 0;text-transform:capitalize}.owner-year-toolbar p:not(.guest-portal-eyebrow){color:#666159;max-width:640px;line-height:1.6;margin:0}.owner-year-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.owner-year-controls button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:10px 14px}.owner-year-legend{display:flex;flex-wrap:wrap;list-style:none;padding:0;margin:0 0 24px;gap:12px 22px}.owner-year-legend li{display:flex;align-items:center;gap:7px;color:#514e48}.owner-year-swatch{width:12px;height:12px;border:1px solid #d8d4cc;display:inline-block;flex:0 0 auto}.owner-year-months{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.owner-year-months .owner-year-month{display:block;width:100%;min-width:0;padding:20px;text-align:left;background:#fbfaf7;border:1px solid #dedad2;letter-spacing:normal;text-transform:none;font-weight:400;color:#242a30;transition:border-color .2s,box-shadow .2s}.owner-year-months .owner-year-month:hover{border-color:#107c83;background:#fff;box-shadow:0 4px 18px #132e3210}.owner-year-month-title{display:flex;align-items:center;justify-content:space-between;gap:8px;font:1.35rem Georgia,serif;text-transform:capitalize;margin-bottom:18px}.owner-year-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.owner-year-weekday{font-size:.75rem;color:#6a665f;text-align:center;padding:4px 0 8px}.owner-year-day{display:flex;justify-content:center;align-items:center;min-width:0;min-height:28px;border:1px solid transparent;border-radius:3px;font-size:.9rem;font-variant-numeric:tabular-nums}.owner-year-calendar .is-available{background:#f0eee8;color:#514e48}.owner-year-calendar .is-confirmed{background:#d6eae7;color:#125b59;border-color:#91c3bc}.owner-year-calendar .is-pending{background:#fff0c9;color:#73501a;border-color:#dfc16e}.owner-year-calendar .is-blocked{background:#edddda;color:#833c32;border-color:#d0a29b}.owner-year-calendar .is-today{outline:2px solid #07255d;outline-offset:1px;font-weight:700}.owner-year-month-summary{display:block;color:#716c63;font-size:.8rem;margin-top:16px;line-height:1.5}.owner-year-focus{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.owner-year-detail{min-width:0;padding:24px;background:#fbfaf7;border:1px solid #dedad2}.owner-year-detail h4{margin:0 0 20px;font:1.8rem Georgia,serif;text-transform:capitalize}.owner-year-detail .owner-year-day{min-height:48px;font-size:1.05rem}.owner-year-events{list-style:none;padding:0;margin:22px 0 0}.owner-year-events li{display:flex;align-items:flex-start;gap:10px;padding:12px 0;border-top:1px solid #e4e0d9}.owner-year-events .owner-year-swatch{margin-top:4px}.owner-year-events strong,.owner-year-events div>span{display:block;overflow-wrap:anywhere}.owner-year-events div>span{color:#716c63;font-size:.9rem;margin-top:6px;line-height:1.5}.owner-year-events button{margin-top:10px;padding:9px 12px;border:1px solid #d0cbc2;background:transparent;color:#253e50;cursor:pointer}.owner-year-events button:disabled{opacity:.5;cursor:wait}.booking-inputs{border:0;padding:0;margin:0;min-width:0}.owner-calendar-selection,.owner-reservation-composer{margin:20px 0;padding:20px;border:1px solid #d0cbc2}.owner-calendar-selection button,.owner-reservation-composer button,.owner-reservation-intent select{padding:12px;margin:6px 8px 6px 0}.owner-reservation-intent{display:grid;gap:8px}.owner-reservation-composer .booking-form{width:100%;max-width:none;margin:16px 0}.owner-year-days button.owner-year-day{padding:0;font:inherit;cursor:pointer}.owner-year-days button.owner-year-day:disabled{cursor:default;opacity:.5}.owner-year-day.is-selected{outline:2px solid #087f8c;outline-offset:-3px}.owner-year-empty{color:#716c63;margin:20px 0 0;line-height:1.5}@container (max-width: 850px){.owner-year-months{grid-template-columns:repeat(2,minmax(0,1fr))}.owner-year-focus{grid-template-columns:1fr}}@container (max-width: 460px){.owner-year-months{grid-template-columns:1fr}.owner-year-detail{padding:16px}.owner-year-toolbar h3{font-size:1.6rem}}.owner-year-controls button{font:inherit;background:transparent;border:1px solid #cec9bf;color:#242a30;cursor:pointer}.owner-year-controls button:hover{background:#e9e5dc;border-color:#107c83}.owner-year-controls button[aria-pressed=true]{background:#1f1d1a;color:#f8f5ef;border-color:#1f1d1a}@media(max-width:760px){:root{font-size:100%}body{line-height:1.55}button,summary,a.guest-pill{min-height:44px;min-width:44px}button{font-size:14px;line-height:1.35;letter-spacing:.06em}input:not([type=checkbox]):not([type=radio]),select,textarea{min-height:48px;font-size:16px;min-width:0}input::placeholder,textarea::placeholder{color:#716b62;opacity:1}input[type=checkbox],input[type=radio]{width:20px;height:20px;flex:0 0 20px}:is(button,a,input,select,textarea,summary):focus-visible{outline:2px solid #087f8c;outline-offset:3px}:is(.owner-app,.guest-app,.scroll-panel) :is(p,small,strong,code,a){overflow-wrap:anywhere}.content-section{padding:48px 20px;scroll-margin-top:194px}.content-section h1,.content-section h2{font-size:clamp(28px,8vw,36px);line-height:1.12}.content-section h3{font-size:23px;line-height:1.25}.content-section p,.editorial-copy p{font-size:16px;line-height:1.75;color:#514c45}.editorial-copy{gap:20px}.editorial-copy p:last-child{font-size:22px;line-height:1.4}.lead{font-size:17px!important}.status-grid{gap:16px;margin-top:28px}.status-grid small,.status-grid span,.amenity-grid span{font-size:13px;color:#5c564e;line-height:1.5}.status-grid strong{font-size:21px}.micro-label,.content-section .micro-label{font-size:12px;line-height:1.5;letter-spacing:.14em;color:#5c564e}.fixed-visual{min-height:0;height:clamp(380px,108vw,464px)}.hero-photo{height:100%;min-height:0}.hero-photo img{object-position:46% center}.brand-lockup{left:20px;bottom:90px;font-size:clamp(44px,12vw,54px)}.brand-caption{left:20px;right:20px;bottom:32px;max-width:290px;font-size:12px;line-height:1.5;letter-spacing:.12em}.gallery-cue{right:20px;top:24px;font-size:12px}.top-nav{padding:10px 20px;gap:6px 12px}.top-nav .mini-brand{width:56px;height:56px;min-height:56px}.top-nav .mini-brand svg{max-width:56px;max-height:56px}.top-nav .guest-pill{width:auto;min-height:44px;padding:0 14px;font-size:13px}.top-nav>div{display:flex;flex-wrap:wrap;flex-basis:100%;gap:0 12px;justify-content:center;padding:0}.top-nav>div a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 2px;color:#514c45;font-size:12px;letter-spacing:.06em}.booking-section{padding:36px 20px}.booking-form{padding:24px 16px}.booking-form h2{font-size:28px;line-height:1.2}.booking-fields{grid-template-columns:1fr;gap:20px}.booking-fields label span,.arrival-services legend,.concierge-form label span,.guest-modal label span{font-size:13px;color:#585149;line-height:1.5;letter-spacing:.08em}.booking-form>button{min-height:52px;padding:14px 16px;font-size:14px;letter-spacing:.06em}.price-estimate{padding:20px 0}.price-estimate div{align-items:baseline;gap:16px}.price-estimate span,.price-estimate strong{font-size:16px;line-height:1.5}.price-estimate span{color:#585149}.price-estimate div:last-child strong{font-size:24px;color:#805c21}.quote-breakdown summary{display:flex;align-items:center;font-size:13px}.quote-breakdown div,.arrival-services small{font-size:14px;color:#585149;line-height:1.55}.arrival-services label,.owner-toggle,.concierge-checkbox{min-height:48px}.form-message{font-size:16px;line-height:1.6}.gallery-mosaic{grid-auto-rows:auto;gap:16px}.gallery-mosaic button{aspect-ratio:4 / 3;min-height:0}.gallery-mosaic button img{object-position:center}.gallery-mosaic strong{font-size:23px;line-height:1.2}.gallery-mosaic span,.gallery-mosaic small{font-size:12px;line-height:1.5}.location-card{padding:16px;left:12px;right:12px}.location-card a{display:inline-flex;align-items:center;min-height:44px;font-size:13px}.location-card strong{font-size:20px}.location-card span,.location-card small{font-size:14px;color:#585149}.split-list div{font-size:16px;line-height:1.6}.immersive-stage img{height:auto;min-height:0;aspect-ratio:4 / 5}.immersive-stage strong{font-size:28px}.immersive-stage span,.stage-open-cue{font-size:12px;color:#fff}.immersive-mosaic{grid-auto-rows:150px}.lightbox-figure img{object-fit:contain;max-height:72dvh}.lightbox-figure figcaption strong{font-size:22px}.lightbox-figure figcaption span{font-size:13px}.guest-modal-backdrop,.owner-modal-backdrop{padding:20px}.guest-modal,.owner-modal{max-height:90dvh;overflow-y:auto;padding:64px 20px 24px}.modal-close{top:12px;right:12px;width:44px;height:44px;color:#514c45}.guest-modal h2,.owner-modal h2{font-size:28px;line-height:1.2}.guest-modal>p:not(.modal-eyebrow){font-size:16px;color:#585149}.guest-modal form button{font-size:14px;letter-spacing:.08em}.modal-eyebrow{font-size:12px;color:#805c21}.owner-header{padding:24px 20px;gap:16px}.owner-header h1{font-size:30px;line-height:1.15;padding-right:34px}.owner-header span,.owner-demo-note,.owner-data-banner,.owner-auth-panel p{font-size:14px;color:#585149;line-height:1.6}.owner-shell{padding:24px 20px}.owner-panel{padding:16px;min-width:0}.owner-panel p{font-size:16px;line-height:1.65}.owner-panel h2{font-size:26px;line-height:1.2}.owner-panel h3{font-size:23px;line-height:1.25}.owner-panel :is(small,label,.owner-row>div>span){font-size:14px;line-height:1.55;color:#585149}.owner-header button,.owner-panel button,.owner-auth-panel button{font-size:14px;letter-spacing:.06em}.owner-row{padding:16px 12px;gap:16px;min-width:0}.owner-row strong{font-size:20px}.owner-row-actions{flex-wrap:wrap}.owner-row-actions button{min-height:48px}.owner-config-fields{gap:18px}.owner-config-fields label{font-size:14px;line-height:1.5}.owner-config-card{padding:16px;min-width:0}.owner-config-card-header span{font-size:13px;color:#585149}.owner-tabs{padding-inline:12px;gap:6px;scrollbar-width:thin}.owner-tabs button{min-width:84px;min-height:64px;font-size:0}.owner-tabs button small{font-size:11px;line-height:1.25;letter-spacing:.02em}.owner-tabs button svg{width:22px;height:22px}.owner-app{padding-bottom:calc(112px + env(safe-area-inset-bottom))}.owner-floating-close{top:12px;right:12px}.admin-assistant-fab{bottom:calc(96px + env(safe-area-inset-bottom));font-size:13px}.admin-assistant-panel p,.admin-assistant-bubble{font-size:16px;line-height:1.6}.admin-assistant-panel button{font-size:14px}.admin-assistant-input{padding-bottom:max(20px,env(safe-area-inset-bottom))}.owner-reservation-composer{margin-inline:-8px;padding:12px 8px}.owner-reservation-composer .booking-form{padding:16px 0}.owner-year-calendar{margin-inline:-16px}.owner-year-toolbar,.owner-year-legend,.owner-calendar-selection{margin-inline:16px}.owner-year-toolbar h3{font-size:24px;line-height:1.25}.owner-year-controls{gap:6px}.owner-year-controls button{padding:10px;font-size:14px;min-height:48px}.owner-year-legend{gap:10px 14px;font-size:13px}.owner-calendar-selection{padding:12px}.owner-calendar-selection button{width:100%;margin-inline:0}.owner-year-months,.owner-year-focus{grid-template-columns:1fr;gap:20px}.owner-year-months .owner-year-month{padding:16px 12px}.owner-year-detail{padding:16px 4px}.owner-year-detail h4,.owner-year-events,.owner-year-empty{margin-inline:12px}.owner-year-detail h4{font-size:24px;line-height:1.2}.owner-year-detail .owner-year-days{gap:0}.owner-year-day{font-size:14px;min-height:32px}.owner-year-detail .owner-year-day,.owner-year-days button.owner-year-day{min-height:48px;font-size:16px;min-width:0;letter-spacing:0}.owner-year-weekday{font-size:12px;color:#585149}.owner-year-month-summary,.owner-year-events div>span{font-size:14px;color:#585149;line-height:1.6}.guest-app-shell{padding:24px 20px 0}.guest-app-header{padding:12px 20px;gap:12px}.guest-app-brand{min-width:0}.guest-app-brand strong{font-size:18px;line-height:1.2}.guest-app-brand span{font-size:11px;letter-spacing:.06em;line-height:1.4}.guest-app :is(p,.guest-info-row strong){font-size:16px;line-height:1.65}.guest-dashboard-hero h1,.guest-tab-heading h1,.guest-service-detail h1{font-size:32px;line-height:1.15}.guest-app h2{font-size:25px;line-height:1.2}.guest-app h3{font-size:22px;line-height:1.25}.guest-app :is(small,.guest-info-row span){font-size:14px;line-height:1.5}.guest-app-card,.guest-detail-card,.guest-stay-card{padding:20px 16px;min-width:0}.guest-app button{font-size:14px}.guest-app :is(.guest-app-card p,.guest-tab-heading p,.guest-dashboard-hero p,.guest-detail-card p){color:#585149}.guest-bottom-nav{grid-template-columns:repeat(5,minmax(0,1fr))}.guest-bottom-nav button{min-width:0;min-height:calc(64px + env(safe-area-inset-bottom));padding-inline:2px}.guest-bottom-nav button span{font-size:11px;letter-spacing:.02em;line-height:1.25}.guest-app{padding-bottom:calc(100px + env(safe-area-inset-bottom))}.guest-portal-eyebrow,.owner-panel .guest-portal-eyebrow{font-size:12px;color:#6b5c43;letter-spacing:.1em;line-height:1.5}.micro-label,.content-section .micro-label{font-size:12px!important;color:#5c564e!important}.owner-header{position:static}.owner-year-calendar{margin-inline:-24px}.owner-year-toolbar,.owner-year-legend,.owner-calendar-selection{margin-inline:24px}.owner-kpi-grid article span,.reservation-card span,.next-action-card span{font-size:13px;color:#585149;line-height:1.5}.guest-tile-card p,.guest-service-detail p{color:#585149;font-size:16px}.owner-year-calendar .owner-year-controls{display:grid;grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr) 44px;gap:4px;width:100%}.owner-year-calendar .owner-year-controls button{padding-inline:4px}.owner-floating-close{position:absolute}.admin-assistant-fab{position:static;margin:20px;width:calc(100% - 40px);justify-content:center}.owner-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;padding:8px 12px calc(8px + env(safe-area-inset-bottom));overflow:visible}.owner-tabs button{min-width:0;min-height:56px;padding:6px 2px}.owner-tabs button small{font-size:11px;letter-spacing:0}.owner-app{padding-bottom:calc(152px + env(safe-area-inset-bottom))}.owner-year-detail .owner-year-day{box-shadow:inset 0 0 0 1px #fbfaf7}.owner-tabs button small{font-size:clamp(10px,2.7vw,12px);font-weight:600;letter-spacing:-.02em;white-space:nowrap}.owner-config-fields label>span{font-size:13px;line-height:1.5;color:#585149;letter-spacing:.06em}.owner-config-grid>article{display:grid;gap:6px;padding-block:8px}.owner-config-fields textarea{min-height:120px}.gallery-mosaic .gallery-caption{font-size:22px;line-height:1.2;z-index:1}.gallery-mosaic button:after{content:"";position:absolute;top:40%;right:0;bottom:0;left:0;background:linear-gradient(transparent,#000000b8);pointer-events:none}.gallery-caption .gallery-action{color:#fff}.guest-summary-grid span,.guest-info-list span,.wifi-card span{font-size:12px;color:#585149;line-height:1.5;letter-spacing:.08em}.guest-action-link{min-height:44px;font-size:14px}.guest-modal input{letter-spacing:.05em}.guest-tile-card,.guest-tile-card p{letter-spacing:normal}.admin-assistant-layer{z-index:100}.admin-assistant-panel{height:min(92dvh,800px)}.admin-assistant-input{flex-shrink:0}}@media(max-width:760px){.owner-year-calendar .owner-year-controls:has(>button:nth-child(3):last-child){grid-template-columns:44px minmax(0,1fr) 44px}}
