
:root{--paper:#f5f2ea;--ink:#222a25;--olive:#576354;--line:#d4d1c5;--light:#e7e1d3;--dark:#2d3932;--gold:#d8c7a1}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 'DM Sans',sans-serif}body.lock{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}h1,h2,h3,.brand,.large-line{font-family:'Playfair Display',Georgia,serif;font-weight:400;line-height:1.12}h1{font-size:clamp(3.2rem,7vw,7.5rem);letter-spacing:-.035em;margin:20px 0 25px}h2{font-size:clamp(2.7rem,5vw,5.8rem);letter-spacing:-.035em;margin:16px 0 28px}h3{font-size:clamp(1.7rem,2.8vw,2.8rem);margin:12px 0 18px}.wrap{width:min(1380px,calc(100% - 64px));margin:auto}.kicker{text-transform:uppercase;letter-spacing:.22em;font-size:.76rem;font-weight:700}.bodycopy{font-size:clamp(1rem,1.45vw,1.2rem);line-height:1.8;color:#515a51}.btn{border:1px solid var(--ink);background:var(--ink);color:#fff;padding:14px 23px;min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:22px;font-weight:600;transition:background .2s,color .2s}.btn:hover{background:#46574a}.btn.clear{background:transparent;color:inherit;border-color:currentColor}.btn.clear:hover{background:#ffffff2c}.text-link{display:inline-block;border-bottom:1px solid currentColor;padding-bottom:5px;font-weight:600}.text-link:hover{opacity:.65}.topbar{position:absolute;top:0;left:0;right:0;z-index:12;color:#fff}.nav{height:104px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid #ffffff67}.brand{font-size:1.7rem;white-space:nowrap;letter-spacing:.02em}.navlinks{display:flex;gap:30px;align-items:center;font-size:.88rem}.navlinks a:hover{text-decoration:underline;text-underline-offset:6px}.nav .btn{background:transparent;border-color:#fff;padding:9px 16px;min-height:44px}.menu-button{display:none;background:none;color:#fff;border:0;font-size:1.5rem}.mobile-menu{display:none}.hero{height:min(900px,100svh);min-height:700px;position:relative;color:#fff;background:#23312a;overflow:hidden}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.1s}.hero-photo.active{opacity:1}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#101b18b5 0%,#101b1872 45%,#101b180b 100%),linear-gradient(0deg,#142019a6,transparent 42%);pointer-events:none}.hero-inner{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-top:100px}.hero-inner p{max-width:510px;font-size:1.15rem;line-height:1.75}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.hero .btn{background:#f5f2ea;border-color:#f5f2ea;color:var(--ink)}.hero .btn.clear{background:transparent;color:#fff;border-color:#fff}.hero-bottom{position:absolute;z-index:3;bottom:28px;left:0;right:0}.hero-controls{display:flex;align-items:center;gap:9px}.hero-dot{height:3px;width:32px;background:#ffffff90;border:0;padding:0}.hero-dot[aria-current=true]{background:white;width:52px}.hero-dot:focus-visible{outline:2px solid white;outline-offset:5px}.at-glance{border-bottom:1px solid var(--line)}.facts{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap;padding:30px 0;text-transform:uppercase;letter-spacing:.12em;font-size:.76rem;font-weight:700}.facts span{white-space:nowrap}.section{padding:clamp(80px,10vw,155px) 0}.intro{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.intro h2{max-width:620px}.intro-image{width:100%;height:min(680px,55vw);object-fit:cover}.intro-copy{max-width:560px}.number{font-family:'Playfair Display',serif;font-size:2.5rem;color:#a5a48f}.photo-band{display:grid;grid-template-columns:1.25fr 1fr;gap:12px}.photo-band img{width:100%;height:620px;object-fit:cover}.photo-band img:last-child{height:500px;align-self:end}.villa-text{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-top:60px}.villa-text p{margin-top:0}.amenities{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);margin-top:48px}.amenities div{padding:25px 15px 0 0;font-size:.94rem}.amenities strong{display:block;font-size:1.15rem;margin-bottom:3px}.story{background:var(--dark);color:#f6f1e7}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.story-photo{width:100%;height:710px;object-fit:cover}.story .bodycopy{color:#d1d5cb}.story .kicker{color:#e1cfaa}.story h2{max-width:680px}.story-note{border-top:1px solid #9ca79a;padding-top:20px;margin-top:35px;color:#d1d5cb;font-size:.91rem}.life-head{max-width:700px;margin-bottom:55px}.life-gallery{display:grid;grid-template-columns:1.1fr .9fr 1fr;gap:12px}.life-gallery img{height:440px;width:100%;object-fit:cover}.life-gallery img:nth-child(2){margin-top:70px}.gallery-section{background:#eae5d9}.gallery-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}.gallery-head h2{margin-bottom:0}.gallery-mosaic{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.gallery-mosaic button{padding:0;border:0;background:none;overflow:hidden}.gallery-mosaic img{width:100%;height:250px;object-fit:cover;transition:transform .35s}.gallery-mosaic button:hover img{transform:scale(1.04)}.gallery-mosaic button:first-child{grid-column:span 2;grid-row:span 2}.gallery-mosaic button:first-child img{height:512px}.gallery-actions{display:flex;justify-content:center;margin-top:35px}.location-grid{display:grid;grid-template-columns:.83fr 1.17fr;gap:9%;align-items:center}.location-grid img{width:100%;height:540px;object-fit:cover}.location-grid p{max-width:530px}.location-meta{border-top:1px solid var(--line);padding-top:18px;margin-top:32px;color:var(--olive);font-size:.91rem}.regional-map{padding:0 0 clamp(80px,10vw,145px)}.regional-map-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:26px}.regional-map-head h2{font-size:clamp(2.2rem,4vw,4.2rem);margin-bottom:0}.map-frame{height:clamp(460px,54vw,690px);background:#d6d9d0;border:1px solid var(--line);overflow:hidden}.map-frame iframe{width:100%;height:100%;border:0;display:block}.map-caption{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:14px;font-size:.86rem;color:var(--olive)}.map-caption a{text-decoration:underline;text-underline-offset:4px}.travel{background:#ebe8df}.travel-head{max-width:750px}.travel-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid #b7b7aa;border-bottom:1px solid #b7b7aa;margin:50px 0 28px}.travel-item{padding:30px 22px 32px 0;border-right:1px solid #b7b7aa}.travel-item:not(:first-child){padding-left:22px}.travel-item:last-child{border-right:0}.travel-item small{font-size:.76rem;letter-spacing:.14em;text-transform:uppercase}.travel-item h3{font-size:1.7rem;margin:18px 0 10px}.travel-item p{font-size:.94rem;color:#566058;margin:0}.explore-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.explore-card{position:relative;min-height:360px;overflow:hidden;background:#485950;color:#fff;display:flex;align-items:end;padding:28px}.explore-card{background:var(--dark);border-top:4px solid #b6aa8e}.explore-card:nth-child(2){background:#536154}.explore-card:nth-child(3){background:#7a7765}.explore-card div{position:relative}.explore-card h3{margin:8px 0 0}.reviews{background:var(--dark);color:#fff}.review-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:10%}.review-score{font:400 clamp(5rem,10vw,11rem)/1 'Playfair Display',serif}.review-score span{font:500 1.1rem 'DM Sans',sans-serif}.reviews p{color:#d3d9d2}.review-details{display:grid;gap:20px;align-content:center}.review-item{border-top:1px solid #aab4a9;padding-top:24px}.review-item strong{display:block;font-size:1.15rem;margin-bottom:8px}.reviews a{text-decoration:underline;text-underline-offset:5px}.booking{padding:120px 0;background:#e3dccd}.booking-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%}.booking h2{max-width:620px}.booking p{max-width:520px}.form{display:grid;grid-template-columns:1fr 1fr;gap:17px;align-content:start}.field{display:flex;flex-direction:column;gap:7px;font-size:.87rem;font-weight:600}.field input,.field select{background:#faf8f2;color:var(--ink);border:1px solid #aaa99e;min-height:52px;width:100%;padding:12px;color-scheme:light}.form-actions{grid-column:1/-1;display:flex;gap:12px;flex-wrap:wrap;margin-top:10px}.form-actions .btn{flex:1;white-space:nowrap}.booking small{display:block;margin-top:18px;color:#5d655c}.footer{background:#1d2a24;color:#e9ede5;padding:44px 0}.footer-grid{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;align-items:center}.footer small{color:#b9c5b8}.footer a:hover{text-decoration:underline}.lightbox{position:fixed;z-index:30;inset:0;background:#101913f5;color:#fff;display:none;align-items:center;justify-content:center;padding:65px 70px}.lightbox.open{display:flex}.lightbox img{max-width:100%;max-height:100%;object-fit:contain}.lightbox button{position:absolute;border:0;background:#ffffff1e;color:#fff;width:45px;height:45px;font-size:1.6rem}.lightbox .close{top:17px;right:20px}.lightbox .prev{left:12px}.lightbox .next{right:12px}.lightbox .caption{position:absolute;bottom:18px;font-size:.86rem}.mobile-menu.open{display:flex}
.villa-opening{display:grid;grid-template-columns:1.1fr .9fr;gap:10%;align-items:end}.villa-opening h2{margin-bottom:0}.villa-opening p{max-width:510px;margin:0 0 8px}.villa-facts{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:60px 0 38px}.villa-facts>div{padding:28px 15px 28px 0;border-right:1px solid var(--line)}.villa-facts>div:not(:first-child){padding-left:24px}.villa-facts>div:last-child{border-right:0}.villa-fact-number{display:block;font:400 clamp(2.1rem,3vw,3.4rem)/1.15 'Playfair Display',serif;white-space:nowrap}.villa-fact-number em{font-size:.53em;font-style:normal}.villa-facts>div>span:last-child{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:.73rem;font-weight:700;margin-top:10px;color:var(--olive)}.estate-photo{position:relative}.estate-photo img{width:100%;height:clamp(400px,56vw,720px);object-fit:cover}.estate-photo>span{position:absolute;left:25px;bottom:25px;background:#f5f2eaeb;color:var(--ink);padding:11px 17px;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:700}.villa-split{display:grid;grid-template-columns:.85fr 1.15fr;gap:9%;align-items:center;padding:110px 0}.villa-split-text{max-width:520px}.villa-split-photos{display:grid;grid-template-columns:1fr .6fr;gap:12px;align-items:end}.villa-split-photos img:first-child{height:560px;width:100%;object-fit:cover}.villa-split-photos img:last-child{height:320px;width:100%;object-fit:cover;margin-bottom:-35px}.villa-interior{display:grid;grid-template-columns:1.1fr .9fr;gap:9%;align-items:center}.villa-interior-photos{display:grid;grid-template-columns:1fr .75fr;gap:12px;align-items:end}.villa-interior-photos img:first-child{height:600px;width:100%;object-fit:cover}.villa-interior-photos img:last-child{height:360px;width:100%;object-fit:cover;margin-bottom:-35px}.villa-interior-text{max-width:540px}.villa-amenity-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;border-top:1px solid var(--line);margin-top:32px}.villa-amenity-grid span{border-bottom:1px solid var(--line);padding:12px 0;font-size:.89rem;font-weight:600}.villa-closing{padding:155px 0 0;max-width:900px;margin:auto;text-align:center}.villa-closing .large-line{display:block;font-size:clamp(2.1rem,4vw,4.7rem);margin:22px auto 34px}.villa-closing .bodycopy{max-width:690px;margin:18px auto}.villa-closing .text-link{margin-top:22px}@media(max-width:900px){.villa-opening,.villa-split,.villa-interior{grid-template-columns:1fr;gap:35px}.villa-facts{grid-template-columns:repeat(2,1fr)}.villa-facts>div:nth-child(2){border-right:0}.villa-facts>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.villa-facts>div:nth-child(3){padding-left:0}.villa-split{padding:75px 0 100px}.villa-split-photos img:first-child,.villa-interior-photos img:first-child{height:470px}.villa-interior-photos{order:2}.villa-closing{padding-top:105px}}@media(max-width:500px){.villa-facts{margin:40px 0 22px}.villa-facts>div{padding:20px 10px 20px 0}.villa-facts>div:not(:first-child){padding-left:12px}.villa-facts>div:nth-child(3){padding-left:0}.villa-fact-number{font-size:2rem}.villa-facts>div>span:last-child{font-size:.68rem;letter-spacing:.05em}.estate-photo img{height:340px}.estate-photo>span{left:10px;bottom:10px;padding:8px;font-size:.6rem}.villa-split-photos img:first-child,.villa-interior-photos img:first-child{height:310px}.villa-split-photos img:last-child,.villa-interior-photos img:last-child{height:190px;margin-bottom:-20px}.villa-closing{padding-top:75px}.villa-amenity-grid{gap:0 12px}}
.review-heading{max-width:760px}.review-heading p{color:#d3d9d2}.review-platforms{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #aab4a9;border-bottom:1px solid #aab4a9;margin:55px 0 25px}.review-platform{padding:35px 45px 42px 0}.review-platform+div{border-left:1px solid #aab4a9;padding-left:45px}.review-platform .review-score{font-size:clamp(4rem,7vw,7rem);margin:10px 0}.review-platform p{max-width:420px}.guest-notes{display:grid;grid-template-columns:1fr 1fr;gap:30px}.guest-notes article{padding:15px 0}.guest-notes p{font:400 clamp(1.2rem,2vw,1.65rem)/1.45 'Playfair Display',serif;color:#fff}.review-source{font-size:.86rem;color:#b9c5ba;margin-top:38px}@media(max-width:750px){.review-platforms,.guest-notes{grid-template-columns:1fr}.review-platform+div{border-left:0;border-top:1px solid #aab4a9;padding-left:0}.review-platform{padding:30px 0}.guest-notes{gap:0}}@media(max-width:1000px){.navlinks{gap:16px}.facts{justify-content:flex-start;column-gap:30px}.travel-grid{grid-template-columns:repeat(2,1fr)}.travel-item:nth-child(2){border-right:0}.travel-item:nth-child(-n+2){border-bottom:1px solid #b7b7aa}.travel-item:nth-child(3){padding-left:0}.amenities{grid-template-columns:repeat(2,1fr)}}@media(max-width:750px){.wrap{width:calc(100% - 34px)}.nav{height:76px}.navlinks,.nav .btn{display:none}.menu-button{display:block}.mobile-menu{position:absolute;top:76px;left:0;right:0;background:var(--dark);padding:24px;flex-direction:column;gap:17px}.hero{height:780px;min-height:650px}.hero-inner{padding-top:70px}.hero h1{max-width:550px}.intro,.story-grid,.location-grid,.booking-grid,.villa-text,.review-layout{grid-template-columns:1fr;gap:35px}.intro-image,.story-photo,.location-grid img{height:410px}.story-photo{order:2}.photo-band{grid-template-columns:1fr 1fr}.photo-band img{height:370px}.photo-band img:last-child{height:310px}.life-gallery{grid-template-columns:1fr 1fr}.life-gallery img{height:300px}.life-gallery img:nth-child(2){margin-top:40px}.life-gallery img:nth-child(3){display:none}.gallery-mosaic{grid-template-columns:repeat(2,1fr)}.gallery-mosaic button:first-child{grid-column:span 2;grid-row:span 1}.gallery-mosaic button:first-child img{height:350px}.gallery-mosaic img{height:190px}.explore-grid{grid-template-columns:1fr 1fr}.explore-card{min-height:280px}.review-score{font-size:6rem}}@media(max-width:500px){.hero{min-height:700px;height:90svh}.hero-buttons{width:100%}.hero-buttons .btn{flex:1;padding:12px}.facts{gap:12px 18px;padding:25px 0}.facts span{font-size:.71rem}.section{padding:75px 0}.intro-image,.story-photo,.location-grid img{height:320px}.photo-band img{height:260px}.photo-band img:last-child{height:220px}.amenities{margin-top:10px}.gallery-head{display:block}.regional-map-head{display:block}.regional-map-head .text-link{margin-top:14px}.gallery-head .text-link{margin-top:8px}.gallery-mosaic img{height:145px}.gallery-mosaic button:first-child img{height:260px}.travel-grid{grid-template-columns:1fr}.travel-item,.travel-item:not(:first-child){padding:24px 0;border-right:0;border-bottom:1px solid #b7b7aa}.travel-item:last-child{border:0}.explore-grid{grid-template-columns:1fr}.explore-card{min-height:250px}.form{grid-template-columns:1fr}.form-actions{grid-column:1}.form-actions .btn{width:100%}.booking{padding:80px 0}.lightbox{padding:65px 10px}.lightbox .prev,.lightbox .next{top:auto;bottom:16px}.lightbox .caption{bottom:32px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-photo,.gallery-mosaic img,.explore-card img{transition:none}}

.site-header{position:relative;background:var(--dark);color:#fff;z-index:12}.site-header .nav{border-bottom:1px solid #ffffff3a}.site-header .nav .btn{background:transparent;border-color:#fff}.site-header .brand{font-size:1.65rem}.site-header .navlinks{gap:24px}.site-header .navlinks a[aria-current="page"]{border-bottom:1px solid #e6d4a9;padding-bottom:4px}.site-header.overlay{position:absolute;left:0;right:0;top:0;background:transparent}.site-header.overlay .nav{border-bottom:1px solid #ffffff67}.page-intro{padding:85px 0 55px}.page-intro h1{font-size:clamp(3rem,6vw,6rem);max-width:900px;margin:16px 0}.page-intro p{max-width:670px}.page-intro .kicker{color:var(--olive)}.page-intro.dark-intro{background:var(--dark);color:#fff;padding-bottom:90px}.page-intro.dark-intro .kicker,.page-intro.dark-intro p{color:#d1d9d1}.page-hero-photo{height:min(620px,55vw);min-height:330px;width:100%;object-fit:cover}.compact-section{padding-top:70px;padding-bottom:70px}.feature-title{max-width:750px;margin-bottom:45px}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.feature-card{position:relative;display:flex;align-items:end;min-height:420px;color:#fff;padding:22px;overflow:hidden;background:var(--dark)}.feature-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.65);transition:transform .3s}.feature-card:hover img{transform:scale(1.05)}.feature-card div{position:relative}.feature-card h3{font-size:1.7rem;margin:8px 0}.feature-card p{font-size:.87rem;line-height:1.5;margin:0}.region-teaser{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.region-teaser img{width:100%;height:500px;object-fit:cover}.region-teaser p{max-width:520px}.review-teaser{background:var(--dark);color:#fff}.review-teaser-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.review-teaser p{color:#d1d9d1}.review-teaser-scores{display:flex;gap:50px;border-top:1px solid #aab4a9;padding-top:25px}.review-teaser-scores strong{display:block;font:400 3.5rem/1.1 'Playfair Display',serif}.review-teaser-scores span{font-size:.83rem}.final-cta{background:#e3dccd;padding:100px 0;text-align:center}.final-cta h2{max-width:850px;margin:15px auto 30px}.page-links{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}.story-page .story-grid{grid-template-columns:1fr 1fr}.story-page .story-photo{height:620px}.story-deeper{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.story-deeper img{width:100%;height:520px;object-fit:cover}.experience-page .life-head{margin-bottom:38px}.experience-page .life-gallery img:nth-child(3){display:block}.experience-page .life-gallery{margin-bottom:0}.gallery-page .gallery-mosaic{grid-template-columns:repeat(4,1fr)}.gallery-page .gallery-mosaic button:first-child{grid-column:auto;grid-row:auto}.gallery-page .gallery-mosaic button:first-child img,.gallery-page .gallery-mosaic img{height:240px}.gallery-page .gallery-actions{display:none}.contact-top{background:var(--dark);color:#fff;padding:75px 0}.contact-top p{color:#d1d9d1;max-width:650px}.contact-top h1{max-width:800px}.contact-page .booking{padding:85px 0}.contact-page .booking h2{font-size:clamp(2.1rem,4vw,4rem)}.contact-page .booking-grid{align-items:start}.footer-nav{display:flex;gap:16px;flex-wrap:wrap;font-size:.82rem}.footer-nav a:hover{text-decoration:underline}
@media(max-width:1100px){.site-header .navlinks{gap:12px;font-size:.78rem}.feature-grid{grid-template-columns:repeat(2,1fr)}.feature-card{min-height:330px}}@media(max-width:750px){.site-header .nav{height:76px}.site-header .navlinks{display:none}.site-header .nav .btn{display:none}.page-intro{padding:60px 0 35px}.page-hero-photo{height:380px}.region-teaser,.review-teaser-grid,.story-deeper,.story-page .story-grid{grid-template-columns:1fr;gap:30px}.region-teaser img,.story-deeper img,.story-page .story-photo{height:380px}.review-teaser-scores strong{font-size:2.7rem}.gallery-page .gallery-mosaic{grid-template-columns:repeat(2,1fr)}.gallery-page .gallery-mosaic img,.gallery-page .gallery-mosaic button:first-child img{height:180px}.feature-card{min-height:280px}.footer-nav{width:100%}}@media(max-width:500px){.feature-grid{grid-template-columns:1fr 1fr;gap:7px}.feature-card{min-height:235px;padding:12px}.feature-card h3{font-size:1.35rem}.feature-card p{font-size:.75rem}.review-teaser-scores{gap:24px}.region-teaser img,.story-deeper img,.story-page .story-photo{height:300px}.gallery-page .gallery-mosaic img,.gallery-page .gallery-mosaic button:first-child img{height:135px}.final-cta{padding:75px 0}}

.page-intro--visual{display:grid;grid-template-columns:.86fr 1.14fr;gap:8%;align-items:center;padding-top:75px;padding-bottom:95px;min-height:610px}.page-intro--visual h1{font-size:clamp(3rem,5.5vw,6rem);line-height:1.05}.page-intro--visual .bodycopy{max-width:570px}.page-intro-image{width:100%;height:clamp(380px,43vw,590px);object-fit:cover}.contact-intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:8%;align-items:center}.contact-intro img{width:100%;height:clamp(380px,43vw,570px);object-fit:cover}.contact-intro h1{font-size:clamp(3rem,5.5vw,6rem)}.contact-top{padding:65px 0}.contact-top p{font-size:1.12rem;line-height:1.8}@media(max-width:750px){.page-intro--visual,.contact-intro{grid-template-columns:1fr;gap:28px;min-height:0}.page-intro--visual{padding-top:55px;padding-bottom:60px}.page-intro-image,.contact-intro img{height:340px}.contact-top{padding:55px 0}}@media(max-width:500px){.page-intro-image,.contact-intro img{height:260px}}
.home-story-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:9%;align-items:center}.home-story-grid img{width:100%;height:570px;object-fit:cover}.home-story-grid h2{max-width:650px}.home-story-grid p{max-width:560px;margin-bottom:27px}@media(max-width:750px){.home-story-grid{grid-template-columns:1fr;gap:35px}.home-story-grid img{height:380px}}@media(max-width:500px){.home-story-grid img{height:300px}}.site-header .brand{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.1}.brand-stars{display:block;font:400 .68rem/1 'DM Sans',sans-serif;letter-spacing:.2em;color:var(--gold);margin-top:7px}@media(max-width:750px){.site-header .brand{align-items:flex-start}.brand-stars{font-size:.62rem;margin-top:5px}}
.travel-destination{display:block;color:var(--olive);font-size:.88rem;margin:-7px 0 15px}.travel-metrics{display:flex;gap:10px 18px;flex-wrap:wrap;margin:4px 0 18px;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--olive)}.travel-metrics span{white-space:nowrap}.travel-metrics strong{font-size:1rem;color:var(--ink);letter-spacing:0}.home-travel{background:#f5f2ea;border-top:1px solid var(--line)}.home-travel .travel-head{max-width:800px}.home-travel .travel-grid{margin-top:38px}

.direct-booking{background:var(--dark);color:#f6f1e7;padding:clamp(48px,6vw,85px) 0}.direct-booking-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);align-items:center;gap:7%}.direct-booking .kicker{color:var(--gold)}.direct-booking h2{font-size:clamp(2.2rem,3.7vw,4.2rem);margin:12px 0 16px}.direct-booking p{color:#d1d5cb;max-width:670px;margin:0;line-height:1.75}.direct-booking-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.direct-booking-actions .btn{background:transparent;color:#f6f1e7;border-color:#b9b6a6;min-height:56px;padding:11px 13px;gap:8px}.direct-booking-actions .btn:hover{background:#f6f1e7;color:var(--dark)}@media(max-width:1100px){.direct-booking-grid{grid-template-columns:1fr;gap:28px}.direct-booking-actions{max-width:680px}}@media(max-width:550px){.direct-booking-actions{grid-template-columns:1fr}.direct-booking-actions .btn{justify-content:space-between}}

.footer{padding:70px 0 24px}.footer-main{display:grid;grid-template-columns:minmax(250px,1.4fr) minmax(160px,.7fr) minmax(260px,1fr);gap:clamp(32px,6vw,110px);align-items:start;padding-bottom:65px}.footer-about .brand{font-size:2.05rem}.footer-about p{color:#b9c5b8;max-width:310px;line-height:1.7;margin:22px 0 0}.footer-label{display:block;font-size:.74rem;text-transform:uppercase;letter-spacing:.2em;color:var(--gold);font-weight:700;margin:6px 0 25px}.footer-nav{display:flex;flex-direction:column;align-items:flex-start;gap:7px;font-size:.92rem}.footer-nav .footer-label{margin-bottom:12px}.footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:8px;font-size:.92rem}.footer-contact .footer-label{margin-bottom:11px}.footer-contact address{font-style:normal;color:#b9c5b8;line-height:1.65;margin-bottom:8px}.footer-bottom{border-top:1px solid #ffffff35;display:flex;justify-content:space-between;gap:20px;padding-top:22px}.footer-bottom small{font-size:.82rem}.footer-bottom a{color:#e9ede5}@media(max-width:750px){.footer-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:38px;padding-bottom:45px}.footer-about{grid-column:1/-1}}@media(max-width:500px){.footer{padding-top:55px}.footer-main{grid-template-columns:1fr;gap:30px}.footer-about{grid-column:auto}.footer-bottom{flex-direction:column;gap:8px}}

/* Villa Idol wordmark */
.brand-logo{display:block!important;flex-shrink:0;line-height:1}.brand-logo-frame{display:block;position:relative;width:166px;aspect-ratio:1380/445;overflow:hidden}.brand-logo-frame img{position:absolute;width:128.551%;max-width:none;height:auto;left:-13.768%;top:-62.921%}.brand-logo-light{display:none}.site-header .brand-logo-light,.footer .brand-logo-light{display:block;filter:brightness(0) invert(97%) sepia(7%) saturate(400%);clip-path:inset(0 0 23% 0)}.footer .brand-logo-frame{width:220px}@media(max-width:750px){.site-header .brand-logo-frame{width:145px}.footer .brand-logo-frame{width:200px}}

/* Full-screen welcome film */
html.intro-pending,html.intro-pending body{overflow:hidden}.video-intro[hidden]{display:none!important}.video-intro{position:fixed;inset:0;z-index:1000;background:var(--dark);height:100vh;height:100dvh}.video-intro-enter{display:block;position:relative;width:100%;height:100%;padding:0;border:0;background:var(--dark);color:var(--paper);text-align:center;overflow:hidden;cursor:pointer}.video-intro-enter video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.video-intro-shade{position:absolute;inset:0;background:linear-gradient(180deg,#07130d55,transparent 40%,#07130d99)}.video-intro-brand{position:absolute;top:clamp(25px,5vh,60px);left:0;right:0;font:400 clamp(2rem,4vw,3.2rem)/1.1 'Playfair Display',Georgia,serif;text-shadow:0 2px 20px #0006}.video-intro-brand>span{display:block;color:var(--gold);font:14px/1 sans-serif;letter-spacing:.25em;margin-top:12px}.video-intro-caption{position:absolute;bottom:clamp(48px,9vh,110px);left:20px;right:20px;display:flex;flex-direction:column;align-items:center;gap:18px}.video-intro-title{font:400 clamp(2.8rem,6vw,5.5rem)/1.12 'Playfair Display',Georgia,serif}.video-intro-prompt{font-size:15px;border-bottom:1px solid #fff9;padding:8px 0;letter-spacing:.03em}.video-intro-enter:focus-visible{outline:3px solid var(--gold);outline-offset:-10px}.intro-pending .site-header,.intro-pending main,.intro-pending .footer{visibility:hidden}@media(max-width:600px){.video-intro-enter video{object-position:48% center}.video-intro-caption .kicker{font-size:12px}}
.gallery-filters{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 28px}.gallery-filters button{padding:10px 16px;border:1px solid var(--olive);background:transparent;color:var(--ink);font-size:.88rem;min-height:44px}.gallery-filters button[aria-pressed=true]{background:var(--dark);color:var(--paper)}.gallery-filters button:focus-visible{outline:2px solid var(--olive);outline-offset:3px}.gallery-filter-count{font-size:.85rem;color:var(--olive);margin-left:auto}.gallery-mosaic button:focus-visible{outline:3px solid var(--olive);outline-offset:3px}.lightbox img{touch-action:pan-y}.gallery-page .gallery-mosaic img{transition:opacity .2s,transform .35s}@media(max-width:500px){.gallery-filters{gap:7px}.gallery-filters button{padding:9px 11px}.gallery-filter-count{width:100%;margin:3px 0 0}}

.gallery-group-title{grid-column:1/-1;font-size:clamp(1.6rem,3vw,2.4rem);margin:35px 0 8px;padding-top:22px;border-top:1px solid var(--line)}.gallery-group-title:first-child{margin-top:0}.gallery-page .gallery-mosaic button{grid-column:auto;grid-row:auto}.gallery-page .gallery-mosaic img{height:240px}@media(max-width:750px){.gallery-page .gallery-mosaic img{height:180px}}@media(max-width:500px){.gallery-page .gallery-mosaic img{height:145px}}

/* Informative interior image composition */
.villa-interior-photos{grid-template-columns:1fr 1fr;align-items:start}.villa-interior-photos img:first-child{grid-column:1/-1;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.villa-interior-photos img:nth-child(2),.villa-interior-photos img:last-child{grid-column:auto;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;margin:0}.gallery-section .life-gallery img{object-position:center}.gallery-section .life-gallery img:nth-child(3){display:block}@media(max-width:750px){.gallery-section .life-gallery{grid-template-columns:1fr 1fr}.gallery-section .life-gallery img{height:240px}.gallery-section .life-gallery img:nth-child(3){grid-column:1/-1;height:300px}.gallery-section .life-gallery img:nth-child(2){margin-top:0}}@media(max-width:500px){.gallery-section .life-gallery img{height:180px}.gallery-section .life-gallery img:nth-child(3){height:230px}}

/* Gentle movement during each five-second hero slide */
.hero-photo{transform:scale(1.05);transform-origin:center center}.hero.motion-ready .hero-photo.active{animation:hero-soft-zoom 6.1s linear both}.hero.motion-paused .hero-photo.active{animation-play-state:paused}@keyframes hero-soft-zoom{from{transform:scale(1)}to{transform:scale(1.11)}}@media(prefers-reduced-motion:reduce){.hero-photo,.hero.motion-ready .hero-photo.active{animation:none;transform:none}}

/* Stay planning improvements */
.room-section,.faq-section,.home-faq-link{background:var(--paper,#f5f2ea)}
.room-section>.wrap>.bodycopy{max-width:780px}.room-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 28px;margin-top:42px}.room-card img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}.room-card>div{padding:24px 0}.room-card h3{font:400 clamp(25px,3vw,34px)/1.2 'Playfair Display',Georgia,serif;margin:10px 0}.room-card p,.room-note p{line-height:1.7;max-width:620px}.room-note{border-top:1px solid #2d393229;padding-top:20px}.faq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.faq-list details{border-top:1px solid #2d39322f}.faq-list details:last-child{border-bottom:1px solid #2d39322f}.faq-list summary{cursor:pointer;font-size:18px;line-height:1.5;padding:22px 30px 22px 0}.faq-list details p{line-height:1.8;margin:0 0 24px;max-width:650px}.home-distances{padding-top:38px}.home-distances .travel-grid{margin-top:0}.travel-estimate{font-size:12px;opacity:.75;margin-top:20px}.mobile-stay-bar{display:none}.video-intro-prompt{display:inline-flex;align-items:center;justify-content:center;border:1px solid #e4d2a8;background:#f5f2ea;color:#2d3932;padding:17px 30px;font-weight:600;min-height:52px}.video-intro-enter:hover .video-intro-prompt{background:#e4d2a8}.video-intro-enter:focus-visible .video-intro-prompt{outline:3px solid white;outline-offset:5px}.intro-pending .mobile-stay-bar{display:none}
@media(max-width:750px){.room-grid{grid-template-columns:1fr;gap:16px}.faq-layout{grid-template-columns:1fr;gap:28px}.home-distances{padding-top:24px}.mobile-stay-bar{position:fixed;z-index:100;bottom:0;left:0;right:0;display:grid;grid-template-columns:1.2fr 1fr;gap:1px;background:#e4d2a8;padding:1px 0 max(1px,env(safe-area-inset-bottom))}.mobile-stay-bar a{display:flex;align-items:center;justify-content:center;min-height:56px;text-decoration:none;background:#2d3932;color:#f5f2ea;font-size:14px;font-weight:600}.mobile-stay-bar a:last-child{background:#e4d2a8;color:#2d3932}body{padding-bottom:calc(58px + env(safe-area-inset-bottom))}.video-intro-enter video{object-fit:contain;background:#1c2922}.video-intro-shade{background:linear-gradient(180deg,#07130d88,transparent 45%,#07130d99)}.video-intro-caption{bottom:calc(35px + env(safe-area-inset-bottom))}.video-intro-title{font-size:clamp(28px,8vw,44px)}.video-intro-caption{gap:12px}.video-intro-brand{top:25px}}

/* Simplified footer */
.footer-main{grid-template-columns:minmax(230px,1.3fr) minmax(260px,1fr) auto;gap:clamp(28px,5vw,80px)}.footer-back-top{display:flex;align-items:center;gap:18px;justify-self:end;font-size:13px;letter-spacing:.05em;padding:6px 0;border-bottom:1px solid currentColor}.back-top-arrow{font-size:30px;line-height:1;transition:transform .2s}.footer-back-top:hover .back-top-arrow{transform:translateY(-4px)}.footer-back-top:focus-visible{outline:2px solid var(--gold);outline-offset:6px}@media(max-width:750px){.footer-main{grid-template-columns:1fr 1fr}.footer-about{grid-column:1/-1}.footer-back-top{align-self:end}}@media(max-width:500px){.footer-main{grid-template-columns:1fr}.footer-back-top{justify-self:start;margin-top:8px}}@media(prefers-reduced-motion:reduce){.back-top-arrow{transition:none}}

/* Photograph-led homepage carousel */
.hero:after{background:linear-gradient(180deg,rgba(10,24,17,.3) 0%,transparent 25%,transparent 58%,rgba(10,24,17,.48) 100%)}
.hero-inner{justify-content:flex-end;padding-top:0;padding-bottom:110px;pointer-events:none}
.hero h1{font-size:clamp(2.4rem,5.25vw,5.6rem);line-height:1.08;max-width:none;margin:0 0 16px;letter-spacing:-.025em;text-shadow:0 2px 22px #10201940}
.hero-inner .hero-subtitle{font-size:clamp(1rem,1.5vw,1.25rem);line-height:1.5;max-width:none;margin:0;text-shadow:0 1px 10px #10201970;letter-spacing:.025em}
.hero-bottom{bottom:40px}.hero-dot{position:relative;height:3px;width:25px;cursor:pointer}.hero-dot:before{content:"";position:absolute;inset:-12px 0}.hero-dot[aria-current=true]{width:40px}
@media(max-width:750px){.hero-inner{padding-top:0;padding-bottom:100px}.hero h1{font-size:clamp(2.3rem,8.5vw,3.7rem);max-width:100%;margin-bottom:12px}.hero-inner .hero-subtitle{font-size:1rem}.hero-bottom{bottom:37px}}

/* Final planning and small-screen refinements */
.final-cta .planning-copy{max-width:620px;margin:0 auto 28px;color:inherit;opacity:.88}.planning-links{display:flex;justify-content:center;gap:18px 30px;flex-wrap:wrap;margin-top:28px;font-size:.88rem}.planning-links a{border-bottom:1px solid currentColor;padding-bottom:4px}.guest-notes blockquote{margin:18px 0}.guest-notes blockquote p{font-family:'Playfair Display',Georgia,serif;font-size:clamp(1.4rem,2.3vw,2rem);line-height:1.5}.review-translation{font-size:.88rem}.review-translation small{display:block;opacity:.75}body:has(.lightbox.open) .mobile-stay-bar{display:none}.mobile-stay-bar a:focus-visible{outline:3px solid white;outline-offset:-5px}
@media(max-width:750px){.mobile-menu{max-height:calc(100dvh - 145px);overflow-y:auto;overscroll-behavior:contain}.mobile-menu a{min-height:40px;display:flex;align-items:center}.menu-button{min-width:44px;min-height:44px}.hero{height:calc(100svh - 58px);min-height:540px}.field input,.field select{font-size:16px;min-width:0}.field{min-width:0}.form-actions .btn{white-space:normal;min-width:0}.footer-contact a,.footer-contact address{overflow-wrap:anywhere}.planning-links{gap:18px}.lightbox .caption{max-width:calc(100% - 110px);text-align:center;line-height:1.4;font-size:12px}}
@media(max-width:400px){.form{grid-template-columns:1fr}.form-actions{flex-direction:column}.final-cta .page-links{flex-direction:column}.final-cta .page-links .btn{width:100%}}
@media(max-height:500px) and (max-width:900px){.hero{min-height:380px}.video-intro-brand{font-size:32px;top:16px}.video-intro-caption{bottom:20px;gap:8px}.video-intro-title{font-size:30px}.video-intro-caption .kicker{display:none}.video-intro-prompt{padding:10px 22px;min-height:44px}}

/* Homepage-only dropdown navigation */
.home-navigation{position:relative;margin-left:0;flex:none}.home-navigation summary{display:flex;align-items:center;justify-content:center;gap:17px;min-height:46px;padding:10px 16px;border:1px solid #ffffff8c;cursor:pointer;font-size:14px;font-weight:500;list-style:none}.home-navigation summary::-webkit-details-marker{display:none}.home-navigation summary svg{transition:transform .2s}.home-navigation[open] summary svg{transform:rotate(180deg)}.home-navigation summary:focus-visible{outline:2px solid var(--gold);outline-offset:5px}.home-navigation .home-dropdown{position:absolute;top:calc(100% + 15px);right:0;width:260px;max-width:calc(100vw - 40px);padding:16px 23px;display:flex;flex-direction:column;background:var(--dark);color:var(--paper);border:1px solid #e4d2a84d;box-shadow:0 18px 50px #07130d35}.home-dropdown a{display:flex;align-items:center;min-height:46px;font-size:15px;border-bottom:1px solid #ffffff20;transition:color .15s}.home-dropdown a:last-child{border-bottom:0}.home-dropdown a:hover,.home-dropdown a:focus-visible{color:var(--gold)}.site-header:has(.home-navigation) .nav>.btn{margin-left:auto}.site-header:has(.home-navigation) .nav{gap:18px}@media(max-width:750px){.home-navigation{margin-left:auto}.home-navigation summary{padding:8px 13px;min-height:44px}.home-navigation .home-dropdown{top:calc(100% + 12px);max-height:calc(100dvh - 155px);overflow-y:auto;overscroll-behavior:contain}}@media(prefers-reduced-motion:reduce){.home-navigation summary svg,.home-dropdown a{transition:none}}

.language-switch{display:flex;align-items:center;gap:7px;flex:none;font-size:12px;letter-spacing:.06em;margin-left:auto}.language-switch a{padding:10px 3px;min-height:40px;display:inline-flex;align-items:center;opacity:.7}.language-switch a[aria-current=true]{opacity:1;border-bottom:1px solid var(--gold)}.language-switch a:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.site-header:has(.home-navigation) .nav>.btn{margin-left:0}@media(max-width:1100px) and (min-width:751px){.site-header .nav{gap:12px}.site-header .navlinks{gap:10px;font-size:.75rem}}@media(max-width:950px) and (min-width:751px){.site-header:not(.overlay) .nav>.btn{display:none}}@media(max-width:750px){.site-header .nav{gap:12px}.language-switch{gap:5px;margin-left:auto}.home-navigation{margin-left:0}.language-switch a{padding:8px 2px}}

/* Detailed villa amenities */
.amenities-section{background:#ebe8df}.amenities-intro{max-width:780px}.amenities-highlights{display:flex;flex-wrap:wrap;gap:12px 28px;padding:24px 0;margin:26px 0 34px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:.9rem;font-weight:600}.amenities-categories{display:grid;grid-template-columns:1fr 1fr;column-gap:48px;align-items:start}.amenity-category{border-top:1px solid #b7b7aa}.amenity-category summary{display:flex;align-items:center;gap:15px;list-style:none;cursor:pointer;padding:22px 0;font-size:18px;font-weight:500}.amenity-category summary::-webkit-details-marker{display:none}.amenity-index{font-size:11px;color:var(--olive);letter-spacing:.08em}.amenity-toggle{margin-left:auto;font-size:24px;font-weight:400}.amenity-category[open] .amenity-toggle{transform:rotate(45deg)}.amenity-category summary:focus-visible{outline:2px solid var(--olive);outline-offset:4px}.amenity-category ul{margin:0 0 25px;padding-left:32px;list-style:disc;color:#515a51}.amenity-category li{padding:4px 0;line-height:1.6}.room-bathroom{display:inline-block;font-size:12px;color:var(--olive);padding:3px 0;margin-bottom:7px}.amenities-home-link{margin-left:24px}@media(max-width:750px){.amenities-categories{grid-template-columns:1fr}.amenity-category summary{font-size:16px;min-height:56px}.amenities-highlights{flex-direction:column;gap:10px}.amenities-home-link{margin-left:0;margin-top:16px;display:table}}

.amenities-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 28px}.amenities-highlights span{line-height:1.55}@media(max-width:900px){.amenities-highlights{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.amenities-highlights{grid-template-columns:1fr;gap:12px}}

.guest-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:45px;align-items:start}.guest-review-card{padding:30px;border:1px solid #ffffff35;background:#ffffff05}.guest-review-top{display:flex;justify-content:space-between;align-items:center;gap:18px}.guest-review-top h3{font-size:1.8rem;margin:0}.guest-stars{color:var(--gold);font-size:15px;letter-spacing:.1em;white-space:nowrap}.guest-review-meta{font-size:12px;line-height:1.8;opacity:.8;margin:14px 0 20px}.guest-review-card blockquote,.home-guest-quotes blockquote{margin:0}.guest-review-card blockquote p{font-size:1rem;line-height:1.85;margin:0}.guest-review-full{margin-top:22px;border-top:1px solid #ffffff35;padding-top:16px}.guest-review-full summary{cursor:pointer;text-decoration:underline;text-underline-offset:5px;font-size:14px}.guest-review-full p{font-size:.94rem;line-height:1.8}.home-guest-quotes{display:grid;grid-template-columns:1fr 1fr;gap:45px;margin:36px 0 25px}.home-guest-quotes blockquote p{font:400 clamp(1.5rem,2.8vw,2.3rem)/1.4 'Playfair Display',Georgia,serif}.review-history-note{font-size:12px;opacity:.75;margin:28px 0 16px}@media(max-width:750px){.guest-review-grid,.home-guest-quotes{grid-template-columns:1fr}.guest-review-card{padding:24px}.home-guest-quotes{gap:26px}.guest-review-top{flex-wrap:wrap;gap:10px}}

/* Trogir destination feature */
.explore-grid:has(.explore-card--destination){grid-template-columns:repeat(2,minmax(0,1fr))}.explore-card--destination{grid-column:1/-1;display:grid;grid-template-columns:1.15fr 1fr;align-items:stretch;padding:0;border-top:0;min-height:0}.explore-card--destination .destination-photo{display:block;overflow:hidden;min-width:0}.destination-photo img{width:100%;height:100%;min-height:360px;object-fit:cover;transition:transform .5s}.destination-photo:hover img{transform:scale(1.025)}.explore-card--destination .destination-copy{padding:clamp(25px,4vw,60px);align-self:center}.destination-copy p{font-size:1rem;line-height:1.8;color:#e3e8df;margin:20px 0 25px}.destination-copy .text-link{font-size:.9rem}.destination-photo:focus-visible{outline:3px solid var(--gold);outline-offset:-5px}@media(max-width:750px){.explore-grid:has(.explore-card--destination){grid-template-columns:1fr}.explore-card--destination{grid-template-columns:1fr}.destination-photo img{min-height:0;height:auto;aspect-ratio:4/3}.explore-card--destination .destination-copy{padding:28px 24px}}@media(prefers-reduced-motion:reduce){.destination-photo img{transition:none}.destination-photo:hover img{transform:none}}

.explore-grid:has(.explore-card--destination)>.explore-card:not(.explore-card--destination){grid-column:1/-1;min-height:240px}

/* Imota: an inland day-trip suggestion */
.explore-card.explore-card--imota{grid-column:1/-1;display:grid;grid-template-columns:1.4fr .8fr;align-items:center;gap:clamp(28px,5vw,70px);padding:clamp(28px,4vw,60px);background:#536154;min-height:0}.imota-copy h3{margin:12px 0 22px}.imota-copy h4{font:400 clamp(1.35rem,2.4vw,2rem)/1.3 'Playfair Display',Georgia,serif;margin:0 0 20px}.imota-copy>p{color:#eef0e8;line-height:1.8;margin:0 0 26px}.imota-copy .text-link{font-size:.9rem}.imota-ideas{display:grid;gap:23px}.imota-ideas>div{border-top:1px solid #ffffff45;padding-top:20px}.imota-ideas p{font-family:'Playfair Display',Georgia,serif;font-size:1.4rem;line-height:1.4;margin:10px 0 0}.imota-ideas .kicker{color:#e4d2a8;font-size:.68rem}@media(max-width:750px){.explore-card.explore-card--imota{grid-template-columns:1fr;padding:28px 24px;gap:30px}.imota-ideas{gap:18px}}

/* Regional photography */
.explore-card--imota .region-photo{grid-column:1/-1;display:block;overflow:hidden;margin:calc(-1 * clamp(28px,4vw,60px)) calc(-1 * clamp(28px,4vw,60px)) 0}.region-photo img{width:100%;height:clamp(240px,32vw,430px);object-fit:cover;object-position:center;transition:transform .5s}.region-photo:hover img{transform:scale(1.02)}.region-photo:focus-visible{outline:3px solid var(--gold);outline-offset:-5px}.region-photo--imota img{object-position:50% 60%}@media(max-width:750px){.explore-card--imota .region-photo{margin:-28px -24px 0}.region-photo img{height:auto;min-height:0}.region-photo--imota img{aspect-ratio:auto}}@media(prefers-reduced-motion:reduce){.region-photo img{transition:none}.region-photo:hover img{transform:none}}

/* German typography and the three-language selector */
html[lang=de] .hero h1{font-size:clamp(2.2rem,4.9vw,5.2rem)}html[lang=de] .navlinks{gap:16px;font-size:.82rem}html[lang=de] .page-intro h1,html[lang=de] .contact-top h1{overflow-wrap:break-word;hyphens:auto}html[lang=de] .amenity-category summary{line-height:1.45}.language-switch{gap:6px}@media(max-width:1200px) and (min-width:1101px){html[lang=de] .site-header .navlinks{gap:10px;font-size:.75rem}html[lang=de] .site-header .nav{gap:14px}}@media(max-width:1100px) and (min-width:751px){html[lang=de] .site-header:not(.overlay) .navlinks,html[lang=de] .site-header:not(.overlay) .nav>.btn{display:none}html[lang=de] .site-header:not(.overlay) .menu-button{display:block;min-width:44px;min-height:44px}html[lang=de] .site-header:not(.overlay) .mobile-menu{position:absolute;top:104px;left:0;right:0;background:var(--dark);padding:24px;flex-direction:column;gap:14px;max-height:calc(100dvh - 170px);overflow:auto}}@media(max-width:430px){.site-header .brand-logo-frame{width:120px}.site-header .nav{gap:8px}.language-switch{gap:4px;font-size:11px}.home-navigation summary{gap:8px;padding:8px 10px;font-size:13px}}@media(max-width:750px){html[lang=de] .hero h1{font-size:clamp(2rem,7.3vw,3.2rem)}html[lang=de] .page-links{flex-wrap:wrap}html[lang=de] .mobile-stay-bar a{font-size:12px;padding:4px 8px;text-align:center}}

/* Polish copy and four-language navigation */
html[lang=pl] .navlinks{gap:15px;font-size:.8rem}html[lang=pl] .page-intro h1,html[lang=pl] .contact-top h1{overflow-wrap:break-word;hyphens:auto}html[lang=pl] .amenity-category summary{line-height:1.45}.language-switch{gap:5px}@media(max-width:1200px) and (min-width:1101px){html[lang=pl] .site-header .navlinks{gap:10px;font-size:.74rem}html[lang=pl] .site-header .nav{gap:12px}}@media(max-width:1100px) and (min-width:751px){html[lang=pl] .site-header:not(.overlay) .navlinks,html[lang=pl] .site-header:not(.overlay) .nav>.btn{display:none}html[lang=pl] .site-header:not(.overlay) .menu-button{display:block;min-width:44px;min-height:44px}html[lang=pl] .site-header:not(.overlay) .mobile-menu{position:absolute;top:104px;left:0;right:0;background:var(--dark);padding:24px;flex-direction:column;gap:14px;max-height:calc(100dvh - 170px);overflow:auto}}@media(max-width:750px){html[lang=pl] .page-links{flex-wrap:wrap}html[lang=pl] .mobile-stay-bar a{font-size:12px;padding:4px 8px;text-align:center}}@media(max-width:430px){.site-header .brand-logo-frame{width:100px}.language-switch{gap:2px;font-size:10px}.language-switch a{padding-left:2px;padding-right:2px}.home-navigation summary{gap:7px;padding:8px 9px}.site-header .nav{gap:8px}}

/* Concise destination descriptions replace repeated point lists. */
.explore-card--imota>.imota-copy{grid-column:1/-1;max-width:900px}

/* Quiet entry cue over the opening film. */
.video-intro-prompt{display:inline-flex;flex-direction:column;gap:12px;align-items:center;justify-content:center;min-height:0;padding:0;border:0;border-radius:0;background:transparent;color:#fff;font-weight:400;letter-spacing:.12em}
.video-intro-arrow{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border:1px solid #ffffff80;border-radius:50%;background:#0000000d;transition:transform .3s ease,border-color .3s ease,background .3s ease}
.video-intro-arrow svg{width:23px;height:23px;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
.video-intro-prompt-label{font-size:11px;line-height:1.5;text-transform:uppercase;color:#ffffffe0}
.video-intro-enter:hover .video-intro-prompt{background:transparent}
.video-intro-enter:hover .video-intro-arrow{transform:translateY(3px);border-color:#fff;background:#ffffff0d}
.video-intro-enter:focus-visible .video-intro-prompt{outline:none}
.video-intro-enter:focus-visible .video-intro-arrow{outline:2px solid #fff;outline-offset:5px}
@media(prefers-reduced-motion:reduce){.video-intro-arrow{transition:none}.video-intro-enter:hover .video-intro-arrow{transform:none}}

/* Seasonal rates: a readable table on desktop, individual date cards on mobile. */
.pricing-section{background:#eeeae0;scroll-margin-top:110px}
.pricing-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px;align-items:center;margin-bottom:36px}
.pricing-heading h2{max-width:750px;margin:12px 0 20px;font-size:clamp(2.1rem,4vw,3.8rem)}
.pricing-heading .bodycopy{max-width:760px}
.pricing-from{display:flex;flex-direction:column;gap:6px;min-width:180px;padding:24px 0 24px 35px;border-left:1px solid #b8b6a4;color:var(--dark)}
.pricing-from strong{font-size:clamp(2.8rem,4vw,4rem);font-weight:400;line-height:1.1;white-space:nowrap}
.pricing-from span{font-size:13px;letter-spacing:.04em}
.pricing-table{width:100%;border-collapse:collapse;font-size:15px;color:var(--dark)}
.pricing-table th,.pricing-table td{text-align:left;padding:17px 23px;border-bottom:1px solid #d8d6ca}
.pricing-table thead{background:var(--dark);color:#f6f1e7}
.pricing-table thead th{font-size:12px;letter-spacing:.05em;font-weight:500}
.pricing-table tbody{background:#faf8f2}
.pricing-table tbody th{font-weight:400;font-variant-numeric:tabular-nums}
.pricing-table tbody td:nth-child(2){font-size:20px;font-weight:600;white-space:nowrap}
.pricing-table .pricing-peak{background:#e3e5d8}
.pricing-note{font-size:12px;line-height:1.7;max-width:900px;margin:18px 0 30px;color:#5e655b}
.pricing-inquiry{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,.65fr);gap:40px;background:var(--dark);color:#f6f1e7;padding:35px}
.pricing-inquiry h3{font-size:clamp(1.5rem,2.3vw,2rem);margin:0 0 12px;font-weight:400}
.pricing-inquiry p{font-size:14px;line-height:1.8;margin:0;max-width:650px;color:#d1d5cb}
.pricing-actions{display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:18px}
.pricing-actions .btn{background:#eee8d8;color:var(--dark);border:1px solid #eee8d8;text-align:center;white-space:normal;line-height:1.5}
.pricing-actions .btn:hover{background:#dcd3bd;border-color:#dcd3bd}
.pricing-actions .text-link{color:#f6f1e7;font-size:13px;align-self:center;text-align:center}
.direct-booking .pricing-jump{display:inline-block;margin-top:20px;color:#e4d2a8;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}
@media(max-width:760px){
.pricing-heading{grid-template-columns:1fr;gap:20px}.pricing-from{border-left:0;border-top:1px solid #b8b6a4;padding:20px 0 0;min-width:0;flex-direction:row;align-items:baseline;gap:10px;flex-wrap:wrap}
.pricing-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.pricing-table,.pricing-table tbody,.pricing-table tr,.pricing-table th,.pricing-table td{display:block;width:100%;box-sizing:border-box}
.pricing-table tbody{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;background:transparent}
.pricing-table tr{background:#faf8f2;padding:17px;border:1px solid #d8d6ca}
.pricing-table tbody th{padding:0 0 12px;margin-bottom:10px;border-bottom:1px solid #d8d6ca;font-size:15px;font-weight:600}
.pricing-table tbody td{display:flex;justify-content:space-between;align-items:baseline;gap:10px;border:0;padding:5px 0;font-size:13px}
.pricing-table tbody td:before{content:attr(data-label);font-size:11px;font-weight:400}
.pricing-table tbody td:nth-child(2){font-size:22px}
.pricing-inquiry{grid-template-columns:1fr;gap:25px;padding:25px}.pricing-actions{max-width:100%}
}
@media(max-width:480px){.pricing-table tbody{grid-template-columns:1fr}.pricing-table tr{padding:18px 22px}.pricing-table tbody th{font-size:16px}.pricing-table tbody td:before{font-size:12px}.pricing-table tbody td{font-size:14px}.pricing-inquiry{padding:24px 20px}}

/* A quiet circular booking marker, clear of the headline and slide controls. */
.season-badge{position:absolute;z-index:3;top:155px;right:max(5vw,24px);width:154px;height:154px;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;padding:23px;text-align:center;box-sizing:border-box;background:#eee8d8f2;color:#293c31;border:1px solid #f7f1e0a6;text-decoration:none;box-shadow:0 4px 24px #1020191f;transition:background .25s ease,transform .25s ease}
.season-badge:before{content:"";position:absolute;inset:7px;border:1px solid #68745c55;border-radius:50%;pointer-events:none}
.season-badge span,.season-badge strong{position:relative;max-width:115px;font-size:10px;line-height:1.5;letter-spacing:.08em;font-weight:500}
.season-badge strong{font-size:11px;font-weight:600}
.season-badge svg{width:22px;height:22px;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round;margin-top:2px;flex-shrink:0}
.season-badge:hover{background:#f6f1e7;transform:translateY(-3px)}
.season-badge:focus-visible{outline:2px solid white;outline-offset:5px}
@media(max-width:750px){.season-badge{top:125px;right:22px;width:126px;height:126px;padding:19px;gap:4px}.season-badge span{font-size:8px;letter-spacing:.06em}.season-badge strong{font-size:9px}.season-badge svg{width:19px;height:19px}}
@media(max-height:500px) and (max-width:900px){.season-badge{top:85px;right:24px;width:116px;height:116px;padding:17px}}
@media(prefers-reduced-motion:reduce){.season-badge{transition:none}.season-badge:hover{transform:none}}

.pricing-inclusions{margin-top:24px;padding:23px 26px;background:#faf8f2;border-left:3px solid #7a8467;color:var(--dark)}
.pricing-inclusions h3{font-size:clamp(1.15rem,2vw,1.45rem);font-weight:400;margin:0 0 10px;line-height:1.4}
.pricing-inclusions p{font-size:14px;line-height:1.8;max-width:950px;margin:0}
.pricing-inclusions .pricing-terms{font-size:12px;line-height:1.75;color:#5e655b;margin-top:10px}
@media(max-width:600px){.pricing-inclusions{padding:20px}.pricing-inclusions p{font-size:13px}}

/* Fine vector arrows for mobile links, independent of device emoji fonts. */
.link-arrow{display:inline-block;vertical-align:baseline;white-space:nowrap;line-height:1}
.link-arrow-icon{display:none}
@media(max-width:750px){
.link-arrow{vertical-align:middle;line-height:1;margin-inline-start:.15em}
.link-arrow-glyph{display:none!important}
.link-arrow-icon{display:inline-block!important;width:12px;height:12px;vertical-align:middle;stroke:currentColor;stroke-width:1.15;stroke-linecap:round;stroke-linejoin:round;opacity:.8}
.footer-back-top .link-arrow-icon{width:15px;height:15px}
}

/* A separate playback control is shown only if autoplay is unavailable. */
.video-intro-retry[hidden]{display:none!important}
.video-intro-retry{position:absolute;z-index:2;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:56px;height:56px;padding:0;border:1px solid #ffffffa6;border-radius:50%;background:#1d2a2459;color:#fff;backdrop-filter:blur(4px)}
.video-intro-retry svg{width:25px;height:25px;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
.video-intro-retry:hover{background:#1d2a2499}
@media(max-width:750px){.video-intro-retry{width:48px;height:48px}.video-intro-retry svg{width:22px;height:22px}}
.video-intro-retry:focus-visible{outline:2px solid var(--gold);outline-offset:5px}

/* Reopen the film from the homepage carousel. */
.hero-replay{position:absolute;right:32px;bottom:24px;z-index:4;display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:3px 0 3px 10px;border:0;background:transparent;color:#fff;font-size:12px;font-weight:500;letter-spacing:.03em;text-shadow:0 1px 8px #0008}
.hero-replay-icon{display:grid;place-items:center;width:34px;height:34px;border:1px solid #ffffff90;border-radius:50%;transition:background .2s,border-color .2s}
.hero-replay-icon svg{width:17px;height:17px;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
.hero-replay:hover .hero-replay-icon{background:#ffffff1a;border-color:#fff}
.hero-replay:focus-visible{outline:2px solid #fff;outline-offset:5px;border-radius:4px}
@media(max-width:750px){.hero-replay{right:24px;bottom:19px;gap:7px;font-size:11px}.hero-replay-icon{width:30px;height:30px}.hero-controls{max-width:calc(100% - 170px);margin-left:24px}.hero-controls .hero-dot{flex-shrink:1}}
@media(prefers-reduced-motion:reduce){.hero-replay-icon{transition:none}}
