/* SimplyVillas V31. Shared public presentation, independent of WordPress plugins. */
:root{--ink:#223f40;--muted:#66736e;--sand:#f5f2ec;--paper:#fff;--line:#dce3dd;--accent:#b69a72;--light:#e9efea;--radius:8px;--shadow:0 12px 40px #1839390a}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:140px}body{margin:0;color:var(--ink);background:#fcfbf8;font:15px/1.65 Arial,Helvetica,sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer}img{display:block;max-width:100%}p{margin:0 0 18px}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.17;letter-spacing:-.025em;margin:0 0 18px}h1{font-size:clamp(36px,5.2vw,62px)}h2{font-size:clamp(28px,3vw,40px)}h3{font-size:25px}ul{padding-left:22px}small,.small{font-size:13px}.muted{color:var(--muted)}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:0 0 13px}.container{width:min(1240px,calc(100% - 64px));margin:0 auto}.narrow{max-width:800px}.section{padding:58px 0}.section+.section{border-top:1px solid var(--line)}.section-heading{display:flex;gap:24px;align-items:end;justify-content:space-between;margin-bottom:24px}.section-heading h2{margin-bottom:0}.section-heading p{margin:0;max-width:450px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 20px;background:var(--ink);color:white;border:1px solid var(--ink);border-radius:4px;font-size:13px;font-weight:600;text-align:center;line-height:1.4}.button:hover{background:#355858}.button.secondary{background:transparent;color:var(--ink);border-color:#b8c6bb}.button.secondary:hover{background:var(--light)}.button.light{background:white;color:var(--ink);border-color:white}.text-link{color:var(--ink);border-bottom:1px solid var(--accent);padding-bottom:2px;font-size:13px;font-weight:600}.text-link:hover{border-color:var(--ink)}:focus-visible{outline:3px solid #af8c56;outline-offset:4px}button:disabled{opacity:.5;cursor:default}[hidden]{display:none!important}.skip-link{position:absolute;left:12px;top:-100px;z-index:300;background:white;padding:12px}.skip-link:focus{top:12px}.header{position:sticky;top:0;z-index:30;background:#fcfbf8f5;backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.header-inner{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:block;flex-shrink:0}.brand strong{display:block;font:21px/1.25 Georgia,serif;letter-spacing:.11em;font-weight:400}.brand span{display:block;font-size:8px;letter-spacing:.32em;text-align:center;margin-top:2px}.nav{display:flex;align-items:center;gap:22px;font-size:13px}.nav a:hover,.nav a[aria-current=page]{color:#8c704b}.nav .button{font-size:12px;min-height:42px;padding:9px 18px}.menu-toggle{display:none;background:transparent;border:1px solid var(--line);border-radius:4px;padding:7px 12px;font-size:13px}.breadcrumb{display:flex;gap:8px;flex-wrap:wrap;font-size:12px;color:var(--muted);padding:25px 0}.breadcrumb a:hover{text-decoration:underline}.intro{padding:15px 0 32px}.intro p{max-width:680px;color:var(--muted);font-size:16px}.intro.compact h1{font-size:clamp(35px,4vw,51px)}.intro.compact{padding-bottom:24px}
/* Search and catalogue */
.search-box{padding:22px;background:white;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.search-fields{display:grid;grid-template-columns:1.5fr 1fr 1fr .8fr auto;gap:13px;align-items:end}.field label{display:block;font-size:11px;font-weight:600;margin:0 0 7px;letter-spacing:.03em}.field input,.field select,.field textarea{width:100%;height:46px;padding:9px 12px;border:1px solid #cbd5cd;border-radius:4px;background:#fff;color:var(--ink);min-width:0}.field textarea{height:auto;resize:vertical}.field input[type=checkbox]{width:18px;height:18px}.field input::placeholder{color:#87908b}.search-note{margin:12px 0 0;font-size:12px;color:var(--muted)}.advanced{border-top:1px solid var(--line);margin-top:18px;padding-top:12px}.advanced summary{cursor:pointer;font-size:13px;font-weight:600;list-style-position:inside}.advanced-grid{display:grid;grid-template-columns:1.8fr 1fr 1fr;gap:14px;margin-top:15px}.filter-toggles{display:flex;flex-wrap:wrap;gap:12px 25px;align-items:center;margin-top:15px}.checkbox{display:flex;gap:8px;align-items:center;font-size:13px;cursor:pointer}.checkbox input{width:17px;height:17px;accent-color:var(--ink)}.reset{margin-left:auto;background:transparent;border:0;padding:5px 0;color:var(--muted);font-size:12px;text-decoration:underline}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 0 20px}.toolbar p{margin:0;font-size:14px}.toolbar label{display:flex;align-items:center;gap:10px;font-size:12px}.toolbar select{border:1px solid var(--line);border-radius:4px;padding:8px 10px;background:transparent;color:var(--ink);max-width:210px}.selection-summary{font-size:12px;color:var(--muted);margin:0 0 18px}.villa-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.villa-card{background:white;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;min-width:0;box-shadow:0 4px 18px #223f4005;transition:box-shadow .2s,transform .2s}.villa-card:hover{box-shadow:0 10px 28px #223f4012;transform:translateY(-2px)}.card-photo{position:relative;aspect-ratio:4/3;overflow:hidden;background:#e5e8df}.card-photo img{width:100%;height:100%;object-fit:cover}.photo-placeholder{height:100%;min-height:180px;background:linear-gradient(145deg,#e5e8df,#f0eee6);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:25px;text-align:center;gap:9px;color:#5d7068}.photo-placeholder strong{font:22px Georgia,serif}.photo-placeholder small{font-size:12px}.save-villa{position:absolute;right:13px;top:13px;border:0;border-radius:50%;width:36px;height:36px;background:#fffffff2;color:var(--ink);font-size:22px;line-height:1;display:flex;align-items:center;justify-content:center}.save-villa[aria-pressed=true]{background:var(--ink);color:#fff}.photo-step{position:absolute;top:50%;transform:translateY(-50%);background:#ffffffeb;border:0;border-radius:50%;width:33px;height:33px;color:var(--ink);font-size:24px;line-height:1}.photo-step.prev{left:12px}.photo-step.next{right:12px}.photo-counter{position:absolute;bottom:12px;right:12px;background:#223f40c9;color:white;font-size:10px;padding:3px 8px;border-radius:12px}.photo-label{position:absolute;bottom:13px;left:13px;background:#fffffff0;font-size:10px;padding:4px 9px;border-radius:3px;color:var(--ink)}.card-content{padding:22px 22px 20px;display:flex;flex-direction:column;flex:1}.card-location{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:0 0 8px}.card-title{font-size:26px;margin-bottom:13px;letter-spacing:-.02em}.card-title a:hover{color:#886e4c}.card-specs{display:flex;flex-wrap:wrap;gap:12px;list-style:none;padding:0;margin:0 0 13px;color:#4e615a;font-size:12px}.card-specs li{display:flex;gap:5px;align-items:center}.icon{width:17px;height:17px;vertical-align:middle;stroke-width:1.4;fill:none;stroke:currentColor;flex-shrink:0}.amenity-tags{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 16px}.amenity-tags span{font-size:10px;padding:3px 8px;background:#eff3ee;color:#4c635b;border-radius:3px}.card-description{color:var(--muted);font-size:13px;line-height:1.65;margin:0 0 17px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:auto;padding-top:16px;border-top:1px solid var(--line)}.card-actions .button{padding:9px 8px;font-size:11px;min-height:42px}.empty-state{padding:60px 20px;text-align:center;border:1px solid var(--line);background:white;border-radius:var(--radius)}.empty-state h2{font-size:30px}.empty-state p{color:var(--muted)}
/* Home and destinations */
.home-hero{position:relative;min-height:530px;display:flex;align-items:center;background:#425e5b;color:white}.home-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.home-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#172d3166,#152d310d)}.home-hero .container{position:relative;z-index:1;padding:50px 0 95px}.home-hero h1{font-size:clamp(42px,5.6vw,72px);max-width:660px}.home-hero .eyebrow{color:#e4dfd1}.home-hero p{max-width:430px;font-size:16px;color:#f4f1eb}.hero-credit{position:absolute;right:24px;bottom:20px;font-size:10px;z-index:2;color:#fff}.home-search{position:relative;z-index:3;margin-top:-55px;margin-bottom:15px}.area-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.area-card{padding:27px;background:var(--sand);border:1px solid var(--line);border-radius:var(--radius);display:flex;flex-direction:column}.area-card h3{font-size:27px;margin-bottom:10px}.area-card p{font-size:13px;color:var(--muted);flex:1}.area-card .text-link{align-self:start}.split-section{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.split-image{width:100%;height:390px;object-fit:cover;border-radius:var(--radius)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;counter-reset:step}.step{padding:25px;border-top:1px solid var(--accent)}.step:before{counter-increment:step;content:'0' counter(step);display:block;font-size:11px;color:#8d795e;letter-spacing:.1em;margin-bottom:15px}.step h3{font-size:24px}.step p{color:var(--muted);font-size:13px;margin:0}.cta-band{padding:38px;background:var(--ink);color:white;border-radius:var(--radius);display:flex;align-items:center;justify-content:space-between;gap:25px}.cta-band h2{margin-bottom:8px;font-size:32px}.cta-band p{margin:0;color:#dbe5dd;font-size:14px}.cta-band .button{flex-shrink:0}.feature-list{list-style:none;padding:0;margin:25px 0}.feature-list li{border-bottom:1px solid var(--line);padding:12px 0;font-size:14px}.feature-list strong{display:block;color:var(--ink)}.prose{color:#566860;max-width:850px}.prose p{line-height:1.85}.faq{border-top:1px solid var(--line);padding:18px 0}.faq summary{font-size:15px;font-weight:600;cursor:pointer}.faq p{padding-top:14px;margin-bottom:0;color:var(--muted);font-size:14px}
/* Villa detail */
.villa-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;padding-bottom:24px}.villa-heading h1{font-size:clamp(33px,4.5vw,53px);margin-bottom:11px}.villa-heading p{margin-bottom:0;color:var(--muted);font-size:13px}.villa-heading-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.inline-save{border:1px solid var(--line);background:white;padding:9px 13px;border-radius:4px;font-size:12px;color:var(--ink)}.inline-save[aria-pressed=true]{background:var(--light)}.villa-gallery{display:grid;grid-template-columns:2fr 1fr 1fr;gap:8px;position:relative;height:460px;overflow:hidden;border-radius:var(--radius)}.villa-gallery.single{display:block;max-width:100%;height:440px}.gallery-tile{padding:0;background:#e8ece5;border:0;overflow:hidden;min-width:0;position:relative}.gallery-tile img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.gallery-tile:hover img{transform:scale(1.03)}.gallery-tile:first-child{grid-row:span 2}.gallery-open{position:absolute;bottom:20px;right:20px;background:white;color:var(--ink);border:0;z-index:2;box-shadow:0 4px 20px #0002}.gallery-empty{background:var(--sand);padding:50px 30px;border-radius:var(--radius);text-align:center}.gallery-empty p{color:var(--muted)}.villa-tabs{display:flex;gap:30px;border-bottom:1px solid var(--line);padding:18px 0;font-size:12px}.villa-tabs a:hover{text-decoration:underline}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:55px;padding:38px 0 60px}.villa-detail .section{padding:30px 0}.villa-detail .section:first-child{padding-top:0}.villa-detail h2{font-size:29px}.villa-specs{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:0 0 26px}.villa-specs div{padding:15px 10px;border:1px solid var(--line);border-radius:4px;text-align:center}.villa-specs strong{display:block;font-size:18px;font-weight:400}.villa-specs span{font-size:11px;color:var(--muted)}.amenity-list{display:grid;grid-template-columns:1fr 1fr;gap:7px 25px;padding-left:18px;font-size:13px;color:#53655c}.facility-group{margin-bottom:22px}.facility-group h3{font-size:20px}.nearby-list{padding-left:20px;font-size:14px;color:var(--muted)}.nearby-list li{margin-bottom:10px}.location-map{width:100%;height:300px;border:0;border-radius:var(--radius);margin:10px 0}.quote-panel{position:sticky;top:115px;align-self:start;background:white;border:1px solid var(--line);border-radius:var(--radius);padding:25px;box-shadow:var(--shadow)}.quote-panel h2{font-size:25px;margin-bottom:12px}.quote-panel p{font-size:13px;color:var(--muted)}.quote-panel .field{margin-bottom:13px}.quote-panel .button{width:100%;margin-top:7px}.quote-panel .secondary{margin-top:10px}.quote-panel .small{font-size:11px;margin:12px 0 0}.two{display:grid;grid-template-columns:1fr 1fr;gap:15px}.booking-steps{list-style:none;counter-reset:quote;display:grid;gap:12px;padding:18px 0 0;margin:18px 0 0;border-top:1px solid var(--line)}.booking-steps li{display:flex;gap:10px;font-size:11px;color:var(--muted)}.booking-steps li:before{counter-increment:quote;content:counter(quote);width:20px;height:20px;line-height:20px;flex-shrink:0;text-align:center;background:var(--light);border-radius:50%;color:var(--ink)}.mobile-quote{display:none}.lightbox{border:0;max-width:96vw;max-height:94vh;padding:50px 55px 38px;background:#142a2c;color:white;overflow:hidden;border-radius:8px;width:1100px}.lightbox::backdrop{background:#0a1518eb}.lightbox img{width:100%;height:70vh;object-fit:contain}.lightbox-close{position:absolute;top:8px;right:12px;border:0;background:transparent;color:white;padding:5px 10px;font-size:28px}.lightbox-prev,.lightbox-next{position:absolute;top:50%;border:0;border-radius:3px;background:#fff2;color:white;font-size:26px;width:40px;height:50px}.lightbox-prev{left:8px}.lightbox-next{right:8px}.lightbox-count{text-align:center;font-size:12px;color:#d4ded7;margin-top:15px}.lightbox-count small{margin-left:12px}
/* Enquiry, footer and utility pages */
.enquiry-layout{display:grid;grid-template-columns:1fr 350px;gap:45px;align-items:start}.enquiry-form{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:30px}.enquiry-form .field{margin-bottom:18px}.enquiry-form fieldset{border:0;padding:0;margin:20px 0}.enquiry-form legend{font-weight:600;margin-bottom:10px;font-size:14px}.enquiry-form .checkbox{margin:12px 0;align-items:start}.enquiry-form .checkbox input{flex-shrink:0;margin-top:4px}.enquiry-form .button{width:100%;margin-top:10px}.enquiry-side{padding:25px;background:var(--sand);border-radius:var(--radius)}.enquiry-side h2{font-size:26px}.enquiry-side p{font-size:13px;color:var(--muted)}.inline-message{font-size:13px;background:var(--light);border-left:3px solid var(--ink);padding:13px 16px;margin:15px 0}.error-message{color:#933b2a;background:#fff1e9;border-color:#a64b35}.form-note{font-size:12px;color:var(--muted);margin-top:15px}.footer{background:var(--sand);border-top:1px solid var(--line);margin-top:50px;padding:45px 0 20px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.footer .brand{max-width:230px;margin-bottom:18px}.footer p{font-size:12px;color:var(--muted);max-width:330px}.footer h2{font-family:Arial,sans-serif;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;margin:0 0 15px}.footer-links{display:flex;flex-direction:column;gap:8px;font-size:12px}.footer-links a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid var(--line);padding-top:17px;margin-top:32px;display:flex;justify-content:space-between;font-size:10px;color:var(--muted)}.notice{margin:18px 0;padding:15px 20px;background:var(--light);font-size:13px;border-radius:4px}.success-card{padding:40px;background:white;border:1px solid var(--line);border-radius:var(--radius);max-width:750px;margin:50px auto}.success-card h1{font-size:40px}.support-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}.noscript-note{padding:15px;background:#f5e9d8;font-size:13px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.villa-gallery.three{grid-template-columns:2fr 1fr}.villa-gallery.single .gallery-tile{width:100%;height:100%}
@media(min-width:1051px){.villa-gallery>button.gallery-tile:nth-child(2),.villa-gallery>button.gallery-tile:nth-child(3),.villa-gallery>button.gallery-tile:nth-child(4),.villa-gallery>button.gallery-tile:nth-child(5){height:226px}.villa-gallery>button.gallery-tile:first-child{height:460px}}
@media(max-width:1050px){.container{width:calc(100% - 40px)}.nav{gap:15px;font-size:12px}.nav .button{display:none}.villa-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-layout{grid-template-columns:minmax(0,1fr) 310px;gap:30px}.villa-gallery{height:350px}.villa-gallery>button{min-height:0}.villa-gallery.single{height:390px}.area-grid{gap:15px}.search-fields{grid-template-columns:1.3fr 1fr 1fr .8fr}.search-fields>.button{grid-column:1/-1;min-height:44px}.split-section{gap:30px}.enquiry-layout{grid-template-columns:1fr 290px;gap:25px}}
@media(max-width:767px){html{scroll-padding-top:84px}.container{width:calc(100% - 32px)}.header-inner{min-height:66px;gap:14px}.brand strong{font-size:19px}.brand span{font-size:7px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fcfbf8;padding:22px;border-bottom:1px solid var(--line);flex-direction:column;align-items:start;gap:17px;font-size:15px}.nav.is-open{display:flex}.nav .button{display:inline-flex}.breadcrumb{padding:20px 0;font-size:11px}.intro{padding:10px 0 20px}.intro p{font-size:14px}.section{padding:38px 0}.section-heading{display:block;margin-bottom:22px}.section-heading p{margin-top:12px}.search-box{padding:17px}.search-fields{grid-template-columns:1fr 1fr;gap:12px}.search-fields .field:first-child{grid-column:1/-1}.search-fields>.button{grid-column:auto}.advanced-grid{grid-template-columns:1fr 1fr}.advanced-grid>.field:first-child{grid-column:1/-1}.filter-toggles{gap:12px 18px}.reset{margin-left:0}.toolbar{padding-top:22px;gap:12px;flex-wrap:wrap}.toolbar select{font-size:12px}.villa-grid{grid-template-columns:1fr;gap:23px}.card-content{padding:20px}.card-title{font-size:26px}.home-hero{min-height:455px}.home-hero .container{padding:40px 0 65px}.home-hero h1{font-size:43px}.home-hero p{font-size:14px;max-width:290px}.hero-credit{right:15px;bottom:17px}.home-search{margin-top:-25px}.area-grid{grid-template-columns:1fr}.area-card{padding:24px}.split-section{grid-template-columns:1fr;gap:25px}.split-image{height:270px}.steps{grid-template-columns:1fr;gap:12px}.step{padding:18px 0}.cta-band{display:block;padding:27px}.cta-band h2{font-size:30px}.cta-band .button{margin-top:23px}.villa-heading{display:block}.villa-heading h1{font-size:36px}.villa-heading-actions{margin-top:17px}.villa-gallery{grid-template-columns:1fr 1fr;height:340px}.villa-gallery>button:first-child{grid-column:span 2;grid-row:auto;height:240px}.villa-gallery>button:nth-child(n+4){display:none}.villa-gallery>button:nth-child(2),.villa-gallery>button:nth-child(3){height:92px}.villa-gallery.single{height:300px}.villa-gallery.single>button:first-child{height:300px;width:100%}.gallery-open{bottom:12px;right:12px;min-height:38px;padding:8px 12px;font-size:11px}.villa-tabs{gap:24px;font-size:11px;overflow-x:auto;white-space:nowrap}.detail-layout{display:flex;flex-direction:column;gap:10px;padding-top:25px;padding-bottom:30px}.villa-specs{grid-template-columns:repeat(2,1fr)}.villa-detail h2{font-size:28px}.quote-panel{position:static;width:100%;padding:23px}.mobile-quote{display:flex;position:fixed;bottom:0;left:0;right:0;background:#fffffff7;border-top:1px solid var(--line);z-index:25;padding:10px 16px;align-items:center;justify-content:space-between;gap:15px}.mobile-quote span{font-size:11px;color:var(--muted)}.mobile-quote .button{font-size:12px;padding:9px 14px;min-height:40px}.villa-page{padding-bottom:65px}.enquiry-layout{grid-template-columns:1fr;gap:20px}.enquiry-form{padding:22px}.enquiry-side{order:2}.two{gap:12px}.footer{padding-top:32px;margin-top:35px}.footer-grid{grid-template-columns:1fr 1fr;gap:25px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{display:block;line-height:1.9}.lightbox{padding:45px 40px 30px;width:96vw}.lightbox img{height:65vh}.lightbox-prev,.lightbox-next{width:32px;height:44px}.lightbox-prev{left:3px}.lightbox-next{right:3px}.lightbox-count{font-size:11px}.success-card{padding:25px;margin:35px 0}.success-card h1{font-size:34px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* V36.3: Date display follows selected SITE language, never browser/Windows locale. */
.sv-date-picker{position:relative;width:100%;min-width:0}
.field input.sv-date-native{position:absolute!important;left:0;top:0;width:1px;height:1px;padding:0;border:0;opacity:0;pointer-events:none;overflow:hidden}
.sv-date-display{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;height:46px;min-width:0;padding:9px 12px;border:1px solid #cbd5cd;border-radius:4px;background:#fff;color:var(--ink);text-align:left;font:inherit;font-size:14px;cursor:pointer}
.sv-date-display:focus-visible,.sv-date-display[aria-expanded=true]{outline:2px solid #32655f;outline-offset:2px}
.sv-date-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-variant-numeric:tabular-nums}
.sv-date-placeholder{color:#87908b;font-size:13px}
.sv-date-icon{font-size:20px;color:var(--ink);line-height:1;flex:0 0 auto}
.sv-date-panel{position:absolute;top:calc(100% + 7px);left:0;width:306px;max-width:calc(100vw - 32px);z-index:100;background:white;border:1px solid #cad7cf;border-radius:7px;box-shadow:0 12px 32px #142a2c30;padding:14px;color:#223f40}
.sv-date-panel[hidden]{display:none!important}
.sv-date-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:13px}
.sv-date-month{text-transform:capitalize;text-align:center;font-size:15px;font-weight:600}
.sv-date-arrow{width:34px;height:34px;border:1px solid #d3ddd5;border-radius:4px;background:#fff;font-size:24px;line-height:1;color:var(--ink);cursor:pointer}
.sv-date-arrow:disabled{opacity:.35;cursor:not-allowed}
.sv-date-weekdays,.sv-date-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;text-align:center}
.sv-date-weekdays{font-size:11px;color:#647a71;font-weight:600;margin-bottom:7px}
.sv-date-weekdays>span{padding:4px 0}
.sv-date-day{border:1px solid transparent;min-width:0;aspect-ratio:1;background:#fff;color:var(--ink);font-size:12px;border-radius:4px;cursor:pointer}
.sv-date-day:hover:not(:disabled){background:#e5ede8}
.sv-date-day.is-today{border-color:#6c8c82}
.sv-date-day.selected{background:#223f40;color:#fff}
.sv-date-day:focus-visible{outline:2px solid #28625a;outline-offset:1px}
.sv-date-day:disabled{color:#b8c3bd;cursor:not-allowed}
.sv-date-actions{display:flex;justify-content:space-between;border-top:1px solid #e0e7e0;margin-top:12px;padding-top:11px;gap:8px}
.sv-date-actions button{border:0;background:transparent;color:#2e6259;font-size:12px;font-weight:600;cursor:pointer;padding:5px}
.sv-date-actions button:disabled{color:#acb4af;cursor:not-allowed}
@media(max-width:767px){.search-fields>.field:nth-child(3) .sv-date-panel,.two>.field:nth-child(2) .sv-date-panel{left:auto;right:0}.sv-date-panel{width:300px}.sv-date-display{font-size:13px;padding:8px}.sv-date-placeholder{font-size:12px}}

/* Collection introduction: use the full content width on desktop. */
.intro p.collection-intro-line{max-width:none}
@media(min-width:1200px){.intro p.collection-intro-line{white-space:nowrap}}

/* Bring the collection search closer to its introduction. */
.intro.collection-intro{padding-bottom:8px}
.intro.collection-intro>p:last-child{margin-bottom:8px}

/* Hero slideshow controls sit above the overlapping booking bar. */
.hero-carousel-controls{position:absolute;z-index:3;right:24px;bottom:76px;display:flex;align-items:center;gap:9px;padding:7px 10px;border-radius:24px;background:#173b3ebd}
.hero-carousel-controls[hidden]{display:none!important}
.hero-carousel-controls button{display:grid;place-items:center;width:32px;height:32px;border:1px solid #ffffff70;border-radius:50%;background:transparent;color:#fff;font-size:22px;cursor:pointer;padding:0}
.hero-carousel-controls button:focus-visible{outline:3px solid white;outline-offset:3px}
.hero-carousel-dots{display:flex;gap:8px;align-items:center}
.hero-carousel-dots button{width:12px;height:12px;font-size:0}
.hero-carousel-dots button[aria-pressed="true"]{background:#fff}
@media(max-width:767px){.hero-carousel-controls{right:16px;bottom:42px;gap:7px;padding:5px 8px}.hero-carousel-controls button{width:28px;height:28px}.hero-carousel-dots button{width:10px;height:10px}}

/* Keep automatic hero changes without visible arrows or dots. */
.hero-carousel-controls>button[hidden],.hero-carousel-dots[hidden]{display:none!important}
.hero-carousel-controls{background:transparent;padding:0}
.hero-carousel-controls>button:last-child{opacity:0;transition:opacity .15s}
.hero-carousel-controls:hover>button:last-child,.hero-carousel-controls:focus-within>button:last-child{opacity:1}
@media(prefers-reduced-motion:reduce){.hero-carousel-controls>button:last-child{transition:none}}

/* Full-width hero subtitle on desktop; wrap naturally on smaller screens. */
.home-hero .container>p:not(.eyebrow){max-width:none}
@media(min-width:1200px){.home-hero .container>p:not(.eyebrow){white-space:nowrap;font-size:clamp(13px,1.1vw,16px)}}

/* Lighter hero photos with a subtle shadow for readable text. */
.home-hero h1,.home-hero .container>p{text-shadow:0 2px 8px #10242666}

/* Villa photographs fill the browser window while retaining the whole image. */
#photo-viewer.lightbox{position:fixed;inset:0;margin:0;border:0;border-radius:0;width:100vw;max-width:none;height:100vh;height:100dvh;max-height:none;padding:48px 52px 38px;box-sizing:border-box;background:#0a1215}
#photo-viewer.lightbox img{display:block;width:100%;height:100%;object-fit:contain;margin:0;touch-action:pan-y}
#photo-viewer .lightbox-close{z-index:2;top:max(8px,env(safe-area-inset-top));right:max(12px,env(safe-area-inset-right));font-size:34px}
#photo-viewer .lightbox-prev,#photo-viewer .lightbox-next{z-index:2;transform:translateY(-50%);height:56px;width:42px;background:#ffffff24}
#photo-viewer .lightbox-count{position:absolute;bottom:max(10px,env(safe-area-inset-bottom));left:52px;right:52px;margin:0;text-align:center}
@media(max-width:767px){#photo-viewer.lightbox{padding:52px 8px 42px}#photo-viewer .lightbox-prev,#photo-viewer .lightbox-next{width:34px;height:48px}#photo-viewer .lightbox-count{left:12px;right:12px}}

/* Destination photographs preserve the existing three-column card layout. */
.area-card.has-area-photo{padding-top:0;overflow:hidden}
.area-card .area-photo{height:auto;width:calc(100% + 54px);max-width:none;aspect-ratio:4/3;object-fit:cover;align-self:center;margin:0 -27px 22px;flex-shrink:0;border-radius:var(--radius) var(--radius) 0 0}
@media(max-width:767px){.area-card .area-photo{width:calc(100% + 48px);margin-left:-24px;margin-right:-24px}}

/* V36.27: collection search follows scrolling, below the measured header. */
.catalogue-page .search-box{position:sticky;top:var(--collection-header-height,75px);z-index:25;background:#fff;max-height:calc(100dvh - var(--collection-header-height,75px) - 12px);overflow:auto;box-shadow:0 6px 24px #18393914}
.collection-search-toggle{display:none}
@media(max-width:760px){
 .catalogue-page .search-box{padding:12px}
 .catalogue-page .search-box.is-stuck .collection-search-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;border:0;background:transparent;color:var(--ink);padding:4px 2px;font-weight:600}
 .catalogue-page .search-box.is-stuck:not(.search-expanded)>:not(.collection-search-toggle):not(input[type=hidden]){display:none}
 .catalogue-page .search-box.is-stuck.search-expanded{max-height:calc(100dvh - var(--collection-header-height,75px) - 12px)}
}
