/* Mediterranean colour edition: broad surfaces, not word-by-word badges. */
:root{--paper:#f2e8d6;--ink:#173f39;--olive:#245347;--line:#cbbfa9;--accent:#f2d37f;--muted:#526052;--terracotta:#a84d36;--peach:#f1d6bd;--butter:#f5df9e;--sage:#d8dfc5;--blue:#d6e5e3}body{background:var(--paper)}header{background:#f6e8cdeF;border-bottom:1px solid #d2bea0}header.scrolled{background:#f5e5c6f5}header .brand{color:#173f39}header .small{background:var(--terracotta);border-color:var(--terracotta)}header .small:hover{background:#93442f;border-color:#93442f}.language-options{background:#f7ead1;border-color:#d8b98d}.language-options button:hover,.language-options button[aria-pressed=true]{background:#e7d1aa}.hero{margin-bottom:65px;border:8px solid #e6c7a2;box-shadow:0 18px 45px #69472e12}.hero-copy{left:4%;top:5%;width:min(74%,860px);padding:25px 32px 24px;background:none;border:0;border-radius:0;box-shadow:none;backdrop-filter:none}.hero-brand{color:#fff9ef;text-shadow:0 2px 20px #00000080;margin-bottom:16px}.hero-copy .eyebrow{color:#e5eccf}.hero-copy h1{color:#fff4df;font-size:clamp(50px,5.6vw,82px);margin:16px 0}.hero-copy>p:not(.eyebrow){color:#f0ead9;max-width:400px}.lightlink{color:#f5df9e;border-color:#f5df9e70;padding-top:12px}.lightlink>span:last-child{border-color:#f5df9e99}.hero-note{background:#f4dda3;color:#173f39;padding:10px 16px;border-radius:3px;bottom:22px;left:4%;font-weight:600}.hero-stamp{background:#a84d36ef;color:#fff4df;border-color:#f1d6bd;backdrop-filter:none}.intro{background:#f4e6d8;border:1px solid #dfcebb;border-radius:65px 8px 8px 8px;padding:55px 55px 60px;margin-bottom:85px;gap:50px;overflow:hidden}.intro:after{color:#a24f2d0a;bottom:-20px}.intro>.eyebrow{color:#703d2b}.intro h2{font-size:clamp(38px,4vw,59px)}.intro>div>p{color:#43564a}.section-heading>.eyebrow,.section-heading>div>.eyebrow{color:#794831}.section-heading h2{background:#eee5d3;padding:22px 26px 26px;border-radius:5px 35px 5px 5px;box-shadow:3px 3px 0 #cdb68a12}.section-heading>p{background:#ececde;padding:18px 20px;border-left:3px solid #8a9a6d;border-radius:0 15px 0 0;color:#415344;max-width:260px}.availability-section .section-heading h2{background:#f6edda}.calendar-notice{background:#e9d1b1;border-color:#ba9670;color:#4d412f}.calendar-legend{background:#e5dfc8;padding:15px 18px;border-radius:6px}.availability-card{background:#f5e2bc;border:1px solid #c8ac7e;box-shadow:0 8px 28px #684f2b0b}.availability-card:nth-child(2){background:#e1e6cf;border-color:#b4c09c}.calendar-card-top{background:#e9c88f;margin:-28px -28px 0;padding:24px 28px;border-radius:8px 8px 0 0}.availability-card:nth-child(2) .calendar-card-top{background:#c9d4b1}.calendar-connection{background:#f6e8cf;color:#55432a;border-color:#bfa378}.calendar-source{background:#ffffff30;padding:10px 12px;border-radius:4px;color:#46523f}.calendar-help{color:#48503d}.calendar-selection{background:#ffffff45;padding:15px;border-bottom:0;border-radius:5px}.calendar-day.unknown{background:#f7ecd7;border-color:#9a987f}.availability-card:nth-child(2) .calendar-day.unknown{background:#eef1e3}.calendar-day.available{background:#c6dfa4;border-color:#7b945c}.calendar-day.unavailable{background:repeating-linear-gradient(135deg,#ebc5b6,#ebc5b6 3px,#dfb09d 3px,#dfb09d 4px);color:#633c31}.calendar-day.in-range{background:#e6c589}.calendar-day.selected{background:#173f39;color:#fff4df;border-color:#173f39}.calendar-use:disabled{background:#d2c4a8;color:#4d5946;border-color:#c1b294}.villa-grid article{padding:18px 18px 23px;border-radius:8px 8px 45px 8px;background:#edd5bc;border:1px solid #d3b69a;box-shadow:0 15px 40px #68452d0a}.villa-grid article:nth-child(2){background:#d9e1cb;border-color:#b4c29f}.villa-grid article>p,.villa-title,.villa-grid .textlink{margin-left:8px;margin-right:8px}.villa-grid .textlink{width:calc(100% - 16px);border-color:#9f9f7c}.villa-photo,.villa-grid article:nth-child(2) .villa-photo{border-radius:5px 5px 45px 5px}.villa-photo>span{background:#f5dfa9;color:#283e32}.villa-title h3{color:#1b4437}.villa-title>span{border-color:#a89773;background:#f7ead24d}.villa-grid article>p:not(.facts){color:#455544}.aside{background:#e1d6b8;padding:27px 35px;border-radius:45px 5px;max-width:800px;color:#46513e}.aside:before{display:none}.amenities{background:#e3e8d9;border-top:1px solid #c8d0bb;border-bottom:1px solid #c8d0bb}.amenities h2{background:#f4ecd7;padding:24px 28px 29px;border-radius:4px 35px 4px 4px;max-width:700px}.amenity-grid>div{background:#f0efE1;border:1px solid #d0d6c1;border-radius:6px 23px 6px 6px;padding:23px}.amenity-grid>div:nth-child(2){background:#eee4d5}.amenity-grid>div:nth-child(3){background:#e4ece6}.amenity-grid>div:nth-child(4){background:#f3ebd5}.amenity-grid b{background:#173f39;color:#f2dda4;border:0}.amenity-grid p{color:#465442}.gallery-section .section-heading h2{background:#f2e5d7}.filters{background:#e0d4b6;border-radius:30px;padding:5px}.filters button{border:0}.gallery button{border:5px solid #e5cba7}.gallery span{background:linear-gradient(transparent,#173f39ef);padding-top:30px}.gallery-section>.caption{background:#dce2cd;display:inline-block;padding:10px 16px;border-radius:4px;color:#43523e}.location{background:#e5ede8;border-block:1px solid #c5d3ca}.location-copy{background:#e5ede8}.location-copy h2{background:#f3e8da;padding:24px 25px 28px;border-radius:4px 35px 4px 4px;margin-left:-12px;margin-right:-12px}.location-copy p:not(.eyebrow){color:#3d5548}.location-copy .address{background:#dee7df;border:0;padding:16px;border-radius:4px}.booking{background:#f0e5d2;margin-top:80px;margin-bottom:80px;padding:50px;border-radius:8px 65px 8px 8px;gap:55px;border:1px solid #d7c9ae}.booking h2{background:#f7efde;padding:20px 24px 25px;border-radius:4px 30px 4px 4px;font-size:clamp(40px,4.2vw,60px)}.booking>div>p:not(.eyebrow){color:#43523f}.connection-status{background:#eaddc4;padding:17px;border:0;border-radius:5px}.connection-status p{color:#47523f}.booking form{background:#173f39;box-shadow:8px 8px 0 #af85652e}.direct-button{background:#f2d37f;border-color:#f2d37f}.direct-button:hover{background:#f9e4ac}.faq{background:#edeadd;padding:45px 40px 50px;border-radius:45px 6px 6px 6px;margin-bottom:85px;border:1px solid #d4d0bb}.faq>h2{background:#e5e8d8;padding:22px;border-radius:5px 28px 5px 5px}.faq details{background:#f4eadb;margin:12px 0;padding:20px;border:1px solid #d9cdb8;border-radius:5px}.faq details[open]{background:#f5eddd}.faq details p{color:#46523e}footer{background:#173f39;border-top:12px solid #a84d36}footer>.brand{color:#f4dda1}footer>p{background:#e5bca8;color:#173f39;display:inline-block;padding:12px 30px;border-radius:30px 4px}footer>div{background:#ffffff0b;border:1px solid #ffffff20;padding:18px;border-radius:5px}.sources-page{background:#f0e6d6;padding:45px;margin-top:40px;margin-bottom:40px;border-radius:40px 5px 5px}.sources-page h1{background:#f5eddb;padding:20px;border-radius:5px 25px 5px 5px}.sources-page>p{color:#43513f}@media(min-width:801px){.gallery:after{background:#c8d6b4;color:#354c36;border:5px solid #e5cba7}}@media(max-width:1050px){.hero-copy{width:82%;padding:22px 26px}.hero-brand{font-size:65px}.hero-copy h1{font-size:65px}.intro{padding:40px;gap:35px}.booking{padding:36px;gap:30px}.amenity-grid{gap:22px}.amenity-grid>div{padding:20px}}@media(max-width:800px){.hero{margin-bottom:45px}.hero-copy{top:5%;padding:24px;width:85%}.hero-copy h1{font-size:61px}.intro{padding:38px;gap:18px;margin-bottom:65px}.section-heading h2{padding:20px 22px 24px}.section-heading>p{max-width:100%;margin-bottom:0}.calendar-card-top{margin:-20px -20px 0;padding:20px}.booking{padding:30px;margin-top:60px;margin-bottom:60px}.faq{padding:30px;margin-bottom:60px}.aside{padding:25px}.amenity-grid{gap:18px}}@media(max-width:600px){.hero{height:770px;border-width:5px;border-radius:7px 7px 55px 7px}.hero-copy{top:4%;left:4%;width:91%;padding:22px 20px 20px;border-radius:5px 28px 5px 5px}.hero-brand{font-size:54px;margin-bottom:20px}.hero-copy h1{font-size:51px;line-height:1.03;margin:15px 0}.hero-copy .eyebrow{font-size:7px;letter-spacing:1.4px}.hero-copy>p:not(.eyebrow){font-size:11px}.hero-note{font-size:6px;letter-spacing:1.1px;max-width:190px;bottom:23px;padding:9px 10px}.hero-stamp{width:82px;height:82px;right:5%;bottom:3%}.intro{padding:28px 25px 30px;border-radius:35px 5px 5px 5px}.intro h2{font-size:39px}.section-heading h2{font-size:39px;padding:20px}.section-heading>p{padding:15px}.availability-card{padding:22px}.calendar-card-top{margin:-22px -22px 0;padding:20px 22px}.calendar-card-top h3{font-size:30px}.calendar-connection{font-size:7px;padding:3px 7px}.villa-grid article{padding:12px 12px 20px}.villa-title h3{font-size:39px}.amenities h2{font-size:39px;padding:20px}.amenity-grid{gap:13px}.amenity-grid>div{padding:17px 14px}.amenity-grid h3{line-height:1.5}.gallery button{border-width:3px}.location-copy{padding:35px 8% 40px}.location-copy h2{font-size:40px;padding:20px}.booking{padding:25px 20px;border-radius:6px 35px 6px 6px}.booking h2{font-size:42px;padding:18px}.booking form{padding:23px 20px}.faq{padding:28px 20px}.faq h2{font-size:39px}.faq details{padding:17px}.faq summary{font-size:11px}.sources-page{padding:26px}.sources-page h1{font-size:39px}}@media(max-width:360px){.hero-brand{font-size:46px}.hero-copy h1{font-size:45px}.hero-copy{padding:20px 17px}.hero{height:780px}.intro{padding:25px 20px}.section-heading h2{font-size:35px}.availability-card{padding:17px}.calendar-card-top{margin:-17px -17px 0;padding:17px}.calendar-card-top{flex-direction:column;align-items:start}.booking{padding:20px 15px}}

/* Readable text directly on the photograph; no coloured text panel. */
.hero:after{background:linear-gradient(90deg,#000000ad 0%,#00000099 76%,#00000024 100%),linear-gradient(0deg,#00000026,transparent 50%)}.hero-copy h1{text-shadow:0 2px 20px #00000075}.hero-copy>p:not(.eyebrow),.hero-copy .eyebrow{text-shadow:0 1px 9px #000000b3}

@media(max-width:600px){.hero:after{background:linear-gradient(90deg,#000000ad,#00000099)}}
