.theme-rentals{--gold:#7d5f27;--gold-light:#6b501f;--gold-dim:#a8874a;--black:#f5f0e8;--black-soft:#ece5d8;--black-card:#fbf8f2;--black-border:#d9cfbd;--white:#14110d;--white-dim:#4a443b;--white-muted:#6b6255;background:var(--black);color:var(--white);min-height:100vh}body:has(.theme-rentals){background:#f5f0e8}.theme-rentals nav{background:#f5f0e8f0}.theme-rentals .btn-primary,.theme-rentals .form-submit{color:#fbf8f2}.theme-rentals .btn-ghost{border-color:#7d5f2773}.theme-rentals .grain-overlay{opacity:.02}.theme-rentals .form-field input{background:#fff}.theme-rentals .photo-overlay{background:linear-gradient(to right, var(--black) 0%, transparent 30%, transparent 100%)}.theme-rentals .gallery-modal-overlay,.theme-rentals .gallery-modal{color:#f5f0e8}.theme-rentals .gallery-modal{--white:#f5f0e8;--white-dim:#b8b0a0;--white-muted:#8a8072;--black-card:#161616;--black-border:#222;--gold:#c5a059}.blend-section{isolation:isolate;position:relative}.blend-bg{z-index:-1;pointer-events:none;background:var(--black-soft);position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000 0,#000 7rem calc(100% - 7rem),#0000 100%);mask-image:linear-gradient(#0000 0,#000 7rem calc(100% - 7rem),#0000 100%)}@media (max-width:768px){.blend-bg{-webkit-mask-image:linear-gradient(#0000 0,#000 4rem calc(100% - 4rem),#0000 100%);mask-image:linear-gradient(#0000 0,#000 4rem calc(100% - 4rem),#0000 100%)}}.rentals-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin-top:3rem;display:grid}.rental-card{background:var(--black-card);border:1px solid var(--black-border);flex-direction:column;height:100%;display:flex}.rental-card-media{aspect-ratio:4/3;background:var(--black-soft);cursor:pointer;border:none;width:100%;padding:0;display:block;position:relative;overflow:hidden}.rental-card-media:disabled{cursor:default}.rental-card-placeholder{letter-spacing:.14em;text-transform:uppercase;color:var(--white-muted);justify-content:center;align-items:center;font-size:.9rem;display:flex;position:absolute;inset:0}.rental-card-sample,.rental-card-photos{letter-spacing:.14em;text-transform:uppercase;color:#f5f0e8;background:#14110d;padding:.25rem .7rem;font-size:.75rem;position:absolute;top:1rem}.rental-card-sample{background:#9a2c1f;left:1rem}.rental-card-photos{right:1rem}.rental-card-body{flex-direction:column;flex:1;padding:1.6rem;display:flex}.rental-card-zone{letter-spacing:.14em;text-transform:uppercase;color:var(--white-muted);font-size:.85rem}.rental-card-name{color:var(--white);margin:.3rem 0 .6rem;font-family:Bodoni Moda,serif;font-size:1.4rem;font-weight:400}.rental-card-price{color:var(--gold);font-family:Bodoni Moda,serif;font-size:1.6rem;font-weight:700}.rental-card-price span{color:var(--white-muted);font-family:Raleway,sans-serif;font-size:.9rem;font-weight:400}.rental-card-facts{grid-template-columns:1fr 1fr;gap:.5rem 1rem;margin:1.2rem 0 1.5rem;font-size:.95rem;display:grid}.rental-card-facts dt{letter-spacing:.12em;text-transform:uppercase;color:var(--white-muted);font-size:.75rem}.rental-card-facts dd{color:var(--white-dim)}.rental-card-cta{text-align:center;width:100%;margin-top:auto}.rentals-steps{background:var(--black-border);gap:1px;margin-top:3rem;list-style:none;display:grid}.rentals-step{background:var(--black-soft);grid-template-columns:4rem 1fr;align-items:start;gap:1rem;padding:1.6rem 2rem;display:grid}.rentals-step-num{color:var(--gold);font-family:Bodoni Moda,serif;font-size:1.8rem;line-height:1}.rentals-step h3{color:var(--white);font-family:Bodoni Moda,serif;font-size:1.3rem;font-weight:400}.rentals-step p{color:var(--white-dim);margin-top:.3rem;font-size:1.05rem}.rentals-about{grid-template-columns:2fr 3fr;align-items:center;gap:4rem;display:grid}.rentals-about-photo{aspect-ratio:4/5;position:relative;overflow:hidden}.rentals-faq-answer{color:var(--white-dim);padding:0 2rem 1.5rem;font-size:1.02rem;line-height:1.8}.rentals-form{background:var(--black-card);border:1px solid var(--black-border);max-width:820px;margin-top:3rem;padding:2.5rem}.rentals-form-grid{grid-template-columns:1fr 1fr;gap:0 1.5rem;display:grid}.rentals-field-wide{grid-column:1/-1}.rentals-form .form-field label{font-size:.85rem}.rentals-form select,.rentals-form textarea{border:1px solid var(--black-border);width:100%;color:var(--white);background:#fff;outline:none;padding:.7rem 1rem;font-family:Raleway,sans-serif;font-size:1.02rem}.rentals-form select:focus,.rentals-form textarea:focus,.rentals-form input:focus{border-color:var(--gold)}.rentals-field-error{color:#9a2c1f;margin-top:.3rem;font-size:.9rem}.rentals-consent{color:var(--white-dim);align-items:flex-start;gap:.8rem;margin:1rem 0 .3rem;font-size:.95rem;line-height:1.6;display:flex}.rentals-consent input{width:1.1rem;height:1.1rem;accent-color:var(--gold);flex-shrink:0;margin-top:.35rem}.rentals-consent a,.rentals-form-error a,.rentals-form-done a{color:var(--gold)}.rentals-form-error{color:#6f1f15;border:1px solid #9a2c1f;margin:1rem 0;padding:1rem 1.2rem;font-size:.95rem}.rentals-form-done h3{color:var(--white);margin-bottom:.5rem;font-family:Bodoni Moda,serif;font-size:1.6rem}.rentals-form-done p{color:var(--white-dim)}.form-submit:disabled{opacity:.6;cursor:wait}.rentals-hp{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}@media (max-width:768px){.rentals-form{padding:1.5rem 1.1rem}.rentals-form-grid{grid-template-columns:1fr}.rentals-about{grid-template-columns:1fr;gap:2rem}.rentals-step{grid-template-columns:3rem 1fr;padding:1.2rem}.rentals-grid{grid-template-columns:1fr}}.villa-stats{color:var(--white-muted);gap:1.2rem;margin:.2rem 0 .9rem;font-size:.95rem;display:flex}.villa-stats strong{color:var(--gold);margin-right:.2rem;font-family:Bodoni Moda,serif;font-size:1.3rem;font-weight:700}.villa-summary{color:var(--white-dim);font-size:1rem;line-height:1.7}.villa-amenities{color:var(--white-dim);gap:.3rem;margin:1rem 0;font-size:.92rem;list-style:none;display:grid}.villa-amenities li:before{content:"◆ ";color:var(--gold);font-size:.7rem}.villa-services{color:var(--white-muted);margin-bottom:1rem;font-size:.9rem;font-style:italic}.villa-tags{flex-wrap:wrap;gap:.4rem;margin-bottom:1.4rem;display:flex}.villa-tags span{letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--black-border);color:var(--white-muted);padding:.2rem .6rem;font-size:.72rem}.villa-features{gap:3rem;margin-top:3rem;display:grid}.villa-feature{background:var(--black-card);border:1px solid var(--black-border)}.villa-feature-cover{aspect-ratio:21/9;background:var(--black-soft);min-height:380px;max-height:640px;position:relative;overflow:hidden}.villa-feature-media{background:var(--black-soft);cursor:pointer;border:none;width:100%;padding:0;display:block;position:absolute;inset:0}.villa-feature-media:disabled{cursor:default}.villa-feature-media img{transition:transform 1.2s cubic-bezier(.22,1,.36,1)}.villa-feature-media:not(:disabled):hover img{transform:scale(1.03)}.villa-feature-cover:after{content:"";pointer-events:none;background:linear-gradient(#0a080500 28%,#0a080566 58%,#0a0805db 100%);position:absolute;inset:0}.villa-feature-caption{z-index:1;pointer-events:none;color:#f5f0e8;padding:2.5rem;position:absolute;bottom:0;left:0;right:0}.villa-feature-style{letter-spacing:.16em;text-transform:uppercase;color:#e0c388;font-size:.9rem}.villa-feature-name{color:#f5f0e8;margin:.4rem 0 .8rem;font-family:Bodoni Moda,serif;font-size:clamp(2rem,4.2vw,3.2rem);font-weight:400;line-height:1.1}.villa-feature-caption .villa-stats{color:#e8e0d0;margin:0}.villa-feature-caption .villa-stats strong{color:#e0c388}.villa-feature-body{grid-template-columns:1.2fr 1fr;align-items:start;column-gap:3rem;padding:2.2rem 2.5rem 2.5rem;display:grid}.villa-feature-body .villa-summary{grid-column:1;font-size:1.08rem}.villa-feature-body .villa-services{grid-column:1;margin:1rem 0 0}.villa-feature-body .villa-tags{grid-column:1;margin:1.2rem 0 0}.villa-feature-body .villa-amenities{grid-area:1/2/span 3;margin:0}.villa-feature-body .villa-cta{grid-column:2;justify-self:start;margin-top:1.6rem}.villas-more{margin-top:3rem}.villas-more-toggle{border:1px solid var(--gold);width:100%;color:var(--gold);cursor:pointer;letter-spacing:.16em;text-transform:uppercase;background:0 0;justify-content:center;align-items:center;gap:.9rem;padding:1.1rem 1.5rem;font-family:Raleway,sans-serif;font-size:.95rem;font-weight:600;transition:background .3s,color .3s;display:flex}.villas-more-toggle:hover{background:var(--gold);color:#fbf8f2}.villas-more-count{letter-spacing:0;border:1px solid;border-radius:999px;justify-content:center;align-items:center;min-width:1.7rem;height:1.7rem;padding:0 .4rem;font-size:.8rem;display:inline-flex}.villas-more-icon{letter-spacing:0;font-size:1.4rem;line-height:1}.villas-more-list{gap:1.5rem;display:grid}.villa-row{background:var(--black-card);border:1px solid var(--black-border);grid-template-columns:minmax(0,5fr) minmax(0,7fr);display:grid}.villa-row-media{background:var(--black-soft);cursor:pointer;border:none;width:100%;min-height:340px;padding:0;display:block;position:relative;overflow:hidden}.villa-row-media:disabled{cursor:default}.villa-row-media img{transition:transform 1.2s cubic-bezier(.22,1,.36,1)}.villa-row-media:not(:disabled):hover img{transform:scale(1.04)}.villa-row-body{flex-direction:column;align-items:flex-start;padding:2rem 2.2rem;display:flex}.villa-row-body .villa-cta{margin-top:auto}.villa-feature-media:focus-visible,.villa-row-media:focus-visible{outline-offset:-5px;outline:2px solid #f5f0e8}.villas-more-toggle:focus-visible{outline:2px solid var(--gold);outline-offset:3px}@media (max-width:900px){.villa-feature-body{grid-template-columns:1fr;padding:1.6rem 1.4rem 1.8rem}.villa-feature-body .villa-amenities,.villa-feature-body .villa-cta{grid-area:auto/1}.villa-feature-body .villa-amenities{margin-top:1.2rem}}@media (max-width:768px){.villa-features{gap:2rem}.villa-feature-cover{aspect-ratio:4/5;min-height:0;max-height:none}.villa-feature-caption{padding:1.4rem 1.2rem}.villa-row{grid-template-columns:1fr}.villa-row-media{aspect-ratio:4/3;min-height:0}.villa-row-body{padding:1.4rem 1.2rem 1.6rem}.villa-row-body .villa-cta{margin-top:1.4rem}}@media (prefers-reduced-motion:reduce){.villa-feature-media img,.villa-row-media img{transition:none}}.rentals-wa-block{max-width:820px;margin-top:2.5rem}.rentals-wa-big{text-align:center;cursor:pointer;width:100%;padding:1.2rem 2rem;font-size:1.05rem}.rentals-wa-note{color:var(--white-muted);margin-top:.7rem;font-size:.95rem}.rentals-link-button{font:inherit;color:var(--gold);text-underline-offset:3px;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.rentals-link-button:hover{color:var(--gold-light)}.rental-card-email,.villa-email{text-align:center;color:var(--white-muted);margin-top:.9rem;font-size:.95rem}.rental-card-email .rentals-link-button,.villa-email .rentals-link-button{font-size:.95rem}.rentals-email-alt{max-width:820px;margin-top:2rem}.rentals-email-toggle{cursor:pointer;color:var(--gold);letter-spacing:.04em;text-underline-offset:4px;background:0 0;border:none;padding:.5rem 0;font-family:Raleway,sans-serif;font-size:1.05rem;text-decoration:underline}.rentals-email-toggle:hover{color:var(--gold-light)}.rentals-email-alt .rentals-form{margin-top:0}.rentals-form-about{color:var(--white-dim);margin-bottom:1.2rem;font-size:1rem}.rentals-link-button:focus-visible,.rentals-email-toggle:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.rentals-mode{border:none;flex-wrap:wrap;gap:.6rem;margin-bottom:1.8rem;display:flex}.rentals-mode legend{letter-spacing:.12em;text-transform:uppercase;color:var(--white-muted);margin-bottom:.6rem;font-size:.85rem}.rentals-mode label{cursor:pointer;border:1px solid var(--black-border);color:var(--white-dim);align-items:center;gap:.5rem;padding:.7rem 1.1rem;font-size:.98rem;display:flex}.rentals-mode label.active{border-color:var(--gold);color:var(--white)}.rentals-mode input{accent-color:var(--gold)}.rentals-form input[type=number],.rentals-form input[type=date]{width:100%}
