@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=Montserrat:wght@400;500;600;700&display=swap";:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}body{margin:0}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}*{box-sizing:border-box}.site-frame{background:#9a9b7a;min-height:100vh;padding:38px}.home{color:#f7efe6;background:#8b6b52;min-height:calc(100vh - 76px);padding:42px 5.5% 28px}.header{justify-content:space-between;align-items:center;max-width:1400px;margin:0 auto;display:flex}.brand{align-items:center;gap:13px;display:flex}.brand-mark{color:#e5c28b;border:1px solid #d9b77e;place-items:center;width:48px;height:48px;font-family:Cormorant Garamond,serif;font-size:30px;display:grid}.brand-name{letter-spacing:4px;font-family:Cormorant Garamond,serif;font-size:29px;line-height:.9}.brand-subtitle{letter-spacing:5px;margin-top:7px;font-family:Montserrat,sans-serif;font-size:8px}.nav{letter-spacing:1.5px;align-items:center;gap:36px;font-family:Montserrat,sans-serif;font-size:12px;display:flex}.nav a{color:#fff8f0;text-decoration:none}.book-button{background:#d3a85f;border-radius:30px;padding:15px 25px;font-weight:700;transition:transform .2s,opacity .2s;color:#241b15!important}.book-button:hover{opacity:.92;transform:translateY(-2px)}.hero{max-width:1400px;margin:65px auto 0}.hero-heading{grid-template-columns:1.5fr .8fr;align-items:end;gap:70px;margin-bottom:28px;display:grid}.hero h1{letter-spacing:-1.5px;color:#0f0c0a;margin:0;font-family:Cormorant Garamond,serif;font-size:clamp(48px,4.8vw,78px);font-weight:400;line-height:.88}.hero-description{align-items:center;gap:28px;padding-bottom:8px;display:flex}.gold-line{background:#d9b77e;flex-shrink:0;width:2px;height:80px;display:block}.hero-description p{max-width:360px;margin:0;font-family:Cormorant Garamond,serif;font-size:23px;line-height:1.2}.hero-photo{background:#6f523f;width:100%;height:min(48vw,600px);min-height:390px;overflow:hidden}.hero-photo img{object-fit:cover;width:100%;height:100%;display:block}.home-footer{justify-content:center;align-items:center;gap:28px;margin-top:25px;display:flex}.home-footer span{background:#d9b77e;width:80px;height:1px}.home-footer p{color:#e2bd80;letter-spacing:5px;margin:0;font-family:Montserrat,sans-serif;font-size:10px}@media (width<=800px){.site-frame{padding:15px}.home{min-height:calc(100vh - 30px);padding:28px 24px}.header{align-items:flex-start}.brand-name{font-size:23px}.nav{gap:12px;font-size:9px}.book-button{padding:12px 15px}.hero{margin-top:55px}.hero-heading{grid-template-columns:1fr;gap:30px}.hero h1{font-size:clamp(42px,11vw,60px)}.hero-description{max-width:500px}.hero-photo{min-height:340px}.home-footer span{width:30px}.home-footer p{letter-spacing:3px;font-size:8px}}.booking-page{color:#211914;background:#f3eee7;min-height:100vh;padding-bottom:90px}.booking-header-wrap{background:#8b6b52;padding:35px 6%}.booking-header-wrap .header{max-width:1400px}.brand{color:inherit;text-decoration:none}.booking-intro{max-width:1400px;margin:0 auto;padding:80px 6% 40px}.booking-eyebrow{letter-spacing:5px;color:#9b7441;margin:0 0 12px;font-family:Montserrat,sans-serif;font-size:10px;font-weight:600}.booking-intro h1{margin:0;font-family:Cormorant Garamond,serif;font-size:clamp(55px,6vw,90px);font-weight:400;line-height:.95}.booking-intro-text{text-align:center;color:#68594f;max-width:560px;margin:22px auto 0;font-family:Cormorant Garamond,serif;font-size:22px;line-height:1.35}.search-panel{background:#fff;grid-template-columns:1fr 1fr .8fr auto;gap:10px;max-width:1230px;margin:10px auto 75px;padding:18px;display:grid;box-shadow:0 15px 40px #3a2a1e17}.search-field{border-right:1px solid #ddd3c9;padding:7px 15px}.search-field label{letter-spacing:2px;color:#8b6b52;margin-bottom:7px;font-family:Montserrat,sans-serif;font-size:9px;font-weight:700;display:block}.search-field input,.search-field select{color:#2b211b;background:0 0;border:0;outline:none;width:100%;font-family:Montserrat,sans-serif;font-size:13px}.search-button{color:#fff;letter-spacing:1.5px;cursor:pointer;background:#8b6b52;border:0;padding:0 30px;font-family:Montserrat,sans-serif;font-size:10px;font-weight:700}.apartments-section{max-width:1400px;margin:0 auto;padding:0 6%}.apartments-heading{justify-content:space-between;align-items:end;margin-bottom:30px;display:flex}.apartments-heading p{letter-spacing:4px;color:#9b7441;margin:0 0 7px;font-family:Montserrat,sans-serif;font-size:9px;font-weight:600}.apartments-heading h2{margin:0;font-family:Cormorant Garamond,serif;font-size:43px;font-weight:400}.apartments-heading>span{letter-spacing:2px;color:#81746b;font-family:Montserrat,sans-serif;font-size:9px}.apartment-grid{grid-template-columns:repeat(3,1fr);gap:25px;display:grid}.apartment-card{background:#fff}.apartment-image-placeholder{aspect-ratio:4/3;color:#ffffffa6;letter-spacing:3px;background:#9c806b;place-items:center;font-family:Montserrat,sans-serif;font-size:9px;display:grid}.apartment-info{padding:25px}.apartment-location{letter-spacing:2px;text-transform:uppercase;color:#9b7441;margin:0 0 8px;font-family:Montserrat,sans-serif;font-size:8px}.apartment-info h3{margin:0 0 16px;font-family:Cormorant Garamond,serif;font-size:29px;font-weight:500}.apartment-details{color:#786b62;gap:18px;padding-bottom:22px;font-family:Montserrat,sans-serif;font-size:10px;display:flex}.apartment-bottom{border-top:1px solid #eee5dc;justify-content:space-between;align-items:center;padding-top:18px;display:flex}.apartment-bottom strong{font-family:Cormorant Garamond,serif;font-size:17px;font-weight:600}.apartment-bottom button{letter-spacing:1px;cursor:pointer;color:#8b6b52;background:0 0;border:0;font-family:Montserrat,sans-serif;font-size:9px;font-weight:700}@media (width<=800px){.booking-header-wrap{padding:25px 24px}.booking-intro{padding:55px 25px 30px}.search-panel{grid-template-columns:1fr;margin:10px 25px 55px}.search-field{border-bottom:1px solid #ddd3c9;border-right:0;padding:13px}.search-button{min-height:55px}.apartments-section{padding:0 25px}.apartment-grid{grid-template-columns:1fr}.apartments-heading{align-items:flex-start;gap:20px}}.apartment-subtitle{color:#77685f;margin:-8px 0 18px;font-family:Cormorant Garamond,serif;font-size:17px}.apartment-view{letter-spacing:1px;text-transform:uppercase;color:#9b7441;margin:0 0 20px;font-family:Montserrat,sans-serif;font-size:9px;font-weight:600}.empty-message{color:#76675d;padding:30px 0;font-family:Cormorant Garamond,serif;font-size:22px}.admin-page{color:#241b16;background:#f2ede6;min-height:100vh}.admin-topbar{color:#fff;background:#8b6b52;justify-content:space-between;align-items:center;min-height:95px;padding:20px 5%;display:flex}.admin-logo{color:#fff;align-items:center;gap:12px;text-decoration:none;display:flex}.admin-logo>span{color:#e5c28b;border:1px solid #d9b77e;place-items:center;width:45px;height:45px;font-family:Cormorant Garamond,serif;font-size:28px;display:grid}.admin-logo div{flex-direction:column;display:flex}.admin-logo strong{letter-spacing:3px;font-family:Cormorant Garamond,serif;font-size:25px;font-weight:500;line-height:1}.admin-logo small{letter-spacing:4px;margin-top:5px;font-family:Montserrat,sans-serif;font-size:7px}.admin-top-actions{letter-spacing:1.5px;align-items:center;gap:25px;font-family:Montserrat,sans-serif;font-size:9px;display:flex}.admin-top-actions a{color:#fff;text-decoration:none}.admin-top-actions>span{color:#e8c68e;border:1px solid #ffffff4d;padding:10px 15px}.admin-container{max-width:1450px;margin:0 auto;padding:65px 5% 100px}.admin-heading{margin-bottom:45px}.admin-heading>p,.admin-section-title p{letter-spacing:3px;color:#a07b48;margin:0 0 8px;font-family:Montserrat,sans-serif;font-size:9px;font-weight:700}.admin-heading h1{margin:0;font-family:Cormorant Garamond,serif;font-size:clamp(48px,5vw,70px);font-weight:400;line-height:1}.admin-heading>span{color:#74665d;margin-top:15px;font-family:Cormorant Garamond,serif;font-size:20px;display:block}.admin-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:30px;display:grid}.admin-form-card,.admin-list-card{background:#fff;padding:35px;box-shadow:0 12px 35px #36261b0f}.admin-section-title{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:30px;display:flex}.admin-section-title h2{margin:0;font-family:Cormorant Garamond,serif;font-size:35px;font-weight:500}.admin-section-title>strong{color:#8b6b52;background:#f0e8de;border-radius:50%;place-items:center;width:42px;height:42px;font-family:Montserrat,sans-serif;font-size:11px;display:grid}.admin-cancel{letter-spacing:1px;color:#8b6b52;cursor:pointer;background:0 0;border:0;font-family:Montserrat,sans-serif;font-size:9px;font-weight:700}.admin-form{flex-direction:column;gap:20px;display:flex}.admin-form label{letter-spacing:1.4px;color:#6f5c4f;flex-direction:column;gap:8px;font-family:Montserrat,sans-serif;font-size:9px;font-weight:700;display:flex}.admin-form input,.admin-form textarea{color:#2b211b;letter-spacing:0;background:#fcfaf7;border:1px solid #ded5cc;outline:none;width:100%;padding:14px 15px;font-family:Montserrat,sans-serif;font-size:13px;font-weight:400;transition:border-color .2s}.admin-form textarea{resize:vertical;line-height:1.5}.admin-form input:focus,.admin-form textarea:focus{border-color:#9f7c59}.admin-form label>small{letter-spacing:0;color:#988b82;font-size:8px;font-weight:400}.admin-form-row{grid-template-columns:1fr 1fr;gap:15px;display:grid}.publish-control{cursor:pointer;background:#fcfaf7;border:1px solid #ded5cc;align-items:center;padding:15px;flex-direction:row!important}.publish-control input{width:18px;height:18px}.publish-control>span{flex-direction:column;gap:4px;display:flex}.publish-control strong{color:#46382f}.publish-control small{letter-spacing:0;color:#8a7c73;font-size:9px;font-weight:400}.admin-photo-coming{background:#f7f1e9;border:1px dashed #cdbdab;flex-direction:column;gap:6px;padding:24px;display:flex}.admin-photo-coming p{letter-spacing:2px;color:#9b7441;margin:0;font-family:Montserrat,sans-serif;font-size:8px;font-weight:700}.admin-photo-coming strong{font-family:Cormorant Garamond,serif;font-size:22px;font-weight:500}.admin-photo-coming span{color:#80736a;font-family:Montserrat,sans-serif;font-size:9px;line-height:1.5}.admin-save{color:#fff;letter-spacing:1.5px;cursor:pointer;background:#8b6b52;border:0;min-height:55px;font-family:Montserrat,sans-serif;font-size:10px;font-weight:700}.admin-message{color:#795f48;margin:0;font-family:Montserrat,sans-serif;font-size:10px}.admin-empty{text-align:center;color:#75675e;padding:45px 10px;font-family:Cormorant Garamond,serif;font-size:19px}.admin-empty p{margin-bottom:0}.admin-apartment-list{flex-direction:column;gap:15px;display:flex}.admin-apartment{border:1px solid #e7ded5;grid-template-columns:110px 1fr;gap:20px;padding:15px;display:grid}.admin-apartment-photo{color:#ffffffb3;background:#9b806b;place-items:center;min-height:115px;font-family:Cormorant Garamond,serif;font-size:35px;display:grid}.admin-apartment-info{min-width:0}.admin-apartment-name{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.admin-apartment-name h3{margin:2px 0 3px;font-family:Cormorant Garamond,serif;font-size:24px;font-weight:500}.admin-apartment-name p{color:#8a7c73;margin:0;font-family:Montserrat,sans-serif;font-size:9px}.status-published,.status-hidden{letter-spacing:1px;padding:6px 8px;font-family:Montserrat,sans-serif;font-size:7px;font-weight:700}.status-published{color:#596850;background:#e8eee4}.status-hidden{color:#856d60;background:#eee8e4}.admin-apartment-meta{flex-wrap:wrap;gap:7px;margin:18px 0;display:flex}.admin-apartment-meta span{color:#75665c;background:#f4efe9;padding:6px 8px;font-family:Montserrat,sans-serif;font-size:8px}.admin-apartment-actions{gap:10px;display:flex}.admin-apartment-actions button{letter-spacing:1px;color:#745b47;cursor:pointer;background:0 0;border:1px solid #cbb9a9;padding:9px 14px;font-family:Montserrat,sans-serif;font-size:8px;font-weight:700}.admin-apartment-actions .delete-button{color:#9a6254;border-color:#dfc8c0}@media (width<=950px){.admin-layout{grid-template-columns:1fr}}@media (width<=600px){.admin-container{padding:45px 20px 70px}.admin-form-card,.admin-list-card{padding:25px 20px}.admin-form-row{grid-template-columns:1fr}.admin-apartment{grid-template-columns:75px 1fr;gap:12px}.admin-apartment-photo{min-height:90px}.admin-apartment-name{flex-direction:column}}.apartment-card-photo{aspect-ratio:4/3;background:#9c806b;width:100%;overflow:hidden}.apartment-card-photo img{object-fit:cover;width:100%;height:100%;transition:transform .5s;display:block}.apartment-card:hover .apartment-card-photo img{transform:scale(1.025)}.admin-apartment-block{background:#fff;border:1px solid #e7ded5}.admin-apartment-block .admin-apartment{border:0}.admin-apartment-photo-real{overflow:hidden}.admin-apartment-photo-real img{object-fit:cover;width:100%;height:100%;display:block}.manage-photos-button{color:#fff!important;background:#8b6b52!important;border-color:#8b6b52!important}.photo-manager{background:#faf7f3;border-top:1px solid #e7ded5;padding:25px}.photo-manager-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px;display:flex}.photo-manager-heading p{letter-spacing:2px;color:#9b7441;margin:0 0 5px;font-family:Montserrat,sans-serif;font-size:8px;font-weight:700}.photo-manager-heading h3{margin:0;font-family:Cormorant Garamond,serif;font-size:27px;font-weight:500}.photo-manager-heading>span{letter-spacing:1px;color:#7a6250;background:#eee5dc;padding:7px 10px;font-family:Montserrat,sans-serif;font-size:8px;font-weight:700}.photo-upload-box{background:#fff;border:1px dashed #cdbdab;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:15px;display:grid}.photo-file-button{letter-spacing:1px;color:#6e5543;cursor:pointer;background:#efe6dc;justify-content:center;align-items:center;padding:12px 15px;font-family:Montserrat,sans-serif;font-size:8px;font-weight:700;display:inline-flex}.photo-file-button input{display:none}.photo-selection-info{color:#8a7c73;min-width:0;font-family:Montserrat,sans-serif;font-size:8px}.photo-upload-button{color:#fff;letter-spacing:1px;cursor:pointer;background:#8b6b52;border:0;min-height:40px;padding:0 16px;font-family:Montserrat,sans-serif;font-size:8px;font-weight:700}.photo-upload-button:disabled{opacity:.45;cursor:not-allowed}.photo-manager-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:110px;display:flex}.photo-manager-empty strong{font-family:Cormorant Garamond,serif;font-size:20px;font-weight:500}.photo-manager-empty span{color:#8a7d74;font-family:Montserrat,sans-serif;font-size:8px}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:20px;display:grid}.photo-item{background:#fff;border:1px solid #e1d7ce;min-width:0}.photo-item-image{aspect-ratio:4/3;background:#8f7562;width:100%;position:relative;overflow:hidden}.photo-item-image img{object-fit:cover;width:100%;height:100%;display:block}.cover-badge{color:#2c2119;letter-spacing:1px;background:#d4aa65;padding:7px 9px;font-family:Montserrat,sans-serif;font-size:7px;font-weight:700;position:absolute;top:10px;left:10px}.photo-item-actions{align-items:center;gap:6px;min-height:50px;padding:8px;display:flex}.photo-item-actions button{letter-spacing:.5px;color:#735b48;cursor:pointer;background:0 0;border:1px solid #d2c3b7;padding:7px 8px;font-family:Montserrat,sans-serif;font-size:7px;font-weight:700}.photo-item-actions button:disabled{opacity:.25;cursor:default}.photo-order-buttons{gap:4px;margin-left:auto;display:flex}.photo-order-buttons button{min-width:30px;font-size:12px}.photo-delete-button{color:#9a6254!important;border-color:#dfc8c0!important}@media (width<=700px){.photo-upload-box{grid-template-columns:1fr}.photo-file-button,.photo-upload-button{width:100%}.photo-grid{grid-template-columns:1fr}.photo-item-actions{flex-wrap:wrap}}.detail-gallery{width:100%;min-width:0;overflow:hidden}.detail-main-photo{background:#e8dfd6;width:100%;overflow:hidden}.detail-main-photo img{object-fit:cover;width:100%;max-width:100%;height:auto;max-height:720px;display:block}.detail-thumbnails{gap:10px;width:100%;min-width:0;margin-top:12px;display:flex;overflow-x:auto}.detail-thumbnail{cursor:pointer;background:0 0;border:1px solid #ddd3c9;flex:0 0 90px;width:90px;height:70px;padding:0;overflow:hidden}.detail-thumbnail img{object-fit:cover;width:100%;height:100%;display:block}.detail-thumbnail.active{border-color:#8b6b52}.detail-page{color:#211914;background:#f3eee7;min-height:100vh}.detail-container{width:min(1320px,100% - 80px);margin:0 auto;padding:42px 0 100px}.detail-back{color:#8b6b52;letter-spacing:1.5px;margin-bottom:28px;font-family:Montserrat,sans-serif;font-size:9px;font-weight:700;text-decoration:none;display:inline-block}.detail-status{color:#68594f;width:min(1320px,100% - 80px);margin:0 auto;padding:80px 0;font-family:Cormorant Garamond,serif;font-size:24px}.detail-container .detail-gallery{margin-bottom:55px}.detail-container .detail-main-photo{background:#ded4ca}.detail-container .detail-main-photo img{object-fit:cover;width:100%;height:clamp(420px,55vw,680px);max-height:680px}.detail-container .detail-thumbnails{margin-top:12px;padding-bottom:4px}.detail-container .detail-thumbnail{opacity:.72;border:1px solid #0000;flex:0 0 105px;width:105px;height:76px;transition:opacity .2s,border-color .2s}.detail-container .detail-thumbnail:hover,.detail-container .detail-thumbnail.active{opacity:1}.detail-container .detail-thumbnail.active{border-color:#8b6b52}.detail-intro{text-align:center;max-width:980px;margin:0 auto 70px}.detail-intro .booking-eyebrow{margin-bottom:12px}.detail-intro h1{color:#211914;margin:0;font-family:Cormorant Garamond,serif;font-size:clamp(52px,6vw,82px);font-weight:400;line-height:.95}.detail-subtitle{color:#77685f;max-width:650px;margin:16px auto 0;font-family:Cormorant Garamond,serif;font-size:21px;line-height:1.4}.detail-facts{border-top:1px solid #d8ccc1;border-bottom:1px solid #d8ccc1;grid-template-columns:repeat(4,minmax(0,1fr));max-width:850px;margin:38px auto 0;padding:24px 0;display:grid}.detail-fact{border-right:1px solid #d8ccc1;flex-direction:column;gap:7px;min-width:0;padding:0 22px;display:flex}.detail-fact:last-child{border-right:0}.detail-fact span{letter-spacing:2px;color:#9b7441;font-family:Montserrat,sans-serif;font-size:8px;font-weight:700}.detail-fact strong{color:#33271f;font-family:Cormorant Garamond,serif;font-size:19px;font-weight:500;line-height:1.2}.detail-about{max-width:720px;margin:42px auto 0}.detail-eyebrow{letter-spacing:3px;color:#9b7441;margin:0 0 12px;font-family:Montserrat,sans-serif;font-size:9px;font-weight:700}.detail-description{color:#62544b;margin:0;font-family:Cormorant Garamond,serif;font-size:22px;line-height:1.55}.detail-booking-layout{grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);align-items:start;gap:75px;max-width:1120px;margin:0 auto;display:grid}.detail-amenities-column{min-width:0;padding-top:15px}.detail-amenities-column h2{color:#211914;margin:0 0 30px;font-family:Cormorant Garamond,serif;font-size:40px;font-weight:400;line-height:1}.amenities-grid{border-top:1px solid #ded4ca;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;display:grid}.amenity-item{color:#5f5148;border-bottom:1px solid #ded4ca;align-items:center;gap:12px;min-height:58px;font-family:Montserrat,sans-serif;font-size:10px;line-height:1.4;display:flex}.amenity-mark{color:#8b6b52;border:1px solid #c9b79f;border-radius:50%;flex:none;place-items:center;width:22px;height:22px;font-size:10px;display:grid}.detail-muted{color:#77685f;font-family:Cormorant Garamond,serif;font-size:19px}.detail-rules-summary{margin-top:55px}.detail-rules-grid{border-top:1px solid #ded4ca;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.detail-rules-grid p{border-bottom:1px solid #ded4ca;flex-direction:column;gap:5px;min-height:72px;margin:0;padding:16px 15px 16px 0;display:flex}.detail-rules-grid p:nth-child(odd){margin-right:20px}.detail-rules-grid strong{letter-spacing:1.5px;color:#9b7441;font-family:Montserrat,sans-serif;font-size:8px;font-weight:700}.detail-rules-grid span{color:#4e4037;font-family:Cormorant Garamond,serif;font-size:17px}.detail-availability-column{background:#fff;min-width:0;padding:32px;box-shadow:0 18px 45px #3a2a1e17}.detail-price-heading{border-bottom:1px solid #e4dad0;margin-bottom:25px;padding-bottom:22px}.detail-price-heading>p{letter-spacing:2px;color:#9b7441;margin:0 0 6px;font-family:Montserrat,sans-serif;font-size:8px;font-weight:700}.detail-price-heading>div{align-items:baseline;gap:7px;display:flex}.detail-price-heading strong{color:#2d221c;font-family:Cormorant Garamond,serif;font-size:31px;font-weight:500}.detail-price-heading span{color:#82746b;font-family:Montserrat,sans-serif;font-size:9px}.detail-house-rules{border-top:1px solid #d8ccc1;max-width:1120px;margin:65px auto 0;padding-top:25px}.detail-house-rules details{width:100%}.detail-house-rules summary{letter-spacing:1.5px;color:#8b6b52;cursor:pointer;width:fit-content;font-family:Montserrat,sans-serif;font-size:9px;font-weight:700}.detail-house-rules .house-rules{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px;margin-top:25px;display:grid}.detail-house-rules .house-rules p{color:#65574e;border-bottom:1px solid #ded4ca;margin:0;padding:14px 0;font-family:Cormorant Garamond,serif;font-size:17px;line-height:1.4}@media (width<=950px){.detail-container{width:min(100% - 50px,1320px)}.detail-booking-layout{grid-template-columns:1fr;gap:50px}.detail-availability-column{width:100%;max-width:600px}}@media (width<=700px){.detail-container{width:calc(100% - 30px);padding-top:25px;padding-bottom:70px}.detail-back{margin-bottom:20px}.detail-container .detail-gallery{margin-bottom:42px}.detail-container .detail-main-photo img{height:65vw;min-height:280px}.detail-intro{margin-bottom:50px}.detail-intro h1{font-size:clamp(45px,14vw,65px)}.detail-subtitle{font-size:19px}.detail-facts{grid-template-columns:repeat(2,1fr)}.detail-fact{border-bottom:1px solid #d8ccc1;border-right:0;justify-content:center;min-height:80px;padding:15px}.detail-fact:nth-child(odd){border-right:1px solid #d8ccc1}.detail-fact:nth-last-child(-n+2){border-bottom:0}.detail-about{margin-top:35px}.detail-description{font-size:20px}.detail-booking-layout{gap:40px}.detail-amenities-column h2{font-size:34px}.amenities-grid,.detail-rules-grid{grid-template-columns:1fr}.detail-rules-grid p:nth-child(odd){margin-right:0}.detail-availability-column{padding:25px 20px}.detail-house-rules .house-rules{grid-template-columns:1fr}}.detail-availability-column .detail-booking-card{width:100%;box-shadow:none;background:0 0;margin:0;padding:0}.detail-booking-card .detail-booking-price{display:none}.availability-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;width:100%;display:grid}.availability-field{flex-direction:column;gap:8px;min-width:0;display:flex}.availability-field:last-child{grid-column:1/-1}.availability-field>span{letter-spacing:1.5px;color:#8b6b52;font-family:Montserrat,sans-serif;font-size:8px;font-weight:700;display:block}.availability-field input,.availability-field select{color:#2b211b;cursor:pointer;background:#fcfaf7;border:1px solid #ddd3c9;border-radius:0;outline:none;width:100%;height:48px;margin:0;padding:0 13px;font-family:Montserrat,sans-serif;font-size:11px;font-weight:400;line-height:normal;display:block}.availability-field input{min-width:0}.availability-field input[type=date]{appearance:auto}.availability-field input[type=date] ::-webkit-calendar-picker-indicator{opacity:1;cursor:pointer;display:block}.availability-field select{appearance:auto;-webkit-appearance:menulist}.availability-field input:focus,.availability-field select:focus{border-color:#8b6b52}.detail-check-button{color:#fff;letter-spacing:1.5px;cursor:pointer;background:#8b6b52;border:0;border-radius:0;width:100%;min-height:52px;margin-top:20px;padding:14px 18px;font-family:Montserrat,sans-serif;font-size:9px;font-weight:700;transition:opacity .2s,transform .2s}.detail-check-button:hover:not(:disabled){opacity:.92;transform:translateY(-1px)}.detail-check-button:disabled{opacity:.55;cursor:wait}.detail-booking-note{text-align:center;letter-spacing:.3px;color:#91847b;margin:18px 0 0;font-family:Montserrat,sans-serif;font-size:8px;line-height:1.5}.availability-message{margin-top:18px;padding:13px 14px;font-family:Montserrat,sans-serif;font-size:9px;line-height:1.5}.availability-error,.availability-unavailable{color:#875d4e;background:#f5ebe6}.availability-result{border-top:1px solid #e4dad0;margin-top:22px;padding-top:22px}.availability-success{letter-spacing:.8px;color:#61705a;margin-bottom:18px;font-family:Montserrat,sans-serif;font-size:18px;font-weight:700;line-height:1.4}.availability-price-summary{flex-direction:column;gap:14px;display:flex}.availability-price-summary>div{color:#75685f;justify-content:space-between;align-items:center;gap:20px;font-family:Montserrat,sans-serif;font-size:9px;display:flex}.availability-price-summary strong{color:#2d221c;flex-shrink:0;font-family:Cormorant Garamond,serif;font-size:18px;font-weight:600}.availability-total{border-top:1px solid #e4dad0;padding-top:14px}.availability-total>span{letter-spacing:1.5px;font-weight:700}.availability-total strong{font-size:22px}.availability-continue-button{margin-top:20px}@media (width<=500px){.availability-fields{grid-template-columns:1fr}.availability-field:last-child{grid-column:auto}.availability-field input,.availability-field select{height:50px}}:root{--regal-sage:#7f8f78;--regal-sage-dark:#65745f;--regal-sage-deep:#52604d;--regal-sage-soft:#dfe5da;--regal-sage-pale:#edf0e9;--regal-brown:#98775f;--regal-brown-dark:#755744;--regal-brown-soft:#b99b84;--regal-brown-pale:#d8c5b6;--regal-gold:#d8a955;--regal-text:#17120f;--regal-text-soft:#332820;--regal-muted:#4d4037}.home{background:var(--regal-brown);color:var(--regal-text)}.home .brand-name,.home .nav>a:not(.book-button),.hero-heading h1,.home-footer,.home-footer p{color:var(--regal-text)}.home .brand-subtitle{color:#3f3027}.home .nav>a:not(.book-button):hover{color:#000}.home .book-button{background:var(--regal-gold);color:var(--regal-text)!important}.hero-description p{color:var(--regal-text-soft)}.hero-description .gold-line{background:#6c4f3c}.hero-photo{z-index:1;background:var(--regal-sage);padding:0;position:relative;box-shadow:0 22px 55px #20181233}.hero-photo:before{content:"";z-index:-1;background:var(--regal-sage-dark);opacity:.65;width:82px;height:82px;position:absolute;top:-18px;right:-18px}.home-footer span{background:#5f493a}.booking-page{background:var(--regal-brown);color:var(--regal-text)}.booking-page .booking-header-wrap,.booking-page .header{background:var(--regal-sage)}.booking-page .brand-name,.booking-page .nav>a:not(.book-button){color:var(--regal-text)}.booking-page .brand-subtitle,.booking-page .brand-mark{color:#3f3027}.booking-page .brand-mark{border-color:#5d493b}.booking-page .book-button{background:var(--regal-gold);color:var(--regal-text)!important}.booking-page .booking-eyebrow{color:#4f392b}.booking-page .booking-intro h1,.booking-page .apartments-heading h2{color:var(--regal-text)}.booking-page .booking-intro-text{color:var(--regal-text-soft)}.booking-page .search-panel{background:var(--regal-sage-soft);border:1px solid #697762;box-shadow:0 18px 45px #20181229}.booking-page .search-field{background:var(--regal-sage-soft);border-color:#aeb9a8;transition:background .2s,box-shadow .2s}.booking-page .search-field span,.booking-page .search-field label{color:var(--regal-text)}.booking-page .search-field input,.booking-page .search-field select{color:var(--regal-text);cursor:pointer}.booking-page .search-field input:focus,.booking-page .search-field select:focus{outline:none}.booking-page .search-field:focus-within{box-shadow:inset 0 -3px 0 var(--regal-brown-dark);background:#d4dccf}.booking-page .search-field:focus-within>span{color:var(--regal-text)}.booking-page .search-field input[type=date]{appearance:auto;color:var(--regal-text);cursor:pointer;font-weight:500}.booking-page .search-field input[type=date]::-webkit-calendar-picker-indicator{opacity:1;cursor:pointer;filter:brightness(0)saturate();display:block}.booking-page .search-button{background:var(--regal-brown-dark);border-color:var(--regal-brown-dark);color:#fff}.booking-page .search-button:hover:not(:disabled){background:#5e4435}.booking-page .apartment-card{background:var(--regal-sage-soft);border-color:#697762;box-shadow:0 14px 35px #20181224}.booking-page .apartment-card:hover{border-color:var(--regal-sage-dark);box-shadow:0 20px 45px #20181233}.booking-page .apartment-info h3,.booking-page .apartment-details,.booking-page .apartment-bottom strong{color:var(--regal-text)}.booking-page .apartment-location,.booking-page .apartment-view{color:#4f392b}.booking-page .apartment-bottom{border-top-color:#aeb9a8}.booking-page .apartment-bottom button{color:#493426}.booking-page .empty-message{background:var(--regal-sage-soft);color:var(--regal-text);border-color:#697762}.admin-page{background:var(--regal-sage);color:var(--regal-text)}.admin-topbar{background:var(--regal-brown);color:var(--regal-text)}.admin-logo,.admin-top-actions a{color:var(--regal-text)}.admin-logo>span{color:#3f3027;border-color:#5d493b}.admin-top-actions>span{color:var(--regal-text);border-color:#17120f47}.admin-heading h1,.admin-section-title h2{color:var(--regal-text)}.admin-heading>p,.admin-section-title>div>p{color:#4f392b}.admin-heading>span{color:var(--regal-text-soft)}.admin-form-card,.admin-list-card{background:var(--regal-sage-soft);border:1px solid #697762;box-shadow:0 18px 50px #20181229}.admin-form-card .admin-section-title{background:var(--regal-sage);border-bottom:1px solid #697762;margin:-30px -30px 28px;padding:30px}.admin-list-card>.admin-section-title>strong{background:var(--regal-brown);min-width:54px;height:54px;color:var(--regal-text);border:0;border-radius:50%;justify-content:center;align-items:center;padding:0 16px;display:inline-flex}.admin-form label{color:var(--regal-text)}.admin-form input,.admin-form textarea,.admin-form select{color:var(--regal-text);background:#d5ddcf;border-color:#aab5a4}.admin-form input:focus,.admin-form textarea:focus,.admin-form select:focus{border-color:var(--regal-brown-dark);background:#cdd7c7;outline:none;box-shadow:0 0 0 3px #75574429}.publish-control{background:#d0d9ca;border-color:#aab5a4}.publish-control strong,.publish-control small{color:var(--regal-text)}.admin-save,.photo-upload-button:not(:disabled){background:var(--regal-brown-dark);border-color:var(--regal-brown-dark);color:#fff}.admin-save:hover,.photo-upload-button:not(:disabled):hover{background:#5e4435}.admin-apartment,.admin-apartment-block{background:#d5ddcf;border-color:#aab5a4}.admin-apartment-name h3,.admin-apartment-name p{color:var(--regal-text)}.status-published{background:var(--regal-sage);color:var(--regal-text);border-color:#697762}.status-hidden,.admin-apartment-meta span{background:var(--regal-brown-pale);color:var(--regal-text)}.admin-apartment-actions button:first-child{background:var(--regal-sage-soft);color:var(--regal-text);border-color:#697762}.admin-apartment-actions button:first-child:hover{background:var(--regal-sage);color:var(--regal-text)}.admin-apartment-actions .manage-photos-button{background:var(--regal-brown-dark)!important;border-color:var(--regal-brown-dark)!important;color:#fff!important}.admin-apartment-actions .manage-photos-button:hover{background:#5e4435!important}.photo-manager{background:var(--regal-sage);border-color:#697762}.photo-upload-box{background:var(--regal-sage-soft);border-color:#697762}.photo-file-button{background:var(--regal-brown-pale);color:var(--regal-text)}.admin-cancel{color:var(--regal-text);border-color:#697762}.detail-page .booking-header-wrap,.detail-page .header{background:var(--regal-sage)}.detail-page{background:var(--regal-brown);color:var(--regal-text)}.detail-back,.detail-house-rules summary,.detail-intro h1{color:var(--regal-text)}.detail-intro .detail-eyebrow,.detail-about .detail-eyebrow,.detail-amenities-column .detail-eyebrow{color:#4f392b}.detail-subtitle,.detail-description{color:var(--regal-text-soft)}.detail-facts{background:var(--regal-brown-soft);border-top-color:#697762;border-bottom-color:#697762}.detail-facts>div{background:0 0;border-color:#697762}.detail-facts>div:nth-child(2n){background:#ffffff14}.detail-facts span,.detail-facts small,.detail-facts strong,.detail-facts p{color:var(--regal-text)}.detail-amenities-column{background:var(--regal-sage-soft);border:1px solid #697762;padding:42px}.detail-amenities-column h2,.amenity-item{color:var(--regal-text)}.amenities-grid,.amenity-item{border-color:#aab5a4}.amenity-item{font-weight:500}.amenity-mark{background:var(--regal-brown-dark);border-color:var(--regal-brown-dark);color:#fff;font-weight:700}.detail-rules-summary{background:var(--regal-brown-pale);border:1px solid #ad8f79;margin-top:42px;padding:30px}.detail-rules-summary .detail-eyebrow,.detail-rules-grid strong,.detail-rules-grid span{color:var(--regal-text)}.detail-availability-column{background:var(--regal-sage-soft);border:1px solid #697762;border-top:5px solid var(--regal-sage-dark);box-shadow:0 20px 50px #2018122e}.detail-price-heading{border-bottom-color:#aab5a4}.detail-price-heading>p,.detail-availability-column .detail-price-label,.detail-availability-column .availability-field span,.detail-price-heading strong,.detail-availability-column .detail-price{color:var(--regal-text)}.detail-price-heading span{color:var(--regal-muted)}.detail-availability-column .availability-field input,.detail-availability-column .availability-field select{color:var(--regal-text);background:#d5ddcf;border-color:#aab5a4;font-weight:500}.detail-availability-column .availability-field:focus-within input,.detail-availability-column .availability-field:focus-within select{border-color:var(--regal-brown-dark);box-shadow:0 0 0 3px #75574429}.detail-availability-column input[type=date]::-webkit-calendar-picker-indicator{opacity:1;cursor:pointer;filter:brightness(0)saturate();display:block}.detail-availability-column .detail-check-button{background:var(--regal-brown-dark);border-color:var(--regal-brown-dark);color:#fff;letter-spacing:.16em;font-weight:700}.detail-availability-column .detail-check-button:hover{background:#5e4435}.detail-booking-note{color:var(--regal-text-soft)}.detail-house-rules{border-color:#6f5544}.detail-house-rules .house-rules p{color:var(--regal-text);border-color:#ad8f79}.detail-availability-column .availability-success{background:var(--regal-sage);color:var(--regal-text);border-color:#697762;font-size:18px}.availability-price-summary>div,.availability-price-summary strong{color:var(--regal-text)}.availability-result,.availability-total{border-color:#aab5a4}@media (width<=700px){.hero-photo{padding:6px}.hero-photo:before{width:55px;height:55px;top:-10px;right:-10px}.admin-form-card .admin-section-title{margin:-22px -22px 24px;padding:24px 22px}.booking-page .search-field+.search-field{border-top:1px solid #aab5a4;border-left:0}.detail-amenities-column{padding:28px 22px}.detail-rules-summary{padding:24px 20px}}.admin-page .admin-settings-compact{text-align:left;background:#ffffff1f;border:1px solid #17120f33;width:auto;max-width:none;margin:32px 0 0;padding:20px 24px}.admin-page .admin-settings-label{text-align:left;color:var(--regal-brown-dark);letter-spacing:.22em;margin:0 0 12px;padding:0;font-family:inherit;font-size:11px;font-weight:700;line-height:1.4}.admin-page .admin-settings-inline{flex-direction:row;justify-content:flex-start;align-items:stretch;gap:8px;width:100%;max-width:620px;margin:0;padding:0;display:flex}.admin-page .admin-settings-inline input{box-sizing:border-box;width:auto;min-width:0;height:44px;color:var(--regal-text);text-align:left;background:#ffffff73;border:1px solid #17120f59;border-radius:0;flex:1;margin:0;padding:0 14px;font-family:inherit;font-size:14px}.admin-page .admin-settings-inline input::placeholder{color:var(--regal-muted);opacity:.7}.admin-page .admin-settings-save{box-sizing:border-box;color:#fff;letter-spacing:.14em;cursor:pointer;background:#17120f;border:1px solid #17120f;border-radius:0;width:auto;min-width:90px;height:44px;margin:0;padding:0 20px;font-family:inherit;font-size:11px;font-weight:700}.admin-page .admin-settings-save:hover{background:#000}.admin-page .admin-settings-note{text-align:left;color:var(--regal-muted);margin:8px 0 0;padding:0;font-size:12px;line-height:1.5;display:block}.admin-page .admin-settings-compact .admin-message{text-align:left;margin:8px 0 0;font-size:12px}@media (width<=640px){.admin-page .admin-settings-inline{flex-direction:column}.admin-page .admin-settings-save{width:100%}}.site-footer{background:var(--regal-brown);width:100%;color:var(--regal-text);font-family:Montserrat,sans-serif}.footer-main{grid-template-columns:minmax(260px,1.5fr) minmax(130px,.7fr) minmax(210px,1fr) minmax(150px,.7fr);align-items:start;gap:55px;width:min(1320px,100% - 80px);margin:0 auto;padding:58px 0 48px;display:grid}.footer-brand{min-width:0}.footer-logo{width:fit-content;color:var(--regal-text);align-items:center;gap:13px;text-decoration:none;display:flex}.footer-brand-mark{border:1px solid var(--regal-gold);width:48px;height:48px;color:var(--regal-text);place-items:center;font-family:Cormorant Garamond,serif;font-size:29px;display:grid}.footer-brand-name{letter-spacing:4px;color:var(--regal-text);font-family:Cormorant Garamond,serif;font-size:27px;line-height:.9}.footer-brand-subtitle{letter-spacing:4px;color:var(--regal-text-soft);margin-top:7px;font-size:7px;font-weight:600}.footer-tagline{max-width:330px;color:var(--regal-text-soft);margin:22px 0 0;font-family:Cormorant Garamond,serif;font-size:19px;line-height:1.4}.footer-location{letter-spacing:1.5px;color:var(--regal-text);margin:12px 0 0;font-size:9px;font-weight:600}.footer-column{flex-direction:column;align-items:flex-start;gap:12px;min-width:0;display:flex}.footer-column h3{letter-spacing:2.5px;color:var(--regal-text);margin:0 0 8px;font-size:9px;font-weight:700}.footer-column a{color:var(--regal-text-soft);font-size:10px;line-height:1.5;text-decoration:none;transition:color .2s,transform .2s;display:block}.footer-column a:hover{color:#000;transform:translate(2px)}.footer-bottom{border-top:1px solid #17120f40;justify-content:space-between;align-items:center;gap:30px;width:min(1320px,100% - 80px);margin:0 auto;padding:20px 0 24px;display:flex}.footer-bottom p{color:var(--regal-text-soft);letter-spacing:1px;margin:0;font-size:8px;line-height:1.5}@media (width<=950px){.footer-main{grid-template-columns:minmax(240px,1.4fr) 1fr 1fr;gap:45px 35px}.footer-brand{grid-column:1/-1}}@media (width<=650px){.footer-main{grid-template-columns:1fr;gap:35px;width:calc(100% - 40px);padding:45px 0 38px}.footer-brand{grid-column:auto}.footer-bottom{flex-direction:column;align-items:flex-start;gap:7px;width:calc(100% - 40px)}}.contact-page{background:var(--regal-sage);min-height:100vh;color:var(--regal-text)}.contact-page .header{background:var(--regal-brown)}.contact-hero{text-align:center;padding:54px 60px 42px}.contact-hero>p:first-child{color:var(--regal-brown-dark);letter-spacing:.3em;margin:0 0 18px;font-size:10px;font-weight:700}.contact-hero h1{color:var(--regal-text);margin:0;font-family:Cormorant Garamond,serif;font-size:clamp(48px,6vw,76px);font-weight:500;line-height:.95}.contact-hero>p:last-child{max-width:760px;color:var(--regal-text-soft);margin:22px auto 0;font-size:15px;line-height:1.7}.contact-content{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);align-items:stretch;gap:30px;width:min(1120px,100% - 80px);margin:0 auto;padding:0 0 70px;display:grid}.contact-form-card,.contact-info-card{box-sizing:border-box;border:1px solid #17120f33;padding:38px}.contact-form-card{background:var(--regal-sage-pale)}.contact-info-card{background:var(--regal-brown-soft)}.contact-form-card>p,.contact-info-card>p:first-child{color:var(--regal-brown-dark);letter-spacing:.28em;margin:0 0 10px;font-size:9px;font-weight:700}.contact-form-card h2,.contact-info-card h2{color:var(--regal-text);margin:0 0 28px;font-family:Cormorant Garamond,serif;font-size:38px;font-weight:500;line-height:1}.contact-form{grid-template-columns:1fr 1fr;gap:20px;display:grid}.contact-form label{min-width:0;color:var(--regal-text);letter-spacing:.12em;flex-direction:column;gap:8px;font-size:9px;font-weight:700;display:flex}.contact-form label:has(textarea){grid-column:1/-1}.contact-form input,.contact-form textarea{box-sizing:border-box;width:100%;color:var(--regal-text);letter-spacing:normal;background:#fff;border:1px solid #17120f47;border-radius:0;outline:none;margin:0;padding:13px 14px;font-family:inherit;font-size:14px;font-weight:400}.contact-form input{height:46px}.contact-form textarea{resize:vertical;min-height:150px;line-height:1.5}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--regal-brown-dark)}.contact-form button{border:1px solid var(--regal-brown);background:var(--regal-brown);color:#fff;letter-spacing:.16em;cursor:pointer;border-radius:0;grid-column:1/-1;width:fit-content;min-width:180px;min-height:48px;margin:4px 0 0;padding:0 25px;font-family:inherit;font-size:10px;font-weight:700}.contact-form button:hover{background:var(--regal-brown-dark);border-color:var(--regal-brown-dark)}.contact-info-card{flex-direction:column;display:flex}.contact-info-card>p:not(:first-child){color:var(--regal-text-soft);margin:0 0 26px;font-size:14px;line-height:1.7}.contact-details{gap:0;margin-top:auto;display:grid}.contact-detail{border-top:1px solid #17120f33;grid-template-columns:105px 1fr;align-items:start;gap:20px;padding:18px 0;display:grid}.contact-detail span,.contact-detail strong:first-child{color:var(--regal-brown-dark);letter-spacing:.14em;font-size:9px;font-weight:700}.contact-detail strong,.contact-detail p{color:var(--regal-text);margin:0;font-size:14px;font-weight:600;line-height:1.5}@media (width<=850px){.contact-hero{padding:45px 30px 35px}.contact-content{grid-template-columns:1fr;width:calc(100% - 40px)}}@media (width<=600px){.contact-hero{padding-left:20px;padding-right:20px}.contact-content{width:calc(100% - 30px)}.contact-form-card,.contact-info-card{padding:28px 22px}.contact-form{grid-template-columns:1fr}.contact-form label:has(textarea){grid-column:auto}.contact-form button{grid-column:auto;width:100%}.contact-detail{grid-template-columns:1fr;gap:6px}}.admin-login-card{width:min(100%,520px);margin:0 auto 80px}.admin-login-card .admin-section-title{margin:-30px -30px 30px;padding:26px 30px}.admin-login-form{flex-direction:column;gap:22px;display:flex}.admin-login-form label{color:var(--regal-text);letter-spacing:.08em;text-transform:uppercase;flex-direction:column;gap:10px;font-size:13px;font-weight:600;display:flex}.admin-login-form input{box-sizing:border-box;width:100%;min-height:52px;color:var(--regal-text);font:inherit;background:#d5ddcf;border:1px solid #aab5a4;padding:12px 15px}.admin-login-form input:focus{border-color:var(--regal-brown-dark);background:#cdd7c7;outline:none;box-shadow:0 0 0 3px #75574429}.admin-login-form .admin-settings-save{width:100%;min-height:52px}.admin-login-form .admin-message{text-align:center;margin:0}@media (width<=600px){.admin-login-card{width:100%;margin-bottom:50px}}.admin-performance-section{margin-top:28px}.admin-performance-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-top:20px;margin-bottom:24px;display:flex}.admin-performance-heading h2{margin:0 0 5px;font-size:30px;font-weight:500;line-height:1.1}.admin-performance-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0 30px;display:grid}.admin-performance-stat{background:#ffffff2e;border:1px solid #3f332b2e;flex-direction:column;justify-content:space-between;gap:14px;min-height:110px;padding:20px;display:flex}.admin-performance-stat span{letter-spacing:.16em;opacity:.7;font-size:11px;font-weight:700;line-height:1.4}.admin-performance-stat strong{font-size:25px;font-weight:500;line-height:1}.admin-performance-table-wrap{border:1px solid #3f332b2e;width:100%;margin-top:8px;overflow-x:auto}.admin-performance-table{border-collapse:collapse;width:100%;min-width:720px}.admin-performance-table th,.admin-performance-table td{text-align:left;border-bottom:1px solid #3f332b24;padding:16px 18px}.admin-performance-table th{letter-spacing:.14em;opacity:.7;font-size:10px;font-weight:700}.admin-performance-table td{font-size:14px}.admin-performance-table td:first-child{font-weight:600}.admin-performance-table tbody tr:last-child td{border-bottom:0}.admin-performance-table th:not(:first-child),.admin-performance-table td:not(:first-child){text-align:right}.admin-performance-footer{opacity:.8;flex-wrap:wrap;gap:12px 32px;padding-top:18px;font-size:13px;display:flex}.admin-performance-footer strong{font-weight:700}@media (width<=900px){.admin-performance-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.admin-performance-heading h2{font-size:25px}.admin-performance-summary{grid-template-columns:1fr}.admin-performance-stat{min-height:95px}.admin-performance-stat strong{font-size:22px}.admin-performance-table th,.admin-performance-table td{padding:14px}.admin-performance-footer{flex-direction:column;gap:8px}}.admin-performance-month-title{text-align:center;flex:1}.admin-performance-month-button{min-width:110px;color:inherit;font:inherit;letter-spacing:.04em;cursor:pointer;background:0 0;border:1px solid #3f332b38;padding:10px 14px;font-size:12px;font-weight:600;transition:background .2s,border-color .2s}.admin-performance-month-button:hover{background:#3f332b0f;border-color:#3f332b61}@media (width<=600px){.admin-performance-heading{align-items:center;gap:10px}.admin-performance-month-button{min-width:auto;padding:9px 10px;font-size:11px}}.admin-booking-records-section{margin-top:28px}.admin-booking-records-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin:20px 0 24px;display:flex}.admin-booking-records-heading h2{margin:0 0 5px;font-size:30px;font-weight:500;line-height:1.1}.admin-booking-records-heading>strong{font-size:24px;font-weight:500}.admin-booking-records-table-wrap{border:1px solid #3f332b2e;width:100%;margin-top:8px;overflow-x:auto}.admin-booking-records-table{border-collapse:collapse;width:100%;min-width:1180px}.admin-booking-records-table th,.admin-booking-records-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #3f332b24;padding:16px 18px}.admin-booking-records-table th{letter-spacing:.14em;white-space:nowrap;opacity:.7;font-size:10px;font-weight:700}.admin-booking-records-table td{font-size:13px;line-height:1.45}.admin-booking-records-table tbody tr:last-child td{border-bottom:0}.admin-booking-records-table td:first-child{white-space:nowrap;width:150px;font-size:12px}.admin-booking-guest,.admin-booking-stay{flex-direction:column;gap:3px;display:flex}.admin-booking-guest{min-width:190px}.admin-booking-guest strong{font-size:14px;font-weight:600}.admin-booking-guest small,.admin-booking-stay small{opacity:.7;font-size:11px}.admin-booking-stay{white-space:nowrap;min-width:110px}.admin-booking-status{letter-spacing:.08em;white-space:nowrap;font-size:10px;font-weight:700;line-height:1.4;display:inline-block}@media (width<=600px){.admin-booking-records-heading h2{font-size:25px}.admin-booking-records-table th,.admin-booking-records-table td{padding:14px}}.admin-booking-history-search{gap:8px;margin:0 0 10px;display:flex}.admin-booking-history-search input{min-width:0;color:inherit;font:inherit;background:#ffffff2e;border:1px solid #3f332b38;flex:1;padding:11px 13px;font-size:13px}.admin-booking-history-search button{color:inherit;font:inherit;letter-spacing:.12em;cursor:pointer;background:0 0;border:1px solid #3f332b4d;padding:10px 16px;font-size:10px;font-weight:700}.admin-booking-history-search button:hover{background:#3f332b0f}.admin-booking-history-search button:disabled{cursor:default;opacity:.45}.admin-booking-search-note{opacity:.7;margin:0 0 14px;font-size:11px}@media (width<=600px){.admin-booking-history-search{flex-wrap:wrap}.admin-booking-history-search input{flex-basis:100%}}.admin-booking-records-section .admin-booking-records-heading{align-items:center}.admin-booking-records-section .admin-booking-records-heading>div:first-child{flex:1}.admin-booking-records-section .admin-booking-records-heading>strong{background:#ffffff1f;border:1px solid #3f332b38;justify-content:center;align-items:center;min-width:46px;height:46px;padding:0 12px;font-size:18px;font-weight:500;line-height:1;display:flex}.admin-booking-history-search{margin-bottom:0}@media (width<=600px){.admin-booking-records-section .admin-booking-records-heading>strong{min-width:40px;height:40px;font-size:16px}.admin-booking-history-filters{gap:6px}.admin-booking-history-filters button{flex:auto;padding:0 10px;font-size:9px}}.admin-booking-history-filters{flex-wrap:wrap;gap:8px;margin:18px 0 22px;display:flex}.admin-booking-history-filters button{appearance:none;min-height:38px;color:inherit;font:inherit;letter-spacing:.12em;cursor:pointer;background:0 0;border:1px solid #3f332b3d;border-radius:0;padding:0 16px;font-size:10px;font-weight:700;transition:background .2s,border-color .2s}.admin-booking-history-filters button:hover{background:#3f332b0f;border-color:#3f332b66}.admin-booking-history-filters button.is-active{background:#3f332b1f;border-color:#3f332b8c}.admin-booking-records-heading>strong{background:#ffffff1f;border:1px solid #3f332b38;justify-content:center;align-items:center;min-width:46px;height:46px;padding:0 12px;font-size:18px;font-weight:500;line-height:1;display:flex}@media (width<=600px){.admin-booking-history-filters{gap:6px}.admin-booking-history-filters button{flex:auto;padding:0 10px;font-size:9px}.admin-booking-records-heading>strong{min-width:40px;height:40px;font-size:16px}}.admin-booking-row{cursor:pointer;transition:background .18s}.admin-booking-row:hover{background:#3f332b0b}.admin-booking-detail-overlay{z-index:1000;background:#17120f47;justify-content:flex-end;display:flex;position:fixed;inset:0}.admin-booking-detail-panel{background:var(--regal-bg,#e8e3dc);width:min(720px,94vw);height:100%;color:var(--regal-text,#3f332b);padding:34px;overflow-y:auto;box-shadow:-12px 0 35px #17120f29}.admin-booking-detail-header{border-bottom:1px solid #3f332b29;justify-content:space-between;align-items:flex-start;margin-bottom:30px;padding-bottom:20px;display:flex}.admin-booking-detail-header h2{margin:4px 0 0;font-size:28px;font-weight:500}.admin-booking-detail-close{appearance:none;width:38px;height:38px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:1px solid #3f332b40;font-size:25px;line-height:1}.admin-booking-detail-close:hover{background:#3f332b0f}.admin-booking-detail-status{border:1px solid #3f332b2e;justify-content:space-between;align-items:center;margin-bottom:28px;padding:14px 16px;display:flex}.admin-booking-detail-status span,.admin-booking-detail-label{letter-spacing:.16em;font-size:9px;font-weight:700}.admin-booking-detail-status strong{letter-spacing:.1em;font-size:11px}.admin-booking-detail-grid{border:1px solid #3f332b24;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-bottom:30px;display:grid}.admin-booking-detail-block{background:#ffffff1a;min-height:105px;padding:18px}.admin-booking-detail-block>div{flex-direction:column;gap:5px;margin-top:12px;display:flex}.admin-booking-detail-block strong{font-size:15px;font-weight:600}.admin-booking-detail-block small{opacity:.68;font-size:11px}.admin-booking-detail-section{border-top:1px solid #3f332b24;margin-bottom:26px;padding-top:20px}.admin-booking-detail-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px;margin-top:16px;display:grid}.admin-booking-detail-info-grid>div{flex-direction:column;gap:5px;display:flex}.admin-booking-detail-info-grid small,.admin-booking-special-request small{letter-spacing:.12em;opacity:.65;font-size:9px;font-weight:700}.admin-booking-detail-info-grid strong{overflow-wrap:anywhere;font-size:13px;font-weight:500}.admin-booking-special-request{border:1px solid #3f332b24;margin-top:20px;padding:16px}.admin-booking-special-request p{margin:9px 0 0;font-size:13px;line-height:1.55}@media (width<=600px){.admin-booking-detail-panel{width:100%;padding:24px 20px}.admin-booking-detail-grid,.admin-booking-detail-info-grid{grid-template-columns:1fr}}.booking-page{color:#211c18;background:#f3eee7;min-height:100vh}.booking-header-wrap{background:#967456}.booking-page *,.booking-page :before,.booking-page :after{box-sizing:border-box}.booking-eyebrow,.detail-eyebrow{color:#9b7651;letter-spacing:.35em;text-transform:uppercase;margin:0 0 12px;font-size:11px;font-weight:600}.availability-error{color:#7b3029;background:#f7eae7;border:1px solid #c9a9a1;width:100%;margin:16px 0 0;padding:13px 15px;font-size:14px;line-height:1.5}.guest-details-page{width:min(1180px,100% - 48px);margin:0 auto;padding:72px 0 100px}.guest-details-heading{text-align:center;max-width:700px;margin:0 auto 48px}.guest-details-heading h1{color:#171311;letter-spacing:-.035em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(42px,5vw,66px);font-weight:400;line-height:1.05}.guest-details-heading>p:last-child{color:#675c53;max-width:590px;margin:18px auto 0;font-size:16px;line-height:1.7}.guest-details-layout{grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);align-items:start;gap:36px;display:grid}.guest-details-form{background:#fffdf9;border:1px solid #ddd2c6;min-width:0;padding:42px;box-shadow:0 18px 55px #412d1e0f}.guest-form-section{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:0;padding:0 0 38px;display:grid}.guest-form-section+.guest-form-section{border-top:1px solid #e5ddd4;padding-top:38px}.guest-form-section .detail-eyebrow,.guest-form-section h2,.guest-form-section .guest-form-help{grid-column:1/-1}.guest-form-section .detail-eyebrow{margin-bottom:-12px}.guest-form-section h2{color:#251d18;margin:0 0 4px;font-family:Georgia,Times New Roman,serif;font-size:30px;font-weight:400;line-height:1.15}.guest-form-help{color:#756a61;max-width:650px;margin:0 0 4px;font-size:14px;line-height:1.65}.guest-details-form label{color:#554a42;letter-spacing:.13em;text-transform:uppercase;flex-direction:column;gap:9px;min-width:0;font-size:11px;font-weight:600;line-height:1.4;display:flex}.guest-details-form input[type=text],.guest-details-form input[type=email],.guest-details-form input[type=tel],.guest-details-form select,.guest-details-form textarea{color:#251f1b;width:100%;min-width:0;font:inherit;letter-spacing:normal;text-transform:none;background:#fff;border:1px solid #d5c9bd;border-radius:0;outline:none;font-size:15px;font-weight:400;transition:border-color .16s,box-shadow .16s,background .16s;display:block}.guest-details-form input[type=text],.guest-details-form input[type=email],.guest-details-form input[type=tel],.guest-details-form select{height:52px;padding:0 15px}.guest-details-form textarea{resize:vertical;min-height:120px;padding:14px 15px;line-height:1.6}.guest-details-form input[type=text]:focus,.guest-details-form input[type=email]:focus,.guest-details-form input[type=tel]:focus,.guest-details-form select:focus,.guest-details-form textarea:focus{border-color:#9b7651;box-shadow:0 0 0 3px #9b76511a}.guest-details-form input::placeholder,.guest-details-form textarea::placeholder{color:#aaa096}.guest-details-form select{cursor:pointer}.guest-details-form input[type=file]{color:#675c53;letter-spacing:normal;text-transform:none;cursor:pointer;background:#fff;border:1px solid #d5c9bd;width:100%;min-height:52px;padding:8px;font-family:inherit;font-size:13px;font-weight:400;display:block}.guest-details-form input[type=file]::file-selector-button{color:#493a2f;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:#ede4da;border:0;min-height:34px;margin-right:12px;padding:0 15px;font-family:inherit;font-size:11px;font-weight:600}.guest-details-form label small{color:#94887d;letter-spacing:normal;text-transform:none;font-size:11px;font-weight:400;line-height:1.5}.guest-checkbox{cursor:pointer;background:#f8f3ed;border:1px solid #ddd2c6;grid-column:1/-1;align-items:flex-start;padding:17px 18px;flex-direction:row!important;gap:12px!important;display:flex!important}.guest-checkbox input[type=checkbox]{accent-color:#8c6849;cursor:pointer;flex:none;width:18px;height:18px;margin:1px 0 0}.guest-checkbox span{color:#413831;letter-spacing:normal;text-transform:none;font-size:14px;font-weight:400;line-height:1.5}.guest-continue-button{color:#fffaf4;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;background:#8d6949;border:1px solid #8d6949;width:100%;min-height:58px;margin-top:4px;font-family:inherit;font-size:12px;font-weight:600;transition:background .16s,border-color .16s,transform .16s}.guest-continue-button:hover:not(:disabled){background:#755438;border-color:#755438}.guest-continue-button:active:not(:disabled){transform:translateY(1px)}.guest-continue-button:disabled{cursor:wait;opacity:.65}.detail-booking-note{color:#887b70;text-align:center;margin:15px 0 0;font-size:12px;line-height:1.6}.guest-details-layout>aside{min-width:0;position:sticky;top:28px}.booking-summary{color:#342a23;background:#e8ded2;border:1px solid #d9cec2;width:100%;padding:34px 30px}.booking-summary .booking-eyebrow{text-align:center;margin-bottom:16px}.booking-summary h2,.booking-summary h3{font-family:Georgia,Times New Roman,serif;font-weight:400}.booking-summary h2{color:#211a16;text-align:center;margin:0;font-size:30px;line-height:1.2}.booking-summary-apartment{color:#3e3128;text-align:center;line-height:1.25;margin:26px 0 22px!important;font-size:23px!important}.booking-summary-details{flex-direction:column;gap:13px;display:flex}.booking-summary-row{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:18px;width:100%;display:grid}.booking-summary-row span{color:#71645a;min-width:0;font-size:13px;line-height:1.4}.booking-summary-row strong{color:#302720;text-align:right;white-space:nowrap;font-size:14px;font-weight:600;line-height:1.4}.booking-summary-divider{background:#54403029;width:100%;height:1px;margin:22px 0}.booking-summary-total{padding-top:2px}.booking-summary-total span{color:#3e332b;font-size:14px;font-weight:600}.booking-summary-total strong{color:#2d231d;font-family:Georgia,Times New Roman,serif;font-size:20px;font-weight:600}.booking-summary-reference{text-align:center;flex-direction:column;gap:7px;display:flex}.booking-summary-reference span{color:#7b6d62;letter-spacing:.16em;text-transform:uppercase;font-size:10px;font-weight:600}.booking-summary-reference strong{color:#332820;letter-spacing:.06em;overflow-wrap:anywhere;font-size:13px;font-weight:600}.booking-summary-times{flex-direction:column;gap:10px;display:flex}.booking-summary-times p{color:#665950;justify-content:space-between;gap:18px;margin:0;font-size:13px;line-height:1.4;display:flex}.booking-summary-times strong{color:#332a23;white-space:nowrap;font-weight:600}.booking-summary-note{color:#74675d;text-align:center;border-top:1px solid #54403029;margin:24px 0 0;padding-top:20px;font-size:12px;line-height:1.65}.payment-page{width:min(1120px,100% - 48px);margin:0 auto;padding:72px 0 100px}.payment-layout{grid-template-columns:minmax(0,1.35fr) minmax(300px,.75fr);align-items:start;gap:36px;display:grid}.payment-card{background:#fffdf9;border:1px solid #ddd2c6;padding:42px}.payment-card h1,.payment-card h2{font-family:Georgia,Times New Roman,serif;font-weight:400}.payment-card h1{margin:0 0 18px;font-size:clamp(40px,5vw,60px)}.payment-card h2{margin:0 0 12px;font-size:28px}.payment-card p{color:#675c53;line-height:1.7}.payment-status-box{background:#f7f2ec;border:1px solid #ddd2c6;margin:28px 0;padding:20px}.payment-button{color:#fffaf4;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;background:#8d6949;border:1px solid #8d6949;width:100%;min-height:58px;font-family:inherit;font-size:12px;font-weight:600}.payment-button:disabled{cursor:not-allowed;opacity:.55}.booking-confirmation-page{width:min(900px,100% - 48px);margin:0 auto;padding:80px 0 110px}.booking-confirmation-card{text-align:center;background:#fffdf9;border:1px solid #d9cec2;padding:50px}.booking-confirmation-card h1{color:#211b17;margin:0 0 18px;font-family:Georgia,Times New Roman,serif;font-size:clamp(42px,6vw,66px);font-weight:400}.booking-confirmation-card p{color:#675c53;line-height:1.7}@media (width<=900px){.guest-details-layout,.payment-layout{grid-template-columns:1fr}.guest-details-layout>aside{order:-1;position:static}.booking-summary{max-width:620px;margin:0 auto}}@media (width<=680px){.guest-details-page,.payment-page,.booking-confirmation-page{width:min(100% - 28px,1180px);padding-top:48px;padding-bottom:70px}.guest-details-heading{margin-bottom:32px}.guest-details-heading h1{font-size:44px}.guest-details-form,.payment-card{padding:28px 20px}.guest-form-section{grid-template-columns:1fr;gap:18px;padding-bottom:30px}.guest-form-section+.guest-form-section{padding-top:30px}.guest-form-section .detail-eyebrow,.guest-form-section h2,.guest-form-section .guest-form-help,.guest-checkbox{grid-column:1}.guest-form-section h2{font-size:27px}.booking-summary{padding:28px 22px}.booking-summary-row{gap:12px}.booking-summary-row span{font-size:12px}.booking-summary-row strong{font-size:13px}.booking-summary-total strong{font-size:18px}.booking-confirmation-card{padding:38px 22px}}.payment-method-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0 24px;display:grid}.payment-method-option{appearance:none;color:#3f3935;cursor:pointer;text-align:left;background:#fff;border:1px solid #d8cbbb;width:100%;min-height:92px;padding:18px 16px;transition:border-color .2s,background .2s,transform .2s}.payment-method-option:hover{border-color:#9b744f;transform:translateY(-1px)}.payment-method-option-active{background:#f7f1e9;border:2px solid #9b744f}.payment-method-option strong,.payment-method-option span{display:block}.payment-method-option strong{letter-spacing:.04em;margin-bottom:7px;font-size:16px}.payment-method-option span{color:#746b65;font-size:14px;line-height:1.45}.bank-transfer-section{margin-top:20px}.bank-transfer-section .payment-provider-placeholder{margin-bottom:22px}.bank-transfer-section .payment-guest-details{background:#faf8f5;border:1px solid #ded4c8;gap:0;margin:0 0 24px;display:grid}.bank-transfer-section .payment-guest-details>div{text-align:left;border-bottom:1px solid #e4dbd0;grid-template-columns:minmax(130px,.8fr) minmax(0,1.2fr);align-items:center;gap:16px;padding:13px 16px;display:grid}.bank-transfer-section .payment-guest-details>div:last-child{border-bottom:0}.bank-transfer-section .payment-guest-details span{letter-spacing:.12em;color:#81766d;font-size:11px}.bank-transfer-section .payment-guest-details strong{overflow-wrap:anywhere;color:#49413c;min-width:0;font-size:14px;line-height:1.45}.bank-transfer-form{text-align:left;gap:18px;margin-top:20px;display:grid}.bank-transfer-form label{letter-spacing:.08em;text-transform:uppercase;color:#665e58;gap:8px;font-size:12px;font-weight:600;display:grid}.bank-transfer-form input[type=text]{box-sizing:border-box;color:#37312d;width:100%;min-height:48px;font:inherit;letter-spacing:normal;text-transform:none;background:#fff;border:1px solid #d4c9bd;border-radius:0;outline:none;padding:11px 13px;font-size:15px}.bank-transfer-form input[type=text]:focus{border-color:#9b744f;box-shadow:0 0 0 1px #9b744f}.bank-transfer-form input[type=file]{box-sizing:border-box;color:#625a54;letter-spacing:normal;text-transform:none;background:#fff;border:1px solid #d4c9bd;width:100%;padding:11px;font-size:14px}.bank-transfer-form input[type=file]::file-selector-button{color:#443c37;cursor:pointer;background:#ece3d8;border:0;margin-right:12px;padding:9px 14px;font-weight:600}@media (width<=640px){.payment-method-options{grid-template-columns:1fr}.payment-method-option{min-height:auto}.bank-transfer-section .payment-guest-details>div{grid-template-columns:1fr;gap:5px}}
