:root{--accent:#28564f;--wash:#e5eeeb;--ink:#28564f;--on-accent:#ffffff;--heading:"Trebuchet MS", Arial, sans-serif;--display:"Trebuchet MS", Arial, sans-serif;--body:"Trebuchet MS", Arial, sans-serif}
*{box-sizing:border-box}body{margin:0;color:#293c4b;background:#fff;font:16px/1.6 var(--body,system-ui),sans-serif}header,main,footer{max-width:1200px;margin:auto;padding:24px}header{display:flex;justify-content:space-between;gap:24px;align-items:center;flex-wrap:wrap}nav,footer{display:flex;flex-wrap:wrap;gap:20px}a{color:var(--ink);overflow-wrap:anywhere}nav a,.brand{text-decoration:none}.brand-logo{display:block;max-width:100%;height:64px;object-fit:contain;object-position:left}.brand{max-width:100%;font-weight:700;font-size:22px}h1,h2,h3{font-family:var(--heading);line-height:1.25}h1{font-family:var(--display);font-size:clamp(28px,4vw,48px)}p,li,dd,h1,h2,h3{overflow-wrap:anywhere}.prose{white-space:pre-line}section,.block{margin:32px 0}.hero{width:100%;max-height:550px;aspect-ratio:16/7;object-fit:cover;border-radius:16px}.intro,aside,form{padding:24px;background:var(--wash);border-radius:16px}.rentals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.rental{border:1px solid #dce5e8;border-radius:16px;overflow:hidden;display:flex;flex-direction:column}.rental>img{width:100%;aspect-ratio:16/9;object-fit:cover}.rental>div{padding:24px;display:flex;flex-direction:column;flex:1}.rental .button{align-self:flex-start;margin-top:auto}.rental h3{margin-top:0}.rental .prose{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.gallery,.text-image,.fields,.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:18px}.gallery img,.block img{width:100%;border-radius:12px}.facts div{padding:14px;border:1px solid #dce5e8;border-radius:10px}dd{margin:0;font-weight:600}dt{font-size:14px}.detail-body{display:grid;grid-template-columns:minmax(0,1fr);gap:28px}.detail-body.with-contact{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.detail-body>div{min-width:0}aside{align-self:start;margin-top:32px}.button,button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border:0;border-radius:10px;background:var(--accent);color:var(--on-accent);font:inherit;text-decoration:none;cursor:pointer}button:disabled{opacity:.5;cursor:default}label{display:flex;flex-direction:column;gap:6px;margin:12px 0}input,textarea{font:inherit;min-height:44px;max-width:100%;min-width:0;width:100%;border:1px solid #b8ccd7;border-radius:8px;padding:10px;background:white;color:#293c4b}input[type=checkbox]{width:24px;min-height:24px}.check{display:block}.check input{vertical-align:middle}fieldset{min-width:0;border:1px solid #b8ccd7;border-radius:10px}.fields>label{min-width:0}form>button{margin-top:18px}details{padding:16px 0;border-bottom:1px solid #dce5e8}summary{cursor:pointer;min-height:44px;font-weight:600}footer{border-top:1px solid #dce5e8;margin-top:40px}iframe{width:100%;height:380px;border:0;margin-top:20px}.range-months{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px;margin-top:16px}.range-months .days button{padding:4px;min-width:0;background:#f0f3f4;color:#293c4b}.range-months .days button.selected{background:var(--accent);color:var(--on-accent)}.months{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:16px}.month{border:1px solid #b8ccd7;border-radius:12px;padding:14px}.days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.days span{text-align:center;border-radius:6px;padding:5px 0;font-size:13px}.free{background:#f0f3f4}.occupied{background:var(--accent);color:var(--on-accent)}.arrival{background:linear-gradient(135deg,#f0f3f4 50%,var(--accent) 50%)}.departure{background:linear-gradient(135deg,var(--accent) 50%,#f0f3f4 50%)}.calendar-controls{display:flex;gap:12px;flex-wrap:wrap}.skip{position:absolute;top:-100px}.skip:focus{top:0;background:white;padding:12px}:focus-visible{outline:3px solid #2883a8;outline-offset:3px}[hidden]{display:none!important}@media(max-width:640px){header,main,footer{padding:16px}.rentals,.detail-body.with-contact{grid-template-columns:minmax(0,1fr)}.intro,aside,form,.rental>div{padding:18px}nav{gap:14px}.hero{aspect-ratio:4/3}}

.hp-content-page main{max-width:none;padding:0}
.hp-content-page main>h1,.hp-content-page main>.block{margin-inline:0;padding:24px max(20px,calc((100% - 1120px)/2))}
.hp-home main>section.full-image,.hp-content-page main>section.full-image{padding-inline:0}
.block.full-image>img{display:block;border-radius:0;max-height:520px;object-fit:cover}
.block.full-image>div{padding-inline:max(20px,calc((100% - 1120px)/2))}
.youtube-placeholder{padding:20px;border:1px solid #dce5e8;border-radius:12px;background:var(--wash)}
.youtube-placeholder iframe{display:block;width:100%;height:auto;aspect-ratio:16/9;border:0;margin:0}
.youtube-placeholder a{display:block;padding-block:12px}

#booking-search{position:relative}
#booking-search .hp-date-field{border:0;padding:0;margin:0 0 18px;min-height:80px}
#booking-search .hp-date-field legend{padding:0;margin-bottom:6px;font-weight:600}
.hp-date-field [data-range]{padding:0;border:0}
.hp-date-field summary{position:relative;list-style:none;min-height:50px;padding:10px 40px 10px 12px;border:1px solid #b8ccd7;border-radius:8px;font-weight:400;background:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hp-date-field summary::-webkit-details-marker{display:none}
.hp-date-field summary::after{content:'▦';position:absolute;right:12px;top:10px;color:#526570}
#booking-search .hp-date-field [data-range][open]{position:absolute;left:18px;top:48px;width:min(680px,calc(100% - 36px));z-index:25;padding:12px;background:#fff;border:1px solid #b8ccd7;border-radius:10px;box-shadow:0 8px 24px #293c4b24}

.hp-module-grid[data-columns]{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(100%,max(210px,var(--hp-column-width))),1fr))!important}
.hp-module-grid[data-columns="2"]{--hp-column-width:calc(50% - 8px)}
.hp-module-grid[data-columns="3"]{--hp-column-width:calc(33.333333% - 10.666667px)}
.hp-module-grid[data-columns="4"]{--hp-column-width:calc(25% - 12px)}

.hp-offer-saving{display:inline-block;background:#e6f2d5;color:#31520d;border:1px solid #aac977;border-radius:999px;padding:7px 12px;font-size:1rem;font-weight:700;line-height:1.4;margin:0 0 12px;overflow-wrap:anywhere;max-width:100%;box-sizing:border-box}
.hp-offer-price{display:flex;flex-direction:column;gap:4px;margin:14px 0;overflow-wrap:anywhere}
.hp-offer-price p{margin:0}
.hp-offer-price del{color:#52616b;text-decoration-thickness:2px}
.hp-offer-price strong{font-size:1.4rem;line-height:1.3;color:inherit}
.hp-offer-price small{font-size:.9rem}

.hp-home main{max-width:none;padding:0}
.hp-home header.site-nav,.hp-home footer{max-width:none;padding:22px max(24px,calc((100% - 1120px)/2))}
.hp-home main>.hero{display:block;height:clamp(280px,45vh,560px);max-height:none;aspect-ratio:auto;border-radius:0}
.hp-home main>section{margin:0;padding:40px max(24px,calc((100% - 1120px)/2))}
.hp-home main>.intro{padding-block:48px;border-radius:0;background:var(--wash)}
.hp-home .intro h1{font-size:clamp(32px,4vw,56px);max-width:22ch;margin:12px 0}
.hp-home .intro .prose{max-width:72ch;line-height:1.75}
.hp-home .eyebrow{text-transform:uppercase;font-size:12px;font-weight:700;letter-spacing:.08em;color:var(--ink)}
.hp-home #home-search{margin:0;padding:40px max(24px,calc((100% - 1120px)/2));background:#fff;border-radius:0}
#home-search .home-trip{display:grid;grid-template-columns:repeat(var(--hp-search-columns,3),minmax(0,1fr));gap:16px;align-items:end;position:relative}
#home-search .home-trip:has([name=pets]:not([type=hidden])){--hp-search-columns:4}
#home-search .home-trip:has([name=childrenCount]){--hp-search-columns:4}
#home-search .home-trip:has([name=childrenCount]):has([name=pets]:not([type=hidden])){--hp-search-columns:5}
#home-search .home-trip>.fields{display:contents}
#home-search fieldset{border:0;padding:0;margin:0}
#home-search legend{padding:0;margin-bottom:6px;font-weight:600}
#home-search label{margin:0;font-weight:600}
#home-search [data-range]{padding:0;border:0}
#home-search summary{list-style:none;min-height:50px;padding:10px 40px 10px 12px;border:1px solid #b8ccd7;border-radius:8px;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#home-search summary::-webkit-details-marker{display:none}
#home-search [data-range][open]{position:absolute;left:0;top:0;width:min(680px,100%);z-index:25;padding:12px;background:#fff;border:1px solid #b8ccd7;border-radius:10px;box-shadow:0 8px 24px #293c4b24}
#home-search .home-trip>button,#home-search input{min-height:50px}

#home-search p{font-size:13px;margin:12px 0 0;color:#526570}
@media(max-width:760px){#home-search .home-trip.home-trip{grid-template-columns:repeat(2,minmax(0,1fr))}.hp-home main>section,.hp-home #home-search{padding:24px}.hp-home main>.hero{height:280px}}
@media(max-width:640px){#home-search .home-trip.home-trip{grid-template-columns:minmax(0,1fr)}}
.homepage-layout-centered.homepage-layout-centered.homepage-layout-centered.homepage-layout-centered .site-nav{display:flex;flex-direction:column;text-align:center;gap:16px}
.homepage-layout-centered.homepage-layout-centered.homepage-layout-centered.homepage-layout-centered .site-nav nav{justify-content:center}
.homepage-layout-centered.homepage-layout-centered.homepage-layout-centered.homepage-layout-centered :is(.site-hero,.intro){text-align:center;padding:clamp(24px,5%,60px)}
.homepage-layout-centered.homepage-layout-centered.homepage-layout-centered.homepage-layout-centered :is(.site-hero,.intro) h2{margin-inline:auto}
.homepage-layout-centered.homepage-layout-centered.homepage-layout-centered.homepage-layout-centered :is(.site-hero,.intro) p{max-width:65ch;margin-inline:auto}
.homepage-layout-centered.homepage-layout-centered.homepage-layout-centered.homepage-layout-centered .site-nav img{object-position:center!important}
.homepage-layout-centered.homepage-layout-centered.homepage-layout-centered.homepage-layout-centered :is(.rental-card,.rental){border-radius:24px}
.homepage-layout-magazine.homepage-layout-magazine.homepage-layout-magazine.homepage-layout-magazine .site-nav{border-bottom:3px solid var(--accent)}
.homepage-layout-magazine.homepage-layout-magazine.homepage-layout-magazine.homepage-layout-magazine :is(.hero,.hero-photo,.rental,.rental-grid article){border-radius:0}
.homepage-layout-magazine.homepage-layout-magazine.homepage-layout-magazine.homepage-layout-magazine :is(.site-hero,.intro){background:transparent;border-block:1px solid var(--accent);border-radius:0}
.homepage-layout-magazine.homepage-layout-magazine.homepage-layout-magazine.homepage-layout-magazine :is(.rental,.rental-grid article){border:0;border-bottom:1px solid var(--accent);box-shadow:none}
.homepage-layout-magazine.homepage-layout-magazine.homepage-layout-magazine.homepage-layout-magazine :is(.rental>div,.rental-card-body){padding-inline:0}
.homepage-layout-compact.homepage-layout-compact.homepage-layout-compact.homepage-layout-compact .site-nav{padding:16px}
.homepage-layout-compact.homepage-layout-compact.homepage-layout-compact.homepage-layout-compact :is(.site-hero,.intro,.site-content){padding:18px}
.homepage-layout-compact.homepage-layout-compact.homepage-layout-compact.homepage-layout-compact .hero{max-height:260px;aspect-ratio:5/1}
.homepage-layout-compact.homepage-layout-compact.homepage-layout-compact.homepage-layout-compact .site-preview .hero-photo{height:160px}
.homepage-layout-compact.homepage-layout-compact.homepage-layout-compact.homepage-layout-compact :is(.rentals,.rental-grid){gap:16px}
.homepage-layout-compact.homepage-layout-compact.homepage-layout-compact.homepage-layout-compact :is(.rental>div,.rental-card-body){padding:16px}
.homepage-layout-compact.homepage-layout-compact.homepage-layout-compact.homepage-layout-compact :is(.rental>img,.rental-grid article>img){aspect-ratio:2/1}
.homepage-layout-modern.homepage-layout-modern.homepage-layout-modern.homepage-layout-modern .site-nav{padding-block:32px;border-bottom:1px solid var(--wash)}
.homepage-layout-modern.homepage-layout-modern.homepage-layout-modern.homepage-layout-modern :is(.hero,.hero-photo){border-radius:28px;overflow:hidden}
.homepage-layout-modern.homepage-layout-modern.homepage-layout-modern.homepage-layout-modern :is(.intro,.site-hero){padding:clamp(24px,5%,64px);border-radius:28px}
.homepage-layout-modern.homepage-layout-modern.homepage-layout-modern.homepage-layout-modern :is(.rental,.rental-grid article){border:0;border-radius:24px;box-shadow:0 8px 28px #293c4b12}
.homepage-layout-boxed.homepage-layout-boxed.homepage-layout-boxed.homepage-layout-boxed{background:#edf1f3;padding:clamp(8px,2%,28px)}
.homepage-layout-boxed.homepage-layout-boxed.homepage-layout-boxed.homepage-layout-boxed :is(.site-preview,main,header.site-nav,footer){max-width:1100px;margin-inline:auto;background:#fff}
.homepage-layout-boxed.homepage-layout-boxed.homepage-layout-boxed.homepage-layout-boxed .site-preview{box-shadow:0 10px 40px #293c4b18;border-radius:12px}
.homepage-layout-boxed.homepage-layout-boxed.homepage-layout-boxed.homepage-layout-boxed header.site-nav{border-radius:12px 12px 0 0}
.homepage-layout-boxed.homepage-layout-boxed.homepage-layout-boxed.homepage-layout-boxed footer{margin-top:0;border-radius:0 0 12px 12px}
.homepage-layout-boxed.homepage-layout-boxed.homepage-layout-boxed.homepage-layout-boxed :is(.site-nav,.site-hero,.site-content,.site-footer){padding-inline:clamp(16px,4%,44px)}
.homepage-layout-stylish.homepage-layout-stylish.homepage-layout-stylish.homepage-layout-stylish .site-nav{border-top:5px solid var(--accent)}
.homepage-layout-stylish.homepage-layout-stylish.homepage-layout-stylish.homepage-layout-stylish :is(.hero,.hero-photo){border-radius:48px 8px 48px 8px;overflow:hidden}
.homepage-layout-stylish.homepage-layout-stylish.homepage-layout-stylish.homepage-layout-stylish :is(.intro,.site-hero){border-inline-start:6px solid var(--accent);border-radius:0 32px 32px 0;padding:clamp(24px,5%,56px)}
.homepage-layout-stylish.homepage-layout-stylish.homepage-layout-stylish.homepage-layout-stylish :is(.intro,.site-hero) :is(h1,h2){letter-spacing:-.035em;line-height:1.15}
.homepage-layout-stylish.homepage-layout-stylish.homepage-layout-stylish.homepage-layout-stylish :is(.rental,.rental-grid article){border-radius:28px 6px 28px 6px;border-bottom:4px solid var(--accent)}

.site-nav nav{position:relative;align-items:center}
.site-nav details.hp-rental-dropdown{position:static;border:0;padding:0;min-width:0;font:inherit}
.site-nav .hp-rental-dropdown summary{display:flex;gap:8px;align-items:center;cursor:pointer;min-height:44px;padding:0 10px;border-radius:8px;font:inherit;color:inherit;list-style:none}
.site-nav .hp-rental-dropdown summary::-webkit-details-marker{display:none}
.site-nav .hp-rental-dropdown summary::after{content:'';width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-3px;flex-shrink:0}
.site-nav .hp-rental-dropdown[open] summary::after{transform:rotate(225deg);margin-top:3px}
.site-nav .hp-rental-dropdown[open] summary,.site-nav .hp-rental-dropdown summary:hover{background:var(--wash,#edf6fa);color:var(--ink,#293c4b)}
.site-preview .site-nav .hp-rental-dropdown{font-size:11px}
.fullscreen-content .site-preview .site-nav .hp-rental-dropdown{font-size:15px}
.site-nav .hp-rental-dropdown-links{position:absolute;inset-inline-start:0;top:calc(100% + 8px);z-index:20;width:300px;max-width:min(100%,calc(100vw - 64px));box-sizing:border-box;max-height:50vh;overflow:auto;background:#fff;color:#293c4b;border:1px solid #dce5e8;border-radius:12px;padding:8px;box-shadow:0 12px 32px #293c4b24;text-align:start}
.site-nav .hp-rental-dropdown-links a{display:flex;align-items:center;min-height:44px;box-sizing:border-box;white-space:normal;overflow-wrap:anywhere;padding:10px 12px;border-radius:6px;color:inherit;text-decoration:none;font:inherit;line-height:1.45}
.site-nav .hp-rental-dropdown-links a:first-child{font-weight:600;border-bottom:1px solid #dce5e8;border-radius:0;margin-bottom:6px;padding-bottom:14px}
.site-nav .hp-rental-dropdown-links a:hover,.site-nav .hp-rental-dropdown-links a:focus-visible{background:var(--wash,#edf6fa);color:var(--ink,#293c4b);text-decoration:underline;text-underline-offset:3px}
.site-nav .hp-rental-dropdown :is(summary,a):focus-visible{outline:2px solid var(--ink,#2883a8);outline-offset:2px}
@media(max-width:640px){.site-nav details.hp-rental-dropdown{position:static}.site-nav .hp-rental-dropdown-links{position:static;margin-top:4px}}

footer .hp-social-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
footer .hp-social-links a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;color:inherit;background:none;border:0;text-decoration:none}
footer .hp-social-links svg{width:24px;height:24px;display:block;flex-shrink:0}
footer .hp-social-links a:hover{opacity:.75}
footer .hp-social-links a:focus-visible{outline:3px solid #2883a8;outline-offset:2px}

.hp-gallery{min-width:0;margin:24px 0}.hp-gallery-track{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:16px;min-width:0}
.hp-gallery .hp-gallery-track figure{margin:0;min-width:0}.hp-gallery .hp-gallery-track img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:14px}
.hp-gallery-slide .hp-gallery-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px}.hp-gallery-slide .hp-gallery-track figure{flex:0 0 100%;scroll-snap-align:start}
.hp-gallery-controls{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:12px}.hp-gallery-controls button{min-height:44px;padding:10px 14px;border:1px solid #cbd8dd;border-radius:10px;color:#304956;background:#edf6fa;font:inherit;cursor:pointer}
.hp-gallery :focus-visible{outline:3px solid #277fab;outline-offset:2px}.hp-gallery figcaption{font-size:13px;padding:8px 0}.hp-gallery-empty{padding:16px;background:#f3f6f7}

.hp-elements{container-type:inline-size;overflow-wrap:anywhere}
.hp-elements *{box-sizing:border-box}
.hp-elements .hp-entry-grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
.hp-elements .hp-entry{margin:0;padding:20px;border:1px solid #dce5e8;border-radius:14px;min-width:0;background:var(--wash,#f4f8f9)}
.hp-elements h3{margin:0 0 10px;font-size:1.1em;color:var(--accent-ink,var(--ink,#293c4b))}
.hp-elements p{white-space:pre-line;line-height:1.6;margin:10px 0}
.hp-elements .hp-symbol{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:#fff;color:var(--accent,#285e72);font-size:26px;margin-bottom:12px}
.hp-elements img{display:block;width:100%;height:180px;object-fit:cover;border-radius:10px;margin-bottom:16px}
.hp-elements .hp-rating{font-weight:600}
.hp-elements a{display:inline-flex;align-items:center;min-height:44px;color:var(--accent-ink,var(--ink,#285e72));text-decoration:underline}
.hp-elements a:focus-visible,.hp-elements button:focus-visible{outline:3px solid #277fab;outline-offset:3px}
.hp-elements button{font:inherit;min-height:44px;padding:10px 14px;border:1px solid #bacbd3;border-radius:10px;background:#edf6fa;color:#304956;cursor:pointer}
.hp-elements .hp-source{font-size:.9em}
.hp-elements .hp-notice{padding:24px;border-radius:14px;border-left:5px solid #277fab;background:#eef7fc}
.hp-elements .hp-notice-success{border-color:#4f792b;background:#f1f7e8}
.hp-elements .hp-notice-warning{border-color:#a56b13;background:#fff6e5}
.hp-elements .hp-address{font-style:normal;white-space:pre-line}
.hp-elements iframe{display:block;width:100%;height:340px;border:0;margin:16px 0}
