@font-face{font-family:Samsaara Satoshi;src:url(/fonts/satoshi/Satoshi-Variable.woff2)format("woff2");font-display:swap;font-style:normal;font-weight:300 900}:root{color:#182230;font-synthesis:none;text-rendering:optimizelegibility;background:#fff;font-family:Samsaara Satoshi,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:#fff;min-width:320px;min-height:100dvh;margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}.app-shell{width:min(1120px,100% - 32px);margin:0 auto;padding:28px 0 40px}.app-header{justify-content:space-between;align-items:center;gap:16px;min-height:64px;margin-bottom:12px;padding:12px 0;display:flex}.app-header div{gap:3px;display:grid}.app-header span{color:#667085;font-size:.85rem;font-weight:700}.app-header strong{color:#101828;overflow-wrap:anywhere;font-size:.98rem}.icon-text-button,.auth-text-submit,.text-button{letter-spacing:0;border:0;border-radius:8px;font-weight:800}.icon-text-button{color:#fff;background:#101828;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 14px;text-decoration:none;display:inline-flex}.icon-text-button:disabled,.auth-text-submit:disabled{opacity:.62}.icon-text-button.muted{color:#344054;background:#fff;border:1px solid #d0d5dd}.header-actions{align-items:center;gap:10px;display:flex}.auth-shell{color:#fff;background:linear-gradient(#00000057,#0000003d),url(/login-hero-beyond-red.webp) 50%/cover no-repeat;place-items:center;width:100%;height:100dvh;min-height:100dvh;padding:28px;display:grid;overflow:hidden}.auth-intro h1{margin-top:18px}.auth-intro p{color:#475467;max-width:560px;margin-top:22px;font-size:1.13rem;line-height:1.65}.auth-panel{width:min(360px,100%);box-shadow:none;background:0 0;border:0;border-radius:0;justify-items:center;gap:32px;padding:0;display:grid}.auth-panel.compact{width:min(320px,100%)}.auth-panel.compact svg{color:#0f766e;justify-self:center}.auth-panel.compact h1{font-size:2rem;line-height:1.05}.auth-panel-title{align-items:flex-start;gap:12px;display:flex}.auth-panel-title svg{color:#0f766e;flex:none;margin-top:2px}.auth-panel h2{color:#101828;font-size:1.2rem}.auth-panel p{color:#667085;margin-top:6px;line-height:1.5}.auth-logo{object-fit:contain;width:min(300px,76vw);height:auto;display:block}.notice,.form-error{border-radius:8px;padding:12px 14px;font-size:.92rem;line-height:1.45}.notice{color:#115e59;background:#f0fdfae6;border:1px solid #0f766e2e}.form-error{color:#ffd6d6;background:#b423182e;border:1px solid #ffffff29}.auth-form{gap:12px;width:100%;display:grid}.auth-form label{color:#ffffffb8;gap:9px;font-size:.84rem;font-weight:800;display:grid}.input-wrap{min-height:52px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;color:#fff;letter-spacing:0;background:#ffffff14;border:0;border-radius:8px;grid-template-columns:minmax(0,1fr);align-items:center;padding:0 18px;font-family:Samsaara Satoshi,Avenir Next,Helvetica Neue,Arial,sans-serif;font-size:16px;font-weight:400;line-height:1;display:grid}.input-wrap input{color:#fff;caret-color:#fff;width:100%;min-width:0;font:inherit;background:0 0;border:0;outline:0}.input-wrap input::placeholder{color:#fff;opacity:1}.input-wrap:focus-within{box-shadow:none}.auth-text-submit{color:#fff;background:0 0;justify-self:center;min-height:52px;padding:0 10px;font-family:Samsaara Satoshi,Avenir Next,Helvetica Neue,Arial,sans-serif;font-size:16px;font-weight:400;line-height:1}.auth-text-submit:hover{color:#fff}.auth-text-submit:focus-visible{outline-offset:8px;outline:1px solid #ffffff59}.auth-text-submit:active{transform:translateY(1px)}.text-button{color:#0f766e;background:0 0;justify-self:center;min-height:38px;padding:0 10px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.install-shell{color:#fff;background:#000;width:100%;min-height:100vh}.install-landing{place-items:center;padding:28px;display:grid}.install-stage{justify-items:center;gap:52px;width:min(620px,100%);display:grid}.install-logo{object-fit:contain;width:clamp(260px,68vw,560px);height:auto;display:block}.install-choice-grid{gap:12px;width:min(340px,100%);display:grid}.install-choice{color:#fff;letter-spacing:0;background:linear-gradient(#ffffff21,#ffffff0e);border:1px solid #ffffff2e;border-radius:8px;justify-content:center;align-items:center;gap:10px;min-height:54px;padding:0 18px;font-weight:800;text-decoration:none;display:inline-flex;box-shadow:inset 0 1px #ffffff29,0 18px 44px #0000005c}.install-choice:hover{background:linear-gradient(#ffffff2e,#ffffff13);border-color:#ffffff47}.install-choice:active{transform:translateY(1px)}.install-choice.wide{width:min(360px,100%)}.install-guide{align-content:start;justify-items:center;padding:28px;display:grid}.install-back{color:#ffffffb8;justify-self:start;align-items:center;gap:8px;min-height:42px;font-weight:800;text-decoration:none;display:inline-flex}.install-guide-panel{text-align:center;justify-items:center;gap:22px;width:min(520px,100%);margin-top:min(11vh,92px);display:grid}.install-guide-logo{object-fit:contain;width:min(320px,70vw);height:auto;display:block}.install-kicker{color:#fff9;letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.82rem;font-weight:800}.install-guide-panel h1{color:#fff;max-width:520px;font-size:clamp(2.2rem,9vw,4.4rem);line-height:.95}.install-steps{color:#ffffffb8;gap:12px;width:min(430px,100%);margin:4px 0 6px;padding:0;line-height:1.5;list-style-position:inside;display:grid}.install-steps li::marker{color:#fff;font-weight:800}.install-message{color:#ffffffbd;text-align:left;background:#ffffff0f;border:1px solid #ffffff29;border-radius:8px;width:min(430px,100%);padding:12px 14px;line-height:1.45}.hero{grid-template-columns:minmax(0,1fr) 360px;align-items:stretch;gap:24px;min-height:330px;display:grid}.hero-copy{flex-direction:column;justify-content:center;padding:44px 0;display:flex}.eyebrow{color:#0f766e;align-items:center;gap:8px;width:fit-content;margin-bottom:18px;font-size:.92rem;font-weight:700;display:inline-flex}h1,h2,p{margin:0}h1{color:#101828;letter-spacing:0;max-width:780px;font-size:clamp(2.75rem,8vw,5.25rem);line-height:.96}.hero-copy p{color:#475467;max-width:680px;margin-top:22px;font-size:1.13rem;line-height:1.65}.status-panel,.module,.tasks,.metric{background:#ffffffd1;border:1px solid #1018281a;border-radius:8px;box-shadow:0 18px 55px #10182814}.status-panel{flex-direction:column;justify-content:flex-end;padding:26px;display:flex}.status-header{color:#344054;align-items:center;gap:10px;margin-bottom:18px;font-weight:700;display:flex}.status-panel strong{color:#101828;font-size:1.75rem;line-height:1.15}.status-panel p{color:#667085;margin-top:12px;line-height:1.55}.overview{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:12px 0 24px;display:grid}.metric{min-height:116px;padding:20px}.metric span{color:#101828;font-size:1.9rem;font-weight:800;line-height:1;display:block}.metric p{color:#667085;margin-top:10px;line-height:1.45}.work-area{grid-template-columns:minmax(0,1fr) 380px;gap:24px;display:grid}.modules{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.module{min-height:190px;padding:22px}.module svg,.tasks-title svg,.status-header svg{color:#0f766e;flex:none}.module h2,.tasks h2{color:#101828;letter-spacing:0;font-size:1.05rem}.module h2{margin-top:18px}.module p{color:#667085;margin-top:10px;line-height:1.5}.tasks{padding:22px}.tasks-title{align-items:center;gap:10px;margin-bottom:18px;display:flex}.tasks ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.tasks li{color:#344054;background:#f9fafb;border-radius:8px;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:54px;padding:12px;display:grid}.tasks li svg{color:#16a34a}.tasks small{color:#667085;white-space:nowrap;font-size:.78rem}.properties-app{width:min(760px,100% - 32px);padding-top:max(14px, env(safe-area-inset-top,0px));padding-bottom:56px}.properties-heading{gap:8px;padding:28px 0 30px;display:grid}.properties-heading p{color:#6f6f6f;letter-spacing:.1em;text-transform:uppercase;font-size:12px;font-weight:500;line-height:15.6px}.properties-heading h1{color:#202020;max-width:none;font-size:clamp(2.2rem,8vw,4.1rem);font-weight:400;line-height:.96}.property-list{gap:42px;display:grid}.properties-app .villa-card{color:#202020;cursor:pointer;background:#fff;outline:0;display:block;overflow:visible}.properties-app .villa-card:focus-visible{outline-offset:8px;outline:1px solid #20202059}.properties-app .villa-media{aspect-ratio:3/2;cursor:pointer;touch-action:pan-y;-webkit-user-select:none;user-select:none;background:#fff;transition:filter .18s,outline-color .18s,transform .18s;position:relative;overflow:hidden}.properties-app .villa-media:active{cursor:pointer}.properties-app .villa-media img{object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;transition:transform .26s,filter .26s;display:block}.properties-app .villa-media:hover img{transform:scale(1.055)}.properties-app .villa-content{background:#fff;padding:16px 0 0;font-size:14px;line-height:19.6px;position:relative}.properties-app .villa-title-row{display:block}.properties-app .villa-title-row h2{color:#202020;letter-spacing:1px;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;max-width:calc(100% - 38px);margin:0;font-family:inherit;font-size:20px;font-weight:400;line-height:28px;overflow:hidden}.properties-app .heart{color:#202020;cursor:pointer;background:0 0;border:0;place-items:center;width:24px;height:24px;padding:0;display:grid;position:absolute;top:16px;right:16px}.properties-app .heart svg{width:22px;height:22px;display:block;overflow:visible}.properties-app .heart path{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round}.properties-app .heart.is-saved path{fill:currentColor}.properties-app .villa-location{color:#202020;margin:0 0 4px;font-size:14px;line-height:19.6px}.properties-app .villa-meta{color:#6f6f6f;margin:0;padding:0;font-size:14px;line-height:19.6px;display:block}.properties-app .villa-meta span{display:inline}.properties-app .villa-meta span:not(:last-child):after{content:"";vertical-align:middle;background:#6f6f6f;border-radius:50%;width:3px;height:3px;margin:0 8px;display:inline-block}.properties-app .villa-highlights-shell{grid-template-columns:28px minmax(0,1fr) 28px;align-items:center;gap:6px;width:100%;min-height:36px;margin-top:12px;display:grid}.properties-app .villa-highlights{overscroll-behavior-x:contain;scroll-behavior:smooth;scrollbar-width:none;-webkit-overflow-scrolling:touch;cursor:pointer;touch-action:pan-x;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;gap:8px;min-width:0;min-height:34px;margin:0;padding:0;display:flex;overflow:auto hidden}.properties-app .villa-highlights::-webkit-scrollbar{display:none}.properties-app .villa-highlights.is-dragging{cursor:pointer}.properties-app .villa-highlight{color:#202020;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;white-space:nowrap;background:#f7f7f7;flex:none;align-items:center;gap:6px;max-width:min(270px,92%);height:34px;margin:0;padding:4px 10px 4px 6px;font-size:12px;line-height:15.6px;display:inline-flex;overflow:hidden}.properties-app .villa-highlight-icon-frame{flex:0 0 34px;place-items:center;width:34px;height:100%;display:inline-grid;overflow:hidden}.properties-app .villa-highlight-icon{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.properties-app .villa-highlight-label{text-overflow:ellipsis;min-width:0;display:block;overflow:hidden}.properties-app .villa-highlight-nav{color:#202020;cursor:pointer;background:0 0;border:0;border-radius:0;justify-content:center;align-items:center;width:28px;height:34px;padding:0;font-size:27px;font-weight:300;line-height:28px;transition:opacity .16s,color .16s;display:flex;transform:translateY(-2px)}.properties-app .villa-highlight-nav:hover{color:#000}.properties-app .villa-highlight-nav:disabled{opacity:.34;cursor:default}.properties-app .villa-highlight-nav:disabled:hover{color:#202020}.property-detail-app{width:min(760px,100% - 32px);padding-top:max(16px, env(safe-area-inset-top,0px));padding-bottom:56px}.property-back{color:#202020;background:0 0;border:0;align-items:center;gap:8px;min-height:40px;padding:0;font-size:14px;font-weight:400;display:inline-flex}.property-detail-hero{aspect-ratio:3/2;background:#fff;margin-top:12px;overflow:hidden}.property-detail-hero img{object-fit:cover;width:100%;height:100%;display:block}.property-detail-title{color:#202020;gap:4px;padding:18px 0 0;display:grid}.property-detail-title p,.property-detail-title span{color:#6f6f6f;font-size:14px;line-height:19.6px}.property-detail-title h1{color:#202020;letter-spacing:0;text-transform:uppercase;max-width:none;font-size:clamp(2rem,7vw,3.5rem);font-weight:400;line-height:.98}.booking-section{gap:26px;margin-top:30px;display:grid}.booking-panel{gap:12px;display:grid}.booking-kicker{color:#6f6f6f;letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:12px;font-weight:500;line-height:15.6px}.booking-search{z-index:5;color:#161412;background:#fff;justify-content:flex-start;align-items:stretch;width:fit-content;max-width:min(760px,100%);min-height:58px;display:flex;position:relative;box-shadow:0 18px 55px #00000024}.booking-search .search-field,.booking-search .search-submit{color:#6f6961;cursor:pointer;letter-spacing:0;background:#fff;border:0;border-right:1px solid #1614121a;justify-content:center;align-items:center;gap:8px;min-height:58px;padding:0 22px;font-size:13px;font-weight:400;display:inline-flex}.booking-search .search-field strong{min-width:0;color:inherit;text-overflow:ellipsis;white-space:nowrap;font-weight:500;line-height:1.25;overflow:hidden}.booking-search .search-field.is-active,.booking-search .search-field:hover{background:#f6f3ee}.booking-search .date-group.has-selection .search-field strong{color:#171717}.booking-search .search-submit{color:#fff;letter-spacing:.1em;text-transform:uppercase;background:#161412;border-right:0;min-width:132px;font-size:12px;font-weight:500}.booking-search .search-submit:disabled{opacity:.48}.booking-search .date-group{align-items:stretch;display:inline-flex;position:relative}.booking-search .date-arrow{color:#6f6961;background:#fff;place-items:center;min-height:58px;padding:0 4px;display:inline-grid}.booking-search .search-panel{z-index:20;color:#161412;text-align:left;background:#fff;width:min(780px,100vw - 32px);padding:26px 30px 22px;display:none;position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%);box-shadow:0 30px 80px #0000002e}.booking-search .search-panel.is-open{display:grid}.booking-search .date-panel{grid-template-rows:minmax(0,1fr) auto;min-height:490px}.calendar-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;display:grid}.calendar-month{padding:0 28px}.calendar-month+.calendar-month{border-left:1px solid #1614121f}.calendar-head{color:#161412;margin-bottom:18px;font-size:16px;font-weight:400;display:block;position:relative}.calendar-head span{align-items:center;min-height:38px;padding:0 8px;display:inline-grid}.calendar-month-left .calendar-head span{text-align:left}.calendar-month-right .calendar-head,.calendar-month-right .calendar-head span{text-align:right}.calendar-nav{width:38px;height:38px;color:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:22px;font-weight:300;line-height:1;position:absolute;top:0}.calendar-nav[data-calendar-nav=prev]{left:-38px}.calendar-nav[data-calendar-nav=next]{right:-38px}.calendar-nav:disabled{color:#0000;cursor:default}.calendar-week,.calendar-days{text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-week{color:#7f858b;margin-bottom:24px;font-size:15px;font-weight:400}.calendar-week span{aspect-ratio:1;place-items:center;display:grid}.calendar-days{row-gap:12px}.day-button{aspect-ratio:1;color:#242424;clip-path:none;cursor:pointer;background:0 0;border:0;border-radius:0;place-items:center;width:100%;min-width:38px;min-height:0;font-size:17px;font-weight:300;line-height:1;display:grid;position:relative}.day-button.is-muted{pointer-events:none}.day-button.is-past{color:#c6c6c6;cursor:default;text-decoration:line-through}.day-button.is-today:after{content:"";background:currentColor;border-radius:50%;width:3px;height:3px;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.day-button:hover:not(.is-past),.day-button:focus-visible:not(.is-past),.day-button.is-range,.day-button.is-preview-range{background:#e8f2ff}.day-button.is-booked{color:#fff;background:#161412;text-decoration:none}.day-button.is-selected{color:#242424;background:#dbe8f5}.day-button.is-booked.is-selected{color:#242424;background:#c7d9ed}.date-panel.is-selecting-departure .day-button:hover:not(.is-past),.date-panel.is-selecting-departure .day-button:focus-visible:not(.is-past){background:#c7d9ed}.calendar-actions{text-align:right;margin-top:26px}.clear-dates{color:#a7a7a7;letter-spacing:.08em;text-transform:uppercase;background:0 0;border:0;min-height:32px;padding:0 8px;font-size:11px;font-weight:400}.booking-message{color:#7a271a;background:#fff4ed;border:1px solid #b4231826;border-radius:8px;width:fit-content;max-width:100%;padding:10px 12px;font-size:13px;line-height:1.4}.booking-message.success{color:#14532d;background:#f0fdf4;border-color:#16653424}.booked-calendar-shell{gap:14px;display:grid}.booked-calendar-header{justify-content:space-between;align-items:end;gap:14px;display:flex}.booked-calendar-header h2{color:#202020;letter-spacing:0;margin:0;font-size:20px;font-weight:400}.booked-calendar-header p{color:#6f6f6f;font-size:13px;line-height:1.3}.booked-months-scroll{overscroll-behavior:contain;scrollbar-width:thin;background:#fff;border:1px solid #1614121a;max-height:min(640px,68vh);padding:24px 20px;overflow-y:auto}.booked-months-scroll .calendar-grid{grid-template-columns:1fr}.booked-months-scroll .calendar-month{padding:0}.booked-months-scroll .calendar-month+.calendar-month{border-top:1px solid #1614121a;border-left:0;margin-top:34px;padding-top:26px}.booked-months-scroll .calendar-head,.booked-months-scroll .calendar-month-single .calendar-head{text-align:center}.booked-months-scroll .calendar-head span{justify-self:center}.booked-months-scroll .day-button{cursor:default}.booked-range-list{flex-wrap:wrap;gap:8px;display:flex}.booked-range-list p{color:#202020;background:#f7f7f7;margin:0;padding:8px 10px;font-size:12px;line-height:1.3}@media (width<=860px){.auth-shell,.hero,.work-area,.overview,.modules{grid-template-columns:1fr}.auth-shell{place-items:center;min-height:100dvh}.auth-intro{padding-top:18px}.hero{min-height:auto}.hero-copy{padding:18px 0 8px}.status-panel,.module,.tasks,.metric{box-shadow:0 12px 35px #10182812}.work-area{gap:14px}.install-guide-panel{margin-top:min(8vh,70px)}}@media (width<=520px){.app-shell{width:min(100% - 22px,1120px);padding-top:18px}.auth-shell{background-position:50%;width:100%;padding:22px}h1{font-size:3rem}.auth-panel{padding:20px}.app-header,.header-actions{flex-direction:column;align-items:stretch}.icon-text-button,.install-choice{width:100%}.install-landing,.install-guide{padding:22px}.install-stage{gap:36px}.install-guide-panel{gap:18px;margin-top:7vh}.hero-copy p{font-size:1rem}.tasks li{grid-template-columns:22px minmax(0,1fr)}.tasks small{grid-column:2}.properties-app{width:min(100% - 22px,760px);padding-top:max(14px, env(safe-area-inset-top,0px))}.properties-heading{padding:18px 0 24px}.property-list{gap:34px}.properties-app .villa-content{padding:16px}.properties-app .villa-highlights{overflow:auto hidden}.properties-app .villa-highlights-shell{grid-template-columns:minmax(0,1fr)}.properties-app .villa-highlight-nav{display:none}.property-detail-app{width:min(100% - 22px,760px);padding-top:max(14px, env(safe-area-inset-top,0px))}.property-detail-title h1{font-size:2.15rem}.booking-search{flex-direction:column;align-items:stretch;width:100%;min-height:0;display:flex;box-shadow:0 18px 46px #00000024}.booking-search .date-group{border-bottom:1px solid #1614121a;grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr);display:grid}.booking-search .search-field,.booking-search .search-submit{border-right:0;width:100%;min-width:0;min-height:56px;padding:0 17px;font-size:14px}.booking-search .date-group .search-field[data-date-focus=arrival]{padding-right:4px}.booking-search .date-group .search-field[data-date-focus=departure]{padding-left:4px}.booking-search .date-arrow{width:34px;min-width:34px;min-height:56px}.booking-search .search-submit{min-height:45px;font-size:12px}.booking-search .date-panel{z-index:100;width:100vw;max-width:none;height:100dvh;min-height:0;max-height:none;padding:66px 18px 22px;position:fixed;inset:0;overflow-y:auto;transform:none}.booking-search .calendar-grid{grid-template-columns:1fr;gap:26px;width:min(339px,100%);margin:0 auto}.booking-search .calendar-month{width:100%;padding:0}.booking-search .calendar-month+.calendar-month{border-top:1px solid #1614121a;border-left:0;padding-top:8px}.booking-search .calendar-head{text-align:center;grid-template-columns:1fr;align-items:center;margin-bottom:12px;display:grid}.booking-search .calendar-head span,.booking-search .calendar-month-left .calendar-head span,.booking-search .calendar-month-right .calendar-head span{text-align:center;justify-self:center}.booking-search .calendar-nav{color:#6f6961;place-items:center;display:grid;position:static}.booking-search .calendar-nav:disabled{color:#0000}.booking-search .calendar-week{margin-bottom:8px;font-size:12px}.booking-search .calendar-days{row-gap:4px}.booking-search .calendar-grid button,.booking-search .day-button{min-width:0;min-height:34px;font-size:14px}.booking-search .calendar-actions{text-align:right;background:#fff;width:min(339px,100%);margin:24px auto 0;padding-top:16px;position:sticky;bottom:0;right:0}.booked-calendar-header{align-items:start;display:grid}.booked-months-scroll{max-height:min(560px,62vh);padding:20px 14px}}
